packages feed

HsHaruPDF (empty) → 0.0.0

raw patch · 83 files changed

+133162/−0 lines, 83 filesdep +basebuild-type:Customsetup-changedbinary-added

Dependencies added: base

Files

+ Graphics/PDF/Haru.hsc view
@@ -0,0 +1,103 @@+#include "hpdf.h"++module Graphics.PDF.Haru where++import Foreign.Ptr+import Foreign.C.Types+import Foreign.C.String+import Foreign.Marshal.Alloc+import Foreign.Marshal.Utils+import System.IO.Unsafe++data HPDF_Doc+type Doc = Ptr HPDF_Doc+data HPDF_Page+type Page = Ptr HPDF_Page+data HPDF_FontDef+type FontDef = Ptr HPDF_FontDef++type BOOL = CInt+_HPDF_TRUE, _HPDF_FALSE :: BOOL+_HPDF_TRUE  = 1+_HPDF_FALSE = 0++withDoc :: String -> (Doc -> IO a) -> IO a+withDoc fn action = do+    fp  <- mkErrorHandlerCallback errorHandler+    doc <- newDoc fp nullPtr+    rv  <- action doc+    withCString fn $ saveToFile doc+    freeDoc doc+    return rv++withPage :: Doc -> (Page -> IO a) -> IO a+withPage doc action = do+    pg  <- addPage doc+    rv  <- action pg+    setWidth pg 595+    setHeight pg 842+    return rv++text :: Page -> X -> Y -> FontDef -> Size -> String -> IO ()+text pg x y font sz str = do+    setFontAndSize pg font sz+    beginText pg+    moveTextPos pg x y+    withCString str $ showText pg+    endText pg++type FontName = String+type X        = CFloat+type Y        = CFloat+type Size     = CFloat++loadFontEmbedded :: Doc -> String -> IO FontDef+loadFontEmbedded doc fn = withCString fn $ \cstr -> do+    name    <- loadTTFontFromFile doc cstr 1+    getFont doc name nullPtr++foreign import ccall "HPDF_New"+    newDoc :: FunPtr HPDF_Error_Handler -> Ptr () -> IO Doc++foreign import ccall "HPDF_AddPage"+    addPage :: Doc -> IO Page++foreign import ccall "HPDF_LoadTTFontFromFile"+    loadTTFontFromFile :: Doc -> CString -> BOOL -> IO CString++foreign import ccall "HPDF_GetFont"+    getFont :: Doc -> CString -> CString -> IO FontDef++foreign import ccall "HPDF_Page_BeginText"+    beginText :: Page -> IO ()++foreign import ccall "HPDF_Page_EndText"+    endText :: Page -> IO ()++foreign import ccall "HPDF_Free"+    freeDoc :: Doc -> IO ()++foreign import ccall "HPDF_SaveToFile"+    saveToFile :: Doc -> CString -> IO ()++foreign import ccall "HPDF_Page_ShowText"+    showText :: Page -> CString -> IO ()++foreign import ccall "HPDF_Page_SetFontAndSize"+    setFontAndSize :: Page -> FontDef -> CFloat -> IO ()++foreign import ccall "HPDF_Page_SetWidth"+    setWidth :: Page -> X -> IO ()++foreign import ccall "HPDF_Page_SetHeight"+    setHeight :: Page -> Y -> IO ()++foreign import ccall "HPDF_Page_MoveTextPos"+    moveTextPos :: Page -> X -> Y -> IO ()++type HPDF_Error_Handler = CULong -> CULong -> Ptr () -> IO ()+errorHandler :: HPDF_Error_Handler+errorHandler x y _ = print (x, y)++foreign import ccall "wrapper"  +    mkErrorHandlerCallback :: HPDF_Error_Handler -> IO (FunPtr HPDF_Error_Handler)
+ HsHaruPDF.cabal view
@@ -0,0 +1,41 @@+Name:               HsHaruPDF+Version:            0.0.0+Category:           Graphics+Synopsis:           Haskell binding to libharu (http://libharu.sourceforge.net/)+Description:        Haskell binding to libharu (http://libharu.sourceforge.net/)+-- License is really "MIT", but Cabal allows no such field+License:            BSD3+License-file:       LICENSE+Author:             Audrey Tang+Maintainer:         audreyt@audreyt.org+Build-Depends:      base >= 0.2+Exposed-modules:    Graphics.PDF.Haru+extensions:         ForeignFunctionInterface+ghc-options:        -fglasgow-exts -O2+c-sources:          haru/hpdf_annotation.c haru/hpdf_array.c+                    haru/hpdf_binary.c haru/hpdf_boolean.c haru/hpdf_catalog.c+                    haru/hpdf_destination.c haru/hpdf_dict.c haru/hpdf_doc.c haru/hpdf_doc_png.c+                    haru/hpdf_encoder.c haru/hpdf_encoder_cns.c haru/hpdf_encoder_cnt.c+                    haru/hpdf_encoder_jp.c haru/hpdf_encoder_kr.c haru/hpdf_encrypt.c+                    haru/hpdf_encryptdict.c haru/hpdf_error.c haru/hpdf_ext_gstate.c+                    haru/hpdf_font.c haru/hpdf_font_cid.c haru/hpdf_font_tt.c+                    haru/hpdf_font_type1.c haru/hpdf_fontdef.c haru/hpdf_fontdef_base14.c+                    haru/hpdf_fontdef_cid.c haru/hpdf_fontdef_cns.c haru/hpdf_fontdef_cnt.c+                    haru/hpdf_fontdef_jp.c haru/hpdf_fontdef_kr.c haru/hpdf_fontdef_tt.c+                    haru/hpdf_fontdef_type1.c haru/hpdf_gstate.c haru/hpdf_image.c+                    haru/hpdf_image_png.c haru/hpdf_info.c haru/hpdf_list.c haru/hpdf_mmgr.c+                    haru/hpdf_name.c haru/hpdf_null.c haru/hpdf_number.c haru/hpdf_objects.c+                    haru/hpdf_outline.c haru/hpdf_page_label.c haru/hpdf_page_operator.c+                    haru/hpdf_pages.c haru/hpdf_real.c haru/hpdf_streams.c haru/hpdf_string.c+                    haru/hpdf_utils.c haru/hpdf_xref.c+extra-source-files: haru/hpdf.h haru/hpdf_annotation.h haru/hpdf_catalog.h+                    haru/hpdf_conf.h haru/hpdf_consts.h haru/hpdf_destination.h haru/hpdf_doc.h+                    haru/hpdf_encoder.h haru/hpdf_encrypt.h haru/hpdf_encryptdict.h+                    haru/hpdf_error.h haru/hpdf_ext_gstate.h haru/hpdf_font.h haru/hpdf_fontdef.h+                    haru/hpdf_gstate.h haru/hpdf_image.h haru/hpdf_info.h haru/hpdf_list.h+                    haru/hpdf_mmgr.h haru/hpdf_objects.h haru/hpdf_outline.h haru/hpdf_page_label.h+                    haru/hpdf_pages.h haru/hpdf_streams.h haru/hpdf_types.h haru/hpdf_utils.h+                    haru/README examples/ttfont.hs examples/PenguinAttack.ttf+include-dirs:       haru /usr/include /usr/local/include /opt/local/include+extra-lib-dirs:     /usr/lib /usr/local/lib /opt/local/lib+ld-options:         -lz -lpng
+ LICENSE view
@@ -0,0 +1,18 @@+Copyright 2007 by Audrey Tang++Permission is hereby granted, free of charge, to any person obtaining a copy+of this software and associated documentation files (the "Software"), to+deal in the Software without restriction, including without limitation the+rights to use, copy, modify, merge, publish, distribute, sublicense, and/or+sell copies of the Software, and to permit persons to whom the Software is+furnished to do so, subject to the following conditions:+  +The above copyright notice and this permission notice shall be included in+all copies or substantial portions of the Software.+   +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL+THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ Setup.hs view
@@ -0,0 +1,3 @@+#!/usr/bin/env runhaskell+import Distribution.Simple+main = defaultMainWithHooks defaultUserHooks
+ examples/PenguinAttack.ttf view

binary file changed (absent → 70356 bytes)

+ examples/ttfont.hs view
@@ -0,0 +1,7 @@+import Graphics.PDF.Haru++main = withDoc "ttfont.pdf" $ \doc -> do+    font    <- loadFontEmbedded doc "PenguinAttack.ttf"+    withPage doc $ \pg -> do+        text pg 0 400 font 48 "This is a test"+        text pg 0 600 font 48 "This is another test"
+ haru/README view
@@ -0,0 +1,140 @@+#
+#  Haru Free PDF Library Version 2.0.8 - Nov 25, 2006
+#  
+#  URL http://libharu.sourceforge.net/
+#
+#  Copyright 2000-2006 (c) Takeshi Kanno
+#
+
+See INSTALL for instructions on how to install libpng.
+
+*
+* What is Haru Free PDF Library?
+*
+Haru is a free, cross platform, open-sourced software library for generating 
+PDF. It supports the following features.
+
+   1. Generating PDF files with lines, text, images.
+   2. Outline, text annotation, link annotation.
+   3. Compressing document with deflate-decode.
+   4. Embedding PNG, Jpeg images.
+   5. Embedding Type1 font and TrueType font.
+   6. Creating encrypted PDF files.
+   7. Using various character set (ISO8859-1~16, MSCP1250~8, KOI-8R).
+   8. Supporting CJK fonts and encodings.
+
+You can add the feature of PDF creation by using Haru without understanding 
+complicated internal structure of PDF.
+
+*
+* The differences from the previous version 
+*
+
+The biggest differences are that all code is written in C. 
+To our regret, because internal structures changed greatly, The API is not 
+compatible with previous version.
+
+However, the new-version has the following advantages compared with the 
+previous version.
+
+ 1. Supported shared-library build.
+    A new-version library is able to be built as shared-library.
+ 2. The performance has been greatly improved.
+    A new-version library is about 4-15 times faster than a previous version. 
+ 3. Supported more features.
+    TrueType font, 128 bit encryption, arc function, and so on.
+
+*
+* Supporting platforms
+*
+Haru is written in ANSI-C and should compile easily with any compliant C 
+compiler.
+I inspected Haru in the following environment and make files for these 
+environments are included in a package.
+
+   1. Cygwin + GCC (Microsoft Windows)
+   2. Cygwin + MinGW (Microsoft Windows)
+   3. MSYS + MinGW (Microsoft Windows)
+   3. Microsoft VC++ (Microsoft Windows)
+   4. Borland C++ (Microsoft Windows)
+   5. GCC (Linux, FreeBSD, NetBSD, Solaris...)
+
+Also on platforms except the above, it is easy to build HARU. If you success to build HARU on other platforms, please send makefile to me.
+In addition, ZLIB and PNGLIB are required when you want to use the features of 
+compression and embedding PNG images. (In the case of Windows, static library 
+files for several compilers are included in the package for WIndows.  In the 
+case of  most of UNIX, these libraries are usually installed.)
+
+*
+* Available development environment
+*
+Haru can work as both static-library (.a, .lib) and shared-library (.so, .dll).
+When you use it as static-library, It can be used by C and a C++.
+But when you use it as shared-library, it can be used by many development 
+languages which support shared library.
+So far, Haru provides bindings for Ruby, Delphi/Free Pascal and C#.
+
+If you write bindings for other programing languages, please notice me!
+
+*
+* Runtime environment of programs using Haru
+*
+1. static-library
+   No runtime files are required.
+
+2. shared-library
+   In Windows, you have to distribute libhpdf.dll with a program. In UNIX you 
+   have to distribute libhpdf.so* with a program.
+
+
+
+NOTE:
+In the UNIX environment, there are the cases that libz.so, libpng.so.x are 
+necessary. About this, please refer to the documentation of PNGLIB and ZLIB.
+
+*
+* License
+*
+Haru is distributed under the ZLIB/LIBPNG License. Because ZLIB/LIBPNG License 
+is one of the freest licenses, You can use Haru for various purposes.
+
+The license of Haru is as follows.
+
+Copyright (C) 1999-2006 Takeshi Kanno
+This software is provided 'as-is', without any express or implied warranty.
+
+In no event will the authors be held liable for any damages arising from the 
+use of this software.
+
+Permission is granted to anyone to use this software for any purpose,including 
+commercial applications, and to alter it and redistribute it freely, subject 
+to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not claim 
+    that you wrote the original software. If you use this software in a 
+    product, an acknowledgment in the product documentation would be 
+    appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be 
+    misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+
+*
+* Acknowledgment
+*
+1. Information-technology Promotion Agency(IPA)
+   The development of Haru has been supported by Exploratory Software Project 
+   of Information-technology Promotion Agency(IPA), Japan. 
+
+2. All users of libHaru.
+   We wish to thank all users of Haru.
+   In particular, we thank Thomas Nimstad, LeslieM, Par Hogberg, adenelson, 
+   Riccardo Cohen, sea_sbs, Andrew. 
+   They gave me very useful advices.
+
+3. Sourceforge.net
+   We would like to thank sourceForge.net for project hosting.
+
+4. Adobe Systems Inc.
+   We thank Adobe Systems Inc. for publishing PDF specification.
+
+ haru/hpdf.h view
@@ -0,0 +1,1227 @@+/*+ * << Haru Free PDF Library 2.0.8 >> -- hpdf.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_H+#define _HPDF_H++#ifdef HPDF_DLL_MAKE+#    define HPDF_EXPORT(A)  __declspec(dllexport) A  __stdcall+#else+#    ifdef HPDF_DLL_MAKE_CDECL+#        define HPDF_EXPORT(A)  __declspec(dllexport) A+#    else+#        ifdef HPDF_SHARED_MAKE+#            define HPDF_EXPORT(A)  extern A+#        endif /* HPDF_SHARED_MAKE */+#    endif /* HPDF_DLL_MAKE_CDECL */+#endif /* HPDF_DLL_MAKE */++#ifdef HPDF_DLL+#    define HPDF_SHARED+#    define HPDF_EXPORT(A)  __declspec(dllimport) A  __stdcall+#else+#    ifdef HPDF_DLL_CDECL+#        define HPDF_SHARED+#        define HPDF_EXPORT(A)  __declspec(dllimport) A+#    endif /* HPDF_DLL_CDECL */+#endif /* HPDF_DLL */++#ifdef HPDF_SHARED++#ifndef HPDF_EXPORT+#define HPDF_EXPORT(A) extern A+#endif /* HPDF_EXPORT */++#include "hpdf_consts.h"+#include "hpdf_types.h"++typedef void         *HPDF_HANDLE;+typedef HPDF_HANDLE   HPDF_Doc;+typedef HPDF_HANDLE   HPDF_Page;+typedef HPDF_HANDLE   HPDF_Pages;+typedef HPDF_HANDLE   HPDF_Stream;+typedef HPDF_HANDLE   HPDF_Image;+typedef HPDF_HANDLE   HPDF_Font;+typedef HPDF_HANDLE   HPDF_Outline;+typedef HPDF_HANDLE   HPDF_Encoder;+typedef HPDF_HANDLE   HPDF_Destination;+typedef HPDF_HANDLE   HPDF_XObject;+typedef HPDF_HANDLE   HPDF_Annotation;+typedef HPDF_HANDLE   HPDF_ExtGState;++#else++#ifndef HPDF_EXPORT+#define HPDF_EXPORT(A)  A+#endif /* HPDF_EXPORT  */++#include "hpdf_consts.h"+#include "hpdf_doc.h"++#endif /* HPDF_SHARED */++#ifdef __cplusplus+extern "C" {+#endif++HPDF_EXPORT(const char *)+HPDF_GetVersion  (void);+++HPDF_EXPORT(HPDF_Doc)+HPDF_NewEx  (HPDF_Error_Handler   user_error_fn,+             HPDF_Alloc_Func      user_alloc_fn,+             HPDF_Free_Func       user_free_fn,+             HPDF_UINT            mem_pool_buf_size,+             void                *user_data);++HPDF_EXPORT(HPDF_Doc)+HPDF_New  (HPDF_Error_Handler   user_error_fn,+           void                *user_data);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetErrorHandler  (HPDF_Doc            pdf,+                       HPDF_Error_Handler  user_error_fn);+++HPDF_EXPORT(void)+HPDF_Free  (HPDF_Doc  pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_NewDoc  (HPDF_Doc  pdf);+++HPDF_EXPORT(void)+HPDF_FreeDoc  (HPDF_Doc  pdf);+++HPDF_EXPORT(HPDF_BOOL)+HPDF_HasDoc  (HPDF_Doc  pdf);+++HPDF_EXPORT(void)+HPDF_FreeDocAll  (HPDF_Doc  pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SaveToStream  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_UINT32)+HPDF_GetStreamSize  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ReadFromStream  (HPDF_Doc       pdf,+                      HPDF_BYTE     *buf,+                      HPDF_UINT32   *size);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ResetStream  (HPDF_Doc     pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SaveToFile  (HPDF_Doc     pdf,+                  const char  *file_name);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_GetError  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_GetErrorDetail  (HPDF_Doc   pdf);++HPDF_EXPORT(void)+HPDF_ResetError  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPagesConfiguration  (HPDF_Doc    pdf,+                             HPDF_UINT   page_per_pages);+++HPDF_EXPORT(HPDF_Page)+HPDF_GetPageByIndex  (HPDF_Doc    pdf,+                      HPDF_UINT   index);+++/*---------------------------------------------------------------------------*/+/*---------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_PageLayout)+HPDF_GetPageLayout  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPageLayout  (HPDF_Doc          pdf,+                     HPDF_PageLayout   layout);+++HPDF_EXPORT(HPDF_PageMode)+HPDF_GetPageMode  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPageMode  (HPDF_Doc        pdf,+                   HPDF_PageMode   mode);+++HPDF_EXPORT(HPDF_UINT)+HPDF_GetViewerPreference  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetViewerPreference  (HPDF_Doc     pdf,+                           HPDF_UINT    value);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetOpenAction  (HPDF_Doc           pdf,+                     HPDF_Destination   open_action);+++/*---------------------------------------------------------------------------*/+/*----- page handling -------------------------------------------------------*/+++HPDF_EXPORT(HPDF_Page)+HPDF_GetCurrentPage  (HPDF_Doc  pdf);+++HPDF_EXPORT(HPDF_Page)+HPDF_AddPage  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_Page)+HPDF_InsertPage  (HPDF_Doc    pdf,+                  HPDF_Page   page);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetWidth  (HPDF_Page   page,+                     HPDF_REAL   value);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetHeight  (HPDF_Page   page,+                      HPDF_REAL   value);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetSize  (HPDF_Page            page,+                    HPDF_PageSizes       size,+                    HPDF_PageDirection   direction);++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRotate  (HPDF_Page     page,+                      HPDF_UINT16   angle);++/*---------------------------------------------------------------------------*/+/*----- font handling -------------------------------------------------------*/+++HPDF_EXPORT(HPDF_Font)+HPDF_GetFont  (HPDF_Doc     pdf,+               const char  *font_name,+               const char  *encoding_name);+++HPDF_EXPORT(const char*)+HPDF_LoadType1FontFromFile  (HPDF_Doc     pdf,+                             const char  *afm_file_name,+                             const char  *data_file_name);+++HPDF_EXPORT(const char*)+HPDF_LoadTTFontFromFile (HPDF_Doc     pdf,+                         const char  *file_name,+                         HPDF_BOOL    embedding);+++HPDF_EXPORT(const char*)+HPDF_LoadTTFontFromFile2 (HPDF_Doc     pdf,+                          const char  *file_name,+                          HPDF_UINT    index,+                          HPDF_BOOL    embedding);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_AddPageLabel  (HPDF_Doc            pdf,+                    HPDF_UINT           page_num,+                    HPDF_PageNumStyle   style,+                    HPDF_UINT           first_page,+                    const char         *prefix);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseJPFonts   (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseKRFonts   (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNSFonts   (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNTFonts   (HPDF_Doc   pdf);+++/*--------------------------------------------------------------------------*/+/*----- outline ------------------------------------------------------------*/+++HPDF_EXPORT(HPDF_Outline)+HPDF_CreateOutline  (HPDF_Doc       pdf,+                     HPDF_Outline   parent,+                     const char    *title,+                     HPDF_Encoder   encoder);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Outline_SetOpened  (HPDF_Outline  outline,+                         HPDF_BOOL     opened);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Outline_SetDestination (HPDF_Outline      outline,+                             HPDF_Destination  dst);+++/*--------------------------------------------------------------------------*/+/*----- destination --------------------------------------------------------*/++HPDF_EXPORT(HPDF_Destination)+HPDF_Page_CreateDestination  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetXYZ  (HPDF_Destination  dst,+                          HPDF_REAL         left,+                          HPDF_REAL         top,+                          HPDF_REAL         zoom);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFit  (HPDF_Destination  dst);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitH  (HPDF_Destination  dst,+                           HPDF_REAL         top);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitV  (HPDF_Destination  dst,+                           HPDF_REAL         left);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitR  (HPDF_Destination  dst,+                           HPDF_REAL         left,+                           HPDF_REAL         bottom,+                           HPDF_REAL         right,+                           HPDF_REAL         top);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitB  (HPDF_Destination  dst);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitBH  (HPDF_Destination  dst,+                            HPDF_REAL         top);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitBV  (HPDF_Destination  dst,+                            HPDF_REAL         left);++/*--------------------------------------------------------------------------*/+/*----- encoder ------------------------------------------------------------*/++HPDF_EXPORT(HPDF_Encoder)+HPDF_GetEncoder  (HPDF_Doc     pdf,+                  const char  *encoding_name);+++HPDF_EXPORT(HPDF_Encoder)+HPDF_GetCurrentEncoder  (HPDF_Doc   pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetCurrentEncoder  (HPDF_Doc     pdf,+                         const char  *encoding_name);+++HPDF_EXPORT(HPDF_EncoderType)+HPDF_Encoder_GetType  (HPDF_Encoder   encoder);+++HPDF_EXPORT(HPDF_ByteType)+HPDF_Encoder_GetByteType  (HPDF_Encoder    encoder,+                           const char     *text,+                           HPDF_UINT       index);+++HPDF_EXPORT(HPDF_UNICODE)+HPDF_Encoder_GetUnicode  (HPDF_Encoder   encoder,+                          HPDF_UINT16    code);+++HPDF_EXPORT(HPDF_WritingMode)+HPDF_Encoder_GetWritingMode (HPDF_Encoder   encoder);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseJPEncodings   (HPDF_Doc   pdf);++++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseKREncodings   (HPDF_Doc   pdf);++++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNSEncodings   (HPDF_Doc   pdf);++++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNTEncodings   (HPDF_Doc   pdf);+++/*--------------------------------------------------------------------------*/+/*----- annotation ---------------------------------------------------------*/++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateTextAnnot  (HPDF_Page       page,+                            HPDF_Rect       rect,+                            const char     *text,+                            HPDF_Encoder    encoder);+++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateLinkAnnot  (HPDF_Page          page,+                            HPDF_Rect          rect,+                            HPDF_Destination   dst);+++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateURILinkAnnot  (HPDF_Page     page,+                               HPDF_Rect     rect,+                               const char   *uri);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_LinkAnnot_SetHighlightMode  (HPDF_Annotation           annot,+                                  HPDF_AnnotHighlightMode   mode);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_LinkAnnot_SetBorderStyle  (HPDF_Annotation  annot,+                                HPDF_REAL        width,+                                HPDF_UINT16      dash_on,+                                HPDF_UINT16      dash_off);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_TextAnnot_SetIcon  (HPDF_Annotation   annot,+                         HPDF_AnnotIcon    icon);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_TextAnnot_SetOpened  (HPDF_Annotation   annot,+                          HPDF_BOOL          opened);++++/*--------------------------------------------------------------------------*/+/*----- image data ---------------------------------------------------------*/++HPDF_EXPORT(HPDF_Image)+HPDF_LoadPngImageFromFile (HPDF_Doc      pdf,+                           const char    *filename);+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadPngImageFromFile2 (HPDF_Doc      pdf,+                            const char    *filename);+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadJpegImageFromFile (HPDF_Doc      pdf,+                            const char    *filename);+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadRawImageFromFile  (HPDF_Doc           pdf,+                            const char         *filename,+                            HPDF_UINT          width,+                            HPDF_UINT          height,+                            HPDF_ColorSpace    color_space);+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadRawImageFromMem  (HPDF_Doc           pdf,+                           const HPDF_BYTE   *buf,+                           HPDF_UINT          width,+                           HPDF_UINT          height,+                           HPDF_ColorSpace    color_space,+                           HPDF_UINT          bits_per_component);+++HPDF_EXPORT(HPDF_Point)+HPDF_Image_GetSize (HPDF_Image  image);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_GetSize2 (HPDF_Image  image, HPDF_Point *size);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetWidth  (HPDF_Image   image);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetHeight  (HPDF_Image   image);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetBitsPerComponent (HPDF_Image  image);+++HPDF_EXPORT(const char*)+HPDF_Image_GetColorSpace (HPDF_Image  image);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_SetColorMask (HPDF_Image   image,+                         HPDF_UINT    rmin,+                         HPDF_UINT    rmax,+                         HPDF_UINT    gmin,+                         HPDF_UINT    gmax,+                         HPDF_UINT    bmin,+                         HPDF_UINT    bmax);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_SetMaskImage  (HPDF_Image   image,+                          HPDF_Image   mask_image);+++/*--------------------------------------------------------------------------*/+/*----- info dictionary ----------------------------------------------------*/+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetInfoAttr (HPDF_Doc        pdf,+                  HPDF_InfoType   type,+                  const char     *value);+++HPDF_EXPORT(const char*)+HPDF_GetInfoAttr (HPDF_Doc        pdf,+                  HPDF_InfoType   type);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetInfoDateAttr (HPDF_Doc        pdf,+                      HPDF_InfoType   type,+                      HPDF_Date       value);+++/*--------------------------------------------------------------------------*/+/*----- encryption ---------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPassword  (HPDF_Doc      pdf,+                   const char   *owner_passwd,+                   const char   *user_passwd);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPermission  (HPDF_Doc    pdf,+                     HPDF_UINT   permission);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetEncryptionMode  (HPDF_Doc           pdf,+                         HPDF_EncryptMode   mode,+                         HPDF_UINT          key_len);+++/*--------------------------------------------------------------------------*/+/*----- compression --------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetCompressionMode  (HPDF_Doc    pdf,+                          HPDF_UINT   mode);+++/*--------------------------------------------------------------------------*/+/*----- font ---------------------------------------------------------------*/++HPDF_EXPORT(const char*)+HPDF_Font_GetFontName  (HPDF_Font    font);+++HPDF_EXPORT(const char*)+HPDF_Font_GetEncodingName  (HPDF_Font    font);+++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetUnicodeWidth  (HPDF_Font       font,+                            HPDF_UNICODE    code);++HPDF_EXPORT(HPDF_Box)+HPDF_Font_GetBBox  (HPDF_Font    font);+++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetAscent  (HPDF_Font  font);+++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetDescent  (HPDF_Font  font);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_GetXHeight  (HPDF_Font  font);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_GetCapHeight  (HPDF_Font  font);+++HPDF_EXPORT(HPDF_TextWidth)+HPDF_Font_TextWidth  (HPDF_Font          font,+                      const HPDF_BYTE   *text,+                      HPDF_UINT          len);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_MeasureText (HPDF_Font          font,+                       const HPDF_BYTE   *text,+                       HPDF_UINT          len,+                       HPDF_REAL          width,+                       HPDF_REAL          font_size,+                       HPDF_REAL          char_space,+                       HPDF_REAL          word_space,+                       HPDF_BOOL          wordwrap,+                       HPDF_REAL         *real_width);+++/*--------------------------------------------------------------------------*/+/*----- extended graphics state --------------------------------------------*/++HPDF_EXPORT(HPDF_ExtGState)+HPDF_CreateExtGState  (HPDF_Doc  pdf);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetAlphaStroke  (HPDF_ExtGState   ext_gstate,+                                HPDF_REAL        value);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetAlphaFill  (HPDF_ExtGState   ext_gstate,+                              HPDF_REAL        value);++++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetBlendMode  (HPDF_ExtGState   ext_gstate,+                              HPDF_BlendMode   mode);+++/*--------------------------------------------------------------------------*/+/*--------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_TextWidth  (HPDF_Page    page,+                      const char  *text);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Page_MeasureText  (HPDF_Page    page,+                        const char  *text,+                        HPDF_REAL    width,+                        HPDF_BOOL    wordwrap,+                        HPDF_REAL   *real_width);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetWidth  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetHeight  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_UINT16)+HPDF_Page_GetGMode  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_Point)+HPDF_Page_GetCurrentPos  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GetCurrentPos2  (HPDF_Page    page,+                           HPDF_Point  *pos);+++HPDF_EXPORT(HPDF_Point)+HPDF_Page_GetCurrentTextPos (HPDF_Page   page);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GetCurrentTextPos2  (HPDF_Page    page,+                               HPDF_Point  *pos);+++HPDF_EXPORT(HPDF_Font)+HPDF_Page_GetCurrentFont  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetCurrentFontSize  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_TransMatrix)+HPDF_Page_GetTransMatrix  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetLineWidth  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_LineCap)+HPDF_Page_GetLineCap  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_LineJoin)+HPDF_Page_GetLineJoin  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetMiterLimit  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_DashMode)+HPDF_Page_GetDash  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetFlat  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetCharSpace  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetWordSpace  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetHorizontalScalling  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextLeading  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_TextRenderingMode)+HPDF_Page_GetTextRenderingMode  (HPDF_Page   page);+++/* This function is obsolete. Use HPDF_Page_GetTextRise.  */+HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextRaise  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextRise  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_RGBColor)+HPDF_Page_GetRGBFill  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_RGBColor)+HPDF_Page_GetRGBStroke  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_CMYKColor)+HPDF_Page_GetCMYKFill  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_CMYKColor)+HPDF_Page_GetCMYKStroke  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetGrayFill  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetGrayStroke  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_ColorSpace)+HPDF_Page_GetStrokingColorSpace (HPDF_Page   page);+++HPDF_EXPORT(HPDF_ColorSpace)+HPDF_Page_GetFillingColorSpace (HPDF_Page   page);+++HPDF_EXPORT(HPDF_TransMatrix)+HPDF_Page_GetTextMatrix  (HPDF_Page   page);+++HPDF_EXPORT(HPDF_UINT)+HPDF_Page_GetGStateDepth  (HPDF_Page   page);+++/*--------------------------------------------------------------------------*/+/*----- GRAPHICS OPERATORS -------------------------------------------------*/+++/*--- General graphics state ---------------------------------------------*/++/* w */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineWidth  (HPDF_Page  page,+                         HPDF_REAL  line_width);++/* J */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineCap  (HPDF_Page     page,+                       HPDF_LineCap  line_cap);++/* j */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineJoin  (HPDF_Page      page,+                        HPDF_LineJoin  line_join);++/* M */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetMiterLimit  (HPDF_Page  page,+                          HPDF_REAL  miter_limit);++/* d */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetDash  (HPDF_Page           page,+                    const HPDF_UINT16  *dash_ptn,+                    HPDF_UINT           num_param,+                    HPDF_UINT           phase);++++/* ri --not implemented yet */++/* i */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetFlat  (HPDF_Page    page,+                    HPDF_REAL    flatness);++/* gs */++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetExtGState  (HPDF_Page        page,+                         HPDF_ExtGState   ext_gstate);+++/*--- Special graphic state operator --------------------------------------*/++/* q */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GSave  (HPDF_Page    page);++/* Q */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GRestore  (HPDF_Page    page);++/* cm */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Concat  (HPDF_Page    page,+                   HPDF_REAL    a,+                   HPDF_REAL    b,+                   HPDF_REAL    c,+                   HPDF_REAL    d,+                   HPDF_REAL    x,+                   HPDF_REAL    y);++/*--- Path construction operator ------------------------------------------*/++/* m */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTo  (HPDF_Page    page,+                   HPDF_REAL    x,+                   HPDF_REAL    y);++/* l */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_LineTo  (HPDF_Page    page,+                   HPDF_REAL    x,+                   HPDF_REAL    y);++/* c */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo  (HPDF_Page    page,+                    HPDF_REAL    x1,+                    HPDF_REAL    y1,+                    HPDF_REAL    x2,+                    HPDF_REAL    y2,+                    HPDF_REAL    x3,+                    HPDF_REAL    y3);++/* v */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo2  (HPDF_Page    page,+                     HPDF_REAL    x2,+                     HPDF_REAL    y2,+                     HPDF_REAL    x3,+                     HPDF_REAL    y3);++/* y */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo3  (HPDF_Page  page,+                     HPDF_REAL  x1,+                     HPDF_REAL  y1,+                     HPDF_REAL  x3,+                     HPDF_REAL  y3);++/* h */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePath  (HPDF_Page  page);++/* re */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Rectangle  (HPDF_Page  page,+                      HPDF_REAL  x,+                      HPDF_REAL  y,+                      HPDF_REAL  width,+                      HPDF_REAL  height);+++/*--- Path painting operator ---------------------------------------------*/++/* S */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Stroke  (HPDF_Page  page);++/* s */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathStroke  (HPDF_Page  page);++/* f */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Fill  (HPDF_Page  page);++/* f* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Eofill  (HPDF_Page  page);++/* B */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_FillStroke  (HPDF_Page  page);++/* B* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EofillStroke  (HPDF_Page  page);++/* b */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathFillStroke  (HPDF_Page  page);++/* b* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathEofillStroke  (HPDF_Page  page);++/* n */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EndPath  (HPDF_Page  page);+++/*--- Clipping paths operator --------------------------------------------*/++/* W */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Clip  (HPDF_Page  page);++/* W* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Eoclip  (HPDF_Page  page);+++/*--- Text object operator -----------------------------------------------*/++/* BT */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_BeginText  (HPDF_Page  page);++/* ET */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EndText  (HPDF_Page  page);++/*--- Text state ---------------------------------------------------------*/++/* Tc */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCharSpace  (HPDF_Page  page,+                         HPDF_REAL  value);++/* Tw */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetWordSpace  (HPDF_Page  page,+                         HPDF_REAL  value);++/* Tz */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetHorizontalScalling  (HPDF_Page  page,+                                  HPDF_REAL  value);++/* TL */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextLeading  (HPDF_Page  page,+                           HPDF_REAL  value);++/* Tf */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetFontAndSize  (HPDF_Page  page,+                           HPDF_Font  font,+                           HPDF_REAL  size);++/* Tr */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRenderingMode  (HPDF_Page               page,+                                 HPDF_TextRenderingMode  mode);++/* Ts */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRise  (HPDF_Page   page,+                        HPDF_REAL   value);++/* This function is obsolete. Use HPDF_Page_SetTextRise.  */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRaise  (HPDF_Page   page,+                         HPDF_REAL   value);++/*--- Text positioning ---------------------------------------------------*/++/* Td */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTextPos  (HPDF_Page   page,+                        HPDF_REAL   x,+                        HPDF_REAL   y);++/* TD */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTextPos2  (HPDF_Page  page,+                         HPDF_REAL   x,+                         HPDF_REAL   y);++/* Tm */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextMatrix  (HPDF_Page         page,+                          HPDF_REAL    a,+                          HPDF_REAL    b,+                          HPDF_REAL    c,+                          HPDF_REAL    d,+                          HPDF_REAL    x,+                          HPDF_REAL    y);+++/* T* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveToNextLine  (HPDF_Page  page);++/*--- Text showing -------------------------------------------------------*/++/* Tj */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowText  (HPDF_Page    page,+                     const char  *text);++/* TJ */++/* ' */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowTextNextLine  (HPDF_Page    page,+                             const char  *text);++/* " */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowTextNextLineEx  (HPDF_Page    page,+                               HPDF_REAL    word_space,+                               HPDF_REAL    char_space,+                               const char  *text);+++/*--- Color showing ------------------------------------------------------*/++/* cs --not implemented yet */+/* CS --not implemented yet */+/* sc --not implemented yet */+/* scn --not implemented yet */+/* SC --not implemented yet */+/* SCN --not implemented yet */++/* g */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetGrayFill  (HPDF_Page   page,+                        HPDF_REAL   gray);++/* G */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetGrayStroke  (HPDF_Page   page,+                          HPDF_REAL   gray);++/* rg */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRGBFill  (HPDF_Page  page,+                       HPDF_REAL  r,+                       HPDF_REAL  g,+                       HPDF_REAL  b);++/* RG */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRGBStroke  (HPDF_Page  page,+                         HPDF_REAL  r,+                         HPDF_REAL  g,+                         HPDF_REAL  b);++/* k */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCMYKFill  (HPDF_Page  page,+                        HPDF_REAL  c,+                        HPDF_REAL  m,+                        HPDF_REAL  y,+                        HPDF_REAL  k);++/* K */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCMYKStroke  (HPDF_Page  page,+                          HPDF_REAL  c,+                          HPDF_REAL  m,+                          HPDF_REAL  y,+                          HPDF_REAL  k);++/*--- Shading patterns ---------------------------------------------------*/++/* sh --not implemented yet */++/*--- In-line images -----------------------------------------------------*/++/* BI --not implemented yet */+/* ID --not implemented yet */+/* EI --not implemented yet */++/*--- XObjects -----------------------------------------------------------*/++/* Do */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ExecuteXObject  (HPDF_Page     page,+                           HPDF_XObject  obj);++/*--- Marked content -----------------------------------------------------*/++/* BMC --not implemented yet */+/* BDC --not implemented yet */+/* EMC --not implemented yet */+/* MP --not implemented yet */+/* DP --not implemented yet */++/*--- Compatibility ------------------------------------------------------*/++/* BX --not implemented yet */+/* EX --not implemented yet */++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_DrawImage  (HPDF_Page    page,+                      HPDF_Image   image,+                      HPDF_REAL    x,+                      HPDF_REAL    y,+                      HPDF_REAL    width,+                      HPDF_REAL    height);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Circle  (HPDF_Page     page,+                   HPDF_REAL     x,+                   HPDF_REAL     y,+                   HPDF_REAL     ray);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Ellipse  (HPDF_Page   page,+                    HPDF_REAL   x,+                    HPDF_REAL   y,+                    HPDF_REAL  xray,+                    HPDF_REAL  yray);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Arc  (HPDF_Page    page,+                HPDF_REAL    x,+                HPDF_REAL    y,+                HPDF_REAL    ray,+                HPDF_REAL    ang1,+                HPDF_REAL    ang2);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_TextOut  (HPDF_Page    page,+                    HPDF_REAL    xpos,+                    HPDF_REAL    ypos,+                    const char  *text);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_TextRect  (HPDF_Page            page,+                     HPDF_REAL            left,+                     HPDF_REAL            top,+                     HPDF_REAL            right,+                     HPDF_REAL            bottom,+                     const char          *text,+                     HPDF_TextAlignment   align,+                     HPDF_UINT           *len);+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetSlideShow  (HPDF_Page              page,+                         HPDF_TransitionStyle   type,+                         HPDF_REAL              disp_time,+                         HPDF_REAL              trans_time);+++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_H */+
+ haru/hpdf_annotation.c view
@@ -0,0 +1,415 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_annotation.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_annotation.h"+#include "hpdf.h"++const static char  *HPDF_ANNOT_TYPE_NAMES[] = {+                                        "Text",+                                        "Link",+                                        "Sound",+                                        "FreeText",+                                        "Stamp",+                                        "Square",+                                        "Circle",+                                        "StrikeOut",+                                        "Highlight",+                                        "Underline",+                                        "Ink",+                                        "FileAttachment",+                                        "Popup"+                                        };++const static char  *HPDF_ANNOT_ICON_NAMES_NAMES[] = {+                                        "Comment",+                                        "Key",+                                        "Note",+                                        "Help",+                                        "NewParagraph",+                                        "Paragraph",+                                        "Insert"+                                        };+++static HPDF_BOOL+CheckSubType (HPDF_Annotation  annot,+              HPDF_AnnotType  type);+++/*----------------------------------------------------------------------------*/+/*------ HPDF_Annotation -----------------------------------------------------*/+++HPDF_Annotation+HPDF_Annotation_New  (HPDF_MMgr       mmgr,+                      HPDF_Xref       xref,+                      HPDF_AnnotType  type,+                      HPDF_Rect       rect)+{+    HPDF_Annotation annot;+    HPDF_Array array;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_REAL tmp;++    HPDF_PTRACE((" HPDF_Annotation_New\n"));++    annot = HPDF_Dict_New (mmgr);+    if (!annot)+        return NULL;++    if (HPDF_Xref_Add (xref, annot) != HPDF_OK)+        return NULL;++    array = HPDF_Array_New (mmgr);+    if (!array)+        return NULL;++    if (HPDF_Dict_Add (annot, "Rect", array) != HPDF_OK)+        return NULL;++    if (rect.top < rect.bottom) {+        tmp = rect.top;+        rect.top = rect.bottom;+        rect.bottom = tmp;+    }++    ret += HPDF_Array_AddReal (array, rect.left);+    ret += HPDF_Array_AddReal (array, rect.bottom);+    ret += HPDF_Array_AddReal (array, rect.right);+    ret += HPDF_Array_AddReal (array, rect.top);++    ret += HPDF_Dict_AddName (annot, "Type", "Annot");+    ret += HPDF_Dict_AddName (annot, "Subtype",+                    HPDF_ANNOT_TYPE_NAMES[(HPDF_INT)type]);++    if (ret != HPDF_OK)+        return NULL;++    annot->header.obj_class |= HPDF_OSUBCLASS_ANNOTATION;++    return annot;+}+++HPDF_STATUS+HPDF_Annotation_SetBorderStyle  (HPDF_Annotation  annot,+                                 HPDF_BSSubtype   subtype,+                                 HPDF_REAL        width,+                                 HPDF_UINT16      dash_on,+                                 HPDF_UINT16      dash_off,+                                 HPDF_UINT16      dash_phase)+{+    HPDF_Dict bs;+    HPDF_Array dash;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Annotation_SetBoderStyle\n"));++    bs = HPDF_Dict_New (annot->mmgr);+    if (!bs)+        return HPDF_Error_GetCode (annot->error);++    if ((ret = HPDF_Dict_Add (annot, "BS", bs)) != HPDF_OK)+        return ret;++    if (subtype == HPDF_BS_DASHED) {+        dash = HPDF_Array_New (annot->mmgr);+        if (!dash)+            return HPDF_Error_GetCode (annot->error);++        if ((ret = HPDF_Dict_Add (bs, "D", dash)) != HPDF_OK)+            return ret;++        ret += HPDF_Dict_AddName (bs, "Type", "Border");+        ret += HPDF_Array_AddReal (dash, dash_on);+        ret += HPDF_Array_AddReal (dash, dash_off);++        if (dash_phase  != 0)+            ret += HPDF_Array_AddReal (dash, dash_off);+    }++    switch (subtype) {+        case HPDF_BS_SOLID:+            ret += HPDF_Dict_AddName (bs, "S", "S");+            break;+        case HPDF_BS_DASHED:+            ret += HPDF_Dict_AddName (bs, "S", "D");+            break;+        case HPDF_BS_BEVELED:+            ret += HPDF_Dict_AddName (bs, "S", "B");+            break;+        case HPDF_BS_INSET:+            ret += HPDF_Dict_AddName (bs, "S", "I");+            break;+        case HPDF_BS_UNDERLINED:+            ret += HPDF_Dict_AddName (bs, "S", "U");+            break;+        default:+            return  HPDF_SetError (annot->error, HPDF_ANNOT_INVALID_BORDER_STYLE, 0);+    }++    if (width != HPDF_BS_DEF_WIDTH)+        ret += HPDF_Dict_AddReal (bs, "W", width);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (annot->error);++    return HPDF_OK;+}+++HPDF_Annotation+HPDF_LinkAnnot_New  (HPDF_MMgr         mmgr,+                     HPDF_Xref         xref,+                     HPDF_Rect         rect,+                     HPDF_Destination  dst)+{+    HPDF_Annotation annot;++    HPDF_PTRACE((" HPDF_LinkAnnot_New\n"));++    annot = HPDF_Annotation_New (mmgr, xref, HPDF_ANNOT_LINK, rect);+    if (!annot)+        return NULL;++    if (HPDF_Dict_Add (annot, "Dest", dst) != HPDF_OK)+        return NULL;++    return annot;+}+++HPDF_Annotation+HPDF_URILinkAnnot_New  (HPDF_MMgr          mmgr,+                        HPDF_Xref          xref,+                        HPDF_Rect          rect,+                        const char   *uri)+{+    HPDF_Annotation annot;+    HPDF_Dict action;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_URILinkAnnot_New\n"));++    annot = HPDF_Annotation_New (mmgr, xref, HPDF_ANNOT_LINK, rect);+    if (!annot)+        return NULL;++    /* create action dictionary */+    action = HPDF_Dict_New (mmgr);+    if (!action)+        return NULL;++    ret = HPDF_Dict_Add (annot, "A", action);+    if (ret != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_AddName (action, "Type", "Action");+    ret += HPDF_Dict_AddName (action, "S", "URI");+    ret += HPDF_Dict_Add (action, "URI", HPDF_String_New (mmgr, uri, NULL));++    if (ret != HPDF_OK)+        return NULL;++    return annot;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_LinkAnnot_SetBorderStyle  (HPDF_Annotation  annot,+                                HPDF_REAL        width,+                                HPDF_UINT16      dash_on,+                                HPDF_UINT16      dash_off)+{+    HPDF_Array array;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_LinkAnnot_SetBorderStyle\n"));++    if (!CheckSubType (annot, HPDF_ANNOT_LINK))+        return HPDF_INVALID_ANNOTATION;++    if (width < 0)+        return HPDF_RaiseError (annot->error, HPDF_INVALID_PARAMETER, 0);++    array = HPDF_Array_New (annot->mmgr);+    if (!array)+        return HPDF_CheckError (annot->error);++    if ((ret = HPDF_Dict_Add (annot, "Border", array)) != HPDF_OK)+        return HPDF_CheckError (annot->error);++    ret += HPDF_Array_AddNumber (array, 0);+    ret += HPDF_Array_AddNumber (array, 0);+    ret += HPDF_Array_AddReal (array, width);++    if (ret != HPDF_OK)+        return HPDF_CheckError (annot->error);++    if (dash_on && dash_off) {+        HPDF_Array dash = HPDF_Array_New (annot->mmgr);+        if (!dash)+            return HPDF_CheckError (annot->error);++        if ((ret = HPDF_Array_Add (array, dash)) != HPDF_OK)+            return HPDF_CheckError (annot->error);++        ret += HPDF_Array_AddNumber (dash, dash_on);+        ret += HPDF_Array_AddNumber (dash, dash_off);+    }++    if (ret != HPDF_OK)+        return HPDF_CheckError (annot->error);++    return ret;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_LinkAnnot_SetHighlightMode  (HPDF_Annotation           annot,+                                  HPDF_AnnotHighlightMode  mode)+{+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_LinkAnnot_SetHighlightMode\n"));++    if (!CheckSubType (annot, HPDF_ANNOT_LINK))+        return HPDF_INVALID_ANNOTATION;++    switch (mode) {+        case HPDF_ANNOT_NO_HIGHTLIGHT:+            ret = HPDF_Dict_AddName (annot, "H", "N");+            break;+        case HPDF_ANNOT_INVERT_BORDER:+            ret = HPDF_Dict_AddName (annot, "H", "O");+            break;+        case HPDF_ANNOT_DOWN_APPEARANCE:+            ret = HPDF_Dict_AddName (annot, "H", "P");+            break;+        default:  /* HPDF_ANNOT_INVERT_BOX */+            /* default value */+            HPDF_Dict_RemoveElement (annot, "H");+            ret = HPDF_OK;+    }++    if (ret != HPDF_OK)+        return HPDF_CheckError (annot->error);++    return ret;+}++HPDF_Annotation+HPDF_TextAnnot_New  (HPDF_MMgr       mmgr,+                     HPDF_Xref       xref,+                     HPDF_Rect       rect,+                     const char     *text,+                     HPDF_Encoder    encoder)+{+    HPDF_Annotation annot;+    HPDF_String s;++    HPDF_PTRACE((" HPDF_TextAnnot_New\n"));++    annot = HPDF_Annotation_New (mmgr, xref, HPDF_ANNOT_TEXT_NOTES, rect);+    if (!annot)+        return NULL;++    s = HPDF_String_New (mmgr, text, encoder);+    if (!s)+        return NULL;++    if (HPDF_Dict_Add (annot, "Contents", s) != HPDF_OK)+        return NULL;++    return annot;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_TextAnnot_SetIcon  (HPDF_Annotation  annot,+                         HPDF_AnnotIcon   icon)+{+    HPDF_PTRACE((" HPDF_TextAnnot_SetIcon\n"));++    if (!CheckSubType (annot, HPDF_ANNOT_TEXT_NOTES))+        return HPDF_INVALID_ANNOTATION;++    if (icon < 0 || icon >= HPDF_ANNOT_ICON_EOF)+        return HPDF_RaiseError (annot->error, HPDF_ANNOT_INVALID_ICON,+                (HPDF_STATUS)icon);++    if (HPDF_Dict_AddName (annot, "Name",+        HPDF_ANNOT_ICON_NAMES_NAMES[(HPDF_INT)icon]) != HPDF_OK)+        return HPDF_CheckError (annot->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_TextAnnot_SetOpened  (HPDF_Annotation  annot,+                           HPDF_BOOL        opened)+{+    HPDF_Boolean b;++    HPDF_PTRACE((" HPDF_TextAnnot_SetOpend\n"));++    if (!CheckSubType (annot, HPDF_ANNOT_TEXT_NOTES))+        return HPDF_INVALID_ANNOTATION;++    b = HPDF_Boolean_New (annot->mmgr, opened);+    if (!b)+        return HPDF_CheckError (annot->error);++    return  HPDF_Dict_Add (annot, "Open", b);+}+++HPDF_BOOL+HPDF_Annotation_Validate (HPDF_Annotation  annot)+{+    HPDF_PTRACE((" HPDF_Annotation_Validate\n"));++    if (!annot)+        return HPDF_FALSE;++    if (annot->header.obj_class !=+                (HPDF_OSUBCLASS_ANNOTATION | HPDF_OCLASS_DICT))+        return HPDF_FALSE;++    return HPDF_TRUE;+}++static HPDF_BOOL+CheckSubType (HPDF_Annotation  annot,+              HPDF_AnnotType  type)+{+    HPDF_Name subtype;++    HPDF_PTRACE((" HPDF_Annotation_CheckSubType\n"));++    if (!HPDF_Annotation_Validate (annot))+        return HPDF_FALSE;++    subtype = HPDF_Dict_GetItem (annot, "Subtype", HPDF_OCLASS_NAME);++    if (!subtype || HPDF_StrCmp (subtype->value,+                HPDF_ANNOT_TYPE_NAMES[(HPDF_INT)type]) != 0) {+        HPDF_RaiseError (annot->error, HPDF_INVALID_ANNOTATION, 0);+        return HPDF_FALSE;+    }++    return HPDF_TRUE;+}+
+ haru/hpdf_annotation.h view
@@ -0,0 +1,74 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_annotation.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_ANNOTATION_H+#define _HPDF_ANNOTATION_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++/*----------------------------------------------------------------------------*/+/*------ HPDF_Annotation -----------------------------------------------------*/+++HPDF_Annotation+HPDF_Annotation_New  (HPDF_MMgr       mmgr,+                      HPDF_Xref       xref,+                      HPDF_AnnotType  type,+                      HPDF_Rect       rect);+++HPDF_Annotation+HPDF_LinkAnnot_New  (HPDF_MMgr           mmgr,+                     HPDF_Xref         xref,+                     HPDF_Rect         rect,+                     HPDF_Destination  dst);+++HPDF_Annotation+HPDF_URILinkAnnot_New  (HPDF_MMgr          mmgr,+                        HPDF_Xref          xref,+                        HPDF_Rect          rect,+                        const char   *uri);+++HPDF_Annotation+HPDF_TextAnnot_New  (HPDF_MMgr        mmgr,+                     HPDF_Xref        xref,+                     HPDF_Rect        rect,+                     const char  *text,+                     HPDF_Encoder     encoder);+++HPDF_STATUS+HPDF_Annotation_SetBorderStyle  (HPDF_Annotation  annot,+                                 HPDF_BSSubtype   subtype,+                                 HPDF_REAL        width,+                                 HPDF_UINT16      dash_on,+                                 HPDF_UINT16      dash_off,+                                 HPDF_UINT16      dash_phase);+++HPDF_BOOL+HPDF_Annotation_Validate (HPDF_Annotation  annot);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_ANNOTATION_H */+
+ haru/hpdf_array.c view
@@ -0,0 +1,344 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_array.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"++HPDF_Array+HPDF_Array_New  (HPDF_MMgr  mmgr)+{+    HPDF_Array obj;++    HPDF_PTRACE((" HPDF_Array_New\n"));++    obj = HPDF_GetMem (mmgr, sizeof(HPDF_Array_Rec));+    if (obj) {+        HPDF_MemSet (obj, 0, sizeof(HPDF_Array_Rec));+        obj->header.obj_class = HPDF_OCLASS_ARRAY;+        obj->mmgr = mmgr;+        obj->error = mmgr->error;+        obj->list = HPDF_List_New (mmgr, HPDF_DEF_ITEMS_PER_BLOCK);+        if (!obj->list) {+            HPDF_FreeMem (mmgr, obj);+            obj = NULL;+        }+    }++    return obj;+}+++HPDF_Array+HPDF_Box_Array_New  (HPDF_MMgr  mmgr,+                     HPDF_Box   box)+{+    HPDF_Array  obj;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE((" HPDF_Box_Array_New\n"));++    obj = HPDF_Array_New (mmgr);+    if (!obj)+        return NULL;++    ret += HPDF_Array_Add (obj, HPDF_Real_New (mmgr, box.left));+    ret += HPDF_Array_Add (obj, HPDF_Real_New (mmgr, box.bottom));+    ret += HPDF_Array_Add (obj, HPDF_Real_New (mmgr, box.right));+    ret += HPDF_Array_Add (obj, HPDF_Real_New (mmgr, box.top));++    if (ret != HPDF_OK) {+        HPDF_Array_Free (obj);+        return NULL;+    }++    return obj;+}+++void+HPDF_Array_Free  (HPDF_Array  array)+{+    if (!array)+        return;++    HPDF_PTRACE((" HPDF_Array_Free\n"));++    HPDF_Array_Clear (array);++    HPDF_List_Free (array->list);++    array->header.obj_class = 0;++    HPDF_FreeMem (array->mmgr, array);+}+++HPDF_STATUS+HPDF_Array_Write  (HPDF_Array    array,+                   HPDF_Stream   stream,+                   HPDF_Encrypt  e)+{+    HPDF_UINT i;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Array_Write\n"));++    ret = HPDF_Stream_WriteStr (stream, "[ ");+    if (ret != HPDF_OK)+        return ret;++    for (i = 0; i < array->list->count; i++) {+        void * element = HPDF_List_ItemAt (array->list, i);++        ret = HPDF_Obj_Write (element, stream, e);+        if (ret != HPDF_OK)+            return ret;++        ret = HPDF_Stream_WriteChar (stream, ' ');+        if (ret != HPDF_OK)+            return ret;+    }++    ret = HPDF_Stream_WriteChar (stream, ']');++    return ret;+}+++HPDF_STATUS+HPDF_Array_AddNumber  (HPDF_Array  array,+                       HPDF_INT32  value)+{+    HPDF_Number n = HPDF_Number_New (array->mmgr, value);++    HPDF_PTRACE((" HPDF_Array_AddNumber\n"));++    if (!n)+        return HPDF_Error_GetCode (array->error);+    else+        return HPDF_Array_Add (array, n);+}+++HPDF_STATUS+HPDF_Array_AddReal  (HPDF_Array  array,+                     HPDF_REAL   value)+{+    HPDF_Real r = HPDF_Real_New (array->mmgr, value);++    HPDF_PTRACE((" HPDF_Array_AddReal\n"));++    if (!r)+        return HPDF_Error_GetCode (array->error);+    else+        return HPDF_Array_Add (array, r);+}+++HPDF_STATUS+HPDF_Array_AddName  (HPDF_Array       array,+                     const char  *value)+{+    HPDF_Name n = HPDF_Name_New (array->mmgr, value);++    HPDF_PTRACE((" HPDF_Array_AddName\n"));++    if (!n)+        return HPDF_Error_GetCode (array->error);+    else+        return HPDF_Array_Add (array, n);+}++HPDF_STATUS+HPDF_Array_Add  (HPDF_Array  array,+                 void        *obj)+{+    HPDF_Obj_Header *header;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Array_Add\n"));++    if (!obj) {+        if (HPDF_Error_GetCode (array->error) == HPDF_OK)+            return HPDF_SetError (array->error, HPDF_INVALID_OBJECT, 0);+        else+            return HPDF_INVALID_OBJECT;+    }++    header = (HPDF_Obj_Header *)obj;++    if (header->obj_id & HPDF_OTYPE_DIRECT)+        return HPDF_SetError (array->error, HPDF_INVALID_OBJECT, 0);++    if (array->list->count >= HPDF_LIMIT_MAX_ARRAY) {+        HPDF_PTRACE((" HPDF_Array_Add exceed limitatin of array count(%d)\n",+                    HPDF_LIMIT_MAX_ARRAY));++        HPDF_Obj_Free (array->mmgr, obj);+        return HPDF_SetError (array->error, HPDF_ARRAY_COUNT_ERR, 0);+    }++    if (header->obj_id & HPDF_OTYPE_INDIRECT) {+        HPDF_Proxy proxy = HPDF_Proxy_New (array->mmgr, obj);++        if (!proxy) {+            HPDF_Obj_Free (array->mmgr, obj);+            return HPDF_Error_GetCode (array->error);+        }++        proxy->header.obj_id |= HPDF_OTYPE_DIRECT;+        obj = proxy;+    } else+        header->obj_id |= HPDF_OTYPE_DIRECT;++    ret = HPDF_List_Add (array->list, obj);+    if (ret != HPDF_OK)+        HPDF_Obj_Free (array->mmgr, obj);++    return ret;+}+++HPDF_STATUS+HPDF_Array_Insert  (HPDF_Array  array,+                    void        *target,+                    void        *obj)+{+    HPDF_Obj_Header *header;+    HPDF_STATUS ret;+    HPDF_UINT i;++    HPDF_PTRACE((" HPDF_Array_Insert\n"));++    if (!obj) {+        if (HPDF_Error_GetCode (array->error) == HPDF_OK)+            return HPDF_SetError (array->error, HPDF_INVALID_OBJECT, 0);+        else+            return HPDF_INVALID_OBJECT;+    }++    header = (HPDF_Obj_Header *)obj;++    if (header->obj_id & HPDF_OTYPE_DIRECT) {+        HPDF_PTRACE((" HPDF_Array_Add this object cannot owned by array "+                "obj=0x%08X\n", (HPDF_UINT)array));++        return HPDF_SetError (array->error, HPDF_INVALID_OBJECT, 0);+    }++    if (array->list->count >= HPDF_LIMIT_MAX_ARRAY) {+        HPDF_PTRACE((" HPDF_Array_Add exceed limitatin of array count(%d)\n",+                    HPDF_LIMIT_MAX_ARRAY));++        HPDF_Obj_Free (array->mmgr, obj);++        return HPDF_SetError (array->error, HPDF_ARRAY_COUNT_ERR, 0);+    }++    if (header->obj_id & HPDF_OTYPE_INDIRECT) {+        HPDF_Proxy proxy = HPDF_Proxy_New (array->mmgr, obj);++        if (!proxy) {+            HPDF_Obj_Free (array->mmgr, obj);+            return HPDF_Error_GetCode (array->error);+        }++        proxy->header.obj_id |= HPDF_OTYPE_DIRECT;+        obj = proxy;+    } else+        header->obj_id |= HPDF_OTYPE_DIRECT;++    /* get the target-object from object-list+     * consider that the pointer contained in list may be proxy-object.+     */+    for (i = 0; i < array->list->count; i++) {+        void *ptr = HPDF_List_ItemAt (array->list, i);+        void *obj_ptr;++        header = (HPDF_Obj_Header *)obj;+        if (header->obj_class == HPDF_OCLASS_PROXY)+            obj_ptr = ((HPDF_Proxy)ptr)->obj;+        else+            obj_ptr = ptr;++        if (obj_ptr == target) {+            ret = HPDF_List_Insert (array->list, ptr, obj);+            if (ret != HPDF_OK)+                HPDF_Obj_Free (array->mmgr, obj);++            return ret;+        }+    }++    HPDF_Obj_Free (array->mmgr, obj);++    return HPDF_ITEM_NOT_FOUND;+}+++void*+HPDF_Array_GetItem  (HPDF_Array   array,+                     HPDF_UINT    index,+                     HPDF_UINT16  obj_class)+{+    void *obj;+    HPDF_Obj_Header *header;++    HPDF_PTRACE((" HPDF_Array_GetItem\n"));++    obj = HPDF_List_ItemAt (array->list, index);++    if (!obj) {+        HPDF_SetError (array->error, HPDF_ARRAY_ITEM_NOT_FOUND, 0);+        return NULL;+    }++    header = (HPDF_Obj_Header *)obj;++    if (header->obj_class == HPDF_OCLASS_PROXY) {+        obj = ((HPDF_Proxy)obj)->obj;+        header = (HPDF_Obj_Header *)obj;+    }++    if ((header->obj_class & HPDF_OCLASS_ANY) != obj_class) {+        HPDF_SetError (array->error, HPDF_ARRAY_ITEM_UNEXPECTED_TYPE, 0);++        return NULL;+    }++    return obj;+}++void+HPDF_Array_Clear  (HPDF_Array  array)+{+    HPDF_UINT i;++    HPDF_PTRACE((" HPDF_Array_Clear\n"));++    if (!array)+        return;++    for (i = 0; i < array->list->count; i++) {+        void * obj = HPDF_List_ItemAt (array->list, i);++        if (obj) {+            HPDF_Obj_Free (array->mmgr, obj);+        }+    }++    HPDF_List_Clear (array->list);+}+
+ haru/hpdf_binary.c view
@@ -0,0 +1,117 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_binary.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"+++HPDF_Binary+HPDF_Binary_New  (HPDF_MMgr  mmgr,+                  HPDF_BYTE  *value,+                  HPDF_UINT  len)+{+    HPDF_Binary obj;++    obj  = HPDF_GetMem (mmgr, sizeof(HPDF_Binary_Rec));++    if (obj) {+        HPDF_MemSet(&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_BINARY;++        obj->mmgr = mmgr;+        obj->error = mmgr->error;+        obj->value = NULL;+        obj->len = 0;+        if (HPDF_Binary_SetValue (obj, value, len) != HPDF_OK) {+            HPDF_FreeMem (mmgr, obj);+            return NULL;+        }+    }++    return obj;+}++HPDF_STATUS+HPDF_Binary_Write  (HPDF_Binary   obj,+                    HPDF_Stream   stream,+                    HPDF_Encrypt  e)+{+    HPDF_STATUS ret;++    if (obj->len == 0)+        return HPDF_Stream_WriteStr (stream, "<>");++    if ((ret = HPDF_Stream_WriteChar (stream, '<')) != HPDF_OK)+        return ret;++    if (e)+        HPDF_Encrypt_Reset (e);++    if ((ret = HPDF_Stream_WriteBinary (stream, obj->value, obj->len, e)) !=+                    HPDF_OK)+        return ret;++    return HPDF_Stream_WriteChar (stream, '>');+}+++HPDF_STATUS+HPDF_Binary_SetValue  (HPDF_Binary  obj,+                       HPDF_BYTE    *value,+                       HPDF_UINT    len)+{+    if (len > HPDF_LIMIT_MAX_STRING_LEN)+        return HPDF_SetError (obj->error, HPDF_BINARY_LENGTH_ERR, 0);++    if (obj->value) {+        HPDF_FreeMem (obj->mmgr, obj->value);+        obj->len = 0;+    }++    obj->value = HPDF_GetMem (obj->mmgr, len);+    if (!obj->value)+        return HPDF_Error_GetCode (obj->error);++    HPDF_MemCpy (obj->value, value, len);+    obj->len = len;++    return HPDF_OK;+}+++void+HPDF_Binary_Free  (HPDF_Binary  obj)+{+    if (!obj)+        return;++    if (obj->value)+        HPDF_FreeMem (obj->mmgr, obj->value);++    HPDF_FreeMem (obj->mmgr, obj);+}++HPDF_UINT+HPDF_Binary_GetLen  (HPDF_Binary  obj)+{+    return obj->len;+}++HPDF_BYTE*+HPDF_Binary_GetValue  (HPDF_Binary  obj)+{+    return obj->value;+}+
+ haru/hpdf_boolean.c view
@@ -0,0 +1,47 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_boolean.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_utils.h"+#include "hpdf_objects.h"++HPDF_Boolean+HPDF_Boolean_New  (HPDF_MMgr  mmgr,+                   HPDF_BOOL  value)+{+    HPDF_Boolean obj = HPDF_GetMem (mmgr, sizeof(HPDF_Boolean_Rec));++    if (obj) {+        HPDF_MemSet(&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_BOOLEAN;+        obj->value = value;+    }++    return obj;+}+++HPDF_STATUS+HPDF_Boolean_Write  (HPDF_Boolean  obj,+                     HPDF_Stream   stream)+{+    HPDF_STATUS ret;++    if (obj->value)+        ret = HPDF_Stream_WriteStr (stream, "true");+    else+        ret = HPDF_Stream_WriteStr (stream, "false");++    return ret;+}+
+ haru/hpdf_catalog.c view
@@ -0,0 +1,354 @@+/*+ * << Haru Free PDF Library 2.0.5 >> -- hpdf_catalog.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.08.07 modified.+ * 2006.09.01 added ViewerPreference functions.+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_catalog.h"+#include "hpdf_pages.h"++static const char *HPDF_PAGE_LAYOUT_NAMES[] = {+                        "SinglePage",+                        "OneColumn",+                        "TwoColumnLeft",+                        "TwoColumnRight",+                        NULL+};+++static const char *HPDF_PAGE_MODE_NAMES[] = {+                        "UseNone",+                        "UseOutlines",+                        "UseThumbs",+                        "FullScreen",+                        "UseOC",+                        "UseAttachments",+                        NULL+};+++HPDF_Catalog+HPDF_Catalog_New  (HPDF_MMgr  mmgr,+                   HPDF_Xref  xref)+{+    HPDF_Catalog catalog;+    HPDF_STATUS ret = 0;++    catalog = HPDF_Dict_New (mmgr);+    if (!catalog)+        return NULL;++    catalog->header.obj_class |= HPDF_OSUBCLASS_CATALOG;++    if (HPDF_Xref_Add (xref, catalog) != HPDF_OK)+        return NULL;++    /* add requiered elements */+    ret += HPDF_Dict_AddName (catalog, "Type", "Catalog");+    ret += HPDF_Dict_Add (catalog, "Pages", HPDF_Pages_New (mmgr, NULL, xref));++    if (ret != HPDF_OK)+        return NULL;++    return catalog;+}+++HPDF_Pages+HPDF_Catalog_GetRoot  (HPDF_Catalog  catalog)+{+    HPDF_Dict pages;++    if (!catalog)+        return NULL;++    pages = HPDF_Dict_GetItem (catalog, "Pages", HPDF_OCLASS_DICT);+    if (!pages || pages->header.obj_class != (HPDF_OSUBCLASS_PAGES |+                HPDF_OCLASS_DICT))+        HPDF_SetError (catalog->error, HPDF_PAGE_CANNOT_GET_ROOT_PAGES, 0);++    return pages;+}+++HPDF_PageLayout+HPDF_Catalog_GetPageLayout  (HPDF_Catalog  catalog)+{+    HPDF_Name layout;+    HPDF_UINT i = 0;++    layout = (HPDF_Name)HPDF_Dict_GetItem (catalog, "PageLayout",+            HPDF_OCLASS_NAME);+    if (!layout)+        return HPDF_PAGE_LAYOUT_EOF;++    while (HPDF_PAGE_LAYOUT_NAMES[i]) {+        if (HPDF_StrCmp (layout->value, HPDF_PAGE_LAYOUT_NAMES[i]) == 0)+            return (HPDF_PageLayout)i;+        i++;+    }++    return HPDF_PAGE_LAYOUT_EOF;+}+++HPDF_STATUS+HPDF_Catalog_SetPageLayout  (HPDF_Catalog      catalog,+                             HPDF_PageLayout   layout)+{+    return HPDF_Dict_AddName (catalog, "PageLayout",+                    HPDF_PAGE_LAYOUT_NAMES[(HPDF_INT)layout]);+}+++++HPDF_PageMode+HPDF_Catalog_GetPageMode  (HPDF_Catalog  catalog)+{+    HPDF_Name mode;+    HPDF_UINT i = 0;++    mode = (HPDF_Name)HPDF_Dict_GetItem (catalog, "PageMode", HPDF_OCLASS_NAME);+    if (!mode)+        return HPDF_PAGE_MODE_USE_NONE;++    while (HPDF_PAGE_MODE_NAMES[i]) {+        if (HPDF_StrCmp (mode->value, HPDF_PAGE_MODE_NAMES[i]) == 0)+            return (HPDF_PageMode)i;+        i++;+    }++    return HPDF_PAGE_MODE_USE_NONE;+}+++HPDF_STATUS+HPDF_Catalog_SetPageMode  (HPDF_Catalog   catalog,+                           HPDF_PageMode  mode)+{+    return HPDF_Dict_AddName (catalog, "PageMode",+                    HPDF_PAGE_MODE_NAMES[(HPDF_INT)mode]);+}+++HPDF_STATUS+HPDF_Catalog_SetOpenAction  (HPDF_Catalog       catalog,+                             HPDF_Destination   open_action)+{+    if (!open_action) {+        HPDF_Dict_RemoveElement (catalog, "OpenAction");+        return HPDF_OK;+    }++    return HPDF_Dict_Add (catalog, "OpenAction", open_action);+}+++HPDF_BOOL+HPDF_Catalog_Validate  (HPDF_Catalog   catalog)+{+    if (!catalog)+        return HPDF_FALSE;++    if (catalog->header.obj_class != (HPDF_OSUBCLASS_CATALOG |+                HPDF_OCLASS_DICT)) {+        HPDF_SetError (catalog->error, HPDF_INVALID_OBJECT, 0);+        return HPDF_FALSE;+    }++    return HPDF_TRUE;+}+++HPDF_STATUS+HPDF_Catalog_AddPageLabel  (HPDF_Catalog   catalog,+                            HPDF_UINT      page_num,+                            HPDF_Dict      page_label)+{+    HPDF_STATUS ret;+    HPDF_Array nums;+    HPDF_Dict labels = HPDF_Dict_GetItem (catalog, "PageLabels",+        HPDF_OCLASS_DICT);++    HPDF_PTRACE ((" HPDF_Catalog_AddPageLabel\n"));++    if (!labels) {+        labels = HPDF_Dict_New (catalog->mmgr);++        if (!labels)+            return catalog->error->error_no;++        if ((ret = HPDF_Dict_Add (catalog, "PageLabels", labels)) != HPDF_OK)+            return ret;+    }++    nums = HPDF_Dict_GetItem (labels, "Nums", HPDF_OCLASS_ARRAY);++    if (!nums) {+        nums = HPDF_Array_New (catalog->mmgr);++        if (!nums)+            return catalog->error->error_no;++        if ((ret = HPDF_Dict_Add (labels, "Nums", nums)) != HPDF_OK)+            return ret;+    }++    if ((ret = HPDF_Array_AddNumber (nums, page_num)) != HPDF_OK)+        return ret;++    return HPDF_Array_Add (nums, page_label);+}++HPDF_STATUS+HPDF_Catalog_SetViewerPreference  (HPDF_Catalog   catalog,+                                   HPDF_UINT      value)+{+    HPDF_STATUS ret;+    HPDF_Dict preferences;++    HPDF_PTRACE ((" HPDF_Catalog_SetViewerPreference\n"));++    if (!value) {+        ret = HPDF_Dict_RemoveElement (catalog, "ViewerPreferences");++        if (ret == HPDF_DICT_ITEM_NOT_FOUND)+            ret = HPDF_OK;++        return ret;+    }++    preferences = HPDF_Dict_New (catalog->mmgr);+    if (!preferences)+        return catalog->error->error_no;++    if ((ret = HPDF_Dict_Add (catalog, "ViewerPreferences", preferences))+            != HPDF_OK)+        return ret;++    /*  */++    if (value & HPDF_HIDE_TOOLBAR) {+        if ((ret = HPDF_Dict_AddBoolean (preferences, "HideToolbar",+                HPDF_TRUE)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Dict_RemoveElement (preferences, "HideToolbar")) !=+                HPDF_OK)+            if (ret != HPDF_DICT_ITEM_NOT_FOUND)+                return ret;+    }++    if (value & HPDF_HIDE_MENUBAR) {+        if ((ret = HPDF_Dict_AddBoolean (preferences, "HideMenubar",+                HPDF_TRUE)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Dict_RemoveElement (preferences, "HideMenubar")) !=+                HPDF_OK)+            if (ret != HPDF_DICT_ITEM_NOT_FOUND)+                return ret;+    }++    if (value & HPDF_HIDE_WINDOW_UI) {+        if ((ret = HPDF_Dict_AddBoolean (preferences, "HideWindowUI",+                HPDF_TRUE)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Dict_RemoveElement (preferences, "HideWindowUI")) !=+                HPDF_OK)+            if (ret != HPDF_DICT_ITEM_NOT_FOUND)+                return ret;+    }++    if (value & HPDF_FIT_WINDOW) {+        if ((ret = HPDF_Dict_AddBoolean (preferences, "FitWindow",+                HPDF_TRUE)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Dict_RemoveElement (preferences, "FitWindow")) !=+                HPDF_OK)+            if (ret != HPDF_DICT_ITEM_NOT_FOUND)+                return ret;+    }++    if (value & HPDF_CENTER_WINDOW) {+        if ((ret = HPDF_Dict_AddBoolean (preferences, "CenterWindow",+                HPDF_TRUE)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Dict_RemoveElement (preferences, "CenterWindow")) !=+                HPDF_OK)+            if (ret != HPDF_DICT_ITEM_NOT_FOUND)+                return ret;+    }++    return HPDF_OK;+}++HPDF_UINT+HPDF_Catalog_GetViewerPreference  (HPDF_Catalog   catalog)+{+    HPDF_Dict preferences;+    HPDF_UINT value = 0;+    HPDF_Boolean obj;++    HPDF_PTRACE ((" HPDF_Catalog_GetViewerPreference\n"));++    preferences = (HPDF_Dict)HPDF_Dict_GetItem (catalog, "ViewerPreferences",+            HPDF_OCLASS_DICT);++    if (!preferences)+        return 0;++    obj = (HPDF_Boolean)HPDF_Dict_GetItem (preferences, "HideToolbar",+            HPDF_OCLASS_BOOLEAN);+    if (obj) {+        if (obj->value)+            value += HPDF_HIDE_TOOLBAR;+    }++    obj = (HPDF_Boolean)HPDF_Dict_GetItem (preferences, "HideMenubar",+            HPDF_OCLASS_BOOLEAN);+    if (obj) {+        if (obj->value)+            value += HPDF_HIDE_MENUBAR;+    }++    obj = (HPDF_Boolean)HPDF_Dict_GetItem (preferences, "HideWindowUI",+            HPDF_OCLASS_BOOLEAN);+    if (obj) {+        if (obj->value)+            value += HPDF_HIDE_WINDOW_UI;+    }++    obj = (HPDF_Boolean)HPDF_Dict_GetItem (preferences, "FitWindow",+            HPDF_OCLASS_BOOLEAN);+    if (obj) {+        if (obj->value)+            value += HPDF_FIT_WINDOW;+    }++    obj = (HPDF_Boolean)HPDF_Dict_GetItem (preferences, "CenterWindow",+            HPDF_OCLASS_BOOLEAN);+    if (obj) {+        if (obj->value)+            value += HPDF_CENTER_WINDOW;+    }++    return value;+}+
+ haru/hpdf_catalog.h view
@@ -0,0 +1,81 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_catalog.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_CATALOG_H+#define _HPDF_CATALOG_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++typedef HPDF_Dict HPDF_Catalog;++HPDF_Catalog+HPDF_Catalog_New  (HPDF_MMgr  mmgr,+                   HPDF_Xref  xref);+++HPDF_Pages+HPDF_Catalog_GetRoot  (HPDF_Catalog  catalog);+++HPDF_PageLayout+HPDF_Catalog_GetPageLayout  (HPDF_Catalog  catalog);+++HPDF_STATUS+HPDF_Catalog_SetPageLayout  (HPDF_Catalog      catalog,+                             HPDF_PageLayout   layout);+++HPDF_PageMode+HPDF_Catalog_GetPageMode  (HPDF_Catalog  catalog);+++HPDF_STATUS+HPDF_Catalog_SetPageMode  (HPDF_Catalog   catalog,+                           HPDF_PageMode  mode);+++HPDF_STATUS+HPDF_Catalog_SetOpenAction  (HPDF_Catalog       catalog,+                             HPDF_Destination   open_action);+++HPDF_STATUS+HPDF_Catalog_AddPageLabel  (HPDF_Catalog   catalog,+                            HPDF_UINT      page_num,+                            HPDF_Dict      page_label);+++HPDF_UINT+HPDF_Catalog_GetViewerPreference  (HPDF_Catalog   catalog);+++HPDF_STATUS+HPDF_Catalog_SetViewerPreference  (HPDF_Catalog   catalog,+                                   HPDF_UINT      value);+++HPDF_BOOL+HPDF_Catalog_Validate  (HPDF_Catalog  catalog);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_CATALOG_H */+
+ haru/hpdf_conf.h view
@@ -0,0 +1,76 @@+/*+ * << Haru Free PDF Library 2.0.7 >> -- hpdf_conf.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_CONF_H+#define _HPDF_CONF_H++#include <stdlib.h>+#include <stdio.h>+#include <math.h>++/*----------------------------------------------------------------------------*/+/*----- standard C library functions -----------------------------------------*/++#define HPDF_FOPEN                  fopen+#define HPDF_FCLOSE                 fclose+#define HPDF_FREAD                  fread+#define HPDF_FWRITE                 fwrite+#define HPDF_FFLUSH                 fflush+#define HPDF_FSEEK                  fseek+#define HPDF_FTELL                  ftell+#define HPDF_FEOF                   feof+#define HPDF_FERROR                 ferror+#define HPDF_MALLOC                 malloc+#define HPDF_FREE                   free+#define HPDF_FILEP                  FILE*+#define HPDF_TIME                   time+#define HPDF_PRINTF                 printf+#define HPDF_SIN                    sin+#define HPDF_COS                    cos++/*----------------------------------------------------------------------------*/+/*----- parameters in relation to performance --------------------------------*/++/* default buffer size of memory-stream-object */+#define HPDF_STREAM_BUF_SIZ         4096++/* default array size of list-object */+#define HPDF_DEF_ITEMS_PER_BLOCK    20++/* default array size of cross-reference-table */+#define HPDF_DEFALUT_XREF_ENTRY_NUM 1024++/* default array size of widths-table of cid-fontdef */+#define HPDF_DEF_CHAR_WIDTHS_NUM    128++/* default array size of page-list-tablef */+#define HPDF_DEF_PAGE_LIST_NUM      256++/* default array size of range-table of cid-fontdef */+#define HPDF_DEF_RANGE_TBL_NUM      128++/* default buffer size of memory-pool-object */+#define HPDF_MPOOL_BUF_SIZ          8192+#define HPDF_MIN_MPOOL_BUF_SIZ      256+#define HPDF_MAX_MPOOL_BUF_SIZ      1048576++/* alignment size of memory-pool-object+ */+#define HPDF_ALIGN_SIZ              sizeof int;+++#endif /* _HPDF_CONF_H */+
+ haru/hpdf_consts.h view
@@ -0,0 +1,549 @@+/*+ * << Haru Free PDF Library 2.0.8 >> -- hpdf_consts.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */+++#ifndef _HPDF_CONSTS_H+#define _HPDF_CONSTS_H++/*----------------------------------------------------------------------------*/++#define  HPDF_TRUE                  1+#define  HPDF_FALSE                 0++#define  HPDF_OK                    0+#define  HPDF_NOERROR               0++/*----- default values -------------------------------------------------------*/++/* buffer size which is required when we convert to character string. */+#define HPDF_TMP_BUF_SIZ            512+#define HPDF_SHORT_BUF_SIZ          32+#define HPDF_REAL_LEN               11+#define HPDF_INT_LEN                11+#define HPDF_TEXT_DEFAULT_LEN       256+#define HPDF_UNICODE_HEADER_LEN     2+#define HPDF_DATE_TIME_STR_LEN      23++/* length of each item defined in PDF */+#define HPDF_BYTE_OFFSET_LEN        10+#define HPDF_OBJ_ID_LEN             7+#define HPDF_GEN_NO_LEN             5++/* default value of Graphic State */+#define HPDF_DEF_FONT               "Helvetica"+#define HPDF_DEF_PAGE_LAYOUT        HPDF_PAGE_LAYOUT_SINGLE+#define HPDF_DEF_PAGE_MODE          HPDF_PAGE_MODE_USE_NONE+#define HPDF_DEF_WORDSPACE          0+#define HPDF_DEF_CHARSPACE          0+#define HPDF_DEF_FONTSIZE           10+#define HPDF_DEF_HSCALING           100+#define HPDF_DEF_LEADING            0+#define HPDF_DEF_RENDERING_MODE     HPDF_FILL+#define HPDF_DEF_RISE               0+#define HPDF_DEF_RAISE              HPDF_DEF_RISE+#define HPDF_DEF_LINEWIDTH          1+#define HPDF_DEF_LINECAP            HPDF_BUTT_END+#define HPDF_DEF_LINEJOIN           HPDF_MITER_JOIN+#define HPDF_DEF_MITERLIMIT         10+#define HPDF_DEF_FLATNESS           1+#define HPDF_DEF_PAGE_NUM           1++#define HPDF_BS_DEF_WIDTH           1++/* defalt page-size */+#define HPDF_DEF_PAGE_WIDTH         595.276F+#define HPDF_DEF_PAGE_HEIGHT        841.89F++#define HPDF_VERSION_TEXT       "2.0.8"++/*---------------------------------------------------------------------------*/+/*----- compression mode ----------------------------------------------------*/++#define  HPDF_COMP_NONE            0x00+#define  HPDF_COMP_TEXT            0x01+#define  HPDF_COMP_IMAGE           0x02+#define  HPDF_COMP_METADATA        0x04+#define  HPDF_COMP_ALL             0x0F+/* #define  HPDF_COMP_BEST_COMPRESS   0x10+ * #define  HPDF_COMP_BEST_SPEED      0x20+ */+#define  HPDF_COMP_MASK            0xFF+++/*----------------------------------------------------------------------------*/+/*----- permission flags (only Revision 2 is supported)-----------------------*/++#define HPDF_ENABLE_READ         0+#define HPDF_ENABLE_PRINT        4+#define HPDF_ENABLE_EDIT_ALL     8+#define HPDF_ENABLE_COPY         16+#define HPDF_ENABLE_EDIT         32+++/*----------------------------------------------------------------------------*/+/*------ viewer preferences definitions --------------------------------------*/++#define HPDF_HIDE_TOOLBAR    1+#define HPDF_HIDE_MENUBAR    2+#define HPDF_HIDE_WINDOW_UI  4+#define HPDF_FIT_WINDOW      8+#define HPDF_CENTER_WINDOW   16+++/*---------------------------------------------------------------------------*/+/*------ limitation of object implementation (PDF1.4) -----------------------*/++#define HPDF_LIMIT_MAX_INT             2147483647+#define HPDF_LIMIT_MIN_INT             -2147483647++#define HPDF_LIMIT_MAX_REAL            32767+#define HPDF_LIMIT_MIN_REAL            -32767++#define HPDF_LIMIT_MAX_STRING_LEN      65535+#define HPDF_LIMIT_MAX_NAME_LEN        127++#define HPDF_LIMIT_MAX_ARRAY           8191+#define HPDF_LIMIT_MAX_DICT_ELEMENT    4095+#define HPDF_LIMIT_MAX_XREF_ELEMENT    8388607+#define HPDF_LIMIT_MAX_GSTATE          28+#define HPDF_LIMIT_MAX_DEVICE_N        8+#define HPDF_LIMIT_MAX_DEVICE_N_V15    32+#define HPDF_LIMIT_MAX_CID             65535+#define HPDF_MAX_GENERATION_NUM        65535++#define HPDF_MIN_PAGE_HEIGHT           3+#define HPDF_MIN_PAGE_WIDTH            3+#define HPDF_MAX_PAGE_HEIGHT           14400+#define HPDF_MAX_PAGE_WIDTH            14400+#define HPDF_MIN_MAGNIFICATION_FACTOR  8+#define HPDF_MAX_MAGNIFICATION_FACTOR  3200++/*---------------------------------------------------------------------------*/+/*------ limitation of various properties -----------------------------------*/++#define HPDF_MIN_PAGE_SIZE          3+#define HPDF_MAX_PAGE_SIZE          14400+#define HPDF_MIN_HORIZONTALSCALING  10+#define HPDF_MAX_HORIZONTALSCALING  300+#define HPDF_MIN_WORDSPACE          -30+#define HPDF_MAX_WORDSPACE          300+#define HPDF_MIN_CHARSPACE          -30+#define HPDF_MAX_CHARSPACE          300+#define HPDF_MAX_FONTSIZE           300+#define HPDF_MAX_ZOOMSIZE           10+#define HPDF_MAX_LEADING            300+#define HPDF_MAX_LINEWIDTH          100+#define HPDF_MAX_DASH_PATTERN       100++#define HPDF_MAX_JWW_NUM            128++/*----------------------------------------------------------------------------*/+/*----- country code definition ----------------------------------------------*/++#define HPDF_COUNTRY_AF  "AF"    /* AFGHANISTAN */+#define HPDF_COUNTRY_AL  "AL"    /* ALBANIA */+#define HPDF_COUNTRY_DZ  "DZ"    /* ALGERIA */+#define HPDF_COUNTRY_AS  "AS"    /* AMERICAN SAMOA */+#define HPDF_COUNTRY_AD  "AD"    /* ANDORRA */+#define HPDF_COUNTRY_AO  "AO"    /* ANGOLA */+#define HPDF_COUNTRY_AI  "AI"    /* ANGUILLA */+#define HPDF_COUNTRY_AQ  "AQ"    /* ANTARCTICA */+#define HPDF_COUNTRY_AG  "AG"    /* ANTIGUA AND BARBUDA */+#define HPDF_COUNTRY_AR  "AR"    /* ARGENTINA */+#define HPDF_COUNTRY_AM  "AM"    /* ARMENIA */+#define HPDF_COUNTRY_AW  "AW"    /* ARUBA */+#define HPDF_COUNTRY_AU  "AU"    /* AUSTRALIA */+#define HPDF_COUNTRY_AT  "AT"    /* AUSTRIA */+#define HPDF_COUNTRY_AZ  "AZ"    /* AZERBAIJAN */+#define HPDF_COUNTRY_BS  "BS"    /* BAHAMAS */+#define HPDF_COUNTRY_BH  "BH"    /* BAHRAIN */+#define HPDF_COUNTRY_BD  "BD"    /* BANGLADESH */+#define HPDF_COUNTRY_BB  "BB"    /* BARBADOS */+#define HPDF_COUNTRY_BY  "BY"    /* BELARUS */+#define HPDF_COUNTRY_BE  "BE"    /* BELGIUM */+#define HPDF_COUNTRY_BZ  "BZ"    /* BELIZE */+#define HPDF_COUNTRY_BJ  "BJ"    /* BENIN */+#define HPDF_COUNTRY_BM  "BM"    /* BERMUDA */+#define HPDF_COUNTRY_BT  "BT"    /* BHUTAN */+#define HPDF_COUNTRY_BO  "BO"    /* BOLIVIA */+#define HPDF_COUNTRY_BA  "BA"    /* BOSNIA AND HERZEGOWINA */+#define HPDF_COUNTRY_BW  "BW"    /* BOTSWANA */+#define HPDF_COUNTRY_BV  "BV"    /* BOUVET ISLAND */+#define HPDF_COUNTRY_BR  "BR"    /* BRAZIL */+#define HPDF_COUNTRY_IO  "IO"    /* BRITISH INDIAN OCEAN TERRITORY */+#define HPDF_COUNTRY_BN  "BN"    /* BRUNEI DARUSSALAM */+#define HPDF_COUNTRY_BG  "BG"    /* BULGARIA */+#define HPDF_COUNTRY_BF  "BF"    /* BURKINA FASO */+#define HPDF_COUNTRY_BI  "BI"    /* BURUNDI */+#define HPDF_COUNTRY_KH  "KH"    /* CAMBODIA */+#define HPDF_COUNTRY_CM  "CM"    /* CAMEROON */+#define HPDF_COUNTRY_CA  "CA"    /* CANADA */+#define HPDF_COUNTRY_CV  "CV"    /* CAPE VERDE */+#define HPDF_COUNTRY_KY  "KY"    /* CAYMAN ISLANDS */+#define HPDF_COUNTRY_CF  "CF"    /* CENTRAL AFRICAN REPUBLIC */+#define HPDF_COUNTRY_TD  "TD"    /* CHAD */+#define HPDF_COUNTRY_CL  "CL"    /* CHILE */+#define HPDF_COUNTRY_CN  "CN"    /* CHINA */+#define HPDF_COUNTRY_CX  "CX"    /* CHRISTMAS ISLAND */+#define HPDF_COUNTRY_CC  "CC"    /* COCOS (KEELING) ISLANDS */+#define HPDF_COUNTRY_CO  "CO"    /* COLOMBIA */+#define HPDF_COUNTRY_KM  "KM"    /* COMOROS */+#define HPDF_COUNTRY_CG  "CG"    /* CONGO */+#define HPDF_COUNTRY_CK  "CK"    /* COOK ISLANDS */+#define HPDF_COUNTRY_CR  "CR"    /* COSTA RICA */+#define HPDF_COUNTRY_CI  "CI"    /* COTE D'IVOIRE */+#define HPDF_COUNTRY_HR  "HR"    /* CROATIA (local name: Hrvatska) */+#define HPDF_COUNTRY_CU  "CU"    /* CUBA */+#define HPDF_COUNTRY_CY  "CY"    /* CYPRUS */+#define HPDF_COUNTRY_CZ  "CZ"    /* CZECH REPUBLIC */+#define HPDF_COUNTRY_DK  "DK"    /* DENMARK */+#define HPDF_COUNTRY_DJ  "DJ"    /* DJIBOUTI */+#define HPDF_COUNTRY_DM  "DM"    /* DOMINICA */+#define HPDF_COUNTRY_DO  "DO"    /* DOMINICAN REPUBLIC */+#define HPDF_COUNTRY_TP  "TP"    /* EAST TIMOR */+#define HPDF_COUNTRY_EC  "EC"    /* ECUADOR */+#define HPDF_COUNTRY_EG  "EG"    /* EGYPT */+#define HPDF_COUNTRY_SV  "SV"    /* EL SALVADOR */+#define HPDF_COUNTRY_GQ  "GQ"    /* EQUATORIAL GUINEA */+#define HPDF_COUNTRY_ER  "ER"    /* ERITREA */+#define HPDF_COUNTRY_EE  "EE"    /* ESTONIA */+#define HPDF_COUNTRY_ET  "ET"    /* ETHIOPIA */+#define HPDF_COUNTRY_FK  "FK"   /* FALKLAND ISLANDS (MALVINAS) */+#define HPDF_COUNTRY_FO  "FO"    /* FAROE ISLANDS */+#define HPDF_COUNTRY_FJ  "FJ"    /* FIJI */+#define HPDF_COUNTRY_FI  "FI"    /* FINLAND */+#define HPDF_COUNTRY_FR  "FR"    /* FRANCE */+#define HPDF_COUNTRY_FX  "FX"    /* FRANCE, METROPOLITAN */+#define HPDF_COUNTRY_GF  "GF"    /* FRENCH GUIANA */+#define HPDF_COUNTRY_PF  "PF"    /* FRENCH POLYNESIA */+#define HPDF_COUNTRY_TF  "TF"    /* FRENCH SOUTHERN TERRITORIES */+#define HPDF_COUNTRY_GA  "GA"    /* GABON */+#define HPDF_COUNTRY_GM  "GM"    /* GAMBIA */+#define HPDF_COUNTRY_GE  "GE"    /* GEORGIA */+#define HPDF_COUNTRY_DE  "DE"    /* GERMANY */+#define HPDF_COUNTRY_GH  "GH"    /* GHANA */+#define HPDF_COUNTRY_GI  "GI"    /* GIBRALTAR */+#define HPDF_COUNTRY_GR  "GR"    /* GREECE */+#define HPDF_COUNTRY_GL  "GL"    /* GREENLAND */+#define HPDF_COUNTRY_GD  "GD"    /* GRENADA */+#define HPDF_COUNTRY_GP  "GP"    /* GUADELOUPE */+#define HPDF_COUNTRY_GU  "GU"    /* GUAM */+#define HPDF_COUNTRY_GT  "GT"    /* GUATEMALA */+#define HPDF_COUNTRY_GN  "GN"    /* GUINEA */+#define HPDF_COUNTRY_GW  "GW"    /* GUINEA-BISSAU */+#define HPDF_COUNTRY_GY  "GY"    /* GUYANA */+#define HPDF_COUNTRY_HT  "HT"    /* HAITI */+#define HPDF_COUNTRY_HM  "HM"    /* HEARD AND MC DONALD ISLANDS */+#define HPDF_COUNTRY_HN  "HN"    /* HONDURAS */+#define HPDF_COUNTRY_HK  "HK"    /* HONG KONG */+#define HPDF_COUNTRY_HU  "HU"    /* HUNGARY */+#define HPDF_COUNTRY_IS  "IS"    /* ICELAND */+#define HPDF_COUNTRY_IN  "IN"    /* INDIA */+#define HPDF_COUNTRY_ID  "ID"    /* INDONESIA */+#define HPDF_COUNTRY_IR  "IR"    /* IRAN (ISLAMIC REPUBLIC OF) */+#define HPDF_COUNTRY_IQ  "IQ"    /* IRAQ */+#define HPDF_COUNTRY_IE  "IE"    /* IRELAND */+#define HPDF_COUNTRY_IL  "IL"    /* ISRAEL */+#define HPDF_COUNTRY_IT  "IT"    /* ITALY */+#define HPDF_COUNTRY_JM  "JM"    /* JAMAICA */+#define HPDF_COUNTRY_JP  "JP"    /* JAPAN */+#define HPDF_COUNTRY_JO  "JO"    /* JORDAN */+#define HPDF_COUNTRY_KZ  "KZ"    /* KAZAKHSTAN */+#define HPDF_COUNTRY_KE  "KE"    /* KENYA */+#define HPDF_COUNTRY_KI  "KI"    /* KIRIBATI */+#define HPDF_COUNTRY_KP  "KP"    /* KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF */+#define HPDF_COUNTRY_KR  "KR"    /* KOREA, REPUBLIC OF */+#define HPDF_COUNTRY_KW  "KW"    /* KUWAIT */+#define HPDF_COUNTRY_KG  "KG"    /* KYRGYZSTAN */+#define HPDF_COUNTRY_LA  "LA"    /* LAO PEOPLE'S DEMOCRATIC REPUBLIC */+#define HPDF_COUNTRY_LV  "LV"    /* LATVIA */+#define HPDF_COUNTRY_LB  "LB"    /* LEBANON */+#define HPDF_COUNTRY_LS  "LS"    /* LESOTHO */+#define HPDF_COUNTRY_LR  "LR"    /* LIBERIA */+#define HPDF_COUNTRY_LY  "LY"    /* LIBYAN ARAB JAMAHIRIYA */+#define HPDF_COUNTRY_LI  "LI"    /* LIECHTENSTEIN */+#define HPDF_COUNTRY_LT  "LT"    /* LITHUANIA */+#define HPDF_COUNTRY_LU  "LU"    /* LUXEMBOURG */+#define HPDF_COUNTRY_MO  "MO"    /* MACAU */+#define HPDF_COUNTRY_MK  "MK"   /* MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF */+#define HPDF_COUNTRY_MG  "MG"    /* MADAGASCAR */+#define HPDF_COUNTRY_MW  "MW"    /* MALAWI */+#define HPDF_COUNTRY_MY  "MY"    /* MALAYSIA */+#define HPDF_COUNTRY_MV  "MV"    /* MALDIVES */+#define HPDF_COUNTRY_ML  "ML"    /* MALI */+#define HPDF_COUNTRY_MT  "MT"    /* MALTA */+#define HPDF_COUNTRY_MH  "MH"    /* MARSHALL ISLANDS */+#define HPDF_COUNTRY_MQ  "MQ"    /* MARTINIQUE */+#define HPDF_COUNTRY_MR  "MR"    /* MAURITANIA */+#define HPDF_COUNTRY_MU  "MU"    /* MAURITIUS */+#define HPDF_COUNTRY_YT  "YT"    /* MAYOTTE */+#define HPDF_COUNTRY_MX  "MX"    /* MEXICO */+#define HPDF_COUNTRY_FM  "FM"    /* MICRONESIA, FEDERATED STATES OF */+#define HPDF_COUNTRY_MD  "MD"    /* MOLDOVA, REPUBLIC OF */+#define HPDF_COUNTRY_MC  "MC"    /* MONACO */+#define HPDF_COUNTRY_MN  "MN"    /* MONGOLIA */+#define HPDF_COUNTRY_MS  "MS"    /* MONTSERRAT */+#define HPDF_COUNTRY_MA  "MA"    /* MOROCCO */+#define HPDF_COUNTRY_MZ  "MZ"    /* MOZAMBIQUE */+#define HPDF_COUNTRY_MM  "MM"    /* MYANMAR */+#define HPDF_COUNTRY_NA  "NA"    /* NAMIBIA */+#define HPDF_COUNTRY_NR  "NR"    /* NAURU */+#define HPDF_COUNTRY_NP  "NP"    /* NEPAL */+#define HPDF_COUNTRY_NL  "NL"    /* NETHERLANDS */+#define HPDF_COUNTRY_AN  "AN"    /* NETHERLANDS ANTILLES */+#define HPDF_COUNTRY_NC  "NC"    /* NEW CALEDONIA */+#define HPDF_COUNTRY_NZ  "NZ"    /* NEW ZEALAND */+#define HPDF_COUNTRY_NI  "NI"    /* NICARAGUA */+#define HPDF_COUNTRY_NE  "NE"    /* NIGER */+#define HPDF_COUNTRY_NG  "NG"    /* NIGERIA */+#define HPDF_COUNTRY_NU  "NU"    /* NIUE */+#define HPDF_COUNTRY_NF  "NF"    /* NORFOLK ISLAND */+#define HPDF_COUNTRY_MP  "MP"    /* NORTHERN MARIANA ISLANDS */+#define HPDF_COUNTRY_NO  "NO"    /* NORWAY */+#define HPDF_COUNTRY_OM  "OM"    /* OMAN */+#define HPDF_COUNTRY_PK  "PK"    /* PAKISTAN */+#define HPDF_COUNTRY_PW  "PW"    /* PALAU */+#define HPDF_COUNTRY_PA  "PA"    /* PANAMA */+#define HPDF_COUNTRY_PG  "PG"    /* PAPUA NEW GUINEA */+#define HPDF_COUNTRY_PY  "PY"    /* PARAGUAY */+#define HPDF_COUNTRY_PE  "PE"    /* PERU */+#define HPDF_COUNTRY_PH  "PH"    /* PHILIPPINES */+#define HPDF_COUNTRY_PN  "PN"    /* PITCAIRN */+#define HPDF_COUNTRY_PL  "PL"    /* POLAND */+#define HPDF_COUNTRY_PT  "PT"    /* PORTUGAL */+#define HPDF_COUNTRY_PR  "PR"    /* PUERTO RICO */+#define HPDF_COUNTRY_QA  "QA"    /* QATAR */+#define HPDF_COUNTRY_RE  "RE"    /* REUNION */+#define HPDF_COUNTRY_RO  "RO"    /* ROMANIA */+#define HPDF_COUNTRY_RU  "RU"    /* RUSSIAN FEDERATION */+#define HPDF_COUNTRY_RW  "RW"    /* RWANDA */+#define HPDF_COUNTRY_KN  "KN"    /* SAINT KITTS AND NEVIS */+#define HPDF_COUNTRY_LC  "LC"    /* SAINT LUCIA */+#define HPDF_COUNTRY_VC  "VC"    /* SAINT VINCENT AND THE GRENADINES */+#define HPDF_COUNTRY_WS  "WS"    /* SAMOA */+#define HPDF_COUNTRY_SM  "SM"    /* SAN MARINO */+#define HPDF_COUNTRY_ST  "ST"    /* SAO TOME AND PRINCIPE */+#define HPDF_COUNTRY_SA  "SA"    /* SAUDI ARABIA */+#define HPDF_COUNTRY_SN  "SN"    /* SENEGAL */+#define HPDF_COUNTRY_SC  "SC"    /* SEYCHELLES */+#define HPDF_COUNTRY_SL  "SL"    /* SIERRA LEONE */+#define HPDF_COUNTRY_SG  "SG"    /* SINGAPORE */+#define HPDF_COUNTRY_SK  "SK"    /* SLOVAKIA (Slovak Republic) */+#define HPDF_COUNTRY_SI  "SI"    /* SLOVENIA */+#define HPDF_COUNTRY_SB  "SB"    /* SOLOMON ISLANDS */+#define HPDF_COUNTRY_SO  "SO"    /* SOMALIA */+#define HPDF_COUNTRY_ZA  "ZA"    /* SOUTH AFRICA */+#define HPDF_COUNTRY_ES  "ES"    /* SPAIN */+#define HPDF_COUNTRY_LK  "LK"    /* SRI LANKA */+#define HPDF_COUNTRY_SH  "SH"    /* ST. HELENA */+#define HPDF_COUNTRY_PM  "PM"    /* ST. PIERRE AND MIQUELON */+#define HPDF_COUNTRY_SD  "SD"    /* SUDAN */+#define HPDF_COUNTRY_SR  "SR"    /* SURINAME */+#define HPDF_COUNTRY_SJ  "SJ"    /* SVALBARD AND JAN MAYEN ISLANDS */+#define HPDF_COUNTRY_SZ  "SZ"    /* SWAZILAND */+#define HPDF_COUNTRY_SE  "SE"    /* SWEDEN */+#define HPDF_COUNTRY_CH  "CH"    /* SWITZERLAND */+#define HPDF_COUNTRY_SY  "SY"    /* SYRIAN ARAB REPUBLIC */+#define HPDF_COUNTRY_TW  "TW"    /* TAIWAN, PROVINCE OF CHINA */+#define HPDF_COUNTRY_TJ  "TJ"    /* TAJIKISTAN */+#define HPDF_COUNTRY_TZ  "TZ"    /* TANZANIA, UNITED REPUBLIC OF */+#define HPDF_COUNTRY_TH  "TH"    /* THAILAND */+#define HPDF_COUNTRY_TG  "TG"    /* TOGO */+#define HPDF_COUNTRY_TK  "TK"    /* TOKELAU */+#define HPDF_COUNTRY_TO  "TO"    /* TONGA */+#define HPDF_COUNTRY_TT  "TT"    /* TRINIDAD AND TOBAGO */+#define HPDF_COUNTRY_TN  "TN"    /* TUNISIA */+#define HPDF_COUNTRY_TR  "TR"    /* TURKEY */+#define HPDF_COUNTRY_TM  "TM"    /* TURKMENISTAN */+#define HPDF_COUNTRY_TC  "TC"    /* TURKS AND CAICOS ISLANDS */+#define HPDF_COUNTRY_TV  "TV"    /* TUVALU */+#define HPDF_COUNTRY_UG  "UG"    /* UGANDA */+#define HPDF_COUNTRY_UA  "UA"    /* UKRAINE */+#define HPDF_COUNTRY_AE  "AE"    /* UNITED ARAB EMIRATES */+#define HPDF_COUNTRY_GB  "GB"    /* UNITED KINGDOM */+#define HPDF_COUNTRY_US  "US"    /* UNITED STATES */+#define HPDF_COUNTRY_UM  "UM"    /* UNITED STATES MINOR OUTLYING ISLANDS */+#define HPDF_COUNTRY_UY  "UY"    /* URUGUAY */+#define HPDF_COUNTRY_UZ  "UZ"    /* UZBEKISTAN */+#define HPDF_COUNTRY_VU  "VU"    /* VANUATU */+#define HPDF_COUNTRY_VA  "VA"    /* VATICAN CITY STATE (HOLY SEE) */+#define HPDF_COUNTRY_VE  "VE"    /* VENEZUELA */+#define HPDF_COUNTRY_VN  "VN"    /* VIET NAM */+#define HPDF_COUNTRY_VG  "VG"    /* VIRGIN ISLANDS (BRITISH) */+#define HPDF_COUNTRY_VI  "VI"    /* VIRGIN ISLANDS (U.S.) */+#define HPDF_COUNTRY_WF  "WF"    /* WALLIS AND FUTUNA ISLANDS */+#define HPDF_COUNTRY_EH  "EH"    /* WESTERN SAHARA */+#define HPDF_COUNTRY_YE  "YE"    /* YEMEN */+#define HPDF_COUNTRY_YU  "YU"    /* YUGOSLAVIA */+#define HPDF_COUNTRY_ZR  "ZR"    /* ZAIRE */+#define HPDF_COUNTRY_ZM  "ZM"    /* ZAMBIA */+#define HPDF_COUNTRY_ZW  "ZW"    /* ZIMBABWE */++/*----------------------------------------------------------------------------*/+/*----- lang code definition -------------------------------------------------*/++#define HPDF_LANG_AA    "aa"     /* Afar */+#define HPDF_LANG_AB    "ab"     /* Abkhazian */+#define HPDF_LANG_AF    "af"     /* Afrikaans */+#define HPDF_LANG_AM    "am"     /* Amharic */+#define HPDF_LANG_AR    "ar"     /* Arabic */+#define HPDF_LANG_AS    "as"     /* Assamese */+#define HPDF_LANG_AY    "ay"     /* Aymara */+#define HPDF_LANG_AZ    "az"     /* Azerbaijani */+#define HPDF_LANG_BA    "ba"     /* Bashkir */+#define HPDF_LANG_BE    "be"     /* Byelorussian */+#define HPDF_LANG_BG    "bg"     /* Bulgarian */+#define HPDF_LANG_BH    "bh"     /* Bihari */+#define HPDF_LANG_BI    "bi"     /* Bislama */+#define HPDF_LANG_BN    "bn"     /* Bengali Bangla */+#define HPDF_LANG_BO    "bo"     /* Tibetan */+#define HPDF_LANG_BR    "br"     /* Breton */+#define HPDF_LANG_CA    "ca"     /* Catalan */+#define HPDF_LANG_CO    "co"     /* Corsican */+#define HPDF_LANG_CS    "cs"     /* Czech */+#define HPDF_LANG_CY    "cy"     /* Welsh */+#define HPDF_LANG_DA    "da"     /* Danish */+#define HPDF_LANG_DE    "de"     /* German */+#define HPDF_LANG_DZ    "dz"     /* Bhutani */+#define HPDF_LANG_EL    "el"     /* Greek */+#define HPDF_LANG_EN    "en"     /* English */+#define HPDF_LANG_EO    "eo"     /* Esperanto */+#define HPDF_LANG_ES    "es"     /* Spanish */+#define HPDF_LANG_ET    "et"     /* Estonian */+#define HPDF_LANG_EU    "eu"     /* Basque */+#define HPDF_LANG_FA    "fa"     /* Persian */+#define HPDF_LANG_FI    "fi"     /* Finnish */+#define HPDF_LANG_FJ    "fj"     /* Fiji */+#define HPDF_LANG_FO    "fo"     /* Faeroese */+#define HPDF_LANG_FR    "fr"     /* French */+#define HPDF_LANG_FY    "fy"     /* Frisian */+#define HPDF_LANG_GA    "ga"     /* Irish */+#define HPDF_LANG_GD    "gd"     /* Scots Gaelic */+#define HPDF_LANG_GL    "gl"     /* Galician */+#define HPDF_LANG_GN    "gn"     /* Guarani */+#define HPDF_LANG_GU    "gu"     /* Gujarati */+#define HPDF_LANG_HA    "ha"     /* Hausa */+#define HPDF_LANG_HI    "hi"     /* Hindi */+#define HPDF_LANG_HR    "hr"     /* Croatian */+#define HPDF_LANG_HU    "hu"     /* Hungarian */+#define HPDF_LANG_HY    "hy"     /* Armenian */+#define HPDF_LANG_IA    "ia"     /* Interlingua */+#define HPDF_LANG_IE    "ie"     /* Interlingue */+#define HPDF_LANG_IK    "ik"     /* Inupiak */+#define HPDF_LANG_IN    "in"     /* Indonesian */+#define HPDF_LANG_IS    "is"     /* Icelandic */+#define HPDF_LANG_IT    "it"     /* Italian */+#define HPDF_LANG_IW    "iw"     /* Hebrew */+#define HPDF_LANG_JA    "ja"     /* Japanese */+#define HPDF_LANG_JI    "ji"     /* Yiddish */+#define HPDF_LANG_JW    "jw"     /* Javanese */+#define HPDF_LANG_KA    "ka"     /* Georgian */+#define HPDF_LANG_KK    "kk"     /* Kazakh */+#define HPDF_LANG_KL    "kl"     /* Greenlandic */+#define HPDF_LANG_KM    "km"     /* Cambodian */+#define HPDF_LANG_KN    "kn"     /* Kannada */+#define HPDF_LANG_KO    "ko"     /* Korean */+#define HPDF_LANG_KS    "ks"     /* Kashmiri */+#define HPDF_LANG_KU    "ku"     /* Kurdish */+#define HPDF_LANG_KY    "ky"     /* Kirghiz */+#define HPDF_LANG_LA    "la"     /* Latin */+#define HPDF_LANG_LN    "ln"     /* Lingala */+#define HPDF_LANG_LO    "lo"     /* Laothian */+#define HPDF_LANG_LT    "lt"     /* Lithuanian */+#define HPDF_LANG_LV    "lv"     /* Latvian,Lettish */+#define HPDF_LANG_MG    "mg"     /* Malagasy */+#define HPDF_LANG_MI    "mi"     /* Maori */+#define HPDF_LANG_MK    "mk"     /* Macedonian */+#define HPDF_LANG_ML    "ml"     /* Malayalam */+#define HPDF_LANG_MN    "mn"     /* Mongolian */+#define HPDF_LANG_MO    "mo"     /* Moldavian */+#define HPDF_LANG_MR    "mr"     /* Marathi */+#define HPDF_LANG_MS    "ms"     /* Malay */+#define HPDF_LANG_MT    "mt"     /* Maltese */+#define HPDF_LANG_MY    "my"     /* Burmese */+#define HPDF_LANG_NA    "na"     /* Nauru */+#define HPDF_LANG_NE    "ne"     /* Nepali */+#define HPDF_LANG_NL    "nl"     /* Dutch */+#define HPDF_LANG_NO    "no"     /* Norwegian */+#define HPDF_LANG_OC    "oc"     /* Occitan */+#define HPDF_LANG_OM    "om"     /* (Afan)Oromo */+#define HPDF_LANG_OR    "or"     /* Oriya */+#define HPDF_LANG_PA    "pa"     /* Punjabi */+#define HPDF_LANG_PL    "pl"     /* Polish */+#define HPDF_LANG_PS    "ps"     /* Pashto,Pushto */+#define HPDF_LANG_PT    "pt"     /* Portuguese  */+#define HPDF_LANG_QU    "qu"     /* Quechua */+#define HPDF_LANG_RM    "rm"     /* Rhaeto-Romance */+#define HPDF_LANG_RN    "rn"     /* Kirundi */+#define HPDF_LANG_RO    "ro"     /* Romanian */+#define HPDF_LANG_RU    "ru"     /* Russian */+#define HPDF_LANG_RW    "rw"     /* Kinyarwanda */+#define HPDF_LANG_SA    "sa"     /* Sanskrit */+#define HPDF_LANG_SD    "sd"     /* Sindhi */+#define HPDF_LANG_SG    "sg"     /* Sangro */+#define HPDF_LANG_SH    "sh"     /* Serbo-Croatian */+#define HPDF_LANG_SI    "si"     /* Singhalese */+#define HPDF_LANG_SK    "sk"     /* Slovak */+#define HPDF_LANG_SL    "sl"     /* Slovenian */+#define HPDF_LANG_SM    "sm"     /* Samoan */+#define HPDF_LANG_SN    "sn"     /* Shona */+#define HPDF_LANG_SO    "so"     /* Somali */+#define HPDF_LANG_SQ    "sq"     /* Albanian */+#define HPDF_LANG_SR    "sr"     /* Serbian */+#define HPDF_LANG_SS    "ss"     /* Siswati */+#define HPDF_LANG_ST    "st"     /* Sesotho */+#define HPDF_LANG_SU    "su"     /* Sundanese */+#define HPDF_LANG_SV    "sv"     /* Swedish */+#define HPDF_LANG_SW    "sw"     /* Swahili */+#define HPDF_LANG_TA    "ta"     /* Tamil */+#define HPDF_LANG_TE    "te"     /* Tegulu */+#define HPDF_LANG_TG    "tg"     /* Tajik */+#define HPDF_LANG_TH    "th"     /* Thai */+#define HPDF_LANG_TI    "ti"     /* Tigrinya */+#define HPDF_LANG_TK    "tk"     /* Turkmen */+#define HPDF_LANG_TL    "tl"     /* Tagalog */+#define HPDF_LANG_TN    "tn"     /* Setswanato Tonga */+#define HPDF_LANG_TR    "tr"     /* Turkish */+#define HPDF_LANG_TS    "ts"     /* Tsonga */+#define HPDF_LANG_TT    "tt"     /* Tatar */+#define HPDF_LANG_TW    "tw"     /* Twi */+#define HPDF_LANG_UK    "uk"     /* Ukrainian */+#define HPDF_LANG_UR    "ur"     /* Urdu */+#define HPDF_LANG_UZ    "uz"     /* Uzbek */+#define HPDF_LANG_VI    "vi"     /* Vietnamese */+#define HPDF_LANG_VO    "vo"     /* Volapuk */+#define HPDF_LANG_WO    "wo"     /* Wolof */+#define HPDF_LANG_XH    "xh"     /* Xhosa */+#define HPDF_LANG_YO    "yo"     /* Yoruba */+#define HPDF_LANG_ZH    "zh"     /* Chinese */+#define HPDF_LANG_ZU    "zu"     /* Zulu */+++/*----------------------------------------------------------------------------*/+/*----- Graphis mode ---------------------------------------------------------*/++#define   HPDF_GMODE_PAGE_DESCRIPTION       0x0001+#define   HPDF_GMODE_PATH_OBJECT            0x0002+#define   HPDF_GMODE_TEXT_OBJECT            0x0004+#define   HPDF_GMODE_CLIPPING_PATH          0x0008+#define   HPDF_GMODE_SHADING                0x0010+#define   HPDF_GMODE_INLINE_IMAGE           0x0020+#define   HPDF_GMODE_EXTERNAL_OBJECT        0x0040+++/*----------------------------------------------------------------------------*/++#endif /* _HPDF_CONSTS_H */
+ haru/hpdf_destination.c view
@@ -0,0 +1,339 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_destination.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++const char *HPDF_DESTINATION_TYPE_NAMES[] = {+        "XYZ",+        "Fit",+        "FitH",+        "FitV",+        "FitR",+        "FitB",+        "FitBH",+        "FitBV",+        NULL+};++/*----------------------------------------------------------------------------*/+/*----- HPDF_Destination -----------------------------------------------------*/++HPDF_Destination+HPDF_Destination_New  (HPDF_MMgr   mmgr,+                       HPDF_Page   target,+                       HPDF_Xref   xref)+{+    HPDF_Destination dst;++    HPDF_PTRACE((" HPDF_Destination_New\n"));++    if (!HPDF_Page_Validate (target)) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_PAGE, 0);+        return NULL;+    }++    dst = HPDF_Array_New (mmgr);+    if (!dst)+        return NULL;++    dst->header.obj_class |= HPDF_OSUBCLASS_DESTINATION;++    if (HPDF_Xref_Add (xref, dst) != HPDF_OK)+        return NULL;++    /* first item of array must be target page */+    if (HPDF_Array_Add (dst, target) != HPDF_OK)+        return NULL;++    /* default type is HPDF_FIT */+    if (HPDF_Array_AddName (dst,+            HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT]) != HPDF_OK)+        return NULL;++    return dst;+}+++HPDF_BOOL+HPDF_Destination_Validate (HPDF_Destination  dst)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)dst;+    HPDF_Page target;++    if (!dst || header->obj_class !=+                (HPDF_OCLASS_ARRAY | HPDF_OSUBCLASS_DESTINATION))+        return HPDF_FALSE;++    /* destination-types not defined. */+    if (dst->list->count < 2)+        return HPDF_FALSE;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);+    if (!HPDF_Page_Validate (target))+        return HPDF_SetError (dst->error, HPDF_INVALID_PAGE, 0);++    return HPDF_TRUE;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetXYZ  (HPDF_Destination  dst,+                          HPDF_REAL         left,+                          HPDF_REAL         top,+                          HPDF_REAL         zoom)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetXYZ\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    if (left < 0 || top < 0 || zoom < 0.08 || zoom > 32)+        return HPDF_RaiseError (dst->error, HPDF_INVALID_PARAMETER, 0);+++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_XYZ]);+    ret += HPDF_Array_AddReal (dst, left);+    ret += HPDF_Array_AddReal (dst, top);+    ret += HPDF_Array_AddReal (dst, zoom);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFit  (HPDF_Destination  dst)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFit\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT]);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitH  (HPDF_Destination  dst,+                           HPDF_REAL         top)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitH\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_H]);+    ret += HPDF_Array_AddReal (dst, top);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitV  (HPDF_Destination  dst,+                           HPDF_REAL         left)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitV\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_V]);+    ret += HPDF_Array_AddReal (dst, left);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitR  (HPDF_Destination  dst,+                           HPDF_REAL         left,+                           HPDF_REAL         bottom,+                           HPDF_REAL         right,+                           HPDF_REAL         top)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitR\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_R]);+    ret += HPDF_Array_AddReal (dst, left);+    ret += HPDF_Array_AddReal (dst, bottom);+    ret += HPDF_Array_AddReal (dst, right);+    ret += HPDF_Array_AddReal (dst, top);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitB  (HPDF_Destination  dst)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitB\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_B]);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitBH  (HPDF_Destination  dst,+                            HPDF_REAL         top)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitBH\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_BH]);+    ret += HPDF_Array_AddReal (dst, top);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Destination_SetFitBV  (HPDF_Destination  dst,+                            HPDF_REAL         left)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Page target;++    HPDF_PTRACE((" HPDF_Destination_SetFitBV\n"));++    if (!HPDF_Destination_Validate (dst))+        return HPDF_INVALID_DESTINATION;++    target = (HPDF_Page)HPDF_Array_GetItem (dst, 0, HPDF_OCLASS_DICT);++    if (dst->list->count > 1) {+        HPDF_Array_Clear (dst);+        ret += HPDF_Array_Add (dst, target);+    }++    ret += HPDF_Array_AddName (dst,+                HPDF_DESTINATION_TYPE_NAMES[(HPDF_INT)HPDF_FIT_BV]);+    ret += HPDF_Array_AddReal (dst, left);++    if (ret != HPDF_OK)+        return HPDF_CheckError (dst->error);++    return HPDF_OK;++}+
+ haru/hpdf_destination.h view
@@ -0,0 +1,41 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_destination.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_DESTINATION_H+#define _HPDF_DESTINATION_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++/*----------------------------------------------------------------------------*/+/*----- HPDF_Destination -----------------------------------------------------*/++HPDF_Destination+HPDF_Destination_New  (HPDF_MMgr   mmgr,+                       HPDF_Page   target,+                       HPDF_Xref   xref);+++HPDF_BOOL+HPDF_Destination_Validate (HPDF_Destination  dst);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_DESTINATION_H */+
+ haru/hpdf_dict.c view
@@ -0,0 +1,488 @@+/*+ * << Haru Free PDF Library 2.0.5 >> -- HPDF_Dict.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"++HPDF_DictElement+GetElement  (HPDF_Dict      dict,+             const char    *key);++/*--------------------------------------------------------------------------*/++HPDF_Dict+HPDF_Dict_New  (HPDF_MMgr  mmgr)+{+    HPDF_Dict obj;++    obj = (HPDF_Dict)HPDF_GetMem (mmgr, sizeof(HPDF_Dict_Rec));+    if (obj) {+        HPDF_MemSet (obj, 0, sizeof(HPDF_Dict_Rec));+        obj->header.obj_class = HPDF_OCLASS_DICT;+        obj->mmgr = mmgr;+        obj->error = mmgr->error;+        obj->list = HPDF_List_New (mmgr, HPDF_DEF_ITEMS_PER_BLOCK);+        obj->filter = HPDF_STREAM_FILTER_NONE;+        if (!obj->list) {+            HPDF_FreeMem (mmgr, obj);+            obj = NULL;+        }+    }++    return obj;+}+++HPDF_Dict+HPDF_DictStream_New  (HPDF_MMgr  mmgr,+                      HPDF_Xref  xref)+{+    HPDF_Dict  obj;+    HPDF_Number length;+    HPDF_STATUS ret = 0;++    obj = HPDF_Dict_New (mmgr);+    if (!obj)+        return NULL;++    /* only stream object is added to xref automatically */+    ret += HPDF_Xref_Add (xref, obj);+    if (ret != HPDF_OK)+        return NULL;++    length = HPDF_Number_New (mmgr, 0);+    if (!length)+        return NULL;++    ret = HPDF_Xref_Add (xref, length);+    if (ret != HPDF_OK)+        return NULL;++    ret = HPDF_Dict_Add (obj, "Length", length);+    if (ret != HPDF_OK)+        return NULL;++    obj->stream = HPDF_MemStream_New (mmgr, HPDF_STREAM_BUF_SIZ);+    if (!obj->stream)+        return NULL;++    return obj;+}+++void+HPDF_Dict_Free  (HPDF_Dict  dict)+{+    HPDF_UINT i;++    if (!dict)+        return;++    if (dict->free_fn)+        dict->free_fn (dict);++    for (i = 0; i < dict->list->count; i++) {+        HPDF_DictElement element =+                (HPDF_DictElement)HPDF_List_ItemAt (dict->list, i);++        if (element) {+            HPDF_Obj_Free (dict->mmgr, element->value);+            HPDF_FreeMem (dict->mmgr, element);+        }+    }++    if (dict->stream)+        HPDF_Stream_Free (dict->stream);++    HPDF_List_Free (dict->list);++    dict->header.obj_class = 0;++    HPDF_FreeMem (dict->mmgr, dict);+}+++HPDF_STATUS+HPDF_Dict_Write  (HPDF_Dict     dict,+                  HPDF_Stream   stream,+                  HPDF_Encrypt  e)+{+    HPDF_UINT i;+    HPDF_STATUS ret;++    ret = HPDF_Stream_WriteStr (stream, "<<\012");+    if (ret != HPDF_OK)+        return ret;++    if (dict->before_write_fn) {+        if ((ret = dict->before_write_fn (dict)) != HPDF_OK)+            return ret;+    }++    /* encrypt-dict must not be encrypted. */+    if (dict->header.obj_class == (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_ENCRYPT))+        e = NULL;++    if (dict->stream) {+        /* set filter element */+        if (dict->filter == HPDF_STREAM_FILTER_NONE)+            HPDF_Dict_RemoveElement (dict, "Filter");+        else {+            HPDF_Array array = HPDF_Dict_GetItem (dict, "Filter",+                        HPDF_OCLASS_ARRAY);++            if (!array) {+                array = HPDF_Array_New (dict->mmgr);+                if (!array)+                    return HPDF_Error_GetCode (dict->error);++                ret = HPDF_Dict_Add (dict, "Filter", array);+                if (ret != HPDF_OK)+                    return ret;+            }++            HPDF_Array_Clear (array);++#ifndef HPDF_NOZLIB+            if (dict->filter & HPDF_STREAM_FILTER_FLATE_DECODE)+                HPDF_Array_AddName (array, "FlateDecode");+#endif /* HPDF_NOZLIB */++            if (dict->filter & HPDF_STREAM_FILTER_DCT_DECODE)+                HPDF_Array_AddName (array, "DCTDecode");+        }+    }++    for (i = 0; i < dict->list->count; i++) {+        HPDF_DictElement element =+                (HPDF_DictElement)HPDF_List_ItemAt (dict->list, i);+        HPDF_Obj_Header *header = (HPDF_Obj_Header *)(element->value);++        if (!element->value)+            return HPDF_SetError (dict->error, HPDF_INVALID_OBJECT, 0);++        if  (header->obj_id & HPDF_OTYPE_HIDDEN) {+            HPDF_PTRACE((" HPDF_Dict_Write obj=%p skipped obj_id=0x%08X\n",+                    element->value, (HPDF_UINT)header->obj_id));+        } else {+            ret = HPDF_Stream_WriteEscapeName (stream, element->key);+            if (ret != HPDF_OK)+                return ret;++            ret = HPDF_Stream_WriteChar (stream, ' ');+            if (ret != HPDF_OK)+                return ret;++            ret = HPDF_Obj_Write (element->value, stream, e);+            if (ret != HPDF_OK)+                return ret;++            ret = HPDF_Stream_WriteStr (stream, "\012");+            if (ret != HPDF_OK)+                return ret;+        }+    }++    if (dict->write_fn) {+        if ((ret = dict->write_fn (dict, stream)) != HPDF_OK)+            return ret;+    }++    if ((ret = HPDF_Stream_WriteStr (stream, ">>")) != HPDF_OK)+        return ret;++    if (dict->stream) {+        HPDF_UINT32 strptr;+        HPDF_Number length;++        /* get "length" element */+        length = (HPDF_Number)HPDF_Dict_GetItem (dict, "Length",+                HPDF_OCLASS_NUMBER);+        if (!length)+            return HPDF_SetError (dict->error,+                    HPDF_DICT_STREAM_LENGTH_NOT_FOUND, 0);++        /* "length" element must be indirect-object */+        if (!(length->header.obj_id & HPDF_OTYPE_INDIRECT)) {+            return HPDF_SetError (dict->error, HPDF_DICT_ITEM_UNEXPECTED_TYPE,+                    0);+        }++        if ((ret = HPDF_Stream_WriteStr (stream, "\012stream\015\012"))+                != HPDF_OK)+            return ret;++        strptr = stream->size;++        if (e)+            HPDF_Encrypt_Reset (e);++        if ((ret = HPDF_Stream_WriteToStream (dict->stream, stream,+                        dict->filter, e)) != HPDF_OK)+            return ret;++        HPDF_Number_SetValue (length, stream->size - strptr);++        ret = HPDF_Stream_WriteStr (stream, "\012endstream");+    }++    /* 2006.08.13 add. */+    if (dict->after_write_fn) {+        if ((ret = dict->after_write_fn (dict)) != HPDF_OK)+            return ret;+    }++    return ret;+}++HPDF_STATUS+HPDF_Dict_Add  (HPDF_Dict        dict,+                const char  *key,+                void             *obj)+{+    HPDF_Obj_Header *header;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_DictElement element;++    if (!obj) {+        if (HPDF_Error_GetCode (dict->error) == HPDF_OK)+            return HPDF_SetError (dict->error, HPDF_INVALID_OBJECT, 0);+        else+            return HPDF_INVALID_OBJECT;+    }++    header = (HPDF_Obj_Header *)obj;++    if (header->obj_id & HPDF_OTYPE_DIRECT)+        return HPDF_SetError (dict->error, HPDF_INVALID_OBJECT, 0);++    if (!key) {+        HPDF_Obj_Free (dict->mmgr, obj);+        return HPDF_SetError (dict->error, HPDF_INVALID_OBJECT, 0);+    }++    if (dict->list->count >= HPDF_LIMIT_MAX_DICT_ELEMENT) {+        HPDF_PTRACE((" HPDF_Dict_Add exceed limitatin of dict count(%d)\n",+                    HPDF_LIMIT_MAX_DICT_ELEMENT));++        HPDF_Obj_Free (dict->mmgr, obj);+        return HPDF_SetError (dict->error, HPDF_DICT_COUNT_ERR, 0);+    }++    /* check whether there is an object which has same name */+    element = GetElement (dict, key);++    if (element) {+        HPDF_Obj_Free (dict->mmgr, element->value);+        element->value = NULL;+    } else {+        element = (HPDF_DictElement)HPDF_GetMem (dict->mmgr,+                sizeof(HPDF_DictElement_Rec));++        if (!element) {+            /* cannot create element object */+            if (!(header->obj_id & HPDF_OTYPE_INDIRECT))+                HPDF_Obj_Free (dict->mmgr, obj);++            return HPDF_Error_GetCode (dict->error);+        }++        HPDF_StrCpy (element->key, key, element->key ++                HPDF_LIMIT_MAX_NAME_LEN + 1);+        element->value = NULL;++        ret = HPDF_List_Add (dict->list, element);+        if (ret != HPDF_OK) {+            if (!(header->obj_id & HPDF_OTYPE_INDIRECT))+                HPDF_Obj_Free (dict->mmgr, obj);++            HPDF_FreeMem (dict->mmgr, element);++            return HPDF_Error_GetCode (dict->error);+        }+    }++    if (header->obj_id & HPDF_OTYPE_INDIRECT) {+        HPDF_Proxy proxy = HPDF_Proxy_New (dict->mmgr, obj);++        if (!proxy)+            return HPDF_Error_GetCode (dict->error);++        element->value = proxy;+        proxy->header.obj_id |= HPDF_OTYPE_DIRECT;+    } else {+        element->value = obj;+        header->obj_id |= HPDF_OTYPE_DIRECT;+    }++    return ret;+}+++HPDF_STATUS+HPDF_Dict_AddName (HPDF_Dict        dict,+                   const char  *key,+                   const char  *value)+{+    HPDF_Name name = HPDF_Name_New (dict->mmgr, value);+    if (!name)+        return HPDF_Error_GetCode (dict->error);++    return HPDF_Dict_Add (dict, key, name);+}+++HPDF_STATUS+HPDF_Dict_AddNumber  (HPDF_Dict        dict,+                      const char  *key,+                      HPDF_INT32       value)+{+    HPDF_Number number = HPDF_Number_New (dict->mmgr, value);++    if (!number)+        return HPDF_Error_GetCode (dict->error);++    return HPDF_Dict_Add (dict, key, number);+}+++HPDF_STATUS+HPDF_Dict_AddReal  (HPDF_Dict        dict,+                    const char  *key,+                    HPDF_REAL        value)+{+    HPDF_Real real = HPDF_Real_New (dict->mmgr, value);++    if (!real)+        return HPDF_Error_GetCode (dict->error);++    return HPDF_Dict_Add (dict, key, real);+}+++HPDF_STATUS+HPDF_Dict_AddBoolean  (HPDF_Dict      dict,+                      const char    *key,+                      HPDF_BOOL      value)+{+    HPDF_Boolean obj = HPDF_Boolean_New (dict->mmgr, value);++    if (!obj)+        return HPDF_Error_GetCode (dict->error);++    return HPDF_Dict_Add (dict, key, obj);+}+++void*+HPDF_Dict_GetItem  (HPDF_Dict        dict,+                    const char  *key,+                    HPDF_UINT16      obj_class)+{+    HPDF_DictElement element = GetElement (dict, key);+    void *obj;++    if (element && HPDF_StrCmp(key, element->key) == 0) {+        HPDF_Obj_Header *header = (HPDF_Obj_Header *)element->value;++        if (header->obj_class == HPDF_OCLASS_PROXY) {+            HPDF_Proxy p = element->value;+            header = (HPDF_Obj_Header *)p->obj;+            obj = p->obj;+        } else+            obj = element->value;++        if ((header->obj_class & HPDF_OCLASS_ANY) != obj_class) {+            HPDF_PTRACE((" HPDF_Dict_GetItem dict=%p key=%s obj_class=0x%08X\n",+                    dict, key, (HPDF_UINT)header->obj_class));+            HPDF_SetError (dict->error, HPDF_DICT_ITEM_UNEXPECTED_TYPE, 0);++            return NULL;+        }++        return obj;+    }++    return NULL;+}+++HPDF_DictElement+GetElement  (HPDF_Dict        dict,+             const char  *key)+{+    HPDF_UINT i;++    for (i = 0; i < dict->list->count; i++) {+        HPDF_DictElement element =+                (HPDF_DictElement)HPDF_List_ItemAt (dict->list, i);++        if (HPDF_StrCmp (key, element->key) == 0)+            return element;+    }++    return NULL;+}+++HPDF_STATUS+HPDF_Dict_RemoveElement  (HPDF_Dict        dict,+                          const char  *key)+{+    HPDF_UINT i;++    for (i = 0; i < dict->list->count; i++) {+        HPDF_DictElement element =+                (HPDF_DictElement)HPDF_List_ItemAt (dict->list, i);++        if (HPDF_StrCmp (key, element->key) == 0) {+            HPDF_List_Remove (dict->list, element);++            HPDF_Obj_Free (dict->mmgr, element->value);+            HPDF_FreeMem (dict->mmgr, element);++            return HPDF_OK;+        }+    }++    return HPDF_DICT_ITEM_NOT_FOUND;+}++const char*+HPDF_Dict_GetKeyByObj (HPDF_Dict  dict,+                       void       *obj)+{+    HPDF_UINT i;++    for (i = 0; i < dict->list->count; i++) {+        HPDF_Obj_Header *header;+        HPDF_DictElement element =+                (HPDF_DictElement)HPDF_List_ItemAt (dict->list, i);++        header = (HPDF_Obj_Header *)(element->value);+        if (header->obj_class == HPDF_OCLASS_PROXY) {+            HPDF_Proxy p = element->value;++            if (p->obj == obj)+                return element->key;+        } else {+            if (element->value == obj)+                return element->key;+        }+    }++    return NULL;+}+
+ haru/hpdf_doc.c view
@@ -0,0 +1,2020 @@+/*+ * << Haru Free PDF Library 2.0.5 >> -- hpdf_doc.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */+++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encryptdict.h"+#include "hpdf_destination.h"+#include "hpdf_info.h"+#include "hpdf_page_label.h"+#include "hpdf.h"+++static const char *HPDF_VERSION_STR[5] = {+                "%PDF-1.2\012%\267\276\255\252\012",+                "%PDF-1.3\012%\267\276\255\252\012",+                "%PDF-1.4\012%\267\276\255\252\012",+                "%PDF-1.5\012%\267\276\255\252\012",+                "%PDF-1.6\012%\267\276\255\252\012"+};+++static HPDF_STATUS+WriteHeader  (HPDF_Doc      pdf,+              HPDF_Stream   stream);+++static HPDF_STATUS+PrepareTrailer  (HPDF_Doc   pdf);+++static void+FreeEncoderList (HPDF_Doc  pdf);+++static void+FreeFontDefList (HPDF_Doc  pdf);+++static void+CleanupFontDefList (HPDF_Doc  pdf);+++static HPDF_Dict+GetInfo  (HPDF_Doc  pdf);++static HPDF_STATUS+InternalSaveToStream  (HPDF_Doc      pdf,+                       HPDF_Stream   stream);++static const char*+LoadType1FontFromStream (HPDF_Doc     pdf,+                         HPDF_Stream  afmdata,+                         HPDF_Stream  pfmdata);+++static const char*+LoadTTFontFromStream (HPDF_Doc         pdf,+                      HPDF_Stream      font_data,+                      HPDF_BOOL        embedding,+                       const char      *file_name);+++static const char*+LoadTTFontFromStream2 (HPDF_Doc         pdf,+                       HPDF_Stream      font_data,+                       HPDF_UINT        index,+                       HPDF_BOOL        embedding,+                       const char      *file_name);+++/*---------------------------------------------------------------------------*/++HPDF_EXPORT(const char *)+HPDF_GetVersion (void)+{+    return HPDF_VERSION_TEXT;+}+++HPDF_BOOL+HPDF_Doc_Validate  (HPDF_Doc  pdf)+{+    HPDF_PTRACE ((" HPDF_Doc_Validate\n"));++    if (!pdf || pdf->sig_bytes != HPDF_SIG_BYTES)+        return HPDF_FALSE;+    else+        return HPDF_TRUE;+}+++HPDF_EXPORT(HPDF_BOOL)+HPDF_HasDoc  (HPDF_Doc  pdf)+{+    HPDF_PTRACE ((" HPDF_HasDoc\n"));++    if (!pdf || pdf->sig_bytes != HPDF_SIG_BYTES)+        return HPDF_FALSE;++    if (!pdf->catalog || pdf->error.error_no != HPDF_NOERROR) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_DOCUMENT, 0);+        return HPDF_FALSE;+    } else+        return HPDF_TRUE;+}+++HPDF_EXPORT(HPDF_Doc)+HPDF_New  (HPDF_Error_Handler    user_error_fn,+           void                  *user_data)+{+    HPDF_PTRACE ((" HPDF_New\n"));++    return HPDF_NewEx (user_error_fn, NULL, NULL, 0, user_data);+}+++HPDF_EXPORT(HPDF_Doc)+HPDF_NewEx  (HPDF_Error_Handler    user_error_fn,+             HPDF_Alloc_Func       user_alloc_fn,+             HPDF_Free_Func        user_free_fn,+             HPDF_UINT             mem_pool_buf_size,+             void                 *user_data)+{+    HPDF_Doc pdf;+    HPDF_MMgr mmgr;+    HPDF_Error_Rec tmp_error;++    HPDF_PTRACE ((" HPDF_NewEx\n"));++    /* initialize temporary-error object */+    HPDF_Error_Init (&tmp_error, user_data);++    /* create memory-manager object */+    mmgr = HPDF_MMgr_New (&tmp_error, mem_pool_buf_size, user_alloc_fn,+            user_free_fn);+    if (!mmgr) {+        HPDF_CheckError (&tmp_error);+        return NULL;+    }++    /* now create pdf_doc object */+    pdf = HPDF_GetMem (mmgr, sizeof (HPDF_Doc_Rec));+    if (!pdf) {+        HPDF_MMgr_Free (mmgr);+        HPDF_CheckError (&tmp_error);+        return NULL;+    }++    HPDF_MemSet (pdf, 0, sizeof (HPDF_Doc_Rec));+    pdf->sig_bytes = HPDF_SIG_BYTES;+    pdf->mmgr = mmgr;+    pdf->pdf_version = HPDF_VER_13;+    pdf->compression_mode = HPDF_COMP_NONE;++    /* copy the data of temporary-error object to the one which is+       included in pdf_doc object */+    pdf->error = tmp_error;++    /* switch the error-object of memory-manager */+    mmgr->error = &pdf->error;++    if (HPDF_NewDoc (pdf) != HPDF_OK) {+        HPDF_Free (pdf);+        HPDF_CheckError (&tmp_error);+        return NULL;+    }++    pdf->error.error_fn = user_error_fn;++    return pdf;+}+++HPDF_EXPORT(void)+HPDF_Free  (HPDF_Doc  pdf)+{+    HPDF_PTRACE ((" HPDF_Free\n"));++    if (pdf) {+        HPDF_MMgr mmgr = pdf->mmgr;++        HPDF_FreeDocAll (pdf);++        pdf->sig_bytes = 0;++        HPDF_FreeMem (mmgr, pdf);+        HPDF_MMgr_Free (mmgr);+    }+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_NewDoc  (HPDF_Doc  pdf)+{+    char buf[HPDF_TMP_BUF_SIZ];+    char *ptr = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    const char *version;++    HPDF_PTRACE ((" HPDF_NewDoc\n"));++    if (!HPDF_Doc_Validate (pdf))+        return HPDF_DOC_INVALID_OBJECT;++    HPDF_FreeDoc (pdf);++    pdf->xref = HPDF_Xref_New (pdf->mmgr, 0);+    if (!pdf->xref)+        return HPDF_CheckError (&pdf->error);++    pdf->trailer = pdf->xref->trailer;++    pdf->font_mgr = HPDF_List_New (pdf->mmgr, HPDF_DEF_ITEMS_PER_BLOCK);+    if (!pdf->font_mgr)+        return HPDF_CheckError (&pdf->error);++    if (!pdf->fontdef_list) {+        pdf->fontdef_list = HPDF_List_New (pdf->mmgr,+                HPDF_DEF_ITEMS_PER_BLOCK);+        if (!pdf->fontdef_list)+            return HPDF_CheckError (&pdf->error);+    }++    if (!pdf->encoder_list) {+        pdf->encoder_list = HPDF_List_New (pdf->mmgr,+                HPDF_DEF_ITEMS_PER_BLOCK);+        if (!pdf->encoder_list)+            return HPDF_CheckError (&pdf->error);+    }++    pdf->catalog = HPDF_Catalog_New (pdf->mmgr, pdf->xref);+    if (!pdf->catalog)+        return HPDF_CheckError (&pdf->error);++    pdf->root_pages = HPDF_Catalog_GetRoot (pdf->catalog);+    if (!pdf->root_pages)+        return HPDF_CheckError (&pdf->error);++    pdf->page_list = HPDF_List_New (pdf->mmgr, HPDF_DEF_PAGE_LIST_NUM);+    if (!pdf->page_list)+        return HPDF_CheckError (&pdf->error);++    pdf->cur_pages = pdf->root_pages;++    ptr = HPDF_StrCpy (ptr, "Haru Free PDF Library ", eptr);+    version = HPDF_GetVersion ();+    HPDF_StrCpy (ptr, version, eptr);++    if (HPDF_SetInfoAttr (pdf, HPDF_INFO_PRODUCER, buf) != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++HPDF_EXPORT(void)+HPDF_FreeDoc  (HPDF_Doc  pdf)+{+    HPDF_PTRACE ((" HPDF_FreeDoc\n"));++    if (HPDF_Doc_Validate (pdf)) {+        if (pdf->xref) {+           HPDF_Xref_Free (pdf->xref);+           pdf->xref = NULL;+        }++        if (pdf->font_mgr) {+            HPDF_List_Free (pdf->font_mgr);+            pdf->font_mgr = NULL;+        }++        if (pdf->fontdef_list)+            CleanupFontDefList (pdf);++        HPDF_MemSet(pdf->ttfont_tag, 0, 6);++        pdf->pdf_version = HPDF_VER_13;+        pdf->outlines = NULL;+        pdf->catalog = NULL;+        pdf->root_pages = NULL;+        pdf->cur_pages = NULL;+        pdf->cur_page = NULL;+        pdf->encrypt_on = HPDF_FALSE;+        pdf->cur_page_num = 0;+        pdf->cur_encoder = NULL;+        pdf->def_encoder = NULL;+        pdf->page_per_pages = 0;++        if (pdf->page_list) {+            HPDF_List_Free (pdf->page_list);+            pdf->page_list = NULL;+        }++        pdf->encrypt_dict = NULL;+        pdf->info = NULL;++        HPDF_Error_Reset (&pdf->error);++        if (pdf->stream) {+            HPDF_Stream_Free (pdf->stream);+            pdf->stream = NULL;+        }+    }+}+++HPDF_EXPORT(void)+HPDF_FreeDocAll  (HPDF_Doc  pdf)+{+    HPDF_PTRACE ((" HPDF_FreeDocAll\n"));++    if (HPDF_Doc_Validate (pdf)) {+        HPDF_FreeDoc (pdf);++        if (pdf->fontdef_list)+            FreeFontDefList (pdf);++        if (pdf->encoder_list)+            FreeEncoderList (pdf);++        pdf->compression_mode = HPDF_COMP_NONE;++        HPDF_Error_Reset (&pdf->error);+    }+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPagesConfiguration  (HPDF_Doc    pdf,+                             HPDF_UINT   page_per_pages)+{+    HPDF_PTRACE ((" HPDF_SetPagesConfiguration\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (pdf->cur_page)+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_DOCUMENT_STATE, 0);++    if (page_per_pages > HPDF_LIMIT_MAX_ARRAY)+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_PARAMETER, 0);++    if (pdf->cur_pages == pdf->root_pages) {+        pdf->cur_pages = HPDF_Doc_AddPagesTo (pdf, pdf->root_pages);+        if (!pdf->cur_pages)+            return pdf->error.error_no;+        pdf->cur_page_num = 0;+    }++    pdf->page_per_pages = page_per_pages;++    return HPDF_OK;+}+++static HPDF_STATUS+WriteHeader  (HPDF_Doc      pdf,+              HPDF_Stream   stream)+{+    HPDF_UINT idx = (HPDF_INT)pdf->pdf_version;++    HPDF_PTRACE ((" WriteHeader\n"));++    if (HPDF_Stream_WriteStr (stream, HPDF_VERSION_STR[idx]) != HPDF_OK)+        return pdf->error.error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+PrepareTrailer  (HPDF_Doc    pdf)+{+    HPDF_PTRACE ((" PrepareTrailer\n"));++    if (HPDF_Dict_Add (pdf->trailer, "Root", pdf->catalog) != HPDF_OK)+        return pdf->error.error_no;++    if (HPDF_Dict_Add (pdf->trailer, "Info", pdf->info) != HPDF_OK)+        return pdf->error.error_no;++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Doc_SetEncryptOn  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_Doc_SetEncryptOn\n"));++    if (pdf->encrypt_on)+        return HPDF_OK;++    if (!pdf->encrypt_dict)+        return HPDF_SetError (&pdf->error, HPDF_DOC_ENCRYPTDICT_NOT_FOUND,+                0);++    if (pdf->encrypt_dict->header.obj_id == HPDF_OTYPE_NONE)+        if (HPDF_Xref_Add (pdf->xref, pdf->encrypt_dict) != HPDF_OK)+            return pdf->error.error_no;++    if (HPDF_Dict_Add (pdf->trailer, "Encrypt", pdf->encrypt_dict) != HPDF_OK)+        return pdf->error.error_no;++    pdf->encrypt_on = HPDF_TRUE;++    return HPDF_OK;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPassword  (HPDF_Doc          pdf,+                   const char  *owner_passwd,+                   const char  *user_passwd)+{+    HPDF_PTRACE ((" HPDF_SetPassword\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_DOC_INVALID_OBJECT;++    if (!pdf->encrypt_dict) {+        pdf->encrypt_dict = HPDF_EncryptDict_New (pdf->mmgr, pdf->xref);++        if (!pdf->encrypt_dict)+            return HPDF_CheckError (&pdf->error);+    }++    if (HPDF_EncryptDict_SetPassword (pdf->encrypt_dict, owner_passwd,+                user_passwd) != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_Doc_SetEncryptOn (pdf);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPermission  (HPDF_Doc    pdf,+                     HPDF_UINT   permission)+{+    HPDF_Encrypt e;++    HPDF_PTRACE ((" HPDF_SetPermission\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_DOC_INVALID_OBJECT;++    e = HPDF_EncryptDict_GetAttr (pdf->encrypt_dict);++    if (!e)+        return HPDF_RaiseError (&pdf->error,+                HPDF_DOC_ENCRYPTDICT_NOT_FOUND, 0);+    else+        e->permission = permission;++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetEncryptionMode  (HPDF_Doc           pdf,+                         HPDF_EncryptMode   mode,+                         HPDF_UINT          key_len)+{+    HPDF_Encrypt e;++    HPDF_PTRACE ((" HPDF_SetEncryptionMode\n"));++    if (!HPDF_Doc_Validate (pdf))+        return HPDF_DOC_INVALID_OBJECT;++    e = HPDF_EncryptDict_GetAttr (pdf->encrypt_dict);++    if (!e)+        return HPDF_RaiseError (&pdf->error,+                HPDF_DOC_ENCRYPTDICT_NOT_FOUND, 0);+    else {+        if (mode == HPDF_ENCRYPT_R2)+            e->key_len = 5;+        else {+            /* if encryption mode is specified revision-3, the version of+             * pdf file is set to 1.4+             */+            pdf->pdf_version = HPDF_VER_14;++            if (key_len >= 5 && key_len <= 16)+                e->key_len = key_len;+            else if (key_len == 0)+                e->key_len = 16;+            else+                return HPDF_RaiseError (&pdf->error,+                        HPDF_INVALID_ENCRYPT_KEY_LEN, 0);+        }+        e->mode = mode;+    }++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Doc_SetEncryptOff  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_Doc_SetEncryptOff\n"));++    if (!pdf->encrypt_on)+        return HPDF_OK;++    /* if encrypy-dict object is registered to cross-reference-table,+     * replace it to null-object.+     * additionally remove encrypt-dict object from trailer-object.+     */+    if (pdf->encrypt_dict) {+        HPDF_UINT obj_id = pdf->encrypt_dict->header.obj_id;++        if (obj_id & HPDF_OTYPE_INDIRECT) {+            HPDF_XrefEntry entry;+            HPDF_Null null_obj;++            HPDF_Dict_RemoveElement (pdf->trailer, "Encrypt");++            entry = HPDF_Xref_GetEntryByObjectId (pdf->xref,+                        obj_id & 0x00FFFFFF);++            if (!entry) {+                return HPDF_SetError (&pdf->error,+                        HPDF_DOC_ENCRYPTDICT_NOT_FOUND, 0);+            }++            null_obj = HPDF_Null_New (pdf->mmgr);+            if (!null_obj)+                return pdf->error.error_no;++            entry->obj = null_obj;+            null_obj->header.obj_id = obj_id | HPDF_OTYPE_INDIRECT;++            pdf->encrypt_dict->header.obj_id = HPDF_OTYPE_NONE;+        }+    }++    pdf->encrypt_on = HPDF_FALSE;+    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Doc_PrepareEncryption  (HPDF_Doc   pdf)+{+    HPDF_Encrypt e= HPDF_EncryptDict_GetAttr (pdf->encrypt_dict);+    HPDF_Dict info = GetInfo (pdf);+    HPDF_Array id;++    if (!e)+        return HPDF_DOC_ENCRYPTDICT_NOT_FOUND;++    if (!info)+        return pdf->error.error_no;++    if (HPDF_EncryptDict_Prepare (pdf->encrypt_dict, info, pdf->xref) !=+            HPDF_OK)+        return pdf->error.error_no;++    /* reset 'ID' to trailer-dictionary */+    id = HPDF_Dict_GetItem (pdf->trailer, "ID", HPDF_OCLASS_ARRAY);+    if (!id) {+        id = HPDF_Array_New (pdf->mmgr);++        if (!id || HPDF_Dict_Add (pdf->trailer, "ID", id) != HPDF_OK)+            return pdf->error.error_no;+    } else+        HPDF_Array_Clear (id);++    if (HPDF_Array_Add (id, HPDF_Binary_New (pdf->mmgr, e->encrypt_id,+                HPDF_ID_LEN)) != HPDF_OK)+        return pdf->error.error_no;++    if (HPDF_Array_Add (id, HPDF_Binary_New (pdf->mmgr, e->encrypt_id,+                HPDF_ID_LEN)) != HPDF_OK)+        return pdf->error.error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+InternalSaveToStream  (HPDF_Doc      pdf,+                       HPDF_Stream   stream)+{+    HPDF_STATUS ret;++    if ((ret = WriteHeader (pdf, stream)) != HPDF_OK)+        return ret;++    /* prepare trailer */+    if ((ret = PrepareTrailer (pdf)) != HPDF_OK)+        return ret;++    /* prepare encription */+    if (pdf->encrypt_on) {+        HPDF_Encrypt e= HPDF_EncryptDict_GetAttr (pdf->encrypt_dict);++        if ((ret = HPDF_Doc_PrepareEncryption (pdf)) != HPDF_OK)+            return ret;++        if ((ret = HPDF_Xref_WriteToStream (pdf->xref, stream, e)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = HPDF_Xref_WriteToStream (pdf->xref, stream, NULL)) !=+                HPDF_OK)+            return ret;+    }++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SaveToStream  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_SaveToStream\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!pdf->stream)+        pdf->stream = HPDF_MemStream_New (pdf->mmgr, HPDF_STREAM_BUF_SIZ);++    if (!HPDF_Stream_Validate (pdf->stream))+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_STREAM, 0);++    HPDF_MemStream_FreeData (pdf->stream);++    if (InternalSaveToStream (pdf, pdf->stream) != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_UINT32)+HPDF_GetStreamSize  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_GetStreamSize\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!HPDF_Stream_Validate (pdf->stream))+        return 0;++    return HPDF_Stream_Size(pdf->stream);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ReadFromStream  (HPDF_Doc       pdf,+                      HPDF_BYTE     *buf,+                      HPDF_UINT32   *size)+{+    HPDF_UINT isize = *size;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!HPDF_Stream_Validate (pdf->stream))+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_OPERATION, 0);++    if (*size == 0)+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_PARAMETER, 0);++    ret = HPDF_Stream_Read (pdf->stream, buf, &isize);++    *size = isize;++    if (ret != HPDF_OK)+        HPDF_CheckError (&pdf->error);++    return ret;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ResetStream  (HPDF_Doc     pdf)+{+    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!HPDF_Stream_Validate (pdf->stream))+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_OPERATION, 0);++    return HPDF_Stream_Seek (pdf->stream, 0, HPDF_SEEK_SET);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SaveToFile  (HPDF_Doc     pdf,+                  const char  *file_name)+{+    HPDF_Stream stream;++    HPDF_PTRACE ((" HPDF_SaveToFile\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    stream = HPDF_FileWriter_New (pdf->mmgr, file_name);+    if (!stream)+        return HPDF_CheckError (&pdf->error);++    InternalSaveToStream (pdf, stream);++    HPDF_Stream_Free (stream);++    return HPDF_CheckError (&pdf->error);+}+++HPDF_EXPORT(HPDF_Page)+HPDF_GetCurrentPage  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_GetCurrentPage\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    return pdf->cur_page;+}+++HPDF_EXPORT(HPDF_Page)+HPDF_GetPageByIndex  (HPDF_Doc    pdf,+                      HPDF_UINT   index)+{+    HPDF_Page ret;++    HPDF_PTRACE ((" HPDF_GetPageByIndex\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    ret = HPDF_List_ItemAt (pdf->page_list, index);+    if (!ret) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_PAGE_INDEX, 0);+        return NULL;+    }++    return ret;+}+++HPDF_Pages+HPDF_Doc_GetCurrentPages  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_GetCurrentPages\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    return pdf->cur_pages;+}+++HPDF_STATUS+HPDF_Doc_SetCurrentPages  (HPDF_Doc     pdf,+                           HPDF_Pages   pages)+{+    HPDF_PTRACE ((" HPDF_Doc_SetCurrentPages\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!HPDF_Pages_Validate (pages))+        return HPDF_SetError (&pdf->error, HPDF_INVALID_PAGES, 0);++    /* check whether the pages belong to the pdf */+    if (pdf->mmgr != pages->mmgr)+        return HPDF_SetError (&pdf->error, HPDF_INVALID_PAGES, 0);++    pdf->cur_pages = pages;++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Doc_SetCurrentPage  (HPDF_Doc    pdf,+                          HPDF_Page   page)+{+    HPDF_PTRACE ((" HPDF_Doc_SetCurrentPage\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (!HPDF_Page_Validate (page))+        return HPDF_SetError (&pdf->error, HPDF_INVALID_PAGE, 0);++    /* check whether the page belong to the pdf */+    if (pdf->mmgr != page->mmgr)+        return HPDF_SetError (&pdf->error, HPDF_INVALID_PAGE, 0);++    pdf->cur_page = page;++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_Page)+HPDF_AddPage  (HPDF_Doc  pdf)+{+    HPDF_Page page;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_AddPage\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (pdf->page_per_pages) {+        if (pdf->page_per_pages <= pdf->cur_page_num) {+            pdf->cur_pages = HPDF_Doc_AddPagesTo (pdf, pdf->root_pages);+            if (!pdf->cur_pages)+                return NULL;+            pdf->cur_page_num = 0;+        }+    }++    page = HPDF_Page_New (pdf->mmgr, pdf->xref);+    if (!page) {+        HPDF_CheckError (&pdf->error);+        return NULL;+    }++    if ((ret = HPDF_Pages_AddKids (pdf->cur_pages, page)) != HPDF_OK) {+        HPDF_RaiseError (&pdf->error, ret, 0);+        return NULL;+    }++    if ((ret = HPDF_List_Add (pdf->page_list, page)) != HPDF_OK) {+        HPDF_RaiseError (&pdf->error, ret, 0);+        return NULL;+    }++    pdf->cur_page = page;++    if (pdf->compression_mode & HPDF_COMP_TEXT)+        HPDF_Page_SetFilter (page, HPDF_STREAM_FILTER_FLATE_DECODE);++    pdf->cur_page_num++;++    return page;+}+++HPDF_Pages+HPDF_Doc_AddPagesTo  (HPDF_Doc     pdf,+                      HPDF_Pages   parent)+{+    HPDF_Pages pages;++    HPDF_PTRACE ((" HPDF_AddPagesTo\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (!HPDF_Pages_Validate (parent)) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_PAGES, 0);+        return NULL;+    }++    /* check whether the page belong to the pdf */+    if (pdf->mmgr != parent->mmgr) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_PAGES, 0);+        return NULL;+    }++    pages = HPDF_Pages_New (pdf->mmgr, parent, pdf->xref);+    if (pages)+        pdf->cur_pages = pages;+    else+        HPDF_CheckError (&pdf->error);+++    return  pages;+}+++HPDF_EXPORT(HPDF_Page)+HPDF_InsertPage  (HPDF_Doc    pdf,+                  HPDF_Page   target)+{+    HPDF_Page page;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_InsertPage\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (!HPDF_Page_Validate (target)) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_PAGE, 0);+        return NULL;+    }++    /* check whether the page belong to the pdf */+    if (pdf->mmgr != target->mmgr) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_PAGE, 0);+        return NULL;+    }++    page = HPDF_Page_New (pdf->mmgr, pdf->xref);+    if (!page) {+        HPDF_CheckError (&pdf->error);+        return NULL;+    }++    if ((ret = HPDF_Page_InsertBefore (page, target)) != HPDF_OK) {+        HPDF_RaiseError (&pdf->error, ret, 0);+        return NULL;+    }++    if ((ret = HPDF_List_Insert (pdf->page_list, target, page)) != HPDF_OK) {+        HPDF_RaiseError (&pdf->error, ret, 0);+        return NULL;+    }++    if (pdf->compression_mode & HPDF_COMP_TEXT)+        HPDF_Page_SetFilter (page, HPDF_STREAM_FILTER_FLATE_DECODE);++    return page;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetErrorHandler  (HPDF_Doc             pdf,+                       HPDF_Error_Handler   user_error_fn)+{+    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    pdf->error.error_fn = user_error_fn;++    return HPDF_OK;+}+++/*----- font handling -------------------------------------------------------*/+++static void+FreeFontDefList  (HPDF_Doc   pdf)+{+    HPDF_List list = pdf->fontdef_list;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Doc_FreeFontDefList\n"));++    for (i = 0; i < list->count; i++) {+        HPDF_FontDef def = (HPDF_FontDef)HPDF_List_ItemAt (list, i);++        HPDF_FontDef_Free (def);+    }++    HPDF_List_Free (list);++    pdf->fontdef_list = NULL;+}++static void+CleanupFontDefList  (HPDF_Doc  pdf)+{+    HPDF_List list = pdf->fontdef_list;+    HPDF_UINT i;++    HPDF_PTRACE ((" CleanupFontDefList\n"));++    for (i = 0; i < list->count; i++) {+        HPDF_FontDef def = (HPDF_FontDef)HPDF_List_ItemAt (list, i);++        HPDF_FontDef_Cleanup (def);+    }+}+++HPDF_FontDef+HPDF_Doc_FindFontDef  (HPDF_Doc          pdf,+                       const char  *font_name)+{+    HPDF_List list = pdf->fontdef_list;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Doc_FindFontDef\n"));++    for (i = 0; i < list->count; i++) {+        HPDF_FontDef def = (HPDF_FontDef)HPDF_List_ItemAt (list, i);++        if (HPDF_StrCmp (font_name, def->base_font) == 0) {+            if (def->type == HPDF_FONTDEF_TYPE_UNINITIALIZED) {+                if (!def->init_fn ||+                    def->init_fn (def) != HPDF_OK)+                    return NULL;+            }++            return def;+        }+    }++    return NULL;+}+++HPDF_STATUS+HPDF_Doc_RegisterFontDef  (HPDF_Doc       pdf,+                           HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_Doc_RegisterFontDef\n"));++    if (!fontdef)+        return HPDF_SetError (&pdf->error, HPDF_INVALID_OBJECT, 0);++    if (HPDF_Doc_FindFontDef (pdf, fontdef->base_font) != NULL) {+        HPDF_FontDef_Free (fontdef);+        return HPDF_SetError (&pdf->error, HPDF_DUPLICATE_REGISTRATION, 0);+    }++    if ((ret = HPDF_List_Add (pdf->fontdef_list, fontdef)) != HPDF_OK) {+        HPDF_FontDef_Free (fontdef);+        return HPDF_SetError (&pdf->error, ret, 0);+    }++    return HPDF_OK;+}++++HPDF_FontDef+HPDF_GetFontDef  (HPDF_Doc          pdf,+                  const char  *font_name)+{+    HPDF_STATUS ret;+    HPDF_FontDef def;++    HPDF_PTRACE ((" HPDF_GetFontDef\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    def = HPDF_Doc_FindFontDef (pdf, font_name);++    if (!def) {+        def = HPDF_Base14FontDef_New (pdf->mmgr, font_name);++        if (!def)+            return NULL;++        if ((ret = HPDF_List_Add (pdf->fontdef_list, def)) != HPDF_OK) {+            HPDF_FontDef_Free (def);+            HPDF_RaiseError (&pdf->error, ret, 0);+            def = NULL;+        }+    }++    return def;+}+++/*----- encoder handling ----------------------------------------------------*/+++HPDF_Encoder+HPDF_Doc_FindEncoder  (HPDF_Doc         pdf,+                       const char  *encoding_name)+{+    HPDF_List list = pdf->encoder_list;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Doc_FindEncoder\n"));++    for (i = 0; i < list->count; i++) {+        HPDF_Encoder encoder = (HPDF_Encoder)HPDF_List_ItemAt (list, i);++        if (HPDF_StrCmp (encoding_name, encoder->name) == 0) {++            /* if encoder is uninitialize, call init_fn() */+            if (encoder->type == HPDF_ENCODER_TYPE_UNINITIALIZED) {+                if (!encoder->init_fn ||+                    encoder->init_fn (encoder) != HPDF_OK)+                    return NULL;+            }++            return encoder;+        }+    }++    return NULL;+}++++HPDF_STATUS+HPDF_Doc_RegisterEncoder  (HPDF_Doc       pdf,+                           HPDF_Encoder   encoder)+{+    HPDF_STATUS ret;++    if (!encoder)+        return HPDF_SetError (&pdf->error, HPDF_INVALID_OBJECT, 0);++    if (HPDF_Doc_FindEncoder (pdf, encoder->name) != NULL) {+        HPDF_Encoder_Free (encoder);+        return HPDF_SetError (&pdf->error, HPDF_DUPLICATE_REGISTRATION, 0);+    }++    if ((ret = HPDF_List_Add (pdf->encoder_list, encoder)) != HPDF_OK) {+        HPDF_Encoder_Free (encoder);+        return HPDF_SetError (&pdf->error, ret, 0);+    }++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_Encoder)+HPDF_GetEncoder  (HPDF_Doc         pdf,+                  const char  *encoding_name)+{+    HPDF_Encoder encoder;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_GetEncoder\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    encoder = HPDF_Doc_FindEncoder (pdf, encoding_name);++    if (!encoder) {+        encoder = HPDF_BasicEncoder_New (pdf->mmgr, encoding_name);++        if (!encoder) {+            HPDF_CheckError (&pdf->error);+            return NULL;+        }++        if ((ret = HPDF_List_Add (pdf->encoder_list, encoder)) != HPDF_OK) {+            HPDF_Encoder_Free (encoder);+            HPDF_RaiseError (&pdf->error, ret, 0);+            return NULL;+        }+    }++    return encoder;+}+++HPDF_EXPORT(HPDF_Encoder)+HPDF_GetCurrentEncoder  (HPDF_Doc    pdf)+{+    if (!HPDF_HasDoc (pdf))+        return NULL;++    return pdf->cur_encoder;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetCurrentEncoder  (HPDF_Doc    pdf,+                         const char  *encoding_name)+{+    HPDF_Encoder encoder;++    if (!HPDF_HasDoc (pdf))+        return HPDF_GetError (pdf);++    encoder = HPDF_GetEncoder (pdf, encoding_name);+    pdf->cur_encoder = encoder;++    if (!pdf)+        return HPDF_GetError (pdf);++    return HPDF_OK;+}+++static void+FreeEncoderList  (HPDF_Doc  pdf)+{+    HPDF_List list = pdf->encoder_list;+    HPDF_UINT i;++    HPDF_PTRACE ((" FreeEncoderList\n"));++    for (i = 0; i < list->count; i++) {+        HPDF_Encoder encoder = (HPDF_Encoder)HPDF_List_ItemAt (list, i);++        HPDF_Encoder_Free (encoder);+    }++    HPDF_List_Free (list);++    pdf->encoder_list = NULL;+}+++/*----- font handling -------------------------------------------------------*/+++HPDF_Font+HPDF_Doc_FindFont  (HPDF_Doc          pdf,+                    const char  *font_name,+                    const char  *encoding_name)+{+    HPDF_UINT i;+    HPDF_Font font;++    HPDF_PTRACE ((" HPDF_Doc_FindFont\n"));++    for (i = 0; i < pdf->font_mgr->count; i++) {+        HPDF_FontAttr attr;++        font = (HPDF_Font)HPDF_List_ItemAt (pdf->font_mgr, i);+        attr = (HPDF_FontAttr) font->attr;++        if (HPDF_StrCmp (attr->fontdef->base_font, font_name) == 0 &&+                HPDF_StrCmp (attr->encoder->name, encoding_name) == 0)+            return font;+    }++    return NULL;+}+++HPDF_EXPORT(HPDF_Font)+HPDF_GetFont  (HPDF_Doc          pdf,+               const char  *font_name,+               const char  *encoding_name)+{+    HPDF_FontDef fontdef = NULL;+    HPDF_Encoder encoder = NULL;+    HPDF_Font font;++    HPDF_PTRACE ((" HPDF_GetFont\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (!font_name) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_FONT_NAME, 0);+        return NULL;+    }++    /* if encoding-name is not specified, find default-encoding of fontdef+     */+    if (!encoding_name) {+        fontdef = HPDF_GetFontDef (pdf, font_name);++        if (fontdef) {+            HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;++            if (fontdef->type == HPDF_FONTDEF_TYPE_TYPE1 &&+                HPDF_StrCmp (attr->encoding_scheme,+                            HPDF_ENCODING_FONT_SPECIFIC) == 0)+                encoder = HPDF_GetEncoder (pdf, HPDF_ENCODING_FONT_SPECIFIC);+            else+                encoder = HPDF_GetEncoder (pdf, HPDF_ENCODING_STANDARD);+        } else {+            HPDF_CheckError (&pdf->error);+            return NULL;+        }++        font = HPDF_Doc_FindFont (pdf, font_name, encoder->name);+    } else {+        font = HPDF_Doc_FindFont (pdf, font_name, encoding_name);+    }++    if (font)+        return font;++    if (!fontdef) {+        fontdef = HPDF_GetFontDef (pdf, font_name);++        if (!fontdef) {+            HPDF_CheckError (&pdf->error);+            return NULL;+        }+    }++    if (!encoder) {+        encoder = HPDF_GetEncoder (pdf, encoding_name);++        if (!encoder)+            return NULL;+    }++    switch (fontdef->type) {+        case HPDF_FONTDEF_TYPE_TYPE1:+            font = HPDF_Type1Font_New (pdf->mmgr, fontdef, encoder, pdf->xref);++            if (font)+                HPDF_List_Add (pdf->font_mgr, font);++            break;+        case HPDF_FONTDEF_TYPE_TRUETYPE:+            if (encoder->type == HPDF_ENCODER_TYPE_DOUBLE_BYTE)+                font = HPDF_Type0Font_New (pdf->mmgr, fontdef, encoder,+                        pdf->xref);+            else+                font = HPDF_TTFont_New (pdf->mmgr, fontdef, encoder, pdf->xref);++            if (font)+                HPDF_List_Add (pdf->font_mgr, font);++            break;+        case HPDF_FONTDEF_TYPE_CID:+            font = HPDF_Type0Font_New (pdf->mmgr, fontdef, encoder, pdf->xref);++            if (font)+                HPDF_List_Add (pdf->font_mgr, font);++            break;+        default:+            HPDF_RaiseError (&pdf->error, HPDF_UNSUPPORTED_FONT_TYPE, 0);+            return NULL;+    }++    if (!font)+        HPDF_CheckError (&pdf->error);++    if (font && (pdf->compression_mode & HPDF_COMP_METADATA))+        font->filter = HPDF_STREAM_FILTER_FLATE_DECODE;++    return font;+}+++HPDF_EXPORT(const char*)+HPDF_LoadType1FontFromFile  (HPDF_Doc     pdf,+                             const char  *afm_file_name,+                             const char  *data_file_name)+{+    HPDF_Stream afm;+    HPDF_Stream pfm = NULL;+    const char *ret;++    HPDF_PTRACE ((" HPDF_LoadType1FontFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    afm = HPDF_FileReader_New (pdf->mmgr, afm_file_name);++    if (data_file_name)+        pfm = HPDF_FileReader_New (pdf->mmgr, data_file_name);++    if (HPDF_Stream_Validate (afm) &&+            (!data_file_name || HPDF_Stream_Validate (pfm))) {++        ret = LoadType1FontFromStream (pdf, afm, pfm);+    } else+        ret = NULL;++    /* destroy file stream */+    if (afm)+        HPDF_Stream_Free (afm);++    if (pfm)+        HPDF_Stream_Free (pfm);++    if (!ret)+        HPDF_CheckError (&pdf->error);++    return ret;+}+++static const char*+LoadType1FontFromStream  (HPDF_Doc      pdf,+                          HPDF_Stream   afmdata,+                          HPDF_Stream   pfmdata)+{+    HPDF_FontDef def;++    HPDF_PTRACE ((" HPDF_LoadType1FontFromStream\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    def = HPDF_Type1FontDef_Load (pdf->mmgr, afmdata, pfmdata);+    if (def) {+        HPDF_FontDef  tmpdef = HPDF_Doc_FindFontDef (pdf, def->base_font);+        if (tmpdef) {+            HPDF_FontDef_Free (def);+            HPDF_SetError (&pdf->error, HPDF_FONT_EXISTS, 0);+            return NULL;+        }++        if (HPDF_List_Add (pdf->fontdef_list, def) != HPDF_OK) {+            HPDF_FontDef_Free (def);+            return NULL;+        }+    }+    return def->base_font;+}+++HPDF_EXPORT(const char*)+HPDF_LoadTTFontFromFile (HPDF_Doc         pdf,+                         const char      *file_name,+                         HPDF_BOOL        embedding)+{+    HPDF_Stream font_data;+    const char *ret;++    HPDF_PTRACE ((" HPDF_LoadTTFontFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    font_data = HPDF_FileReader_New (pdf->mmgr, file_name);++    if (HPDF_Stream_Validate (font_data)) {+        ret = LoadTTFontFromStream (pdf, font_data, embedding, file_name);+    } else+        ret = NULL;++    if (!ret)+        HPDF_CheckError (&pdf->error);++    return ret;+}+++static const char*+LoadTTFontFromStream (HPDF_Doc         pdf,+                      HPDF_Stream      font_data,+                      HPDF_BOOL        embedding,+                      const char      *file_name)+{+    HPDF_FontDef def;++    HPDF_PTRACE ((" HPDF_LoadTTFontFromStream\n"));++    def = HPDF_TTFontDef_Load (pdf->mmgr, font_data, embedding);+    if (def) {+        HPDF_FontDef  tmpdef = HPDF_Doc_FindFontDef (pdf, def->base_font);+        if (tmpdef) {+            HPDF_FontDef_Free (def);+            HPDF_SetError (&pdf->error, HPDF_FONT_EXISTS, 0);+            return NULL;+        }++        if (HPDF_List_Add (pdf->fontdef_list, def) != HPDF_OK) {+            HPDF_FontDef_Free (def);+            return NULL;+        }+    } else+        return NULL;++    if (embedding) {+        if (pdf->ttfont_tag[0] == 0) {+            HPDF_MemCpy (pdf->ttfont_tag, "HPDFAA", 6);+        } else {+            HPDF_INT i;++            for (i = 5; i >= 0; i--) {+                pdf->ttfont_tag[i] += 1;+                if (pdf->ttfont_tag[i] > 'Z')+                    pdf->ttfont_tag[i] = 'A';+                else+                    break;+            }+        }++        HPDF_TTFontDef_SetTagName (def, pdf->ttfont_tag);+    }++    return def->base_font;+}+++HPDF_EXPORT(const char*)+HPDF_LoadTTFontFromFile2 (HPDF_Doc         pdf,+                          const char      *file_name,+                          HPDF_UINT        index,+                          HPDF_BOOL        embedding)+{+    HPDF_Stream font_data;+    const char *ret;++    HPDF_PTRACE ((" HPDF_LoadTTFontFromFile2\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    font_data = HPDF_FileReader_New (pdf->mmgr, file_name);++    if (HPDF_Stream_Validate (font_data)) {+        ret = LoadTTFontFromStream2 (pdf, font_data, index, embedding, file_name);+    } else+        ret = NULL;++    if (!ret)+        HPDF_CheckError (&pdf->error);++    return ret;+}+++static const char*+LoadTTFontFromStream2 (HPDF_Doc         pdf,+                       HPDF_Stream      font_data,+                       HPDF_UINT        index,+                       HPDF_BOOL        embedding,+                       const char      *file_name)+{+    HPDF_FontDef def;++    HPDF_PTRACE ((" HPDF_LoadTTFontFromStream2\n"));++    def = HPDF_TTFontDef_Load2 (pdf->mmgr, font_data, index, embedding);+    if (def) {+        HPDF_FontDef  tmpdef = HPDF_Doc_FindFontDef (pdf, def->base_font);+        if (tmpdef) {+            HPDF_FontDef_Free (def);+            HPDF_SetError (&pdf->error, HPDF_FONT_EXISTS, 0);+            return NULL;+        }++        if (HPDF_List_Add (pdf->fontdef_list, def) != HPDF_OK) {+            HPDF_FontDef_Free (def);+            return NULL;+        }+    } else+        return NULL;++    if (embedding) {+        if (pdf->ttfont_tag[0] == 0) {+            HPDF_MemCpy (pdf->ttfont_tag, "HPDFAA", 6);+        } else {+            HPDF_INT i;++            for (i = 5; i >= 0; i--) {+                pdf->ttfont_tag[i] += 1;+                if (pdf->ttfont_tag[i] > 'Z')+                    pdf->ttfont_tag[i] = 'A';+                else+                    break;+            }+        }++        HPDF_TTFontDef_SetTagName (def, pdf->ttfont_tag);+    }++    return def->base_font;+}+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadRawImageFromFile  (HPDF_Doc          pdf,+                            const char       *filename,+                            HPDF_UINT         width,+                            HPDF_UINT         height,+                            HPDF_ColorSpace   color_space)+{+    HPDF_Stream imagedata;+    HPDF_Image image;++    HPDF_PTRACE ((" HPDF_LoadRawImageFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    imagedata = HPDF_FileReader_New (pdf->mmgr, filename);++    if (HPDF_Stream_Validate (imagedata))+        image = HPDF_Image_LoadRawImage (pdf->mmgr, imagedata, pdf->xref, width,+                    height, color_space);+    else+        image = NULL;++    /* destroy file stream */+    HPDF_Stream_Free (imagedata);++    if (!image)+        HPDF_CheckError (&pdf->error);++    if (pdf->compression_mode & HPDF_COMP_IMAGE)+        image->filter = HPDF_STREAM_FILTER_FLATE_DECODE;++    return image;+}+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadRawImageFromMem  (HPDF_Doc           pdf,+                           const HPDF_BYTE   *buf,+                           HPDF_UINT          width,+                           HPDF_UINT          height,+                           HPDF_ColorSpace    color_space,+                           HPDF_UINT          bits_per_component)+{+    HPDF_Image image;++    HPDF_PTRACE ((" HPDF_LoadRawImageFromMem\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    image = HPDF_Image_LoadRawImageFromMem (pdf->mmgr, buf, pdf->xref, width,+                height, color_space, bits_per_component);++    if (!image)+        HPDF_CheckError (&pdf->error);++    if (pdf->compression_mode & HPDF_COMP_IMAGE)+        image->filter = HPDF_STREAM_FILTER_FLATE_DECODE;++    return image;+}+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadJpegImageFromFile  (HPDF_Doc     pdf,+                             const char  *filename)+{+    HPDF_Stream imagedata;+    HPDF_Image image;++    HPDF_PTRACE ((" HPDF_LoadJpegImageFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    imagedata = HPDF_FileReader_New (pdf->mmgr, filename);++    if (HPDF_Stream_Validate (imagedata))+        image = HPDF_Image_LoadJpegImage (pdf->mmgr, imagedata, pdf->xref);+    else+        image = NULL;++    /* destroy file stream */+    HPDF_Stream_Free (imagedata);++    if (!image)+        HPDF_CheckError (&pdf->error);++    return image;+}+++/*----- Catalog ------------------------------------------------------------*/++HPDF_EXPORT(HPDF_PageLayout)+HPDF_GetPageLayout  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_GetPageLayout\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_PAGE_LAYOUT_SINGLE;++    return HPDF_Catalog_GetPageLayout (pdf->catalog);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPageLayout  (HPDF_Doc          pdf,+                     HPDF_PageLayout   layout)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_GetPageLayout\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (layout < 0 || layout >= HPDF_PAGE_LAYOUT_EOF)+        return HPDF_RaiseError (&pdf->error, HPDF_PAGE_LAYOUT_OUT_OF_RANGE,+                (HPDF_STATUS)layout);++    ret = HPDF_Catalog_SetPageLayout (pdf->catalog, layout);+    if (ret != HPDF_OK)+        HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}++HPDF_EXPORT(HPDF_PageMode)+HPDF_GetPageMode  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_GetPageMode\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_PAGE_MODE_USE_NONE;++    return HPDF_Catalog_GetPageMode (pdf->catalog);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetPageMode  (HPDF_Doc        pdf,+                   HPDF_PageMode   mode)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_GetPageMode\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (mode < 0 || mode >= HPDF_PAGE_MODE_EOF)+        return HPDF_RaiseError (&pdf->error, HPDF_PAGE_MODE_OUT_OF_RANGE,+                (HPDF_STATUS)mode);++    ret = HPDF_Catalog_SetPageMode (pdf->catalog, mode);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetOpenAction  (HPDF_Doc            pdf,+                     HPDF_Destination    open_action)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_SetOpenAction\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (open_action && !HPDF_Destination_Validate (open_action))+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_DESTINATION, 0);++    ret = HPDF_Catalog_SetOpenAction (pdf->catalog, open_action);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_UINT)+HPDF_GetViewerPreference  (HPDF_Doc   pdf)+{+    HPDF_PTRACE ((" HPDF_Catalog_GetViewerPreference\n"));++    if (!HPDF_HasDoc (pdf))+        return 0;++    return HPDF_Catalog_GetViewerPreference (pdf->catalog);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetViewerPreference  (HPDF_Doc     pdf,+                           HPDF_UINT    value)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_Catalog_SetViewerPreference\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    ret = HPDF_Catalog_SetViewerPreference (pdf->catalog, value);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_AddPageLabel  (HPDF_Doc             pdf,+                    HPDF_UINT            page_num,+                    HPDF_PageNumStyle    style,+                    HPDF_UINT            first_page,+                    const char     *prefix)+{+    HPDF_Dict page_label;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_AddPageLabel\n"));++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    page_label = HPDF_PageLabel_New (pdf, style, first_page, prefix);++    if (!page_label)+        return HPDF_CheckError (&pdf->error);++    if (style < 0 || style >= HPDF_PAGE_NUM_STYLE_EOF)+        return HPDF_RaiseError (&pdf->error, HPDF_PAGE_NUM_STYLE_OUT_OF_RANGE,+                    (HPDF_STATUS)style);++    ret = HPDF_Catalog_AddPageLabel (pdf->catalog, page_num, page_label);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return HPDF_OK;+}+++/*----- Info ---------------------------------------------------------------*/++static HPDF_Dict+GetInfo  (HPDF_Doc  pdf)+{+    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (!pdf->info) {+        pdf->info = HPDF_Dict_New (pdf->mmgr);++        if (!pdf->info || HPDF_Xref_Add (pdf->xref, pdf->info) != HPDF_OK)+            pdf->info = NULL;+    }++    return pdf->info;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetInfoAttr  (HPDF_Doc          pdf,+                   HPDF_InfoType     type,+                   const char  *value)+{+    HPDF_STATUS ret;+    HPDF_Dict info = GetInfo (pdf);++    HPDF_PTRACE((" HPDF_SetInfoAttr\n"));++    if (!info)+        return HPDF_CheckError (&pdf->error);++    ret = HPDF_Info_SetInfoAttr (info, type, value, pdf->cur_encoder);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return ret;+}+++HPDF_EXPORT(const char*)+HPDF_GetInfoAttr  (HPDF_Doc        pdf,+                   HPDF_InfoType   type)+{+    const char *ret = NULL;+    HPDF_Dict info = GetInfo (pdf);++    HPDF_PTRACE((" HPDF_GetInfoAttr\n"));++    if (info)+        ret = HPDF_Info_GetInfoAttr (info, type);+    else+        HPDF_CheckError (&pdf->error);++    return ret;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetInfoDateAttr  (HPDF_Doc        pdf,+                       HPDF_InfoType   type,+                       HPDF_Date       value)+{+    HPDF_STATUS ret;+    HPDF_Dict info = GetInfo (pdf);++    HPDF_PTRACE((" HPDF_SetInfoDateAttr\n"));++    if (!info)+        return HPDF_CheckError (&pdf->error);++    ret = HPDF_Info_SetInfoDateAttr (info, type, value);+    if (ret != HPDF_OK)+        return HPDF_CheckError (&pdf->error);++    return ret;+}+++HPDF_EXPORT(HPDF_Outline)+HPDF_CreateOutline  (HPDF_Doc       pdf,+                     HPDF_Outline   parent,+                     const char    *title,+                     HPDF_Encoder   encoder)+{+    HPDF_Outline outline;++    if (!HPDF_HasDoc (pdf))+        return NULL;++    if (!parent) {+        if (pdf->outlines) {+            parent = pdf->outlines;+        } else {+            pdf->outlines = HPDF_OutlineRoot_New (pdf->mmgr, pdf->xref);++            if (pdf->outlines) {+                HPDF_STATUS ret = HPDF_Dict_Add (pdf->catalog, "Outlines",+                            pdf->outlines);+                if (ret != HPDF_OK) {+                    HPDF_CheckError (&pdf->error);+                    pdf->outlines = NULL;+                    return NULL;+                }++                parent = pdf->outlines;+            } else {+                HPDF_CheckError (&pdf->error);+                return NULL;+            }+        }+    }++    if (!HPDF_Outline_Validate (parent) || pdf->mmgr != parent->mmgr) {+        HPDF_RaiseError (&pdf->error, HPDF_INVALID_OUTLINE, 0);+        return NULL;+    }++    outline = HPDF_Outline_New (pdf->mmgr, parent, title, encoder, pdf->xref);+    if (!outline)+        HPDF_CheckError (&pdf->error);++    return outline;+}+++HPDF_EXPORT(HPDF_ExtGState)+HPDF_CreateExtGState  (HPDF_Doc  pdf)+{+    HPDF_ExtGState ext_gstate;++    if (!HPDF_HasDoc (pdf))+        return NULL;++    pdf->pdf_version = HPDF_VER_14;++    ext_gstate = HPDF_ExtGState_New (pdf->mmgr, pdf->xref);+    if (!ext_gstate)+        HPDF_CheckError (&pdf->error);++    return ext_gstate;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_SetCompressionMode  (HPDF_Doc    pdf,+                          HPDF_UINT   mode)+{+    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    if (mode != (mode & HPDF_COMP_MASK))+        return HPDF_RaiseError (&pdf->error, HPDF_INVALID_COMPRESSION_MODE, 0);++#ifndef HPDF_NOZLIB+    pdf->compression_mode = mode;++    return HPDF_OK;++#else /* HPDF_NOZLIB */++    return HPDF_INVALID_COMPRESSION_MODE;++#endif /* HPDF_NOZLIB */+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_GetError  (HPDF_Doc   pdf)+{+    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    return HPDF_Error_GetCode (&pdf->error);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_GetErrorDetail  (HPDF_Doc   pdf)+{+    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    return HPDF_Error_GetDetailCode (&pdf->error);+}+++HPDF_EXPORT(void)+HPDF_ResetError  (HPDF_Doc   pdf)+{+    if (!HPDF_Doc_Validate (pdf))+        return;++    HPDF_Error_Reset (&pdf->error);+}+
+ haru/hpdf_doc.h view
@@ -0,0 +1,159 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_doc.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */+++#ifndef _HPDF_DOC_H+#define _HPDF_DOC_H++#define HPDF_SIG_BYTES 0x41504446L++#include "hpdf_catalog.h"+#include "hpdf_image.h"+#include "hpdf_pages.h"+#include "hpdf_outline.h"+#include "hpdf_ext_gstate.h"++#ifdef __cplusplus+extern "C" {+#endif++#define HPDF_VER_DEFAULT  HPDF_VER_12++typedef struct _HPDF_Doc_Rec {+    HPDF_UINT32     sig_bytes;+    HPDF_PDFVer     pdf_version;++    HPDF_MMgr         mmgr;+    HPDF_Catalog      catalog;+    HPDF_Outline      outlines;+    HPDF_Xref         xref;+    HPDF_Pages        root_pages;+    HPDF_Pages        cur_pages;+    HPDF_Page         cur_page;+    HPDF_List         page_list;+    HPDF_Error_Rec    error;+    HPDF_Dict         info;+    HPDF_Dict         trailer;++    HPDF_List         font_mgr;+    HPDF_BYTE         ttfont_tag[6];++    /* list for loaded fontdefs */+    HPDF_List         fontdef_list;++    /* list for loaded encodings */+    HPDF_List         encoder_list;++    HPDF_Encoder      cur_encoder;++    /* default compression mode */+    HPDF_BOOL         compression_mode;++    HPDF_BOOL         encrypt_on;+    HPDF_EncryptDict  encrypt_dict;++    HPDF_Encoder      def_encoder;++    HPDF_UINT         page_per_pages;+    HPDF_UINT         cur_page_num;++    /* buffer for saving into memory stream */+    HPDF_Stream       stream;+} HPDF_Doc_Rec;++typedef struct _HPDF_Doc_Rec  *HPDF_Doc;+++HPDF_Encoder+HPDF_Doc_FindEncoder (HPDF_Doc         pdf,+                      const char  *encoding_name);+++HPDF_FontDef+HPDF_Doc_FindFontDef (HPDF_Doc         pdf,+                      const char  *font_name);+++HPDF_Font+HPDF_Doc_FindFont  (HPDF_Doc         pdf,+                    const char  *font_name,+                    const char  *encoding_name);+++HPDF_BOOL+HPDF_Doc_Validate  (HPDF_Doc  pdf);+++/*----- page handling -------------------------------------------------------*/++HPDF_Pages+HPDF_Doc_GetCurrentPages  (HPDF_Doc  pdf);+++HPDF_Pages+HPDF_Doc_AddPagesTo  (HPDF_Doc     pdf,+                      HPDF_Pages   parent);+++HPDF_STATUS+HPDF_Doc_SetCurrentPages  (HPDF_Doc    pdf,+                           HPDF_Pages  pages);+++HPDF_STATUS+HPDF_Doc_SetCurrentPage  (HPDF_Doc   pdf,+                          HPDF_Page  page);+++++/*----- font handling -------------------------------------------------------*/++HPDF_FontDef+HPDF_GetFontDef (HPDF_Doc         pdf,+                 const char  *font_name);+++HPDF_STATUS+HPDF_Doc_RegisterFontDef  (HPDF_Doc       pdf,+                           HPDF_FontDef   fontdef);+++/*----- encoding handling ---------------------------------------------------*/++HPDF_STATUS+HPDF_Doc_RegisterEncoder  (HPDF_Doc       pdf,+                           HPDF_Encoder   encoder);++++/*----- encryptio------------------------------------------------------------*/++HPDF_STATUS+HPDF_Doc_SetEncryptOn (HPDF_Doc  pdf);+++HPDF_STATUS+HPDF_Doc_SetEncryptOff (HPDF_Doc  pdf);+++HPDF_STATUS+HPDF_Doc_PrepareEncryption (HPDF_Doc  pdf);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_DOC_H */+
+ haru/hpdf_doc_png.c view
@@ -0,0 +1,137 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_doc_png.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */+++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"+#include "hpdf_image.h"+++static HPDF_Image+LoadPngImageFromStream (HPDF_Doc      pdf,+                        HPDF_Stream   imagedata,+                        HPDF_BOOL     delayed_loading);+++HPDF_EXPORT(HPDF_Image)+HPDF_LoadPngImageFromFile  (HPDF_Doc     pdf,+                            const char  *filename)+{+    HPDF_Stream imagedata;+    HPDF_Image image;++    HPDF_PTRACE ((" HPDF_LoadPngImageFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* create file stream */+    imagedata = HPDF_FileReader_New (pdf->mmgr, filename);++    if (HPDF_Stream_Validate (imagedata))+        image = LoadPngImageFromStream (pdf, imagedata, HPDF_FALSE);+    else+        image = NULL;++    /* destroy file stream */+    if (imagedata)+        HPDF_Stream_Free (imagedata);++    if (!image)+        HPDF_CheckError (&pdf->error);++    return image;+}++/* delaied loading version of HPDF_LoadPngImageFromFile */+HPDF_EXPORT(HPDF_Image)+HPDF_LoadPngImageFromFile2  (HPDF_Doc     pdf,+                             const char  *filename)+{+    HPDF_Stream imagedata;+    HPDF_Image image;+    HPDF_String fname;++    HPDF_PTRACE ((" HPDF_LoadPngImageFromFile\n"));++    if (!HPDF_HasDoc (pdf))+        return NULL;++    /* check whether file name is valid or not. */+    imagedata = HPDF_FileReader_New (pdf->mmgr, filename);++    if (HPDF_Stream_Validate (imagedata))+        image = LoadPngImageFromStream (pdf, imagedata, HPDF_TRUE);+    else+        image = NULL;++    /* destroy file stream */+    if (imagedata)+        HPDF_Stream_Free (imagedata);++    if (!image)+        HPDF_CheckError (&pdf->error);++    /* add file-name to image dictionary as a hidden entry.+     * it is used when the image data is needed.+     */+    fname = HPDF_String_New (pdf->mmgr, filename, NULL);+    if (!fname) {+        HPDF_CheckError (&pdf->error);+        return NULL;+    }++    fname->header.obj_id |= HPDF_OTYPE_HIDDEN;++    if ((HPDF_Dict_Add (image, "_FILE_NAME", fname)) != HPDF_OK) {+        HPDF_CheckError (&pdf->error);+        return NULL;+    }++    return image;+}++#ifndef HPDF_NOPNGLIB+static HPDF_Image+LoadPngImageFromStream (HPDF_Doc      pdf,+                        HPDF_Stream   imagedata,+                        HPDF_BOOL     delayed_loading)+{+    HPDF_Image image;++    HPDF_PTRACE ((" HPDF_LoadPngImageFromStream\n"));++    image = HPDF_Image_LoadPngImage (pdf->mmgr, imagedata, pdf->xref,+                delayed_loading);++    if (image && (pdf->compression_mode & HPDF_COMP_IMAGE))+        image->filter = HPDF_STREAM_FILTER_FLATE_DECODE;++    return image;+}++#else+static HPDF_Image+LoadPngImageFromStream (HPDF_Doc      pdf,+                        HPDF_Stream   imagedata,+                        HPDF_BOOL     delayed_loading)+{+    HPDF_SetError (&pdf->error, HPDF_UNSUPPORTED_FUNC, 0);++    return NULL;+}++#endif /* HPDF_NOPNGLIB */+
+ haru/hpdf_encoder.c view
@@ -0,0 +1,2991 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encoder.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encoder.h"+#include "hpdf.h"++typedef struct _HPDF_UnicodeGryphPair {+    HPDF_UNICODE     unicode;+    const char  *gryph_name;+} HPDF_UnicodeGryphPair;++#define HPDF_BASIC_ENCODER_FIRST_CHAR  32+#define HPDF_BASIC_ENCODER_LAST_CHAR   255++static const HPDF_UnicodeGryphPair HPDF_UNICODE_GRYPH_NAME_MAP[] = {+    {0x0000, char_NOTDEF},+    {0x0020, "space"},+    {0x0021, "exclam"},+    {0x0022, "quotedbl"},+    {0x0023, "numbersign"},+    {0x0024, "dollar"},+    {0x0025, "percent"},+    {0x0026, "ampersand"},+    {0x0027, "quotesingle"},+    {0x0028, "parenleft"},+    {0x0029, "parenright"},+    {0x002A, "asterisk"},+    {0x002B, "plus"},+    {0x002C, "comma"},+    {0x002D, "hyphen"},+    {0x002E, "period"},+    {0x002F, "slash"},+    {0x0030, "zero"},+    {0x0031, "one"},+    {0x0032, "two"},+    {0x0033, "three"},+    {0x0034, "four"},+    {0x0035, "five"},+    {0x0036, "six"},+    {0x0037, "seven"},+    {0x0038, "eight"},+    {0x0039, "nine"},+    {0x003A, "colon"},+    {0x003B, "semicolon"},+    {0x003C, "less"},+    {0x003D, "equal"},+    {0x003E, "greater"},+    {0x003F, "question"},+    {0x0040, "at"},+    {0x0041, "A"},+    {0x0042, "B"},+    {0x0043, "C"},+    {0x0044, "D"},+    {0x0045, "E"},+    {0x0046, "F"},+    {0x0047, "G"},+    {0x0048, "H"},+    {0x0049, "I"},+    {0x004A, "J"},+    {0x004B, "K"},+    {0x004C, "L"},+    {0x004D, "M"},+    {0x004E, "N"},+    {0x004F, "O"},+    {0x0050, "P"},+    {0x0051, "Q"},+    {0x0052, "R"},+    {0x0053, "S"},+    {0x0054, "T"},+    {0x0055, "U"},+    {0x0056, "V"},+    {0x0057, "W"},+    {0x0058, "X"},+    {0x0059, "Y"},+    {0x005A, "Z"},+    {0x005B, "bracketleft"},+    {0x005C, "backslash"},+    {0x005D, "bracketright"},+    {0x005E, "asciicircum"},+    {0x005F, "underscore"},+    {0x0060, "grave"},+    {0x0061, "a"},+    {0x0062, "b"},+    {0x0063, "c"},+    {0x0064, "d"},+    {0x0065, "e"},+    {0x0066, "f"},+    {0x0067, "g"},+    {0x0068, "h"},+    {0x0069, "i"},+    {0x006A, "j"},+    {0x006B, "k"},+    {0x006C, "l"},+    {0x006D, "m"},+    {0x006E, "n"},+    {0x006F, "o"},+    {0x0070, "p"},+    {0x0071, "q"},+    {0x0072, "r"},+    {0x0073, "s"},+    {0x0074, "t"},+    {0x0075, "u"},+    {0x0076, "v"},+    {0x0077, "w"},+    {0x0078, "x"},+    {0x0079, "y"},+    {0x007A, "z"},+    {0x007B, "braceleft"},+    {0x007C, "bar"},+    {0x007D, "braceright"},+    {0x007E, "asciitilde"},+    {0x00A0, "space"},+    {0x00A1, "exclamdown"},+    {0x00A2, "cent"},+    {0x00A3, "sterling"},+    {0x00A4, "currency"},+    {0x00A5, "yen"},+    {0x00A6, "brokenbar"},+    {0x00A7, "section"},+    {0x00A8, "dieresis"},+    {0x00A9, "copyright"},+    {0x00AA, "ordfeminine"},+    {0x00AB, "guillemotleft"},+    {0x00AC, "logicalnot"},+    {0x00AD, "hyphen"},+    {0x00AE, "registered"},+    {0x00AF, "macron"},+    {0x00B0, "degree"},+    {0x00B1, "plusminus"},+    {0x00B2, "twosuperior"},+    {0x00B3, "threesuperior"},+    {0x00B4, "acute"},+    {0x00B5, "mu"},+    {0x00B6, "paragraph"},+    {0x00B7, "periodcentered"},+    {0x00B8, "cedilla"},+    {0x00B9, "onesuperior"},+    {0x00BA, "ordmasculine"},+    {0x00BB, "guillemotright"},+    {0x00BC, "onequarter"},+    {0x00BD, "onehalf"},+    {0x00BE, "threequarters"},+    {0x00BF, "questiondown"},+    {0x00C0, "Agrave"},+    {0x00C1, "Aacute"},+    {0x00C2, "Acircumflex"},+    {0x00C3, "Atilde"},+    {0x00C4, "Adieresis"},+    {0x00C5, "Aring"},+    {0x00C6, "AE"},+    {0x00C7, "Ccedilla"},+    {0x00C8, "Egrave"},+    {0x00C9, "Eacute"},+    {0x00CA, "Ecircumflex"},+    {0x00CB, "Edieresis"},+    {0x00CC, "Igrave"},+    {0x00CD, "Iacute"},+    {0x00CE, "Icircumflex"},+    {0x00CF, "Idieresis"},+    {0x00D0, "Eth"},+    {0x00D1, "Ntilde"},+    {0x00D2, "Ograve"},+    {0x00D3, "Oacute"},+    {0x00D4, "Ocircumflex"},+    {0x00D5, "Otilde"},+    {0x00D6, "Odieresis"},+    {0x00D7, "multiply"},+    {0x00D8, "Oslash"},+    {0x00D9, "Ugrave"},+    {0x00DA, "Uacute"},+    {0x00DB, "Ucircumflex"},+    {0x00DC, "Udieresis"},+    {0x00DD, "Yacute"},+    {0x00DE, "Thorn"},+    {0x00DF, "germandbls"},+    {0x00E0, "agrave"},+    {0x00E1, "aacute"},+    {0x00E2, "acircumflex"},+    {0x00E3, "atilde"},+    {0x00E4, "adieresis"},+    {0x00E5, "aring"},+    {0x00E6, "ae"},+    {0x00E7, "ccedilla"},+    {0x00E8, "egrave"},+    {0x00E9, "eacute"},+    {0x00EA, "ecircumflex"},+    {0x00EB, "edieresis"},+    {0x00EC, "igrave"},+    {0x00ED, "iacute"},+    {0x00EE, "icircumflex"},+    {0x00EF, "idieresis"},+    {0x00F0, "eth"},+    {0x00F1, "ntilde"},+    {0x00F2, "ograve"},+    {0x00F3, "oacute"},+    {0x00F4, "ocircumflex"},+    {0x00F5, "otilde"},+    {0x00F6, "odieresis"},+    {0x00F7, "divide"},+    {0x00F8, "oslash"},+    {0x00F9, "ugrave"},+    {0x00FA, "uacute"},+    {0x00FB, "ucircumflex"},+    {0x00FC, "udieresis"},+    {0x00FD, "yacute"},+    {0x00FE, "thorn"},+    {0x00FF, "ydieresis"},+    {0x0100, "Amacron"},+    {0x0101, "amacron"},+    {0x0102, "Abreve"},+    {0x0103, "abreve"},+    {0x0104, "Aogonek"},+    {0x0105, "aogonek"},+    {0x0106, "Cacute"},+    {0x0107, "cacute"},+    {0x0108, "Ccircumflex"},+    {0x0109, "ccircumflex"},+    {0x010A, "Cdotaccent"},+    {0x010B, "cdotaccent"},+    {0x010C, "Ccaron"},+    {0x010D, "ccaron"},+    {0x010E, "Dcaron"},+    {0x010F, "dcaron"},+    {0x0110, "Dcroat"},+    {0x0111, "dcroat"},+    {0x0112, "Emacron"},+    {0x0113, "emacron"},+    {0x0114, "Ebreve"},+    {0x0115, "ebreve"},+    {0x0116, "Edotaccent"},+    {0x0117, "edotaccent"},+    {0x0118, "Eogonek"},+    {0x0119, "eogonek"},+    {0x011A, "Ecaron"},+    {0x011B, "ecaron"},+    {0x011C, "Gcircumflex"},+    {0x011D, "gcircumflex"},+    {0x011E, "Gbreve"},+    {0x011F, "gbreve"},+    {0x0120, "Gdotaccent"},+    {0x0121, "gdotaccent"},+    {0x0122, "Gcommaaccent"},+    {0x0123, "gcommaaccent"},+    {0x0124, "Hcircumflex"},+    {0x0125, "hcircumflex"},+    {0x0126, "Hbar"},+    {0x0127, "hbar"},+    {0x0128, "Itilde"},+    {0x0129, "itilde"},+    {0x012A, "Imacron"},+    {0x012B, "imacron"},+    {0x012C, "Ibreve"},+    {0x012D, "ibreve"},+    {0x012E, "Iogonek"},+    {0x012F, "iogonek"},+    {0x0130, "Idotaccent"},+    {0x0131, "dotlessi"},+    {0x0132, "IJ"},+    {0x0133, "ij"},+    {0x0134, "Jcircumflex"},+    {0x0135, "jcircumflex"},+    {0x0136, "Kcommaaccent"},+    {0x0137, "kcommaaccent"},+    {0x0138, "kgreenlandic"},+    {0x0139, "Lacute"},+    {0x013A, "lacute"},+    {0x013B, "Lcommaaccent"},+    {0x013C, "lcommaaccent"},+    {0x013D, "Lcaron"},+    {0x013E, "lcaron"},+    {0x013F, "Ldot"},+    {0x0140, "ldot"},+    {0x0141, "Lslash"},+    {0x0142, "lslash"},+    {0x0143, "Nacute"},+    {0x0144, "nacute"},+    {0x0145, "Ncommaaccent"},+    {0x0146, "ncommaaccent"},+    {0x0147, "Ncaron"},+    {0x0148, "ncaron"},+    {0x0149, "napostrophe"},+    {0x014A, "Eng"},+    {0x014B, "eng"},+    {0x014C, "Omacron"},+    {0x014D, "omacron"},+    {0x014E, "Obreve"},+    {0x014F, "obreve"},+    {0x0150, "Ohungarumlaut"},+    {0x0151, "ohungarumlaut"},+    {0x0152, "OE"},+    {0x0153, "oe"},+    {0x0154, "Racute"},+    {0x0155, "racute"},+    {0x0156, "Rcommaaccent"},+    {0x0157, "rcommaaccent"},+    {0x0158, "Rcaron"},+    {0x0159, "rcaron"},+    {0x015A, "Sacute"},+    {0x015B, "sacute"},+    {0x015C, "Scircumflex"},+    {0x015D, "scircumflex"},+    {0x015E, "Scedilla"},+    {0x015F, "scedilla"},+    {0x0160, "Scaron"},+    {0x0161, "scaron"},+    {0x0162, "Tcommaaccent"},+    {0x0163, "tcommaaccent"},+    {0x0164, "Tcaron"},+    {0x0165, "tcaron"},+    {0x0166, "Tbar"},+    {0x0167, "tbar"},+    {0x0168, "Utilde"},+    {0x0169, "utilde"},+    {0x016A, "Umacron"},+    {0x016B, "umacron"},+    {0x016C, "Ubreve"},+    {0x016D, "ubreve"},+    {0x016E, "Uring"},+    {0x016F, "uring"},+    {0x0170, "Uhungarumlaut"},+    {0x0171, "uhungarumlaut"},+    {0x0172, "Uogonek"},+    {0x0173, "uogonek"},+    {0x0174, "Wcircumflex"},+    {0x0175, "wcircumflex"},+    {0x0176, "Ycircumflex"},+    {0x0177, "ycircumflex"},+    {0x0178, "Ydieresis"},+    {0x0179, "Zacute"},+    {0x017A, "zacute"},+    {0x017B, "Zdotaccent"},+    {0x017C, "zdotaccent"},+    {0x017D, "Zcaron"},+    {0x017E, "zcaron"},+    {0x017F, "longs"},+    {0x0192, "florin"},+    {0x01A0, "Ohorn"},+    {0x01A1, "ohorn"},+    {0x01AF, "Uhorn"},+    {0x01B0, "uhorn"},+    {0x01E6, "Gcaron"},+    {0x01E7, "gcaron"},+    {0x01FA, "Aringacute"},+    {0x01FB, "aringacute"},+    {0x01FC, "AEacute"},+    {0x01FD, "aeacute"},+    {0x01FE, "Oslashacute"},+    {0x01FF, "oslashacute"},+    {0x0218, "Scommaaccent"},+    {0x0219, "scommaaccent"},+    {0x021A, "Tcommaaccent"},+    {0x021B, "tcommaaccent"},+    {0x02BC, "afii57929"},+    {0x02BD, "afii64937"},+    {0x02C6, "circumflex"},+    {0x02C7, "caron"},+    {0x02C9, "macron"},+    {0x02D8, "breve"},+    {0x02D9, "dotaccent"},+    {0x02DA, "ring"},+    {0x02DB, "ogonek"},+    {0x02DC, "tilde"},+    {0x02DD, "hungarumlaut"},+    {0x0300, "gravecomb"},+    {0x0301, "acutecomb"},+    {0x0303, "tildecomb"},+    {0x0309, "hookabovecomb"},+    {0x0323, "dotbelowcomb"},+    {0x0384, "tonos"},+    {0x0385, "dieresistonos"},+    {0x0386, "Alphatonos"},+    {0x0387, "anoteleia"},+    {0x0388, "Epsilontonos"},+    {0x0389, "Etatonos"},+    {0x038A, "Iotatonos"},+    {0x038C, "Omicrontonos"},+    {0x038E, "Upsilontonos"},+    {0x038F, "Omegatonos"},+    {0x0390, "iotadieresistonos"},+    {0x0391, "Alpha"},+    {0x0392, "Beta"},+    {0x0393, "Gamma"},+    {0x0394, "Delta"},+    {0x0395, "Epsilon"},+    {0x0396, "Zeta"},+    {0x0397, "Eta"},+    {0x0398, "Theta"},+    {0x0399, "Iota"},+    {0x039A, "Kappa"},+    {0x039B, "Lambda"},+    {0x039C, "Mu"},+    {0x039D, "Nu"},+    {0x039E, "Xi"},+    {0x039F, "Omicron"},+    {0x03A0, "Pi"},+    {0x03A1, "Rho"},+    {0x03A3, "Sigma"},+    {0x03A4, "Tau"},+    {0x03A5, "Upsilon"},+    {0x03A6, "Phi"},+    {0x03A7, "Chi"},+    {0x03A8, "Psi"},+    {0x03A9, "Omega"},+    {0x03AA, "Iotadieresis"},+    {0x03AB, "Upsilondieresis"},+    {0x03AC, "alphatonos"},+    {0x03AD, "epsilontonos"},+    {0x03AE, "etatonos"},+    {0x03AF, "iotatonos"},+    {0x03B0, "upsilondieresistonos"},+    {0x03B1, "alpha"},+    {0x03B2, "beta"},+    {0x03B3, "gamma"},+    {0x03B4, "delta"},+    {0x03B5, "epsilon"},+    {0x03B6, "zeta"},+    {0x03B7, "eta"},+    {0x03B8, "theta"},+    {0x03B9, "iota"},+    {0x03BA, "kappa"},+    {0x03BB, "lambda"},+    {0x03BC, "mu"},+    {0x03BD, "nu"},+    {0x03BE, "xi"},+    {0x03BF, "omicron"},+    {0x03C0, "pi"},+    {0x03C1, "rho"},+    {0x03C2, "sigma1"},+    {0x03C3, "sigma"},+    {0x03C4, "tau"},+    {0x03C5, "upsilon"},+    {0x03C6, "phi"},+    {0x03C7, "chi"},+    {0x03C8, "psi"},+    {0x03C9, "omega"},+    {0x03CA, "iotadieresis"},+    {0x03CB, "upsilondieresis"},+    {0x03CC, "omicrontonos"},+    {0x03CD, "upsilontonos"},+    {0x03CE, "omegatonos"},+    {0x03D1, "theta1"},+    {0x03D2, "Upsilon1"},+    {0x03D5, "phi1"},+    {0x03D6, "omega1"},+    {0x0401, "afii10023"},+    {0x0402, "afii10051"},+    {0x0403, "afii10052"},+    {0x0404, "afii10053"},+    {0x0405, "afii10054"},+    {0x0406, "afii10055"},+    {0x0407, "afii10056"},+    {0x0408, "afii10057"},+    {0x0409, "afii10058"},+    {0x040A, "afii10059"},+    {0x040B, "afii10060"},+    {0x040C, "afii10061"},+    {0x040E, "afii10062"},+    {0x040F, "afii10145"},+    {0x0410, "afii10017"},+    {0x0411, "afii10018"},+    {0x0412, "afii10019"},+    {0x0413, "afii10020"},+    {0x0414, "afii10021"},+    {0x0415, "afii10022"},+    {0x0416, "afii10024"},+    {0x0417, "afii10025"},+    {0x0418, "afii10026"},+    {0x0419, "afii10027"},+    {0x041A, "afii10028"},+    {0x041B, "afii10029"},+    {0x041C, "afii10030"},+    {0x041D, "afii10031"},+    {0x041E, "afii10032"},+    {0x041F, "afii10033"},+    {0x0420, "afii10034"},+    {0x0421, "afii10035"},+    {0x0422, "afii10036"},+    {0x0423, "afii10037"},+    {0x0424, "afii10038"},+    {0x0425, "afii10039"},+    {0x0426, "afii10040"},+    {0x0427, "afii10041"},+    {0x0428, "afii10042"},+    {0x0429, "afii10043"},+    {0x042A, "afii10044"},+    {0x042B, "afii10045"},+    {0x042C, "afii10046"},+    {0x042D, "afii10047"},+    {0x042E, "afii10048"},+    {0x042F, "afii10049"},+    {0x0430, "afii10065"},+    {0x0431, "afii10066"},+    {0x0432, "afii10067"},+    {0x0433, "afii10068"},+    {0x0434, "afii10069"},+    {0x0435, "afii10070"},+    {0x0436, "afii10072"},+    {0x0437, "afii10073"},+    {0x0438, "afii10074"},+    {0x0439, "afii10075"},+    {0x043A, "afii10076"},+    {0x043B, "afii10077"},+    {0x043C, "afii10078"},+    {0x043D, "afii10079"},+    {0x043E, "afii10080"},+    {0x043F, "afii10081"},+    {0x0440, "afii10082"},+    {0x0441, "afii10083"},+    {0x0442, "afii10084"},+    {0x0443, "afii10085"},+    {0x0444, "afii10086"},+    {0x0445, "afii10087"},+    {0x0446, "afii10088"},+    {0x0447, "afii10089"},+    {0x0448, "afii10090"},+    {0x0449, "afii10091"},+    {0x044A, "afii10092"},+    {0x044B, "afii10093"},+    {0x044C, "afii10094"},+    {0x044D, "afii10095"},+    {0x044E, "afii10096"},+    {0x044F, "afii10097"},+    {0x0451, "afii10071"},+    {0x0452, "afii10099"},+    {0x0453, "afii10100"},+    {0x0454, "afii10101"},+    {0x0455, "afii10102"},+    {0x0456, "afii10103"},+    {0x0457, "afii10104"},+    {0x0458, "afii10105"},+    {0x0459, "afii10106"},+    {0x045A, "afii10107"},+    {0x045B, "afii10108"},+    {0x045C, "afii10109"},+    {0x045E, "afii10110"},+    {0x045F, "afii10193"},+    {0x0462, "afii10146"},+    {0x0463, "afii10194"},+    {0x0472, "afii10147"},+    {0x0473, "afii10195"},+    {0x0474, "afii10148"},+    {0x0475, "afii10196"},+    {0x0490, "afii10050"},+    {0x0491, "afii10098"},+    {0x04D9, "afii10846"},+    {0x05B0, "afii57799"},+    {0x05B1, "afii57801"},+    {0x05B2, "afii57800"},+    {0x05B3, "afii57802"},+    {0x05B4, "afii57793"},+    {0x05B5, "afii57794"},+    {0x05B6, "afii57795"},+    {0x05B7, "afii57798"},+    {0x05B8, "afii57797"},+    {0x05B9, "afii57806"},+    {0x05BB, "afii57796"},+    {0x05BC, "afii57807"},+    {0x05BD, "afii57839"},+    {0x05BE, "afii57645"},+    {0x05BF, "afii57841"},+    {0x05C0, "afii57842"},+    {0x05C1, "afii57804"},+    {0x05C2, "afii57803"},+    {0x05C3, "afii57658"},+    {0x05D0, "afii57664"},+    {0x05D1, "afii57665"},+    {0x05D2, "afii57666"},+    {0x05D3, "afii57667"},+    {0x05D4, "afii57668"},+    {0x05D5, "afii57669"},+    {0x05D6, "afii57670"},+    {0x05D7, "afii57671"},+    {0x05D8, "afii57672"},+    {0x05D9, "afii57673"},+    {0x05DA, "afii57674"},+    {0x05DB, "afii57675"},+    {0x05DC, "afii57676"},+    {0x05DD, "afii57677"},+    {0x05DE, "afii57678"},+    {0x05DF, "afii57679"},+    {0x05E0, "afii57680"},+    {0x05E1, "afii57681"},+    {0x05E2, "afii57682"},+    {0x05E3, "afii57683"},+    {0x05E4, "afii57684"},+    {0x05E5, "afii57685"},+    {0x05E6, "afii57686"},+    {0x05E7, "afii57687"},+    {0x05E8, "afii57688"},+    {0x05E9, "afii57689"},+    {0x05EA, "afii57690"},+    {0x05F0, "afii57716"},+    {0x05F1, "afii57717"},+    {0x05F2, "afii57718"},+    {0x060C, "afii57388"},+    {0x061B, "afii57403"},+    {0x061F, "afii57407"},+    {0x0621, "afii57409"},+    {0x0622, "afii57410"},+    {0x0623, "afii57411"},+    {0x0624, "afii57412"},+    {0x0625, "afii57413"},+    {0x0626, "afii57414"},+    {0x0627, "afii57415"},+    {0x0628, "afii57416"},+    {0x0629, "afii57417"},+    {0x062A, "afii57418"},+    {0x062B, "afii57419"},+    {0x062C, "afii57420"},+    {0x062D, "afii57421"},+    {0x062E, "afii57422"},+    {0x062F, "afii57423"},+    {0x0630, "afii57424"},+    {0x0631, "afii57425"},+    {0x0632, "afii57426"},+    {0x0633, "afii57427"},+    {0x0634, "afii57428"},+    {0x0635, "afii57429"},+    {0x0636, "afii57430"},+    {0x0637, "afii57431"},+    {0x0638, "afii57432"},+    {0x0639, "afii57433"},+    {0x063A, "afii57434"},+    {0x0640, "afii57440"},+    {0x0641, "afii57441"},+    {0x0642, "afii57442"},+    {0x0643, "afii57443"},+    {0x0644, "afii57444"},+    {0x0645, "afii57445"},+    {0x0646, "afii57446"},+    {0x0647, "afii57470"},+    {0x0648, "afii57448"},+    {0x0649, "afii57449"},+    {0x064A, "afii57450"},+    {0x064B, "afii57451"},+    {0x064C, "afii57452"},+    {0x064D, "afii57453"},+    {0x064E, "afii57454"},+    {0x064F, "afii57455"},+    {0x0650, "afii57456"},+    {0x0651, "afii57457"},+    {0x0652, "afii57458"},+    {0x0660, "afii57392"},+    {0x0661, "afii57393"},+    {0x0662, "afii57394"},+    {0x0663, "afii57395"},+    {0x0664, "afii57396"},+    {0x0665, "afii57397"},+    {0x0666, "afii57398"},+    {0x0667, "afii57399"},+    {0x0668, "afii57400"},+    {0x0669, "afii57401"},+    {0x066A, "afii57381"},+    {0x066D, "afii63167"},+    {0x0679, "afii57511"},+    {0x067E, "afii57506"},+    {0x0686, "afii57507"},+    {0x0688, "afii57512"},+    {0x0691, "afii57513"},+    {0x0698, "afii57508"},+    {0x06A4, "afii57505"},+    {0x06AF, "afii57509"},+    {0x06BA, "afii57514"},+    {0x06D2, "afii57519"},+    {0x06D5, "afii57534"},+    {0x1E80, "Wgrave"},+    {0x1E81, "wgrave"},+    {0x1E82, "Wacute"},+    {0x1E83, "wacute"},+    {0x1E84, "Wdieresis"},+    {0x1E85, "wdieresis"},+    {0x1EF2, "Ygrave"},+    {0x1EF3, "ygrave"},+    {0x200C, "afii61664"},+    {0x200D, "afii301"},+    {0x200E, "afii299"},+    {0x200F, "afii300"},+    {0x2012, "figuredash"},+    {0x2013, "endash"},+    {0x2014, "emdash"},+    {0x2015, "afii00208"},+    {0x2017, "underscoredbl"},+    {0x2018, "quoteleft"},+    {0x2019, "quoteright"},+    {0x201A, "quotesinglbase"},+    {0x201B, "quotereversed"},+    {0x201C, "quotedblleft"},+    {0x201D, "quotedblright"},+    {0x201E, "quotedblbase"},+    {0x2020, "dagger"},+    {0x2021, "daggerdbl"},+    {0x2022, "bullet"},+    {0x2024, "onedotenleader"},+    {0x2025, "twodotenleader"},+    {0x2026, "ellipsis"},+    {0x202C, "afii61573"},+    {0x202D, "afii61574"},+    {0x202E, "afii61575"},+    {0x2030, "perthousand"},+    {0x2032, "minute"},+    {0x2033, "second"},+    {0x2039, "guilsinglleft"},+    {0x203A, "guilsinglright"},+    {0x203C, "exclamdbl"},+    {0x2044, "fraction"},+    {0x2070, "zerosuperior"},+    {0x2074, "foursuperior"},+    {0x2075, "fivesuperior"},+    {0x2076, "sixsuperior"},+    {0x2077, "sevensuperior"},+    {0x2078, "eightsuperior"},+    {0x2079, "ninesuperior"},+    {0x207D, "parenleftsuperior"},+    {0x207E, "parenrightsuperior"},+    {0x207F, "nsuperior"},+    {0x2080, "zeroinferior"},+    {0x2081, "oneinferior"},+    {0x2082, "twoinferior"},+    {0x2083, "threeinferior"},+    {0x2084, "fourinferior"},+    {0x2085, "fiveinferior"},+    {0x2086, "sixinferior"},+    {0x2087, "seveninferior"},+    {0x2088, "eightinferior"},+    {0x2089, "nineinferior"},+    {0x208D, "parenleftinferior"},+    {0x208E, "parenrightinferior"},+    {0x20A1, "colonmonetary"},+    {0x20A3, "franc"},+    {0x20A4, "lira"},+    {0x20A7, "peseta"},+    {0x20AA, "afii57636"},+    {0x20AB, "dong"},+    {0x20AC, "Euro"},+    {0x2105, "afii61248"},+    {0x2111, "Ifraktur"},+    {0x2113, "afii61289"},+    {0x2116, "afii61352"},+    {0x2118, "weierstrass"},+    {0x211C, "Rfraktur"},+    {0x211E, "prescription"},+    {0x2122, "trademark"},+    {0x2126, "Omega"},+    {0x212E, "estimated"},+    {0x2135, "aleph"},+    {0x2153, "onethird"},+    {0x2154, "twothirds"},+    {0x215B, "oneeighth"},+    {0x215C, "threeeighths"},+    {0x215D, "fiveeighths"},+    {0x215E, "seveneighths"},+    {0x2190, "arrowleft"},+    {0x2191, "arrowup"},+    {0x2192, "arrowright"},+    {0x2193, "arrowdown"},+    {0x2194, "arrowboth"},+    {0x2195, "arrowupdn"},+    {0x21A8, "arrowupdnbse"},+    {0x21B5, "carriagereturn"},+    {0x21D0, "arrowdblleft"},+    {0x21D1, "arrowdblup"},+    {0x21D2, "arrowdblright"},+    {0x21D3, "arrowdbldown"},+    {0x21D4, "arrowdblboth"},+    {0x2200, "universal"},+    {0x2202, "partialdiff"},+    {0x2203, "existential"},+    {0x2205, "emptyset"},+    {0x2206, "Delta"},+    {0x2207, "gradient"},+    {0x2208, "element"},+    {0x2209, "notelement"},+    {0x220B, "suchthat"},+    {0x220F, "product"},+    {0x2211, "summation"},+    {0x2212, "minus"},+    {0x2215, "fraction"},+    {0x2217, "asteriskmath"},+    {0x2219, "periodcentered"},+    {0x221A, "radical"},+    {0x221D, "proportional"},+    {0x221E, "infinity"},+    {0x221F, "orthogonal"},+    {0x2220, "angle"},+    {0x2227, "logicaland"},+    {0x2228, "logicalor"},+    {0x2229, "intersection"},+    {0x222A, "union"},+    {0x222B, "integral"},+    {0x2234, "therefore"},+    {0x223C, "similar"},+    {0x2245, "congruent"},+    {0x2248, "approxequal"},+    {0x2260, "notequal"},+    {0x2261, "equivalence"},+    {0x2264, "lessequal"},+    {0x2265, "greaterequal"},+    {0x2282, "propersubset"},+    {0x2283, "propersuperset"},+    {0x2284, "notsubset"},+    {0x2286, "reflexsubset"},+    {0x2287, "reflexsuperset"},+    {0x2295, "circleplus"},+    {0x2297, "circlemultiply"},+    {0x22A5, "perpendicular"},+    {0x22C5, "dotmath"},+    {0x2302, "house"},+    {0x2310, "revlogicalnot"},+    {0x2320, "integraltp"},+    {0x2321, "integralbt"},+    {0x2329, "angleleft"},+    {0x232A, "angleright"},+    {0x2500, "SF100000"},+    {0x2502, "SF110000"},+    {0x250C, "SF010000"},+    {0x2510, "SF030000"},+    {0x2514, "SF020000"},+    {0x2518, "SF040000"},+    {0x251C, "SF080000"},+    {0x2524, "SF090000"},+    {0x252C, "SF060000"},+    {0x2534, "SF070000"},+    {0x253C, "SF050000"},+    {0x2550, "SF430000"},+    {0x2551, "SF240000"},+    {0x2552, "SF510000"},+    {0x2553, "SF520000"},+    {0x2554, "SF390000"},+    {0x2555, "SF220000"},+    {0x2556, "SF210000"},+    {0x2557, "SF250000"},+    {0x2558, "SF500000"},+    {0x2559, "SF490000"},+    {0x255A, "SF380000"},+    {0x255B, "SF280000"},+    {0x255C, "SF270000"},+    {0x255D, "SF260000"},+    {0x255E, "SF360000"},+    {0x255F, "SF370000"},+    {0x2560, "SF420000"},+    {0x2561, "SF190000"},+    {0x2562, "SF200000"},+    {0x2563, "SF230000"},+    {0x2564, "SF470000"},+    {0x2565, "SF480000"},+    {0x2566, "SF410000"},+    {0x2567, "SF450000"},+    {0x2568, "SF460000"},+    {0x2569, "SF400000"},+    {0x256A, "SF540000"},+    {0x256B, "SF530000"},+    {0x256C, "SF440000"},+    {0x2580, "upblock"},+    {0x2584, "dnblock"},+    {0x2588, "block"},+    {0x258C, "lfblock"},+    {0x2590, "rtblock"},+    {0x2591, "ltshade"},+    {0x2592, "shade"},+    {0x2593, "dkshade"},+    {0x25A0, "filledbox"},+    {0x25A1, "H22073"},+    {0x25AA, "H18543"},+    {0x25AB, "H18551"},+    {0x25AC, "filledrect"},+    {0x25B2, "triagup"},+    {0x25BA, "triagrt"},+    {0x25BC, "triagdn"},+    {0x25C4, "triaglf"},+    {0x25CA, "lozenge"},+    {0x25CB, "circle"},+    {0x25CF, "H18533"},+    {0x25D8, "invbullet"},+    {0x25D9, "invcircle"},+    {0x25E6, "openbullet"},+    {0x263A, "smileface"},+    {0x263B, "invsmileface"},+    {0x263C, "sun"},+    {0x2640, "female"},+    {0x2642, "male"},+    {0x2660, "spade"},+    {0x2663, "club"},+    {0x2665, "heart"},+    {0x2666, "diamond"},+    {0x266A, "musicalnote"},+    {0x266B, "musicalnotedbl"},+    {0xF6BE, "dotlessj"},+    {0xF6BF, "LL"},+    {0xF6C0, "ll"},+    {0xF6C1, "Scedilla"},+    {0xF6C2, "scedilla"},+    {0xF6C3, "commaaccent"},+    {0xF6C4, "afii10063"},+    {0xF6C5, "afii10064"},+    {0xF6C6, "afii10192"},+    {0xF6C7, "afii10831"},+    {0xF6C8, "afii10832"},+    {0xF6C9, "Acute"},+    {0xF6CA, "Caron"},+    {0xF6CB, "Dieresis"},+    {0xF6CC, "DieresisAcute"},+    {0xF6CD, "DieresisGrave"},+    {0xF6CE, "Grave"},+    {0xF6CF, "Hungarumlaut"},+    {0xF6D0, "Macron"},+    {0xF6D1, "cyrBreve"},+    {0xF6D2, "cyrFlex"},+    {0xF6D3, "dblGrave"},+    {0xF6D4, "cyrbreve"},+    {0xF6D5, "cyrflex"},+    {0xF6D6, "dblgrave"},+    {0xF6D7, "dieresisacute"},+    {0xF6D8, "dieresisgrave"},+    {0xF6D9, "copyrightserif"},+    {0xF6DA, "registerserif"},+    {0xF6DB, "trademarkserif"},+    {0xF6DC, "onefitted"},+    {0xF6DD, "rupiah"},+    {0xF6DE, "threequartersemdash"},+    {0xF6DF, "centinferior"},+    {0xF6E0, "centsuperior"},+    {0xF6E1, "commainferior"},+    {0xF6E2, "commasuperior"},+    {0xF6E3, "dollarinferior"},+    {0xF6E4, "dollarsuperior"},+    {0xF6E5, "hypheninferior"},+    {0xF6E6, "hyphensuperior"},+    {0xF6E7, "periodinferior"},+    {0xF6E8, "periodsuperior"},+    {0xF6E9, "asuperior"},+    {0xF6EA, "bsuperior"},+    {0xF6EB, "dsuperior"},+    {0xF6EC, "esuperior"},+    {0xF6ED, "isuperior"},+    {0xF6EE, "lsuperior"},+    {0xF6EF, "msuperior"},+    {0xF6F0, "osuperior"},+    {0xF6F1, "rsuperior"},+    {0xF6F2, "ssuperior"},+    {0xF6F3, "tsuperior"},+    {0xF6F4, "Brevesmall"},+    {0xF6F5, "Caronsmall"},+    {0xF6F6, "Circumflexsmall"},+    {0xF6F7, "Dotaccentsmall"},+    {0xF6F8, "Hungarumlautsmall"},+    {0xF6F9, "Lslashsmall"},+    {0xF6FA, "OEsmall"},+    {0xF6FB, "Ogoneksmall"},+    {0xF6FC, "Ringsmall"},+    {0xF6FD, "Scaronsmall"},+    {0xF6FE, "Tildesmall"},+    {0xF6FF, "Zcaronsmall"},+    {0xF721, "exclamsmall"},+    {0xF724, "dollaroldstyle"},+    {0xF726, "ampersandsmall"},+    {0xF730, "zerooldstyle"},+    {0xF731, "oneoldstyle"},+    {0xF732, "twooldstyle"},+    {0xF733, "threeoldstyle"},+    {0xF734, "fouroldstyle"},+    {0xF735, "fiveoldstyle"},+    {0xF736, "sixoldstyle"},+    {0xF737, "sevenoldstyle"},+    {0xF738, "eightoldstyle"},+    {0xF739, "nineoldstyle"},+    {0xF73F, "questionsmall"},+    {0xF760, "Gravesmall"},+    {0xF761, "Asmall"},+    {0xF762, "Bsmall"},+    {0xF763, "Csmall"},+    {0xF764, "Dsmall"},+    {0xF765, "Esmall"},+    {0xF766, "Fsmall"},+    {0xF767, "Gsmall"},+    {0xF768, "Hsmall"},+    {0xF769, "Ismall"},+    {0xF76A, "Jsmall"},+    {0xF76B, "Ksmall"},+    {0xF76C, "Lsmall"},+    {0xF76D, "Msmall"},+    {0xF76E, "Nsmall"},+    {0xF76F, "Osmall"},+    {0xF770, "Psmall"},+    {0xF771, "Qsmall"},+    {0xF772, "Rsmall"},+    {0xF773, "Ssmall"},+    {0xF774, "Tsmall"},+    {0xF775, "Usmall"},+    {0xF776, "Vsmall"},+    {0xF777, "Wsmall"},+    {0xF778, "Xsmall"},+    {0xF779, "Ysmall"},+    {0xF77A, "Zsmall"},+    {0xF7A1, "exclamdownsmall"},+    {0xF7A2, "centoldstyle"},+    {0xF7A8, "Dieresissmall"},+    {0xF7AF, "Macronsmall"},+    {0xF7B4, "Acutesmall"},+    {0xF7B8, "Cedillasmall"},+    {0xF7BF, "questiondownsmall"},+    {0xF7E0, "Agravesmall"},+    {0xF7E1, "Aacutesmall"},+    {0xF7E2, "Acircumflexsmall"},+    {0xF7E3, "Atildesmall"},+    {0xF7E4, "Adieresissmall"},+    {0xF7E5, "Aringsmall"},+    {0xF7E6, "AEsmall"},+    {0xF7E7, "Ccedillasmall"},+    {0xF7E8, "Egravesmall"},+    {0xF7E9, "Eacutesmall"},+    {0xF7EA, "Ecircumflexsmall"},+    {0xF7EB, "Edieresissmall"},+    {0xF7EC, "Igravesmall"},+    {0xF7ED, "Iacutesmall"},+    {0xF7EE, "Icircumflexsmall"},+    {0xF7EF, "Idieresissmall"},+    {0xF7F0, "Ethsmall"},+    {0xF7F1, "Ntildesmall"},+    {0xF7F2, "Ogravesmall"},+    {0xF7F3, "Oacutesmall"},+    {0xF7F4, "Ocircumflexsmall"},+    {0xF7F5, "Otildesmall"},+    {0xF7F6, "Odieresissmall"},+    {0xF7F8, "Oslashsmall"},+    {0xF7F9, "Ugravesmall"},+    {0xF7FA, "Uacutesmall"},+    {0xF7FB, "Ucircumflexsmall"},+    {0xF7FC, "Udieresissmall"},+    {0xF7FD, "Yacutesmall"},+    {0xF7FE, "Thornsmall"},+    {0xF7FF, "Ydieresissmall"},+    {0xF8E5, "radicalex"},+    {0xF8E6, "arrowvertex"},+    {0xF8E7, "arrowhorizex"},+    {0xF8E8, "registersans"},+    {0xF8E9, "copyrightsans"},+    {0xF8EA, "trademarksans"},+    {0xF8EB, "parenlefttp"},+    {0xF8EC, "parenleftex"},+    {0xF8ED, "parenleftbt"},+    {0xF8EE, "bracketlefttp"},+    {0xF8EF, "bracketleftex"},+    {0xF8F0, "bracketleftbt"},+    {0xF8F1, "bracelefttp"},+    {0xF8F2, "braceleftmid"},+    {0xF8F3, "braceleftbt"},+    {0xF8F4, "braceex"},+    {0xF8F5, "integralex"},+    {0xF8F6, "parenrighttp"},+    {0xF8F7, "parenrightex"},+    {0xF8F8, "parenrightbt"},+    {0xF8F9, "bracketrighttp"},+    {0xF8FA, "bracketrightex"},+    {0xF8FB, "bracketrightbt"},+    {0xF8FC, "bracerighttp"},+    {0xF8FD, "bracerightmid"},+    {0xF8FE, "bracerightbt"},+    {0xFB00, "ff"},+    {0xFB01, "fi"},+    {0xFB02, "fl"},+    {0xFB03, "ffi"},+    {0xFB04, "ffl"},+    {0xFB1F, "afii57705"},+    {0xFB2A, "afii57694"},+    {0xFB2B, "afii57695"},+    {0xFB35, "afii57723"},+    {0xFB4B, "afii57700"},+    {0xFFFF, NULL}+};++static const HPDF_UNICODE HPDF_UNICODE_MAP_STANDARD[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x2019,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x2018, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x00D1, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x00A1, 0x00A2, 0x00A3, 0x2044, 0x00A5, 0x0192, 0x00A7,+    0x00A4, 0x0027, 0x201C, 0x00AB, 0x2039, 0x203A, 0xFB01, 0xFB02,+    0x0000, 0x2013, 0x2020, 0x2021, 0x00B7, 0x0000, 0x00B6, 0x2022,+    0x201A, 0x201E, 0x201D, 0x00BB, 0x2026, 0x2030, 0x0000, 0x00BF,+    0x0000, 0x0060, 0x00B4, 0x02C6, 0x02DC, 0x00AF, 0x02D8, 0x02D9,+    0x00A8, 0x0000, 0x02DA, 0x00B8, 0x0000, 0x02DD, 0x02DB, 0x02C7,+    0x2014, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x00C6, 0x0000, 0x00AA, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0141, 0x00D8, 0x0152, 0x00BA, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x00E6, 0x0000, 0x0000, 0x0000, 0x0131, 0x0000, 0x0000,+    0x0142, 0x00F8, 0x0153, 0x00DF, 0x0000, 0x0000, 0x0000, 0x0000+};++static const HPDF_UNICODE HPDF_UNICODE_MAP_WIN_ANSI[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x0000,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x017D, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x017E, 0x0178,+    0x0000, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x0000, 0x00AE, 0x00AF,+    0x02DA, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF+};++static const HPDF_UNICODE HPDF_UNICODE_MAP_MAC_ROMAN[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x0000,+    0x00C4, 0x00C5, 0x00C7, 0x00C9, 0x0000, 0x00D6, 0x00DC, 0x00E1,+    0x00E0, 0x00E2, 0x00E4, 0x00E3, 0x00E5, 0x00E7, 0x00E9, 0x00E8,+    0x00EA, 0x00EB, 0x00ED, 0x00EC, 0x00EE, 0x00EF, 0x00F1, 0x00F3,+    0x00F2, 0x00F4, 0x00F6, 0x00F5, 0x00FA, 0x00F9, 0x00FB, 0x00FC,+    0x2020, 0x00B0, 0x00A2, 0x00A3, 0x00A7, 0x2022, 0x00B6, 0x00DF,+    0x00AE, 0x00A9, 0x2122, 0x00B4, 0x00A8, 0x0000, 0x00C6, 0x00D8,+    0x0000, 0x00B1, 0x0000, 0x0000, 0x00A5, 0x00B5, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x00AA, 0x00BA, 0x0000, 0x00E6, 0x00F8,+    0x00BF, 0x00A1, 0x00AC, 0x0000, 0x0192, 0x0000, 0x0000, 0x00AB,+    0x00BB, 0x2026, 0x0020, 0x00C0, 0x00C3, 0x00D5, 0x0152, 0x0153,+    0x2013, 0x2014, 0x201C, 0x201D, 0x2018, 0x2019, 0x00F7, 0x0000,+    0x00FF, 0x0178, 0x2044, 0x00A4, 0x2039, 0x203A, 0xFB01, 0xFB02,+    0x2021, 0x00B7, 0x201A, 0x201E, 0x2030, 0x00C2, 0x00CA, 0x00C1,+    0x00CB, 0x00C8, 0x00CD, 0x00CE, 0x00CF, 0x00CC, 0x00D3, 0x00D4,+    0x0000, 0x00D2, 0x00DA, 0x00DB, 0x00D9, 0x0131, 0x02C6, 0x02DC,+    0x00AF, 0x02D8, 0x02D9, 0x02DA, 0x00B8, 0x02DD, 0x02DB, 0x02C7+};++static const HPDF_UNICODE HPDF_UNICODE_MAP_FONT_SPECIFIC[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,+    0x0088, 0x0089, 0x008A, 0x008B, 0x008C, 0x008D, 0x008E, 0x008F,+    0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,+    0x0098, 0x0099, 0x009A, 0x009B, 0x009C, 0x009D, 0x009E, 0x009F,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF+};++#define HPDF_ISO8859_FIRST_CHAR       32+#define HPDF_ISO8859_LAST_CHAR        255++/*---------------------------------------------------------------------------*/+/*------ ISO8859-2 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_2[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0104, 0x02D8, 0x0141, 0x00A4, 0x013D, 0x015A, 0x00A7,+    0x00A8, 0x0160, 0x015E, 0x0164, 0x0179, 0x00AD, 0x017D, 0x017B,+    0x00B0, 0x0105, 0x02DB, 0x0142, 0x00B4, 0x013E, 0x015B, 0x02C7,+    0x00B8, 0x0161, 0x015F, 0x0165, 0x017A, 0x02DD, 0x017E, 0x017C,+    0x0154, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x0139, 0x0106, 0x00C7,+    0x010C, 0x00C9, 0x0118, 0x00CB, 0x011A, 0x00CD, 0x00CE, 0x010E,+    0x0110, 0x0143, 0x0147, 0x00D3, 0x00D4, 0x0150, 0x00D6, 0x00D7,+    0x0158, 0x016E, 0x00DA, 0x0170, 0x00DC, 0x00DD, 0x0162, 0x00DF,+    0x0155, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x013A, 0x0107, 0x00E7,+    0x010D, 0x00E9, 0x0119, 0x00EB, 0x011B, 0x00ED, 0x00EE, 0x010F,+    0x0111, 0x0144, 0x0148, 0x00F3, 0x00F4, 0x0151, 0x00F6, 0x00F7,+    0x0159, 0x016F, 0x00FA, 0x0171, 0x00FC, 0x00FD, 0x0163, 0x02D9+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-3 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_3[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0126, 0x02D8, 0x00A3, 0x00A4, 0x0000, 0x0124, 0x00A7,+    0x00A8, 0x0130, 0x015E, 0x011E, 0x0134, 0x00AD, 0x0000, 0x017B,+    0x00B0, 0x0127, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x0125, 0x00B7,+    0x00B8, 0x0131, 0x015F, 0x011F, 0x0135, 0x00BD, 0x0000, 0x017C,+    0x00C0, 0x00C1, 0x00C2, 0x0000, 0x00C4, 0x010A, 0x0108, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x0000, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x0120, 0x00D6, 0x00D7,+    0x011C, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x016C, 0x015C, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x0000, 0x00E4, 0x010B, 0x0109, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x0000, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x0121, 0x00F6, 0x00F7,+    0x011D, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x016D, 0x015D, 0x02D9+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-4 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_4[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0104, 0x0138, 0x0156, 0x00A4, 0x0128, 0x013B, 0x00A7,+    0x00A8, 0x0160, 0x0112, 0x0122, 0x0166, 0x00AD, 0x017D, 0x00AF,+    0x00B0, 0x0105, 0x02DB, 0x0157, 0x00B4, 0x0129, 0x013C, 0x02C7,+    0x00B8, 0x0161, 0x0113, 0x0123, 0x0167, 0x014A, 0x017E, 0x014B,+    0x0100, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x012E,+    0x010C, 0x00C9, 0x0118, 0x00CB, 0x0116, 0x00CD, 0x00CE, 0x012A,+    0x0110, 0x0145, 0x014C, 0x0136, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x0172, 0x00DA, 0x00DB, 0x00DC, 0x0168, 0x016A, 0x00DF,+    0x0101, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x012F,+    0x010D, 0x00E9, 0x0119, 0x00EB, 0x0117, 0x00ED, 0x00EE, 0x012B,+    0x0111, 0x0146, 0x014D, 0x0137, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x0173, 0x00FA, 0x00FB, 0x00FC, 0x0169, 0x016B, 0x02D9+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-5 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_5[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407,+    0x0408, 0x0409, 0x040A, 0x040B, 0x040C, 0x00AD, 0x040E, 0x040F,+    0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 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,+    0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 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,+    0x2116, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457,+    0x0458, 0x0459, 0x045A, 0x045B, 0x045C, 0x00A7, 0x045E, 0x045F+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-6 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_6[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0000, 0x0000, 0x0000, 0x00A4, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x060C, 0x00AD, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x061B, 0x0000, 0x0000, 0x0000, 0x061F,+    0x0000, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,+    0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,+    0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,+    0x0638, 0x0639, 0x063A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,+    0x0648, 0x0649, 0x064A, 0x064B, 0x064C, 0x064D, 0x064E, 0x064F,+    0x0650, 0x0651, 0x0652, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-7 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_7[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x2018, 0x2019, 0x00A3, 0x20AC, 0x20AF, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x037A, 0x00AB, 0x00AC, 0x00AD, 0x0000, 0x2015,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x0384, 0x0385, 0x0386, 0x00B7,+    0x0388, 0x0389, 0x038A, 0x00BB, 0x038C, 0x00BD, 0x038E, 0x038F,+    0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,+    0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F,+    0x03A0, 0x03A1, 0x0000, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7,+    0x03A8, 0x03A9, 0x03AA, 0x03AB, 0x03AC, 0x03AD, 0x03AE, 0x03AF,+    0x03B0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7,+    0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF,+    0x03C0, 0x03C1, 0x03C2, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7,+    0x03C8, 0x03C9, 0x03CA, 0x03CB, 0x03CC, 0x03CD, 0x03CE, 0x0000+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-8 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_8[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0000, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2017,+    0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,+    0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,+    0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,+    0x05E8, 0x05E9, 0x05EA, 0x0000, 0x0000, 0x200E, 0x200F, 0x0000,+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-9 Encoding -------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_9[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x011E, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x0130, 0x015E, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x011F, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x0131, 0x015F, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-10 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_10[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0104, 0x0112, 0x0122, 0x012A, 0x0128, 0x0136, 0x00A7,+    0x013B, 0x0110, 0x0160, 0x0166, 0x017D, 0x00AD, 0x016A, 0x014A,+    0x00B0, 0x0105, 0x0113, 0x0123, 0x012B, 0x0129, 0x0137, 0x00B7,+    0x013C, 0x0111, 0x0161, 0x0167, 0x017E, 0x2015, 0x016B, 0x014B,+    0x0100, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x012E,+    0x010C, 0x00C9, 0x0118, 0x00CB, 0x0116, 0x00CD, 0x00CE, 0x00CF,+    0x00D0, 0x0145, 0x014C, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x0168,+    0x00D8, 0x0172, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,+    0x0101, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x012F,+    0x010D, 0x00E9, 0x0119, 0x00EB, 0x0117, 0x00ED, 0x00EE, 0x00EF,+    0x00F0, 0x0146, 0x014D, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x0169,+    0x00F8, 0x0173, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x0138+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-11 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_11[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0E01, 0x0E02, 0x0E03, 0x0E04, 0x0E05, 0x0E06, 0x0E07,+    0x0E08, 0x0E09, 0x0E0A, 0x0E0B, 0x0E0C, 0x0E0D, 0x0E0E, 0x0E0F,+    0x0E10, 0x0E11, 0x0E12, 0x0E13, 0x0E14, 0x0E15, 0x0E16, 0x0E17,+    0x0E18, 0x0E19, 0x0E1A, 0x0E1B, 0x0E1C, 0x0E1D, 0x0E1E, 0x0E1F,+    0x0E20, 0x0E21, 0x0E22, 0x0E23, 0x0E24, 0x0E25, 0x0E26, 0x0E27,+    0x0E28, 0x0E29, 0x0E2A, 0x0E2B, 0x0E2C, 0x0E2D, 0x0E2E, 0x0E2F,+    0x0E30, 0x0E31, 0x0E32, 0x0E33, 0x0E34, 0x0E35, 0x0E36, 0x0E37,+    0x0E38, 0x0E39, 0x0E3A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E3F,+    0x0E40, 0x0E41, 0x0E42, 0x0E43, 0x0E44, 0x0E45, 0x0E46, 0x0E47,+    0x0E48, 0x0E49, 0x0E4A, 0x0E4B, 0x0E4C, 0x0E4D, 0x0E4E, 0x0E4F,+    0x0E50, 0x0E51, 0x0E52, 0x0E53, 0x0E54, 0x0E55, 0x0E56, 0x0E57,+    0x0E58, 0x0E59, 0x0E5A, 0x0E5B, 0x0000, 0x0000, 0x0000, 0x0000+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-13 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_13[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x201D, 0x00A2, 0x00A3, 0x00A4, 0x201E, 0x00A6, 0x00A7,+    0x00D8, 0x00A9, 0x0156, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00C6,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x201C, 0x00B5, 0x00B6, 0x00B7,+    0x00F8, 0x00B9, 0x0157, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00E6,+    0x0104, 0x012E, 0x0100, 0x0106, 0x00C4, 0x00C5, 0x0118, 0x0112,+    0x010C, 0x00C9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012A, 0x013B,+    0x0160, 0x0143, 0x0145, 0x00D3, 0x014C, 0x00D5, 0x00D6, 0x00D7,+    0x0172, 0x0141, 0x015A, 0x016A, 0x00DC, 0x017B, 0x017D, 0x00DF,+    0x0105, 0x012F, 0x0101, 0x0107, 0x00E4, 0x00E5, 0x0119, 0x0113,+    0x010D, 0x00E9, 0x017A, 0x0117, 0x0123, 0x0137, 0x012B, 0x013C,+    0x0161, 0x0144, 0x0146, 0x00F3, 0x014D, 0x00F5, 0x00F6, 0x00F7,+    0x0173, 0x0142, 0x015B, 0x016B, 0x00FC, 0x017C, 0x017E, 0x2019+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-14 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_14[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x1E02, 0x1E03, 0x00A3, 0x010A, 0x010B, 0x1E0A, 0x00A7,+    0x1E80, 0x00A9, 0x1E82, 0x1E0B, 0x1EF2, 0x00AD, 0x00AE, 0x0178,+    0x1E1E, 0x1E1F, 0x0120, 0x0121, 0x1E40, 0x1E41, 0x00B6, 0x1E56,+    0x1E81, 0x1E57, 0x1E83, 0x1E60, 0x1EF3, 0x1E84, 0x1E85, 0x1E61,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x0174, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x1E6A,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x0176, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x0175, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x1E6B,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x0177, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-15 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_15[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x20AC, 0x00A5, 0x0160, 0x00A7,+    0x0161, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x017D, 0x00B5, 0x00B6, 0x00B7,+    0x017E, 0x00B9, 0x00BA, 0x00BB, 0x0152, 0x0153, 0x0178, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ ISO8859-16 Encoding ------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_ISO8859_16[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0104, 0x0105, 0x0141, 0x20AC, 0x201E, 0x0160, 0x00A7,+    0x0161, 0x00A9, 0x0218, 0x00AB, 0x0179, 0x00AD, 0x017A, 0x017B,+    0x00B0, 0x00B1, 0x010C, 0x0142, 0x017D, 0x201D, 0x00B6, 0x00B7,+    0x017E, 0x010D, 0x0219, 0x00BB, 0x0152, 0x0153, 0x0178, 0x017C,+    0x00C0, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x0106, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x0110, 0x0143, 0x00D2, 0x00D3, 0x00D4, 0x0150, 0x00D6, 0x015A,+    0x0170, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x0118, 0x021A, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x0107, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x0111, 0x0144, 0x00F2, 0x00F3, 0x00F4, 0x0151, 0x00F6, 0x015B,+    0x0171, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x0119, 0x021B, 0x00FF+};++#define HPDF_MSCP_FIRST_CHAR       32+#define HPDF_MSCP_LAST_CHAR        255+++/*---------------------------------------------------------------------------*/+/*------ CP1250 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_CP1250[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,+    0x0000, 0x2030, 0x0160, 0x2039, 0x015A, 0x0164, 0x017D, 0x0179,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x0000, 0x2122, 0x0161, 0x203A, 0x015B, 0x0165, 0x017E, 0x017A,+    0x00A0, 0x02C7, 0x02D8, 0x0141, 0x00A4, 0x0104, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x015E, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x017B,+    0x00B0, 0x00B1, 0x02DB, 0x0142, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x0105, 0x015F, 0x00BB, 0x013D, 0x02DD, 0x013E, 0x017C,+    0x0154, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x0139, 0x0106, 0x00C7,+    0x010C, 0x00C9, 0x0118, 0x00CB, 0x011A, 0x00CD, 0x00CE, 0x010E,+    0x0110, 0x0143, 0x0147, 0x00D3, 0x00D4, 0x0150, 0x00D6, 0x00D7,+    0x0158, 0x016E, 0x00DA, 0x0170, 0x00DC, 0x00DD, 0x0162, 0x00DF,+    0x0155, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x013A, 0x0107, 0x00E7,+    0x010D, 0x00E9, 0x0119, 0x00EB, 0x011B, 0x00ED, 0x00EE, 0x010F,+    0x0111, 0x0144, 0x0148, 0x00F3, 0x00F4, 0x0151, 0x00F6, 0x00F7,+    0x0159, 0x016F, 0x00FA, 0x0171, 0x00FC, 0x00FD, 0x0163, 0x02D9+};++/*---------------------------------------------------------------------------*/+/*------ CP1251 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_CP1251[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, 0x2020, 0x2021,+    0x20AC, 0x2030, 0x0409, 0x2039, 0x040A, 0x040C, 0x040B, 0x040F,+    0x0452, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x0000, 0x2122, 0x0459, 0x203A, 0x045A, 0x045C, 0x045B, 0x045F,+    0x00A0, 0x040E, 0x045E, 0x0408, 0x00A4, 0x0490, 0x00A6, 0x00A7,+    0x0401, 0x00A9, 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407,+    0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, 0x00B6, 0x00B7,+    0x0451, 0x2116, 0x0454, 0x00BB, 0x0458, 0x0405, 0x0455, 0x0457,+    0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 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,+    0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 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+};++/*---------------------------------------------------------------------------*/+/*------ CP1252 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_CP1252[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x017D, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x017E, 0x0178,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ CP1253 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE HPDF_UNICODE_MAP_CP1253[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x0000, 0x2030, 0x0000, 0x2039, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x0385, 0x0386, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x0000, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x2015,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x0384, 0x00B5, 0x00B6, 0x00B7,+    0x0388, 0x0389, 0x038A, 0x00BB, 0x038C, 0x00BD, 0x038E, 0x038F,+    0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,+    0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F,+    0x03A0, 0x03A1, 0x0000, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7,+    0x03A8, 0x03A9, 0x03AA, 0x03AB, 0x03AC, 0x03AD, 0x03AE, 0x03AF,+    0x03B0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7,+    0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF,+    0x03C0, 0x03C1, 0x03C2, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7,+    0x03C8, 0x03C9, 0x03CA, 0x03CB, 0x03CC, 0x03CD, 0x03CE, 0x0000+};++/*---------------------------------------------------------------------------*/+/*------ CP1254 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_CP1254[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,+    0x011E, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x0130, 0x015E, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,+    0x011F, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x0131, 0x015F, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ CP1255 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_CP1255[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0000, 0x2039, 0x0000, 0x0000, 0x0000, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x02DC, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x20AA, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x05B0, 0x05B1, 0x05B2, 0x05B3, 0x05B4, 0x05B5, 0x05B6, 0x05B7,+    0x05B8, 0x05B9, 0x0000, 0x05BB, 0x05BC, 0x05BD, 0x05BE, 0x05BF,+    0x05C0, 0x05C1, 0x05C2, 0x05C3, 0x05F0, 0x05F1, 0x05F2, 0x05F3,+    0x05F4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,+    0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,+    0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,+    0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,+    0x05E8, 0x05E9, 0x05EA, 0x0000, 0x0000, 0x200E, 0x200F, 0x0000+};++/*---------------------------------------------------------------------------*/+/*------ CP1256 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_CP1256[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x067E, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688,+    0x06AF, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x06A9, 0x2122, 0x0691, 0x203A, 0x0153, 0x200C, 0x200D, 0x06BA,+    0x00A0, 0x060C, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x06BE, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x061B, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x061F,+    0x06C1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,+    0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,+    0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00D7,+    0x0637, 0x0638, 0x0639, 0x063A, 0x0640, 0x0641, 0x0642, 0x0643,+    0x00E0, 0x0644, 0x00E2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0649, 0x064A, 0x00EE, 0x00EF,+    0x064B, 0x064C, 0x064D, 0x064E, 0x00F4, 0x064F, 0x0650, 0x00F7,+    0x0651, 0x00F9, 0x0652, 0x00FB, 0x00FC, 0x200E, 0x200F, 0x06D2+};++/*---------------------------------------------------------------------------*/+/*------ CP1257 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_CP1257[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,+    0x0000, 0x2030, 0x0000, 0x2039, 0x0000, 0x00A8, 0x02C7, 0x00B8,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x00AF, 0x02DB, 0x0000,+    0x00A0, 0x0000, 0x00A2, 0x00A3, 0x00A4, 0x0000, 0x00A6, 0x00A7,+    0x00D8, 0x00A9, 0x0156, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00C6,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00F8, 0x00B9, 0x0157, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00E6,+    0x0104, 0x012E, 0x0100, 0x0106, 0x00C4, 0x00C5, 0x0118, 0x0112,+    0x010C, 0x00C9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012A, 0x013B,+    0x0160, 0x0143, 0x0145, 0x00D3, 0x014C, 0x00D5, 0x00D6, 0x00D7,+    0x0172, 0x0141, 0x015A, 0x016A, 0x00DC, 0x017B, 0x017D, 0x00DF,+    0x0105, 0x012F, 0x0101, 0x0107, 0x00E4, 0x00E5, 0x0119, 0x0113,+    0x010D, 0x00E9, 0x017A, 0x0117, 0x0123, 0x0137, 0x012B, 0x013C,+    0x0161, 0x0144, 0x0146, 0x00F3, 0x014D, 0x00F5, 0x00F6, 0x00F7,+    0x0173, 0x0142, 0x015B, 0x016B, 0x00FC, 0x017C, 0x017E, 0x02D9+};++/*---------------------------------------------------------------------------*/+/*------ CP1258 Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_CP1258[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,+    0x02C6, 0x2030, 0x0000, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,+    0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,+    0x02DC, 0x2122, 0x0000, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,+    0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,+    0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,+    0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,+    0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,+    0x00C0, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x00C5, 0x00C6, 0x00C7,+    0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x0300, 0x00CD, 0x00CE, 0x00CF,+    0x0110, 0x00D1, 0x0309, 0x00D3, 0x00D4, 0x01A0, 0x00D6, 0x00D7,+    0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x01AF, 0x0303, 0x00DF,+    0x00E0, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x00E5, 0x00E6, 0x00E7,+    0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0301, 0x00ED, 0x00EE, 0x00EF,+    0x0111, 0x00F1, 0x0323, 0x00F3, 0x00F4, 0x01A1, 0x00F6, 0x00F7,+    0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x01B0, 0x20AB, 0x00FF+};++/*---------------------------------------------------------------------------*/+/*------ KOI8-R Encoding ----------------------------------------------------*/++static const HPDF_UNICODE  HPDF_UNICODE_MAP_KOI8_R[] = {+    0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,+    0x0028, 0x0029, 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F,+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,+    0x0038, 0x0039, 0x003A, 0x003B, 0x003C, 0x003D, 0x003E, 0x003F,+    0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,+    0x0048, 0x0049, 0x004A, 0x004B, 0x004C, 0x004D, 0x004E, 0x004F,+    0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,+    0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, 0x005E, 0x005F,+    0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,+    0x0068, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,+    0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,+    0x0078, 0x0079, 0x007A, 0x007B, 0x007C, 0x007D, 0x007E, 0x007F,+    0x2500, 0x2502, 0x250C, 0x2510, 0x2514, 0x2518, 0x251C, 0x2524,+    0x252C, 0x2534, 0x253C, 0x2580, 0x2584, 0x2588, 0x258C, 0x2590,+    0x2591, 0x2592, 0x2593, 0x2320, 0x25A0, 0x2219, 0x221A, 0x2248,+    0x2264, 0x2265, 0x00A0, 0x2321, 0x00B0, 0x00B2, 0x00B7, 0x00F7,+    0x2550, 0x2551, 0x2552, 0x0451, 0x2553, 0x2554, 0x2555, 0x2556,+    0x2557, 0x2558, 0x2559, 0x255A, 0x255B, 0x255C, 0x255D, 0x255E,+    0x255F, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, 0x2564, 0x2565,+    0x2566, 0x2567, 0x2568, 0x2569, 0x256A, 0x256B, 0x256C, 0x00A9,+    0x044E, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,+    0x0445, 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E,+    0x043F, 0x044F, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,+    0x044C, 0x044B, 0x0437, 0x0448, 0x044D, 0x0449, 0x0447, 0x044A,+    0x042E, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,+    0x0425, 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E,+    0x041F, 0x042F, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,+    0x042C, 0x042B, 0x0417, 0x0428, 0x042D, 0x0429, 0x0427, 0x042A+};++typedef struct _HPDF_BuiltinEncodingData {+    const char     *encoding_name;+    HPDF_BaseEncodings  base_encoding;+    const HPDF_UNICODE  *ovewrride_map;+} HPDF_BuiltinEncodingData;+++static const HPDF_BuiltinEncodingData  HPDF_BUILTIN_ENCODINGS[] = {+    {+        HPDF_ENCODING_FONT_SPECIFIC,+        HPDF_BASE_ENCODING_FONT_SPECIFIC,+        NULL},+    {+        HPDF_ENCODING_STANDARD,+        HPDF_BASE_ENCODING_STANDARD,+        NULL},+    {+        HPDF_ENCODING_MAC_ROMAN,+        HPDF_BASE_ENCODING_MAC_ROMAN,+        NULL},+    {+        HPDF_ENCODING_WIN_ANSI,+        HPDF_BASE_ENCODING_WIN_ANSI,+        NULL+    },+    {+        HPDF_ENCODING_ISO8859_2,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_2+    },+    {+        HPDF_ENCODING_ISO8859_3,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_3+    },+    {+        HPDF_ENCODING_ISO8859_4,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_4+    },+    {+        HPDF_ENCODING_ISO8859_5,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_5+    },+    {+        HPDF_ENCODING_ISO8859_6,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_6+    },+    {+        HPDF_ENCODING_ISO8859_7,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_7+    },+    {+        HPDF_ENCODING_ISO8859_8,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_8+    },+    {+        HPDF_ENCODING_ISO8859_9,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_9+    },+    {+        HPDF_ENCODING_ISO8859_10,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_10+    },+    {+        HPDF_ENCODING_ISO8859_11,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_11+    },+    {+        HPDF_ENCODING_ISO8859_13,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_13+    },+    {+        HPDF_ENCODING_ISO8859_14,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_14+    },+    {+        HPDF_ENCODING_ISO8859_15,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_15+    },+    {+        HPDF_ENCODING_ISO8859_16,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_ISO8859_16+    },+    {+        HPDF_ENCODING_CP1250,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1250+    },+    {+        HPDF_ENCODING_CP1251,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1251+    },+    {+        HPDF_ENCODING_CP1252,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1252+    },+    {+        HPDF_ENCODING_CP1253,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1253+    },+    {+        HPDF_ENCODING_CP1254,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1254+    },+    {+        HPDF_ENCODING_CP1255,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1255+    },+    {+        HPDF_ENCODING_CP1256,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1256+    },+    {+        HPDF_ENCODING_CP1257,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1257+    },+    {+        HPDF_ENCODING_CP1258,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_CP1258+    },+    {+        HPDF_ENCODING_KOI8_R,+        HPDF_BASE_ENCODING_WIN_ANSI,+        HPDF_UNICODE_MAP_KOI8_R+    },+    {+        NULL,+        HPDF_BASE_ENCODING_EOF,+        NULL+    }+};+++/*---------------------------------------------------------------------------*/++const HPDF_BuiltinEncodingData*+HPDF_BasicEncoder_FindBuiltinData  (const char  *encoding_name);+++void+HPDF_BasicEncoder_CopyMap  (HPDF_Encoder        encoder,+                            const HPDF_UNICODE  *map);+++HPDF_STATUS+HPDF_BasicEncoder_OverrideMap  (HPDF_Encoder        encoder,+                                const HPDF_UNICODE  *map);+++/*-- HPDF_Encoder ---------------------------------------*/++HPDF_Encoder+HPDF_BasicEncoder_New  (HPDF_MMgr        mmgr,+                        const char  *encoding_name)+{+    HPDF_Encoder encoder;+    HPDF_BasicEncoderAttr encoder_attr;+    const HPDF_BuiltinEncodingData *data;+    char *eptr;++    HPDF_PTRACE((" HPDF_BasicEncoder_New\n"));++    if (mmgr == NULL)+        return NULL;++    data = HPDF_BasicEncoder_FindBuiltinData (encoding_name);+    if (!data->encoding_name) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_ENCODING_NAME, 0);+        return NULL;+    }++    encoder = HPDF_GetMem (mmgr, sizeof(HPDF_Encoder_Rec));+    if (!encoder)+        return NULL;++    HPDF_MemSet (encoder, 0, sizeof(HPDF_Encoder_Rec));++    eptr = encoder->name + HPDF_LIMIT_MAX_NAME_LEN;+    HPDF_StrCpy (encoder->name, data->encoding_name, eptr);++    encoder->mmgr = mmgr;+    encoder->error = mmgr->error;+    encoder->type = HPDF_ENCODER_TYPE_SINGLE_BYTE;+    encoder->to_unicode_fn = HPDF_BasicEncoder_ToUnicode;+    encoder->write_fn = HPDF_BasicEncoder_Write;+    encoder->free_fn = HPDF_BasicEncoder_Free;++    encoder_attr = HPDF_GetMem(mmgr, sizeof(HPDF_BasicEncoderAttr_Rec));+    if (!encoder_attr) {+        HPDF_FreeMem (encoder->mmgr, encoder);+        return NULL;+    }++    encoder->sig_bytes = HPDF_ENCODER_SIG_BYTES;+    encoder->attr = encoder_attr;+    HPDF_MemSet (encoder_attr, 0, sizeof(HPDF_BasicEncoderAttr_Rec));++    encoder_attr->first_char = HPDF_BASIC_ENCODER_FIRST_CHAR;+    encoder_attr->last_char = HPDF_BASIC_ENCODER_LAST_CHAR;+    encoder_attr->has_differences = HPDF_FALSE;++    eptr = encoder_attr->base_encoding + HPDF_LIMIT_MAX_NAME_LEN;++    switch (data->base_encoding) {+        case HPDF_BASE_ENCODING_STANDARD:+            HPDF_StrCpy (encoder_attr->base_encoding,+                     HPDF_ENCODING_STANDARD,  eptr);+            HPDF_BasicEncoder_CopyMap (encoder, HPDF_UNICODE_MAP_STANDARD);+            break;+        case HPDF_BASE_ENCODING_WIN_ANSI:+            HPDF_StrCpy (encoder_attr->base_encoding,+                     HPDF_ENCODING_WIN_ANSI,  eptr);+            HPDF_BasicEncoder_CopyMap (encoder, HPDF_UNICODE_MAP_WIN_ANSI);+            break;+        case HPDF_BASE_ENCODING_MAC_ROMAN:+            HPDF_StrCpy (encoder_attr->base_encoding,+                     HPDF_ENCODING_MAC_ROMAN,  eptr);+            HPDF_BasicEncoder_CopyMap (encoder, HPDF_UNICODE_MAP_MAC_ROMAN);+            break;+        default:+            HPDF_StrCpy (encoder_attr->base_encoding,+                     HPDF_ENCODING_FONT_SPECIFIC,  eptr);+            HPDF_BasicEncoder_CopyMap (encoder,+                    HPDF_UNICODE_MAP_FONT_SPECIFIC);+    }++    if (data->ovewrride_map)+        HPDF_BasicEncoder_OverrideMap  (encoder, data->ovewrride_map);++    return encoder;+}+++++const HPDF_BuiltinEncodingData*+HPDF_BasicEncoder_FindBuiltinData  (const char  *encoding_name)+{+    HPDF_UINT i = 0;++    HPDF_PTRACE((" HPDF_BasicEncoder_FindBuiltinData\n"));++    while (HPDF_BUILTIN_ENCODINGS[i].encoding_name) {+        if (HPDF_StrCmp (HPDF_BUILTIN_ENCODINGS[i].encoding_name,+                encoding_name) == 0)+            break;++        i++;+    }++    return &HPDF_BUILTIN_ENCODINGS[i];+}+++HPDF_UNICODE+HPDF_BasicEncoder_ToUnicode (HPDF_Encoder     encoder,+                             HPDF_UINT16      code)+{+    HPDF_BasicEncoderAttr attr = (HPDF_BasicEncoderAttr)encoder->attr;++    if (code > 255)+        return 0;++    return attr->unicode_map[code];+}+++HPDF_UNICODE+HPDF_Encoder_ToUnicode  (HPDF_Encoder     encoder,+                         HPDF_UINT16      code)+{+    return encoder->to_unicode_fn (encoder, code);+}+++void+HPDF_BasicEncoder_CopyMap  (HPDF_Encoder        encoder,+                            const HPDF_UNICODE  *map)+{+    HPDF_UINT i;+    HPDF_UNICODE* dst = ((HPDF_BasicEncoderAttr)encoder->attr)->unicode_map ++        HPDF_BASIC_ENCODER_FIRST_CHAR;++    HPDF_PTRACE((" HPDF_BasicEncoder_CopyMap\n"));++    for (i = 0; i <= HPDF_BASIC_ENCODER_LAST_CHAR -+            HPDF_BASIC_ENCODER_FIRST_CHAR; i++)+        *dst++ = *map++;+}++HPDF_STATUS+HPDF_BasicEncoder_OverrideMap  (HPDF_Encoder        encoder,+                                const HPDF_UNICODE  *map)+{+    HPDF_UINT i;+    HPDF_BasicEncoderAttr data = (HPDF_BasicEncoderAttr)encoder->attr;+    HPDF_UNICODE* dst;+    HPDF_BYTE* flgs;++    HPDF_PTRACE ((" HPDF_BasicEncoder_OverrideMap\n"));++    if (data->has_differences)+        return HPDF_SetError (encoder->error, HPDF_INVALID_OPERATION, 0);++    dst = data->unicode_map + HPDF_BASIC_ENCODER_FIRST_CHAR;+    flgs = data->differences + HPDF_BASIC_ENCODER_FIRST_CHAR;++    for (i = 0; i <= HPDF_BASIC_ENCODER_LAST_CHAR -+            HPDF_BASIC_ENCODER_FIRST_CHAR; i++) {+        if (*map != *dst) {+            *dst = *map;+            *flgs = 1;+        }+        map++;+        dst++;+        flgs++;+    }+    data->has_differences = HPDF_TRUE;++    return HPDF_OK;+}++void+HPDF_Encoder_Free  (HPDF_Encoder  encoder)+{+    HPDF_PTRACE ((" HPDF_Encoder_Free\n"));++    if (!encoder)+        return;++    if (encoder->free_fn)+        encoder->free_fn (encoder);+    HPDF_FreeMem (encoder->mmgr, encoder);+}+++const char*+HPDF_UnicodeToGryphName  (HPDF_UNICODE  unicode)+{+    const HPDF_UnicodeGryphPair* map = HPDF_UNICODE_GRYPH_NAME_MAP;++    HPDF_PTRACE ((" HPDF_UnicodeToGryphName\n"));++    while (map->unicode <= unicode) {+        if (map->unicode == unicode)+            return map->gryph_name;+        map++;+    }++    return HPDF_UNICODE_GRYPH_NAME_MAP[0].gryph_name;+}++HPDF_UNICODE+HPDF_GryphNameToUnicode  (const char  *gryph_name)+{+    const HPDF_UnicodeGryphPair* map = HPDF_UNICODE_GRYPH_NAME_MAP;++    HPDF_PTRACE ((" HPDF_GryphNameToUnicode\n"));++    while (map->unicode != 0xFFFF) {+        if (HPDF_StrCmp (gryph_name, map->gryph_name) == 0)+            return map->unicode;+        map++;+    }++    return 0x0000;+}++void+HPDF_BasicEncoder_Free (HPDF_Encoder  encoder)+{+    HPDF_PTRACE ((" HPDF_BasicEncoder_Free\n"));++    HPDF_FreeMem (encoder->mmgr, encoder->attr);+    encoder->attr = NULL;+}++HPDF_STATUS+HPDF_BasicEncoder_Write  (HPDF_Encoder  encoder,+                          HPDF_Stream   out)+{+    HPDF_STATUS ret;+    HPDF_BasicEncoderAttr attr = (HPDF_BasicEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_BasicEncoder_Write\n"));++    /*  if HPDF_ENCODING_FONT_SPECIFIC is selected, no Encoding object will be "+     *  written.+     */+    if (HPDF_StrCmp (attr->base_encoding, HPDF_ENCODING_FONT_SPECIFIC) == 0)+        return HPDF_OK;++    /* if encoder has differences-data, encoding object is written as+       dictionary-object, otherwise it is written as name-object. */+    if (attr->has_differences == HPDF_TRUE) {+        ret = HPDF_Stream_WriteStr (out,+                "/Encoding <<\012"+                "/Type /Encoding\012"+                "/BaseEncoding ");+        if (ret != HPDF_OK)+            return ret;+    } else {+        ret = HPDF_Stream_WriteStr (out, "/Encoding ");+        if (ret != HPDF_OK)+            return ret;+    }++    ret = HPDF_Stream_WriteEscapeName (out, attr->base_encoding);+    if (ret != HPDF_OK)+        return ret;++    ret = HPDF_Stream_WriteStr (out, "\012");+    if (ret != HPDF_OK)+        return ret;++    /* write differences data */+    if (attr->has_differences == HPDF_TRUE) {+        HPDF_INT i;++        ret = HPDF_Stream_WriteStr (out, "/Differences [");+        if (ret != HPDF_OK)+            return ret;++        for (i = attr->first_char; i <= attr->last_char; i++) {+            if (attr->differences[i] == 1) {+                char tmp[HPDF_TEXT_DEFAULT_LEN];+                char* ptmp = tmp;+                const char* char_name =+                    HPDF_UnicodeToGryphName (attr->unicode_map[i]);++                ptmp = HPDF_IToA (ptmp, i, tmp + HPDF_TMP_BUF_SIZ - 1);+                *ptmp++ = ' ';+                *ptmp++ = '/';+                ptmp = HPDF_StrCpy (ptmp, char_name, tmp ++                        HPDF_TMP_BUF_SIZ - 1);+                *ptmp++ = ' ';+                *ptmp = 0;++                ret = HPDF_Stream_WriteStr (out, tmp);+                if (ret != HPDF_OK)+                    return ret;+            }+        }++        ret = HPDF_Stream_WriteStr (out, "]\012>>\012");+    }++    return ret;+}+++HPDF_STATUS+HPDF_Encoder_Validate  (HPDF_Encoder  encoder)+{+    HPDF_PTRACE ((" HPDF_Encoder_Validate\n"));++    if (!encoder || encoder->sig_bytes != HPDF_ENCODER_SIG_BYTES)+        return HPDF_FALSE;+    else+        return HPDF_TRUE;+}+++/* At first, CMAP encoder is create as 'virtual' object.+ * When init_fn is called, cmap-data is loaded and it becomes to be available+ */++HPDF_Encoder+HPDF_CMapEncoder_New  (HPDF_MMgr                mmgr,+                       char               *name,+                       HPDF_Encoder_Init_Func   init_fn)+{+    HPDF_Encoder encoder;++    HPDF_PTRACE ((" HPDF_CMapEncoder_New\n"));++    if (mmgr == NULL)+        return NULL;++    encoder = HPDF_GetMem (mmgr, sizeof(HPDF_Encoder_Rec));+    if (!encoder)+        return NULL;++    HPDF_MemSet (encoder, 0, sizeof(HPDF_Encoder_Rec));++    HPDF_StrCpy (encoder->name, name, encoder->name + HPDF_LIMIT_MAX_NAME_LEN);+    encoder->mmgr = mmgr;+    encoder->error = mmgr->error;+    encoder->type = HPDF_ENCODER_TYPE_UNINITIALIZED;+    encoder->byte_type_fn = HPDF_CMapEncoder_ByteType;+    encoder->to_unicode_fn = HPDF_CMapEncoder_ToUnicode;+    encoder->write_fn = HPDF_CMapEncoder_Write;+    encoder->free_fn = HPDF_CMapEncoder_Free;+    encoder->init_fn = init_fn;+    encoder->sig_bytes = HPDF_ENCODER_SIG_BYTES;++    return encoder;+}+++HPDF_STATUS+HPDF_CMapEncoder_InitAttr  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr encoder_attr;+    HPDF_UINT i;+    HPDF_UINT j;++    HPDF_PTRACE ((" HPDF_CMapEncoder_InitAttr\n"));++    if (encoder->attr)+        return HPDF_INVALID_ENCODER;++    encoder_attr = HPDF_GetMem(encoder->mmgr,+            sizeof(HPDF_CMapEncoderAttr_Rec));++    if (!encoder_attr)+        return encoder->error->error_no;++    HPDF_MemSet (encoder_attr, 0, sizeof(HPDF_CMapEncoderAttr_Rec));+    encoder->attr = encoder_attr;++    encoder_attr->writing_mode = HPDF_WMODE_HORIZONTAL;++    for (i = 0; i <= 255; i++) {+        for (j = 0; j <= 255; j++) {+            /* undefined charactors are replaced to square */+            encoder_attr->unicode_map[i][j] = 0x25A1;+        }+    }++    /* create cmap range */+    encoder_attr->cmap_range = HPDF_List_New (encoder->mmgr,+                HPDF_DEF_RANGE_TBL_NUM);+    if (!encoder_attr->cmap_range)+        return encoder->error->error_no;++    encoder_attr->notdef_range = HPDF_List_New (encoder->mmgr,+                HPDF_DEF_ITEMS_PER_BLOCK);+    if (!encoder_attr->notdef_range)+        return encoder->error->error_no;++    encoder_attr->code_space_range = HPDF_List_New (encoder->mmgr,+                HPDF_DEF_ITEMS_PER_BLOCK);+    if (!encoder_attr->code_space_range)+        return encoder->error->error_no;++    return HPDF_OK;+}+++HPDF_UNICODE+HPDF_CMapEncoder_ToUnicode  (HPDF_Encoder  encoder,+                             HPDF_UINT16   code)+{+    HPDF_BYTE l = code;+    HPDF_BYTE h = code >> 8;+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    return attr->unicode_map[l][h];+}+++HPDF_UINT16+HPDF_CMapEncoder_ToCID  (HPDF_Encoder  encoder,+                         HPDF_UINT16   code)+{+    HPDF_BYTE l = code;+    HPDF_BYTE h = code >> 8;++    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    return attr->cid_map[l][h];+}+++void+HPDF_CMapEncoder_Free  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_UINT i;+    HPDF_CidRange_Rec *data;++    HPDF_PTRACE ((" HPDF_CMapEncoder_Free\n"));++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (attr && attr->cmap_range) {+        for (i = 0; i < attr->cmap_range->count; i++) {+            data = HPDF_List_ItemAt (attr->cmap_range, i);++            HPDF_FreeMem (encoder->mmgr, data);+        }++        HPDF_List_Free (attr->cmap_range);+    }++    if (attr && attr->notdef_range) {+        for (i = 0; i < attr->notdef_range->count; i++) {+            data = HPDF_List_ItemAt (attr->notdef_range, i);++            HPDF_FreeMem (encoder->mmgr, data);+        }++        HPDF_List_Free (attr->notdef_range);+    }++    if (attr && attr->code_space_range) {+        for (i = 0; i < attr->code_space_range->count; i++) {+            data = HPDF_List_ItemAt (attr->code_space_range, i);++            HPDF_FreeMem (encoder->mmgr, data);+        }++        HPDF_List_Free (attr->code_space_range);+    }++    HPDF_FreeMem (encoder->mmgr, encoder->attr);+    encoder->attr = NULL;+}+++HPDF_STATUS+HPDF_CMapEncoder_Write  (HPDF_Encoder  encoder,+                         HPDF_Stream   out)+{+    HPDF_STATUS ret = HPDF_OK;++    return ret;+}+++void+HPDF_Encoder_SetParseText  (HPDF_Encoder        encoder,+                            HPDF_ParseText_Rec  *state,+                            const HPDF_BYTE     *text,+                            HPDF_UINT           len)+{+    HPDF_PTRACE ((" HPDF_CMapEncoder_SetParseText\n"));++    state->text = text;+    state->index = 0;+    state->len = len;+    state->byte_type = HPDF_BYTE_TYPE_SINGLE;+}+++HPDF_ByteType+HPDF_CMapEncoder_ByteType  (HPDF_Encoder        encoder,+                            HPDF_ParseText_Rec  *state)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_CMapEncoder_ByteType\n"));++    if (state->index >= state->len)+        return HPDF_BYTE_TYPE_UNKNOWN;++    if (state->byte_type == HPDF_BYTE_TYPE_LEAD) {+        if (attr->is_trial_byte_fn (encoder, state->text[state->index]))+            state->byte_type = HPDF_BYTE_TYPE_TRIAL;+        else+            state->byte_type = HPDF_BYTE_TYPE_UNKNOWN;+   } else {+        if (attr->is_lead_byte_fn (encoder, state->text[state->index]))+            state->byte_type = HPDF_BYTE_TYPE_LEAD;+        else+            state->byte_type = HPDF_BYTE_TYPE_SINGLE;+   }++   state->index++;++   return state->byte_type;+}+++HPDF_ByteType+HPDF_Encoder_ByteType  (HPDF_Encoder        encoder,+                        HPDF_ParseText_Rec  *state)+{+    HPDF_PTRACE ((" HPDF_Encoder_ByteType\n"));++    if (encoder->byte_type_fn)+        return encoder->byte_type_fn (encoder, state);+    else+        return HPDF_BYTE_TYPE_SINGLE;+}+++HPDF_STATUS+HPDF_CMapEncoder_AddCMap  (HPDF_Encoder             encoder,+                           const HPDF_CidRange_Rec  *range)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_CMapEncoder_AddCMap\n"));++    /* Copy specified pdf_cid_range array to fRangeArray. */+    while (range->from != 0xffff && range->to != 0xffff) {+        HPDF_UINT16 code = range->from;+        HPDF_UINT16 cid = range->cid;+        HPDF_CidRange_Rec *prange;+        HPDF_STATUS ret;++        while (code <= range->to) {+            HPDF_BYTE l = code;+            HPDF_BYTE h = code >> 8;++            attr->cid_map[l][h] = cid;+            code++;+            cid++;+        }++        prange = HPDF_GetMem (encoder->mmgr, sizeof(HPDF_CidRange_Rec));+        if (!prange)+            return encoder->error->error_no;++        prange->from = range->from;+        prange->to = range->to;+        prange->cid = range->cid;++        if ((ret = HPDF_List_Add (attr->cmap_range, prange)) != HPDF_OK) {+            HPDF_FreeMem (encoder->mmgr, prange);+            return ret;+        }++        range++;+    }++    return HPDF_OK;+}+++static HPDF_STATUS+AddCidRainge  (HPDF_MMgr            mmgr,+               HPDF_CidRange_Rec    range,+               HPDF_List            target)+{+    HPDF_CidRange_Rec *prange;+    HPDF_STATUS ret;++    prange = HPDF_GetMem (mmgr, sizeof(HPDF_CidRange_Rec));+    if (!prange)+        return mmgr->error->error_no;++    prange->from = range.from;+    prange->to = range.to;+    prange->cid = range.cid;++    if ((ret = HPDF_List_Add (target, prange))+                != HPDF_OK) {+        HPDF_FreeMem (mmgr, prange);+        return ret;+    }++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_CMapEncoder_AddNotDefRange  (HPDF_Encoder        encoder,+                                  HPDF_CidRange_Rec   range)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_CMapEncoder_AddNotDefRange\n"));++    return AddCidRainge (encoder->mmgr, range, attr->notdef_range);+}+++HPDF_STATUS+HPDF_CMapEncoder_AddCodeSpaceRange  (HPDF_Encoder        encoder,+                                     HPDF_CidRange_Rec   range)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_CMapEncoder_AddNotDefRange\n"));++    return AddCidRainge (encoder->mmgr, range, attr->code_space_range);+}+++void+HPDF_CMapEncoder_SetUnicodeArray  (HPDF_Encoder                 encoder,+                                   const HPDF_UnicodeMap_Rec   *array)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_PTRACE ((" HPDF_CMapEncoder_SetUnicodeArray\n"));++    if (array != NULL)+        while (array->unicode != 0xffff) {+            HPDF_BYTE l = array->code;+            HPDF_BYTE h = array->code >> 8;+            attr->unicode_map[l][h] = array->unicode;+            array++;+        }+}+++HPDF_STATUS+HPDF_CMapEncoder_AddJWWLineHead  (HPDF_Encoder        encoder,+                                  const HPDF_UINT16  *code)+{+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;+    HPDF_UINT i, j;++    HPDF_PTRACE ((" HPDF_CMapEncoder_AddJWWLineHead\n"));++    for (i = 0; i < HPDF_MAX_JWW_NUM; i++) {+        if (*code == 0)+            break;++        for (j = 0; j < HPDF_MAX_JWW_NUM; j++) {+            if (attr->jww_line_head[j] == *code)+                break;++            if (attr->jww_line_head[j] == 0) {+                attr->jww_line_head[j] = *code;+                break;+            }++            if (j == HPDF_MAX_JWW_NUM - 1)+                return HPDF_SetError (encoder->error,+                                HPDF_EXCEED_JWW_CODE_NUM_LIMIT, i);+        }++        code++;+    }++    return HPDF_OK;+}+++HPDF_BOOL+HPDF_Encoder_CheckJWWLineHead  (HPDF_Encoder        encoder,+                                const HPDF_UINT16   code)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_UINT j;++    HPDF_PTRACE ((" HPDF_Encoder_CheckJWWLineHead\n"));++    if (!HPDF_Encoder_Validate (encoder))+        return HPDF_FALSE;++    if (encoder->type != HPDF_ENCODER_TYPE_DOUBLE_BYTE)+        return HPDF_FALSE;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    for (j = 0; j < HPDF_MAX_JWW_NUM; j++) {+        if (code == attr->jww_line_head[j])+            return HPDF_TRUE;++        if (attr->jww_line_head[j] == 0)+            return HPDF_FALSE;+    }++    return HPDF_FALSE;+}++++++HPDF_EXPORT(HPDF_UNICODE)+HPDF_Encoder_GetUnicode  (HPDF_Encoder   encoder,+                          HPDF_UINT16    code)+{+    HPDF_PTRACE ((" HPDF_Encoder_GetUnicode\n"));++    if (!HPDF_Encoder_Validate (encoder))+        return 0;++    return HPDF_Encoder_ToUnicode (encoder, code);+}+++HPDF_EXPORT(HPDF_ByteType)+HPDF_Encoder_GetByteType  (HPDF_Encoder       encoder,+                           const char   *text,+                           HPDF_UINT          index)+{+    HPDF_ParseText_Rec  parse_state;+    HPDF_ByteType btype;++    HPDF_PTRACE ((" HPDF_Encoder_GetByteType\n"));++    if (!HPDF_Encoder_Validate (encoder))+        return HPDF_BYTE_TYPE_UNKNOWN;++    if (encoder->type != HPDF_ENCODER_TYPE_DOUBLE_BYTE)+        return HPDF_BYTE_TYPE_SINGLE;++    HPDF_Encoder_SetParseText (encoder, &parse_state, text, index + 1);++    for (;;) {+        btype = HPDF_CMapEncoder_ByteType (encoder, &parse_state);++        if (index == 0)+            break;++        text++;+        if (!(*text))+            return HPDF_BYTE_TYPE_UNKNOWN;+        index--;+    }++    return btype;+}+++HPDF_EXPORT(HPDF_EncoderType)+HPDF_Encoder_GetType  (HPDF_Encoder    encoder)+{+    HPDF_PTRACE ((" HPDF_Encoder_GetType\n"));++    if (!HPDF_Encoder_Validate (encoder))+        return HPDF_ENCODER_UNKNOWN;++    return encoder->type;+}+++HPDF_EXPORT(HPDF_WritingMode)+HPDF_Encoder_GetWritingMode (HPDF_Encoder    encoder)+{+    HPDF_PTRACE ((" HPDF_Encoder_GetWritingMode\n"));++    if (!HPDF_Encoder_Validate (encoder))+        return HPDF_WMODE_HORIZONTAL;++    if (encoder->type == HPDF_ENCODER_TYPE_DOUBLE_BYTE) {+        HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;+        return attr->writing_mode;+    }++    return HPDF_WMODE_HORIZONTAL;+}+
+ haru/hpdf_encoder.h view
@@ -0,0 +1,311 @@+/*+ * << Haru Free PDF Library 2.0.2 >> -- hpdf_encoder.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_ENCODER_H+#define _HPDF_ENCODER_H++#include "hpdf_consts.h"+#include "hpdf_streams.h"++#ifdef __cplusplus+extern "C" {+#endif++/*-- HPDF_Encoder ---------------------------------------*/++#define HPDF_ENCODER_SIG_BYTES 0x454E4344L++/*----------------------------------------------------------------------------*/+/*------ predefined font encodings -------------------------------------------*/++#define  HPDF_ENCODING_FONT_SPECIFIC  "FontSpecific"+#define  HPDF_ENCODING_STANDARD       "StandardEncoding"+#define  HPDF_ENCODING_MAC_ROMAN      "MacRomanEncoding"+#define  HPDF_ENCODING_WIN_ANSI       "WinAnsiEncoding"+#define  HPDF_ENCODING_ISO8859_2      "ISO8859-2"+#define  HPDF_ENCODING_ISO8859_3      "ISO8859-3"+#define  HPDF_ENCODING_ISO8859_4      "ISO8859-4"+#define  HPDF_ENCODING_ISO8859_5      "ISO8859-5"+#define  HPDF_ENCODING_ISO8859_6      "ISO8859-6"+#define  HPDF_ENCODING_ISO8859_7      "ISO8859-7"+#define  HPDF_ENCODING_ISO8859_8      "ISO8859-8"+#define  HPDF_ENCODING_ISO8859_9      "ISO8859-9"+#define  HPDF_ENCODING_ISO8859_10     "ISO8859-10"+#define  HPDF_ENCODING_ISO8859_11     "ISO8859-11"+#define  HPDF_ENCODING_ISO8859_13     "ISO8859-13"+#define  HPDF_ENCODING_ISO8859_14     "ISO8859-14"+#define  HPDF_ENCODING_ISO8859_15     "ISO8859-15"+#define  HPDF_ENCODING_ISO8859_16     "ISO8859-16"+#define  HPDF_ENCODING_CP1250         "CP1250"+#define  HPDF_ENCODING_CP1251         "CP1251"+#define  HPDF_ENCODING_CP1252         "CP1252"+#define  HPDF_ENCODING_CP1253         "CP1253"+#define  HPDF_ENCODING_CP1254         "CP1254"+#define  HPDF_ENCODING_CP1255         "CP1255"+#define  HPDF_ENCODING_CP1256         "CP1256"+#define  HPDF_ENCODING_CP1257         "CP1257"+#define  HPDF_ENCODING_CP1258         "CP1258"+#define  HPDF_ENCODING_KOI8_R         "KOI8-R"++/*----------------------------------------------------------------------------*/+/*----- definition for font encoding -----------------------------------------*/++#define char_NOTDEF        ".notdef"++typedef enum _HPDF_EncodingType {+    HPDF_STANDARD_ENCODING = 0,+    HPDF_MAC_ROMAN_ENCODING,+    HPDF_WIN_ANSI_ENCODING,+    HPDF_FONT_SPECIFIC,+    HPDF_ENCODING_EOF+} HPDF_EncodingType;+++typedef struct _HPDF_ParseText_Rec {+    const HPDF_BYTE  *text;+    HPDF_UINT        index;+    HPDF_UINT        len;+    HPDF_ByteType    byte_type;+} HPDF_ParseText_Rec;+++typedef struct _HPDF_Encoder_Rec *HPDF_Encoder;++typedef HPDF_ByteType+(*HPDF_Encoder_ByteType_Func)  (HPDF_Encoder        encoder,+                                HPDF_ParseText_Rec  *state);++typedef HPDF_UNICODE+(*HPDF_Encoder_ToUnicode_Func)  (HPDF_Encoder   encoder,+                                 HPDF_UINT16    code);+++typedef HPDF_STATUS+(*HPDF_Encoder_Write_Func)  (HPDF_Encoder  encoder,+                             HPDF_Stream   out);+++typedef HPDF_STATUS+(*HPDF_Encoder_Init_Func)  (HPDF_Encoder  encoder);+++typedef void+(*HPDF_Encoder_Free_Func)  (HPDF_Encoder  encoder);+++typedef struct  _HPDF_Encoder_Rec {+    HPDF_UINT32                     sig_bytes;+    char                       name[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_MMgr                       mmgr;+    HPDF_Error                      error;+    HPDF_EncoderType                type;++    HPDF_Encoder_ByteType_Func      byte_type_fn;+    HPDF_Encoder_ToUnicode_Func     to_unicode_fn;+    HPDF_Encoder_Write_Func         write_fn;+    HPDF_Encoder_Free_Func          free_fn;+    HPDF_Encoder_Init_Func          init_fn;+    /*+    char                         lang_code[3];+    char                         country_code[3];+    */+    void                            *attr;+}  HPDF_Encoder_Rec;+++typedef enum _HPDF_BaseEncodings {+    HPDF_BASE_ENCODING_STANDARD,+    HPDF_BASE_ENCODING_WIN_ANSI,+    HPDF_BASE_ENCODING_MAC_ROMAN,+    HPDF_BASE_ENCODING_FONT_SPECIFIC,+    HPDF_BASE_ENCODING_EOF+} HPDF_BaseEncodings;++HPDF_STATUS+HPDF_Encoder_Validate  (HPDF_Encoder  encoder);++void+HPDF_Encoder_SetParseText  (HPDF_Encoder        encoder,+                            HPDF_ParseText_Rec  *state,+                            const HPDF_BYTE     *text,+                            HPDF_UINT           len);++HPDF_ByteType+HPDF_Encoder_ByteType  (HPDF_Encoder        encoder,+                        HPDF_ParseText_Rec  *state);++++HPDF_UNICODE+HPDF_Encoder_ToUnicode  (HPDF_Encoder     encoder,+                         HPDF_UINT16      code);+++void+HPDF_Encoder_Free  (HPDF_Encoder  encoder);++/*-- HPDF_BasicEncoder ----------------------------------*/+++typedef struct _HPDF_BasicEncoderAttr_Rec  *HPDF_BasicEncoderAttr;++typedef struct  _HPDF_BasicEncoderAttr_Rec {+      char           base_encoding[HPDF_LIMIT_MAX_NAME_LEN + 1];+      HPDF_BYTE           first_char;+      HPDF_BYTE           last_char;+      HPDF_UNICODE        unicode_map[256];+      HPDF_BOOL           has_differences;+      HPDF_BYTE           differences[256];+} HPDF_BasicEncoderAttr_Rec;+++HPDF_Encoder+HPDF_BasicEncoder_New  (HPDF_MMgr        mmgr,+                        const char  *encoding_name);+++void+HPDF_BasicEncoder_Free  (HPDF_Encoder  encoder);+++HPDF_STATUS+HPDF_BasicEncoder_Write  (HPDF_Encoder  encoder,+                          HPDF_Stream   out);+++HPDF_UNICODE+HPDF_BasicEncoder_ToUnicode (HPDF_Encoder   encoder,+                             HPDF_UINT16    code);++/*-- HPDF_CMapEncoder ----------------------------------*/++typedef HPDF_BOOL+(*HPDF_CMapEncoder_ByteType_Func)  (HPDF_Encoder  encoder,+                                    HPDF_BYTE     b);++typedef struct _HPDF_CidRange_Rec {+    HPDF_UINT16  from;+    HPDF_UINT16  to;+    HPDF_UINT16  cid;+} HPDF_CidRange_Rec;+++typedef struct _HPDF_UnicodeMap_Rec {+    HPDF_UINT16  code;+    HPDF_UINT16  unicode;+} HPDF_UnicodeMap_Rec;++typedef struct _HPDF_CMapEncoderAttr_Rec  *HPDF_CMapEncoderAttr;++typedef struct  _HPDF_CMapEncoderAttr_Rec {+      HPDF_UNICODE                     unicode_map[256][256];+      HPDF_UINT16                      cid_map[256][256];+      HPDF_UINT16                      jww_line_head[HPDF_MAX_JWW_NUM];+      HPDF_List                        cmap_range;+      HPDF_List                        notdef_range;+      HPDF_List                        code_space_range;+      HPDF_WritingMode                 writing_mode;+      char                             registry[HPDF_LIMIT_MAX_NAME_LEN + 1];+      char                             ordering[HPDF_LIMIT_MAX_NAME_LEN + 1];+      HPDF_INT                         suppliment;+      HPDF_CMapEncoder_ByteType_Func   is_lead_byte_fn;+      HPDF_CMapEncoder_ByteType_Func   is_trial_byte_fn;+      HPDF_INT                         uid_offset;+      HPDF_UINT                        xuid[3];+} HPDF_CMapEncoderAttr_Rec;+++HPDF_Encoder+HPDF_CMapEncoder_New  (HPDF_MMgr                mmgr,+                       char               *name,+                       HPDF_Encoder_Init_Func   init_fn);+++HPDF_STATUS+HPDF_CMapEncoder_InitAttr  (HPDF_Encoder  encoder);+++void+HPDF_CMapEncoder_Free  (HPDF_Encoder   encoder);+++HPDF_STATUS+HPDF_CMapEncoder_Write  (HPDF_Encoder   encoder,+                         HPDF_Stream    out);+++HPDF_UNICODE+HPDF_CMapEncoder_ToUnicode  (HPDF_Encoder   encoder,+                             HPDF_UINT16    code);++HPDF_UINT16+HPDF_CMapEncoder_ToCID  (HPDF_Encoder   encoder,+                         HPDF_UINT16    code);++HPDF_STATUS+HPDF_CMapEncoder_SetParseText  (HPDF_Encoder         encoder,+                                HPDF_ParseText_Rec  *state,+                                const HPDF_BYTE     *text,+                                HPDF_UINT            len);++HPDF_ByteType+HPDF_CMapEncoder_ByteType  (HPDF_Encoder         encoder,+                            HPDF_ParseText_Rec  *state);+++HPDF_STATUS+HPDF_CMapEncoder_AddCMap  (HPDF_Encoder              encoder,+                           const HPDF_CidRange_Rec  *range);+++HPDF_STATUS+HPDF_CMapEncoder_AddNotDefRange  (HPDF_Encoder        encoder,+                                  HPDF_CidRange_Rec   range);+++HPDF_STATUS+HPDF_CMapEncoder_AddCodeSpaceRange  (HPDF_Encoder        encoder,+                                     HPDF_CidRange_Rec   range);+++void+HPDF_CMapEncoder_SetUnicodeArray  (HPDF_Encoder                 encoder,+                                   const HPDF_UnicodeMap_Rec  *array1);+++HPDF_STATUS+HPDF_CMapEncoder_AddJWWLineHead  (HPDF_Encoder        encoder,+                                  const HPDF_UINT16  *code);++HPDF_BOOL+HPDF_Encoder_CheckJWWLineHead  (HPDF_Encoder        encoder,+                                const HPDF_UINT16   code);++/*-- utility functions ----------------------------------*/++const char*+HPDF_UnicodeToGryphName  (HPDF_UNICODE  unicode);+++HPDF_UNICODE+HPDF_GryphNameToUnicode  (const char  *gryph_name);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_ENCODER_H */+
+ haru/hpdf_encoder_cns.c view
@@ -0,0 +1,36359 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encoder_cns.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encoder.h"+#include "hpdf.h"++static const HPDF_UnicodeMap_Rec CP936_UNICODE_ARRAY[] = {+    {0x0000, 0x0000},+    {0x0001, 0x0001},+    {0x0002, 0x0002},+    {0x0003, 0x0003},+    {0x0004, 0x0004},+    {0x0005, 0x0005},+    {0x0006, 0x0006},+    {0x0007, 0x0007},+    {0x0008, 0x0008},+    {0x0009, 0x0009},+    {0x000A, 0x000A},+    {0x000B, 0x000B},+    {0x000C, 0x000C},+    {0x000D, 0x000D},+    {0x000E, 0x000E},+    {0x000F, 0x000F},+    {0x0010, 0x0010},+    {0x0011, 0x0011},+    {0x0012, 0x0012},+    {0x0013, 0x0013},+    {0x0014, 0x0014},+    {0x0015, 0x0015},+    {0x0016, 0x0016},+    {0x0017, 0x0017},+    {0x0018, 0x0018},+    {0x0019, 0x0019},+    {0x001A, 0x001A},+    {0x001B, 0x001B},+    {0x001C, 0x001C},+    {0x001D, 0x001D},+    {0x001E, 0x001E},+    {0x001F, 0x001F},+    {0x0020, 0x0020},+    {0x0021, 0x0021},+    {0x0022, 0x0022},+    {0x0023, 0x0023},+    {0x0024, 0x0024},+    {0x0025, 0x0025},+    {0x0026, 0x0026},+    {0x0027, 0x0027},+    {0x0028, 0x0028},+    {0x0029, 0x0029},+    {0x002A, 0x002A},+    {0x002B, 0x002B},+    {0x002C, 0x002C},+    {0x002D, 0x002D},+    {0x002E, 0x002E},+    {0x002F, 0x002F},+    {0x0030, 0x0030},+    {0x0031, 0x0031},+    {0x0032, 0x0032},+    {0x0033, 0x0033},+    {0x0034, 0x0034},+    {0x0035, 0x0035},+    {0x0036, 0x0036},+    {0x0037, 0x0037},+    {0x0038, 0x0038},+    {0x0039, 0x0039},+    {0x003A, 0x003A},+    {0x003B, 0x003B},+    {0x003C, 0x003C},+    {0x003D, 0x003D},+    {0x003E, 0x003E},+    {0x003F, 0x003F},+    {0x0040, 0x0040},+    {0x0041, 0x0041},+    {0x0042, 0x0042},+    {0x0043, 0x0043},+    {0x0044, 0x0044},+    {0x0045, 0x0045},+    {0x0046, 0x0046},+    {0x0047, 0x0047},+    {0x0048, 0x0048},+    {0x0049, 0x0049},+    {0x004A, 0x004A},+    {0x004B, 0x004B},+    {0x004C, 0x004C},+    {0x004D, 0x004D},+    {0x004E, 0x004E},+    {0x004F, 0x004F},+    {0x0050, 0x0050},+    {0x0051, 0x0051},+    {0x0052, 0x0052},+    {0x0053, 0x0053},+    {0x0054, 0x0054},+    {0x0055, 0x0055},+    {0x0056, 0x0056},+    {0x0057, 0x0057},+    {0x0058, 0x0058},+    {0x0059, 0x0059},+    {0x005A, 0x005A},+    {0x005B, 0x005B},+    {0x005C, 0x005C},+    {0x005D, 0x005D},+    {0x005E, 0x005E},+    {0x005F, 0x005F},+    {0x0060, 0x0060},+    {0x0061, 0x0061},+    {0x0062, 0x0062},+    {0x0063, 0x0063},+    {0x0064, 0x0064},+    {0x0065, 0x0065},+    {0x0066, 0x0066},+    {0x0067, 0x0067},+    {0x0068, 0x0068},+    {0x0069, 0x0069},+    {0x006A, 0x006A},+    {0x006B, 0x006B},+    {0x006C, 0x006C},+    {0x006D, 0x006D},+    {0x006E, 0x006E},+    {0x006F, 0x006F},+    {0x0070, 0x0070},+    {0x0071, 0x0071},+    {0x0072, 0x0072},+    {0x0073, 0x0073},+    {0x0074, 0x0074},+    {0x0075, 0x0075},+    {0x0076, 0x0076},+    {0x0077, 0x0077},+    {0x0078, 0x0078},+    {0x0079, 0x0079},+    {0x007A, 0x007A},+    {0x007B, 0x007B},+    {0x007C, 0x007C},+    {0x007D, 0x007D},+    {0x007E, 0x007E},+    {0x007F, 0x007F},+    {0x0080, 0x0080},+    {0x00FF, 0xF8F5},+    {0x8140, 0x4E02},+    {0x8141, 0x4E04},+    {0x8142, 0x4E05},+    {0x8143, 0x4E06},+    {0x8144, 0x4E0F},+    {0x8145, 0x4E12},+    {0x8146, 0x4E17},+    {0x8147, 0x4E1F},+    {0x8148, 0x4E20},+    {0x8149, 0x4E21},+    {0x814A, 0x4E23},+    {0x814B, 0x4E26},+    {0x814C, 0x4E29},+    {0x814D, 0x4E2E},+    {0x814E, 0x4E2F},+    {0x814F, 0x4E31},+    {0x8150, 0x4E33},+    {0x8151, 0x4E35},+    {0x8152, 0x4E37},+    {0x8153, 0x4E3C},+    {0x8154, 0x4E40},+    {0x8155, 0x4E41},+    {0x8156, 0x4E42},+    {0x8157, 0x4E44},+    {0x8158, 0x4E46},+    {0x8159, 0x4E4A},+    {0x815A, 0x4E51},+    {0x815B, 0x4E55},+    {0x815C, 0x4E57},+    {0x815D, 0x4E5A},+    {0x815E, 0x4E5B},+    {0x815F, 0x4E62},+    {0x8160, 0x4E63},+    {0x8161, 0x4E64},+    {0x8162, 0x4E65},+    {0x8163, 0x4E67},+    {0x8164, 0x4E68},+    {0x8165, 0x4E6A},+    {0x8166, 0x4E6B},+    {0x8167, 0x4E6C},+    {0x8168, 0x4E6D},+    {0x8169, 0x4E6E},+    {0x816A, 0x4E6F},+    {0x816B, 0x4E72},+    {0x816C, 0x4E74},+    {0x816D, 0x4E75},+    {0x816E, 0x4E76},+    {0x816F, 0x4E77},+    {0x8170, 0x4E78},+    {0x8171, 0x4E79},+    {0x8172, 0x4E7A},+    {0x8173, 0x4E7B},+    {0x8174, 0x4E7C},+    {0x8175, 0x4E7D},+    {0x8176, 0x4E7F},+    {0x8177, 0x4E80},+    {0x8178, 0x4E81},+    {0x8179, 0x4E82},+    {0x817A, 0x4E83},+    {0x817B, 0x4E84},+    {0x817C, 0x4E85},+    {0x817D, 0x4E87},+    {0x817E, 0x4E8A},+    {0x8180, 0x4E90},+    {0x8181, 0x4E96},+    {0x8182, 0x4E97},+    {0x8183, 0x4E99},+    {0x8184, 0x4E9C},+    {0x8185, 0x4E9D},+    {0x8186, 0x4E9E},+    {0x8187, 0x4EA3},+    {0x8188, 0x4EAA},+    {0x8189, 0x4EAF},+    {0x818A, 0x4EB0},+    {0x818B, 0x4EB1},+    {0x818C, 0x4EB4},+    {0x818D, 0x4EB6},+    {0x818E, 0x4EB7},+    {0x818F, 0x4EB8},+    {0x8190, 0x4EB9},+    {0x8191, 0x4EBC},+    {0x8192, 0x4EBD},+    {0x8193, 0x4EBE},+    {0x8194, 0x4EC8},+    {0x8195, 0x4ECC},+    {0x8196, 0x4ECF},+    {0x8197, 0x4ED0},+    {0x8198, 0x4ED2},+    {0x8199, 0x4EDA},+    {0x819A, 0x4EDB},+    {0x819B, 0x4EDC},+    {0x819C, 0x4EE0},+    {0x819D, 0x4EE2},+    {0x819E, 0x4EE6},+    {0x819F, 0x4EE7},+    {0x81A0, 0x4EE9},+    {0x81A1, 0x4EED},+    {0x81A2, 0x4EEE},+    {0x81A3, 0x4EEF},+    {0x81A4, 0x4EF1},+    {0x81A5, 0x4EF4},+    {0x81A6, 0x4EF8},+    {0x81A7, 0x4EF9},+    {0x81A8, 0x4EFA},+    {0x81A9, 0x4EFC},+    {0x81AA, 0x4EFE},+    {0x81AB, 0x4F00},+    {0x81AC, 0x4F02},+    {0x81AD, 0x4F03},+    {0x81AE, 0x4F04},+    {0x81AF, 0x4F05},+    {0x81B0, 0x4F06},+    {0x81B1, 0x4F07},+    {0x81B2, 0x4F08},+    {0x81B3, 0x4F0B},+    {0x81B4, 0x4F0C},+    {0x81B5, 0x4F12},+    {0x81B6, 0x4F13},+    {0x81B7, 0x4F14},+    {0x81B8, 0x4F15},+    {0x81B9, 0x4F16},+    {0x81BA, 0x4F1C},+    {0x81BB, 0x4F1D},+    {0x81BC, 0x4F21},+    {0x81BD, 0x4F23},+    {0x81BE, 0x4F28},+    {0x81BF, 0x4F29},+    {0x81C0, 0x4F2C},+    {0x81C1, 0x4F2D},+    {0x81C2, 0x4F2E},+    {0x81C3, 0x4F31},+    {0x81C4, 0x4F33},+    {0x81C5, 0x4F35},+    {0x81C6, 0x4F37},+    {0x81C7, 0x4F39},+    {0x81C8, 0x4F3B},+    {0x81C9, 0x4F3E},+    {0x81CA, 0x4F3F},+    {0x81CB, 0x4F40},+    {0x81CC, 0x4F41},+    {0x81CD, 0x4F42},+    {0x81CE, 0x4F44},+    {0x81CF, 0x4F45},+    {0x81D0, 0x4F47},+    {0x81D1, 0x4F48},+    {0x81D2, 0x4F49},+    {0x81D3, 0x4F4A},+    {0x81D4, 0x4F4B},+    {0x81D5, 0x4F4C},+    {0x81D6, 0x4F52},+    {0x81D7, 0x4F54},+    {0x81D8, 0x4F56},+    {0x81D9, 0x4F61},+    {0x81DA, 0x4F62},+    {0x81DB, 0x4F66},+    {0x81DC, 0x4F68},+    {0x81DD, 0x4F6A},+    {0x81DE, 0x4F6B},+    {0x81DF, 0x4F6D},+    {0x81E0, 0x4F6E},+    {0x81E1, 0x4F71},+    {0x81E2, 0x4F72},+    {0x81E3, 0x4F75},+    {0x81E4, 0x4F77},+    {0x81E5, 0x4F78},+    {0x81E6, 0x4F79},+    {0x81E7, 0x4F7A},+    {0x81E8, 0x4F7D},+    {0x81E9, 0x4F80},+    {0x81EA, 0x4F81},+    {0x81EB, 0x4F82},+    {0x81EC, 0x4F85},+    {0x81ED, 0x4F86},+    {0x81EE, 0x4F87},+    {0x81EF, 0x4F8A},+    {0x81F0, 0x4F8C},+    {0x81F1, 0x4F8E},+    {0x81F2, 0x4F90},+    {0x81F3, 0x4F92},+    {0x81F4, 0x4F93},+    {0x81F5, 0x4F95},+    {0x81F6, 0x4F96},+    {0x81F7, 0x4F98},+    {0x81F8, 0x4F99},+    {0x81F9, 0x4F9A},+    {0x81FA, 0x4F9C},+    {0x81FB, 0x4F9E},+    {0x81FC, 0x4F9F},+    {0x81FD, 0x4FA1},+    {0x81FE, 0x4FA2},+    {0x8240, 0x4FA4},+    {0x8241, 0x4FAB},+    {0x8242, 0x4FAD},+    {0x8243, 0x4FB0},+    {0x8244, 0x4FB1},+    {0x8245, 0x4FB2},+    {0x8246, 0x4FB3},+    {0x8247, 0x4FB4},+    {0x8248, 0x4FB6},+    {0x8249, 0x4FB7},+    {0x824A, 0x4FB8},+    {0x824B, 0x4FB9},+    {0x824C, 0x4FBA},+    {0x824D, 0x4FBB},+    {0x824E, 0x4FBC},+    {0x824F, 0x4FBD},+    {0x8250, 0x4FBE},+    {0x8251, 0x4FC0},+    {0x8252, 0x4FC1},+    {0x8253, 0x4FC2},+    {0x8254, 0x4FC6},+    {0x8255, 0x4FC7},+    {0x8256, 0x4FC8},+    {0x8257, 0x4FC9},+    {0x8258, 0x4FCB},+    {0x8259, 0x4FCC},+    {0x825A, 0x4FCD},+    {0x825B, 0x4FD2},+    {0x825C, 0x4FD3},+    {0x825D, 0x4FD4},+    {0x825E, 0x4FD5},+    {0x825F, 0x4FD6},+    {0x8260, 0x4FD9},+    {0x8261, 0x4FDB},+    {0x8262, 0x4FE0},+    {0x8263, 0x4FE2},+    {0x8264, 0x4FE4},+    {0x8265, 0x4FE5},+    {0x8266, 0x4FE7},+    {0x8267, 0x4FEB},+    {0x8268, 0x4FEC},+    {0x8269, 0x4FF0},+    {0x826A, 0x4FF2},+    {0x826B, 0x4FF4},+    {0x826C, 0x4FF5},+    {0x826D, 0x4FF6},+    {0x826E, 0x4FF7},+    {0x826F, 0x4FF9},+    {0x8270, 0x4FFB},+    {0x8271, 0x4FFC},+    {0x8272, 0x4FFD},+    {0x8273, 0x4FFF},+    {0x8274, 0x5000},+    {0x8275, 0x5001},+    {0x8276, 0x5002},+    {0x8277, 0x5003},+    {0x8278, 0x5004},+    {0x8279, 0x5005},+    {0x827A, 0x5006},+    {0x827B, 0x5007},+    {0x827C, 0x5008},+    {0x827D, 0x5009},+    {0x827E, 0x500A},+    {0x8280, 0x500B},+    {0x8281, 0x500E},+    {0x8282, 0x5010},+    {0x8283, 0x5011},+    {0x8284, 0x5013},+    {0x8285, 0x5015},+    {0x8286, 0x5016},+    {0x8287, 0x5017},+    {0x8288, 0x501B},+    {0x8289, 0x501D},+    {0x828A, 0x501E},+    {0x828B, 0x5020},+    {0x828C, 0x5022},+    {0x828D, 0x5023},+    {0x828E, 0x5024},+    {0x828F, 0x5027},+    {0x8290, 0x502B},+    {0x8291, 0x502F},+    {0x8292, 0x5030},+    {0x8293, 0x5031},+    {0x8294, 0x5032},+    {0x8295, 0x5033},+    {0x8296, 0x5034},+    {0x8297, 0x5035},+    {0x8298, 0x5036},+    {0x8299, 0x5037},+    {0x829A, 0x5038},+    {0x829B, 0x5039},+    {0x829C, 0x503B},+    {0x829D, 0x503D},+    {0x829E, 0x503F},+    {0x829F, 0x5040},+    {0x82A0, 0x5041},+    {0x82A1, 0x5042},+    {0x82A2, 0x5044},+    {0x82A3, 0x5045},+    {0x82A4, 0x5046},+    {0x82A5, 0x5049},+    {0x82A6, 0x504A},+    {0x82A7, 0x504B},+    {0x82A8, 0x504D},+    {0x82A9, 0x5050},+    {0x82AA, 0x5051},+    {0x82AB, 0x5052},+    {0x82AC, 0x5053},+    {0x82AD, 0x5054},+    {0x82AE, 0x5056},+    {0x82AF, 0x5057},+    {0x82B0, 0x5058},+    {0x82B1, 0x5059},+    {0x82B2, 0x505B},+    {0x82B3, 0x505D},+    {0x82B4, 0x505E},+    {0x82B5, 0x505F},+    {0x82B6, 0x5060},+    {0x82B7, 0x5061},+    {0x82B8, 0x5062},+    {0x82B9, 0x5063},+    {0x82BA, 0x5064},+    {0x82BB, 0x5066},+    {0x82BC, 0x5067},+    {0x82BD, 0x5068},+    {0x82BE, 0x5069},+    {0x82BF, 0x506A},+    {0x82C0, 0x506B},+    {0x82C1, 0x506D},+    {0x82C2, 0x506E},+    {0x82C3, 0x506F},+    {0x82C4, 0x5070},+    {0x82C5, 0x5071},+    {0x82C6, 0x5072},+    {0x82C7, 0x5073},+    {0x82C8, 0x5074},+    {0x82C9, 0x5075},+    {0x82CA, 0x5078},+    {0x82CB, 0x5079},+    {0x82CC, 0x507A},+    {0x82CD, 0x507C},+    {0x82CE, 0x507D},+    {0x82CF, 0x5081},+    {0x82D0, 0x5082},+    {0x82D1, 0x5083},+    {0x82D2, 0x5084},+    {0x82D3, 0x5086},+    {0x82D4, 0x5087},+    {0x82D5, 0x5089},+    {0x82D6, 0x508A},+    {0x82D7, 0x508B},+    {0x82D8, 0x508C},+    {0x82D9, 0x508E},+    {0x82DA, 0x508F},+    {0x82DB, 0x5090},+    {0x82DC, 0x5091},+    {0x82DD, 0x5092},+    {0x82DE, 0x5093},+    {0x82DF, 0x5094},+    {0x82E0, 0x5095},+    {0x82E1, 0x5096},+    {0x82E2, 0x5097},+    {0x82E3, 0x5098},+    {0x82E4, 0x5099},+    {0x82E5, 0x509A},+    {0x82E6, 0x509B},+    {0x82E7, 0x509C},+    {0x82E8, 0x509D},+    {0x82E9, 0x509E},+    {0x82EA, 0x509F},+    {0x82EB, 0x50A0},+    {0x82EC, 0x50A1},+    {0x82ED, 0x50A2},+    {0x82EE, 0x50A4},+    {0x82EF, 0x50A6},+    {0x82F0, 0x50AA},+    {0x82F1, 0x50AB},+    {0x82F2, 0x50AD},+    {0x82F3, 0x50AE},+    {0x82F4, 0x50AF},+    {0x82F5, 0x50B0},+    {0x82F6, 0x50B1},+    {0x82F7, 0x50B3},+    {0x82F8, 0x50B4},+    {0x82F9, 0x50B5},+    {0x82FA, 0x50B6},+    {0x82FB, 0x50B7},+    {0x82FC, 0x50B8},+    {0x82FD, 0x50B9},+    {0x82FE, 0x50BC},+    {0x8340, 0x50BD},+    {0x8341, 0x50BE},+    {0x8342, 0x50BF},+    {0x8343, 0x50C0},+    {0x8344, 0x50C1},+    {0x8345, 0x50C2},+    {0x8346, 0x50C3},+    {0x8347, 0x50C4},+    {0x8348, 0x50C5},+    {0x8349, 0x50C6},+    {0x834A, 0x50C7},+    {0x834B, 0x50C8},+    {0x834C, 0x50C9},+    {0x834D, 0x50CA},+    {0x834E, 0x50CB},+    {0x834F, 0x50CC},+    {0x8350, 0x50CD},+    {0x8351, 0x50CE},+    {0x8352, 0x50D0},+    {0x8353, 0x50D1},+    {0x8354, 0x50D2},+    {0x8355, 0x50D3},+    {0x8356, 0x50D4},+    {0x8357, 0x50D5},+    {0x8358, 0x50D7},+    {0x8359, 0x50D8},+    {0x835A, 0x50D9},+    {0x835B, 0x50DB},+    {0x835C, 0x50DC},+    {0x835D, 0x50DD},+    {0x835E, 0x50DE},+    {0x835F, 0x50DF},+    {0x8360, 0x50E0},+    {0x8361, 0x50E1},+    {0x8362, 0x50E2},+    {0x8363, 0x50E3},+    {0x8364, 0x50E4},+    {0x8365, 0x50E5},+    {0x8366, 0x50E8},+    {0x8367, 0x50E9},+    {0x8368, 0x50EA},+    {0x8369, 0x50EB},+    {0x836A, 0x50EF},+    {0x836B, 0x50F0},+    {0x836C, 0x50F1},+    {0x836D, 0x50F2},+    {0x836E, 0x50F4},+    {0x836F, 0x50F6},+    {0x8370, 0x50F7},+    {0x8371, 0x50F8},+    {0x8372, 0x50F9},+    {0x8373, 0x50FA},+    {0x8374, 0x50FC},+    {0x8375, 0x50FD},+    {0x8376, 0x50FE},+    {0x8377, 0x50FF},+    {0x8378, 0x5100},+    {0x8379, 0x5101},+    {0x837A, 0x5102},+    {0x837B, 0x5103},+    {0x837C, 0x5104},+    {0x837D, 0x5105},+    {0x837E, 0x5108},+    {0x8380, 0x5109},+    {0x8381, 0x510A},+    {0x8382, 0x510C},+    {0x8383, 0x510D},+    {0x8384, 0x510E},+    {0x8385, 0x510F},+    {0x8386, 0x5110},+    {0x8387, 0x5111},+    {0x8388, 0x5113},+    {0x8389, 0x5114},+    {0x838A, 0x5115},+    {0x838B, 0x5116},+    {0x838C, 0x5117},+    {0x838D, 0x5118},+    {0x838E, 0x5119},+    {0x838F, 0x511A},+    {0x8390, 0x511B},+    {0x8391, 0x511C},+    {0x8392, 0x511D},+    {0x8393, 0x511E},+    {0x8394, 0x511F},+    {0x8395, 0x5120},+    {0x8396, 0x5122},+    {0x8397, 0x5123},+    {0x8398, 0x5124},+    {0x8399, 0x5125},+    {0x839A, 0x5126},+    {0x839B, 0x5127},+    {0x839C, 0x5128},+    {0x839D, 0x5129},+    {0x839E, 0x512A},+    {0x839F, 0x512B},+    {0x83A0, 0x512C},+    {0x83A1, 0x512D},+    {0x83A2, 0x512E},+    {0x83A3, 0x512F},+    {0x83A4, 0x5130},+    {0x83A5, 0x5131},+    {0x83A6, 0x5132},+    {0x83A7, 0x5133},+    {0x83A8, 0x5134},+    {0x83A9, 0x5135},+    {0x83AA, 0x5136},+    {0x83AB, 0x5137},+    {0x83AC, 0x5138},+    {0x83AD, 0x5139},+    {0x83AE, 0x513A},+    {0x83AF, 0x513B},+    {0x83B0, 0x513C},+    {0x83B1, 0x513D},+    {0x83B2, 0x513E},+    {0x83B3, 0x5142},+    {0x83B4, 0x5147},+    {0x83B5, 0x514A},+    {0x83B6, 0x514C},+    {0x83B7, 0x514E},+    {0x83B8, 0x514F},+    {0x83B9, 0x5150},+    {0x83BA, 0x5152},+    {0x83BB, 0x5153},+    {0x83BC, 0x5157},+    {0x83BD, 0x5158},+    {0x83BE, 0x5159},+    {0x83BF, 0x515B},+    {0x83C0, 0x515D},+    {0x83C1, 0x515E},+    {0x83C2, 0x515F},+    {0x83C3, 0x5160},+    {0x83C4, 0x5161},+    {0x83C5, 0x5163},+    {0x83C6, 0x5164},+    {0x83C7, 0x5166},+    {0x83C8, 0x5167},+    {0x83C9, 0x5169},+    {0x83CA, 0x516A},+    {0x83CB, 0x516F},+    {0x83CC, 0x5172},+    {0x83CD, 0x517A},+    {0x83CE, 0x517E},+    {0x83CF, 0x517F},+    {0x83D0, 0x5183},+    {0x83D1, 0x5184},+    {0x83D2, 0x5186},+    {0x83D3, 0x5187},+    {0x83D4, 0x518A},+    {0x83D5, 0x518B},+    {0x83D6, 0x518E},+    {0x83D7, 0x518F},+    {0x83D8, 0x5190},+    {0x83D9, 0x5191},+    {0x83DA, 0x5193},+    {0x83DB, 0x5194},+    {0x83DC, 0x5198},+    {0x83DD, 0x519A},+    {0x83DE, 0x519D},+    {0x83DF, 0x519E},+    {0x83E0, 0x519F},+    {0x83E1, 0x51A1},+    {0x83E2, 0x51A3},+    {0x83E3, 0x51A6},+    {0x83E4, 0x51A7},+    {0x83E5, 0x51A8},+    {0x83E6, 0x51A9},+    {0x83E7, 0x51AA},+    {0x83E8, 0x51AD},+    {0x83E9, 0x51AE},+    {0x83EA, 0x51B4},+    {0x83EB, 0x51B8},+    {0x83EC, 0x51B9},+    {0x83ED, 0x51BA},+    {0x83EE, 0x51BE},+    {0x83EF, 0x51BF},+    {0x83F0, 0x51C1},+    {0x83F1, 0x51C2},+    {0x83F2, 0x51C3},+    {0x83F3, 0x51C5},+    {0x83F4, 0x51C8},+    {0x83F5, 0x51CA},+    {0x83F6, 0x51CD},+    {0x83F7, 0x51CE},+    {0x83F8, 0x51D0},+    {0x83F9, 0x51D2},+    {0x83FA, 0x51D3},+    {0x83FB, 0x51D4},+    {0x83FC, 0x51D5},+    {0x83FD, 0x51D6},+    {0x83FE, 0x51D7},+    {0x8440, 0x51D8},+    {0x8441, 0x51D9},+    {0x8442, 0x51DA},+    {0x8443, 0x51DC},+    {0x8444, 0x51DE},+    {0x8445, 0x51DF},+    {0x8446, 0x51E2},+    {0x8447, 0x51E3},+    {0x8448, 0x51E5},+    {0x8449, 0x51E6},+    {0x844A, 0x51E7},+    {0x844B, 0x51E8},+    {0x844C, 0x51E9},+    {0x844D, 0x51EA},+    {0x844E, 0x51EC},+    {0x844F, 0x51EE},+    {0x8450, 0x51F1},+    {0x8451, 0x51F2},+    {0x8452, 0x51F4},+    {0x8453, 0x51F7},+    {0x8454, 0x51FE},+    {0x8455, 0x5204},+    {0x8456, 0x5205},+    {0x8457, 0x5209},+    {0x8458, 0x520B},+    {0x8459, 0x520C},+    {0x845A, 0x520F},+    {0x845B, 0x5210},+    {0x845C, 0x5213},+    {0x845D, 0x5214},+    {0x845E, 0x5215},+    {0x845F, 0x521C},+    {0x8460, 0x521E},+    {0x8461, 0x521F},+    {0x8462, 0x5221},+    {0x8463, 0x5222},+    {0x8464, 0x5223},+    {0x8465, 0x5225},+    {0x8466, 0x5226},+    {0x8467, 0x5227},+    {0x8468, 0x522A},+    {0x8469, 0x522C},+    {0x846A, 0x522F},+    {0x846B, 0x5231},+    {0x846C, 0x5232},+    {0x846D, 0x5234},+    {0x846E, 0x5235},+    {0x846F, 0x523C},+    {0x8470, 0x523E},+    {0x8471, 0x5244},+    {0x8472, 0x5245},+    {0x8473, 0x5246},+    {0x8474, 0x5247},+    {0x8475, 0x5248},+    {0x8476, 0x5249},+    {0x8477, 0x524B},+    {0x8478, 0x524E},+    {0x8479, 0x524F},+    {0x847A, 0x5252},+    {0x847B, 0x5253},+    {0x847C, 0x5255},+    {0x847D, 0x5257},+    {0x847E, 0x5258},+    {0x8480, 0x5259},+    {0x8481, 0x525A},+    {0x8482, 0x525B},+    {0x8483, 0x525D},+    {0x8484, 0x525F},+    {0x8485, 0x5260},+    {0x8486, 0x5262},+    {0x8487, 0x5263},+    {0x8488, 0x5264},+    {0x8489, 0x5266},+    {0x848A, 0x5268},+    {0x848B, 0x526B},+    {0x848C, 0x526C},+    {0x848D, 0x526D},+    {0x848E, 0x526E},+    {0x848F, 0x5270},+    {0x8490, 0x5271},+    {0x8491, 0x5273},+    {0x8492, 0x5274},+    {0x8493, 0x5275},+    {0x8494, 0x5276},+    {0x8495, 0x5277},+    {0x8496, 0x5278},+    {0x8497, 0x5279},+    {0x8498, 0x527A},+    {0x8499, 0x527B},+    {0x849A, 0x527C},+    {0x849B, 0x527E},+    {0x849C, 0x5280},+    {0x849D, 0x5283},+    {0x849E, 0x5284},+    {0x849F, 0x5285},+    {0x84A0, 0x5286},+    {0x84A1, 0x5287},+    {0x84A2, 0x5289},+    {0x84A3, 0x528A},+    {0x84A4, 0x528B},+    {0x84A5, 0x528C},+    {0x84A6, 0x528D},+    {0x84A7, 0x528E},+    {0x84A8, 0x528F},+    {0x84A9, 0x5291},+    {0x84AA, 0x5292},+    {0x84AB, 0x5294},+    {0x84AC, 0x5295},+    {0x84AD, 0x5296},+    {0x84AE, 0x5297},+    {0x84AF, 0x5298},+    {0x84B0, 0x5299},+    {0x84B1, 0x529A},+    {0x84B2, 0x529C},+    {0x84B3, 0x52A4},+    {0x84B4, 0x52A5},+    {0x84B5, 0x52A6},+    {0x84B6, 0x52A7},+    {0x84B7, 0x52AE},+    {0x84B8, 0x52AF},+    {0x84B9, 0x52B0},+    {0x84BA, 0x52B4},+    {0x84BB, 0x52B5},+    {0x84BC, 0x52B6},+    {0x84BD, 0x52B7},+    {0x84BE, 0x52B8},+    {0x84BF, 0x52B9},+    {0x84C0, 0x52BA},+    {0x84C1, 0x52BB},+    {0x84C2, 0x52BC},+    {0x84C3, 0x52BD},+    {0x84C4, 0x52C0},+    {0x84C5, 0x52C1},+    {0x84C6, 0x52C2},+    {0x84C7, 0x52C4},+    {0x84C8, 0x52C5},+    {0x84C9, 0x52C6},+    {0x84CA, 0x52C8},+    {0x84CB, 0x52CA},+    {0x84CC, 0x52CC},+    {0x84CD, 0x52CD},+    {0x84CE, 0x52CE},+    {0x84CF, 0x52CF},+    {0x84D0, 0x52D1},+    {0x84D1, 0x52D3},+    {0x84D2, 0x52D4},+    {0x84D3, 0x52D5},+    {0x84D4, 0x52D7},+    {0x84D5, 0x52D9},+    {0x84D6, 0x52DA},+    {0x84D7, 0x52DB},+    {0x84D8, 0x52DC},+    {0x84D9, 0x52DD},+    {0x84DA, 0x52DE},+    {0x84DB, 0x52E0},+    {0x84DC, 0x52E1},+    {0x84DD, 0x52E2},+    {0x84DE, 0x52E3},+    {0x84DF, 0x52E5},+    {0x84E0, 0x52E6},+    {0x84E1, 0x52E7},+    {0x84E2, 0x52E8},+    {0x84E3, 0x52E9},+    {0x84E4, 0x52EA},+    {0x84E5, 0x52EB},+    {0x84E6, 0x52EC},+    {0x84E7, 0x52ED},+    {0x84E8, 0x52EE},+    {0x84E9, 0x52EF},+    {0x84EA, 0x52F1},+    {0x84EB, 0x52F2},+    {0x84EC, 0x52F3},+    {0x84ED, 0x52F4},+    {0x84EE, 0x52F5},+    {0x84EF, 0x52F6},+    {0x84F0, 0x52F7},+    {0x84F1, 0x52F8},+    {0x84F2, 0x52FB},+    {0x84F3, 0x52FC},+    {0x84F4, 0x52FD},+    {0x84F5, 0x5301},+    {0x84F6, 0x5302},+    {0x84F7, 0x5303},+    {0x84F8, 0x5304},+    {0x84F9, 0x5307},+    {0x84FA, 0x5309},+    {0x84FB, 0x530A},+    {0x84FC, 0x530B},+    {0x84FD, 0x530C},+    {0x84FE, 0x530E},+    {0x8540, 0x5311},+    {0x8541, 0x5312},+    {0x8542, 0x5313},+    {0x8543, 0x5314},+    {0x8544, 0x5318},+    {0x8545, 0x531B},+    {0x8546, 0x531C},+    {0x8547, 0x531E},+    {0x8548, 0x531F},+    {0x8549, 0x5322},+    {0x854A, 0x5324},+    {0x854B, 0x5325},+    {0x854C, 0x5327},+    {0x854D, 0x5328},+    {0x854E, 0x5329},+    {0x854F, 0x532B},+    {0x8550, 0x532C},+    {0x8551, 0x532D},+    {0x8552, 0x532F},+    {0x8553, 0x5330},+    {0x8554, 0x5331},+    {0x8555, 0x5332},+    {0x8556, 0x5333},+    {0x8557, 0x5334},+    {0x8558, 0x5335},+    {0x8559, 0x5336},+    {0x855A, 0x5337},+    {0x855B, 0x5338},+    {0x855C, 0x533C},+    {0x855D, 0x533D},+    {0x855E, 0x5340},+    {0x855F, 0x5342},+    {0x8560, 0x5344},+    {0x8561, 0x5346},+    {0x8562, 0x534B},+    {0x8563, 0x534C},+    {0x8564, 0x534D},+    {0x8565, 0x5350},+    {0x8566, 0x5354},+    {0x8567, 0x5358},+    {0x8568, 0x5359},+    {0x8569, 0x535B},+    {0x856A, 0x535D},+    {0x856B, 0x5365},+    {0x856C, 0x5368},+    {0x856D, 0x536A},+    {0x856E, 0x536C},+    {0x856F, 0x536D},+    {0x8570, 0x5372},+    {0x8571, 0x5376},+    {0x8572, 0x5379},+    {0x8573, 0x537B},+    {0x8574, 0x537C},+    {0x8575, 0x537D},+    {0x8576, 0x537E},+    {0x8577, 0x5380},+    {0x8578, 0x5381},+    {0x8579, 0x5383},+    {0x857A, 0x5387},+    {0x857B, 0x5388},+    {0x857C, 0x538A},+    {0x857D, 0x538E},+    {0x857E, 0x538F},+    {0x8580, 0x5390},+    {0x8581, 0x5391},+    {0x8582, 0x5392},+    {0x8583, 0x5393},+    {0x8584, 0x5394},+    {0x8585, 0x5396},+    {0x8586, 0x5397},+    {0x8587, 0x5399},+    {0x8588, 0x539B},+    {0x8589, 0x539C},+    {0x858A, 0x539E},+    {0x858B, 0x53A0},+    {0x858C, 0x53A1},+    {0x858D, 0x53A4},+    {0x858E, 0x53A7},+    {0x858F, 0x53AA},+    {0x8590, 0x53AB},+    {0x8591, 0x53AC},+    {0x8592, 0x53AD},+    {0x8593, 0x53AF},+    {0x8594, 0x53B0},+    {0x8595, 0x53B1},+    {0x8596, 0x53B2},+    {0x8597, 0x53B3},+    {0x8598, 0x53B4},+    {0x8599, 0x53B5},+    {0x859A, 0x53B7},+    {0x859B, 0x53B8},+    {0x859C, 0x53B9},+    {0x859D, 0x53BA},+    {0x859E, 0x53BC},+    {0x859F, 0x53BD},+    {0x85A0, 0x53BE},+    {0x85A1, 0x53C0},+    {0x85A2, 0x53C3},+    {0x85A3, 0x53C4},+    {0x85A4, 0x53C5},+    {0x85A5, 0x53C6},+    {0x85A6, 0x53C7},+    {0x85A7, 0x53CE},+    {0x85A8, 0x53CF},+    {0x85A9, 0x53D0},+    {0x85AA, 0x53D2},+    {0x85AB, 0x53D3},+    {0x85AC, 0x53D5},+    {0x85AD, 0x53DA},+    {0x85AE, 0x53DC},+    {0x85AF, 0x53DD},+    {0x85B0, 0x53DE},+    {0x85B1, 0x53E1},+    {0x85B2, 0x53E2},+    {0x85B3, 0x53E7},+    {0x85B4, 0x53F4},+    {0x85B5, 0x53FA},+    {0x85B6, 0x53FE},+    {0x85B7, 0x53FF},+    {0x85B8, 0x5400},+    {0x85B9, 0x5402},+    {0x85BA, 0x5405},+    {0x85BB, 0x5407},+    {0x85BC, 0x540B},+    {0x85BD, 0x5414},+    {0x85BE, 0x5418},+    {0x85BF, 0x5419},+    {0x85C0, 0x541A},+    {0x85C1, 0x541C},+    {0x85C2, 0x5422},+    {0x85C3, 0x5424},+    {0x85C4, 0x5425},+    {0x85C5, 0x542A},+    {0x85C6, 0x5430},+    {0x85C7, 0x5433},+    {0x85C8, 0x5436},+    {0x85C9, 0x5437},+    {0x85CA, 0x543A},+    {0x85CB, 0x543D},+    {0x85CC, 0x543F},+    {0x85CD, 0x5441},+    {0x85CE, 0x5442},+    {0x85CF, 0x5444},+    {0x85D0, 0x5445},+    {0x85D1, 0x5447},+    {0x85D2, 0x5449},+    {0x85D3, 0x544C},+    {0x85D4, 0x544D},+    {0x85D5, 0x544E},+    {0x85D6, 0x544F},+    {0x85D7, 0x5451},+    {0x85D8, 0x545A},+    {0x85D9, 0x545D},+    {0x85DA, 0x545E},+    {0x85DB, 0x545F},+    {0x85DC, 0x5460},+    {0x85DD, 0x5461},+    {0x85DE, 0x5463},+    {0x85DF, 0x5465},+    {0x85E0, 0x5467},+    {0x85E1, 0x5469},+    {0x85E2, 0x546A},+    {0x85E3, 0x546B},+    {0x85E4, 0x546C},+    {0x85E5, 0x546D},+    {0x85E6, 0x546E},+    {0x85E7, 0x546F},+    {0x85E8, 0x5470},+    {0x85E9, 0x5474},+    {0x85EA, 0x5479},+    {0x85EB, 0x547A},+    {0x85EC, 0x547E},+    {0x85ED, 0x547F},+    {0x85EE, 0x5481},+    {0x85EF, 0x5483},+    {0x85F0, 0x5485},+    {0x85F1, 0x5487},+    {0x85F2, 0x5488},+    {0x85F3, 0x5489},+    {0x85F4, 0x548A},+    {0x85F5, 0x548D},+    {0x85F6, 0x5491},+    {0x85F7, 0x5493},+    {0x85F8, 0x5497},+    {0x85F9, 0x5498},+    {0x85FA, 0x549C},+    {0x85FB, 0x549E},+    {0x85FC, 0x549F},+    {0x85FD, 0x54A0},+    {0x85FE, 0x54A1},+    {0x8640, 0x54A2},+    {0x8641, 0x54A5},+    {0x8642, 0x54AE},+    {0x8643, 0x54B0},+    {0x8644, 0x54B2},+    {0x8645, 0x54B5},+    {0x8646, 0x54B6},+    {0x8647, 0x54B7},+    {0x8648, 0x54B9},+    {0x8649, 0x54BA},+    {0x864A, 0x54BC},+    {0x864B, 0x54BE},+    {0x864C, 0x54C3},+    {0x864D, 0x54C5},+    {0x864E, 0x54CA},+    {0x864F, 0x54CB},+    {0x8650, 0x54D6},+    {0x8651, 0x54D8},+    {0x8652, 0x54DB},+    {0x8653, 0x54E0},+    {0x8654, 0x54E1},+    {0x8655, 0x54E2},+    {0x8656, 0x54E3},+    {0x8657, 0x54E4},+    {0x8658, 0x54EB},+    {0x8659, 0x54EC},+    {0x865A, 0x54EF},+    {0x865B, 0x54F0},+    {0x865C, 0x54F1},+    {0x865D, 0x54F4},+    {0x865E, 0x54F5},+    {0x865F, 0x54F6},+    {0x8660, 0x54F7},+    {0x8661, 0x54F8},+    {0x8662, 0x54F9},+    {0x8663, 0x54FB},+    {0x8664, 0x54FE},+    {0x8665, 0x5500},+    {0x8666, 0x5502},+    {0x8667, 0x5503},+    {0x8668, 0x5504},+    {0x8669, 0x5505},+    {0x866A, 0x5508},+    {0x866B, 0x550A},+    {0x866C, 0x550B},+    {0x866D, 0x550C},+    {0x866E, 0x550D},+    {0x866F, 0x550E},+    {0x8670, 0x5512},+    {0x8671, 0x5513},+    {0x8672, 0x5515},+    {0x8673, 0x5516},+    {0x8674, 0x5517},+    {0x8675, 0x5518},+    {0x8676, 0x5519},+    {0x8677, 0x551A},+    {0x8678, 0x551C},+    {0x8679, 0x551D},+    {0x867A, 0x551E},+    {0x867B, 0x551F},+    {0x867C, 0x5521},+    {0x867D, 0x5525},+    {0x867E, 0x5526},+    {0x8680, 0x5528},+    {0x8681, 0x5529},+    {0x8682, 0x552B},+    {0x8683, 0x552D},+    {0x8684, 0x5532},+    {0x8685, 0x5534},+    {0x8686, 0x5535},+    {0x8687, 0x5536},+    {0x8688, 0x5538},+    {0x8689, 0x5539},+    {0x868A, 0x553A},+    {0x868B, 0x553B},+    {0x868C, 0x553D},+    {0x868D, 0x5540},+    {0x868E, 0x5542},+    {0x868F, 0x5545},+    {0x8690, 0x5547},+    {0x8691, 0x5548},+    {0x8692, 0x554B},+    {0x8693, 0x554C},+    {0x8694, 0x554D},+    {0x8695, 0x554E},+    {0x8696, 0x554F},+    {0x8697, 0x5551},+    {0x8698, 0x5552},+    {0x8699, 0x5553},+    {0x869A, 0x5554},+    {0x869B, 0x5557},+    {0x869C, 0x5558},+    {0x869D, 0x5559},+    {0x869E, 0x555A},+    {0x869F, 0x555B},+    {0x86A0, 0x555D},+    {0x86A1, 0x555E},+    {0x86A2, 0x555F},+    {0x86A3, 0x5560},+    {0x86A4, 0x5562},+    {0x86A5, 0x5563},+    {0x86A6, 0x5568},+    {0x86A7, 0x5569},+    {0x86A8, 0x556B},+    {0x86A9, 0x556F},+    {0x86AA, 0x5570},+    {0x86AB, 0x5571},+    {0x86AC, 0x5572},+    {0x86AD, 0x5573},+    {0x86AE, 0x5574},+    {0x86AF, 0x5579},+    {0x86B0, 0x557A},+    {0x86B1, 0x557D},+    {0x86B2, 0x557F},+    {0x86B3, 0x5585},+    {0x86B4, 0x5586},+    {0x86B5, 0x558C},+    {0x86B6, 0x558D},+    {0x86B7, 0x558E},+    {0x86B8, 0x5590},+    {0x86B9, 0x5592},+    {0x86BA, 0x5593},+    {0x86BB, 0x5595},+    {0x86BC, 0x5596},+    {0x86BD, 0x5597},+    {0x86BE, 0x559A},+    {0x86BF, 0x559B},+    {0x86C0, 0x559E},+    {0x86C1, 0x55A0},+    {0x86C2, 0x55A1},+    {0x86C3, 0x55A2},+    {0x86C4, 0x55A3},+    {0x86C5, 0x55A4},+    {0x86C6, 0x55A5},+    {0x86C7, 0x55A6},+    {0x86C8, 0x55A8},+    {0x86C9, 0x55A9},+    {0x86CA, 0x55AA},+    {0x86CB, 0x55AB},+    {0x86CC, 0x55AC},+    {0x86CD, 0x55AD},+    {0x86CE, 0x55AE},+    {0x86CF, 0x55AF},+    {0x86D0, 0x55B0},+    {0x86D1, 0x55B2},+    {0x86D2, 0x55B4},+    {0x86D3, 0x55B6},+    {0x86D4, 0x55B8},+    {0x86D5, 0x55BA},+    {0x86D6, 0x55BC},+    {0x86D7, 0x55BF},+    {0x86D8, 0x55C0},+    {0x86D9, 0x55C1},+    {0x86DA, 0x55C2},+    {0x86DB, 0x55C3},+    {0x86DC, 0x55C6},+    {0x86DD, 0x55C7},+    {0x86DE, 0x55C8},+    {0x86DF, 0x55CA},+    {0x86E0, 0x55CB},+    {0x86E1, 0x55CE},+    {0x86E2, 0x55CF},+    {0x86E3, 0x55D0},+    {0x86E4, 0x55D5},+    {0x86E5, 0x55D7},+    {0x86E6, 0x55D8},+    {0x86E7, 0x55D9},+    {0x86E8, 0x55DA},+    {0x86E9, 0x55DB},+    {0x86EA, 0x55DE},+    {0x86EB, 0x55E0},+    {0x86EC, 0x55E2},+    {0x86ED, 0x55E7},+    {0x86EE, 0x55E9},+    {0x86EF, 0x55ED},+    {0x86F0, 0x55EE},+    {0x86F1, 0x55F0},+    {0x86F2, 0x55F1},+    {0x86F3, 0x55F4},+    {0x86F4, 0x55F6},+    {0x86F5, 0x55F8},+    {0x86F6, 0x55F9},+    {0x86F7, 0x55FA},+    {0x86F8, 0x55FB},+    {0x86F9, 0x55FC},+    {0x86FA, 0x55FF},+    {0x86FB, 0x5602},+    {0x86FC, 0x5603},+    {0x86FD, 0x5604},+    {0x86FE, 0x5605},+    {0x8740, 0x5606},+    {0x8741, 0x5607},+    {0x8742, 0x560A},+    {0x8743, 0x560B},+    {0x8744, 0x560D},+    {0x8745, 0x5610},+    {0x8746, 0x5611},+    {0x8747, 0x5612},+    {0x8748, 0x5613},+    {0x8749, 0x5614},+    {0x874A, 0x5615},+    {0x874B, 0x5616},+    {0x874C, 0x5617},+    {0x874D, 0x5619},+    {0x874E, 0x561A},+    {0x874F, 0x561C},+    {0x8750, 0x561D},+    {0x8751, 0x5620},+    {0x8752, 0x5621},+    {0x8753, 0x5622},+    {0x8754, 0x5625},+    {0x8755, 0x5626},+    {0x8756, 0x5628},+    {0x8757, 0x5629},+    {0x8758, 0x562A},+    {0x8759, 0x562B},+    {0x875A, 0x562E},+    {0x875B, 0x562F},+    {0x875C, 0x5630},+    {0x875D, 0x5633},+    {0x875E, 0x5635},+    {0x875F, 0x5637},+    {0x8760, 0x5638},+    {0x8761, 0x563A},+    {0x8762, 0x563C},+    {0x8763, 0x563D},+    {0x8764, 0x563E},+    {0x8765, 0x5640},+    {0x8766, 0x5641},+    {0x8767, 0x5642},+    {0x8768, 0x5643},+    {0x8769, 0x5644},+    {0x876A, 0x5645},+    {0x876B, 0x5646},+    {0x876C, 0x5647},+    {0x876D, 0x5648},+    {0x876E, 0x5649},+    {0x876F, 0x564A},+    {0x8770, 0x564B},+    {0x8771, 0x564F},+    {0x8772, 0x5650},+    {0x8773, 0x5651},+    {0x8774, 0x5652},+    {0x8775, 0x5653},+    {0x8776, 0x5655},+    {0x8777, 0x5656},+    {0x8778, 0x565A},+    {0x8779, 0x565B},+    {0x877A, 0x565D},+    {0x877B, 0x565E},+    {0x877C, 0x565F},+    {0x877D, 0x5660},+    {0x877E, 0x5661},+    {0x8780, 0x5663},+    {0x8781, 0x5665},+    {0x8782, 0x5666},+    {0x8783, 0x5667},+    {0x8784, 0x566D},+    {0x8785, 0x566E},+    {0x8786, 0x566F},+    {0x8787, 0x5670},+    {0x8788, 0x5672},+    {0x8789, 0x5673},+    {0x878A, 0x5674},+    {0x878B, 0x5675},+    {0x878C, 0x5677},+    {0x878D, 0x5678},+    {0x878E, 0x5679},+    {0x878F, 0x567A},+    {0x8790, 0x567D},+    {0x8791, 0x567E},+    {0x8792, 0x567F},+    {0x8793, 0x5680},+    {0x8794, 0x5681},+    {0x8795, 0x5682},+    {0x8796, 0x5683},+    {0x8797, 0x5684},+    {0x8798, 0x5687},+    {0x8799, 0x5688},+    {0x879A, 0x5689},+    {0x879B, 0x568A},+    {0x879C, 0x568B},+    {0x879D, 0x568C},+    {0x879E, 0x568D},+    {0x879F, 0x5690},+    {0x87A0, 0x5691},+    {0x87A1, 0x5692},+    {0x87A2, 0x5694},+    {0x87A3, 0x5695},+    {0x87A4, 0x5696},+    {0x87A5, 0x5697},+    {0x87A6, 0x5698},+    {0x87A7, 0x5699},+    {0x87A8, 0x569A},+    {0x87A9, 0x569B},+    {0x87AA, 0x569C},+    {0x87AB, 0x569D},+    {0x87AC, 0x569E},+    {0x87AD, 0x569F},+    {0x87AE, 0x56A0},+    {0x87AF, 0x56A1},+    {0x87B0, 0x56A2},+    {0x87B1, 0x56A4},+    {0x87B2, 0x56A5},+    {0x87B3, 0x56A6},+    {0x87B4, 0x56A7},+    {0x87B5, 0x56A8},+    {0x87B6, 0x56A9},+    {0x87B7, 0x56AA},+    {0x87B8, 0x56AB},+    {0x87B9, 0x56AC},+    {0x87BA, 0x56AD},+    {0x87BB, 0x56AE},+    {0x87BC, 0x56B0},+    {0x87BD, 0x56B1},+    {0x87BE, 0x56B2},+    {0x87BF, 0x56B3},+    {0x87C0, 0x56B4},+    {0x87C1, 0x56B5},+    {0x87C2, 0x56B6},+    {0x87C3, 0x56B8},+    {0x87C4, 0x56B9},+    {0x87C5, 0x56BA},+    {0x87C6, 0x56BB},+    {0x87C7, 0x56BD},+    {0x87C8, 0x56BE},+    {0x87C9, 0x56BF},+    {0x87CA, 0x56C0},+    {0x87CB, 0x56C1},+    {0x87CC, 0x56C2},+    {0x87CD, 0x56C3},+    {0x87CE, 0x56C4},+    {0x87CF, 0x56C5},+    {0x87D0, 0x56C6},+    {0x87D1, 0x56C7},+    {0x87D2, 0x56C8},+    {0x87D3, 0x56C9},+    {0x87D4, 0x56CB},+    {0x87D5, 0x56CC},+    {0x87D6, 0x56CD},+    {0x87D7, 0x56CE},+    {0x87D8, 0x56CF},+    {0x87D9, 0x56D0},+    {0x87DA, 0x56D1},+    {0x87DB, 0x56D2},+    {0x87DC, 0x56D3},+    {0x87DD, 0x56D5},+    {0x87DE, 0x56D6},+    {0x87DF, 0x56D8},+    {0x87E0, 0x56D9},+    {0x87E1, 0x56DC},+    {0x87E2, 0x56E3},+    {0x87E3, 0x56E5},+    {0x87E4, 0x56E6},+    {0x87E5, 0x56E7},+    {0x87E6, 0x56E8},+    {0x87E7, 0x56E9},+    {0x87E8, 0x56EA},+    {0x87E9, 0x56EC},+    {0x87EA, 0x56EE},+    {0x87EB, 0x56EF},+    {0x87EC, 0x56F2},+    {0x87ED, 0x56F3},+    {0x87EE, 0x56F6},+    {0x87EF, 0x56F7},+    {0x87F0, 0x56F8},+    {0x87F1, 0x56FB},+    {0x87F2, 0x56FC},+    {0x87F3, 0x5700},+    {0x87F4, 0x5701},+    {0x87F5, 0x5702},+    {0x87F6, 0x5705},+    {0x87F7, 0x5707},+    {0x87F8, 0x570B},+    {0x87F9, 0x570C},+    {0x87FA, 0x570D},+    {0x87FB, 0x570E},+    {0x87FC, 0x570F},+    {0x87FD, 0x5710},+    {0x87FE, 0x5711},+    {0x8840, 0x5712},+    {0x8841, 0x5713},+    {0x8842, 0x5714},+    {0x8843, 0x5715},+    {0x8844, 0x5716},+    {0x8845, 0x5717},+    {0x8846, 0x5718},+    {0x8847, 0x5719},+    {0x8848, 0x571A},+    {0x8849, 0x571B},+    {0x884A, 0x571D},+    {0x884B, 0x571E},+    {0x884C, 0x5720},+    {0x884D, 0x5721},+    {0x884E, 0x5722},+    {0x884F, 0x5724},+    {0x8850, 0x5725},+    {0x8851, 0x5726},+    {0x8852, 0x5727},+    {0x8853, 0x572B},+    {0x8854, 0x5731},+    {0x8855, 0x5732},+    {0x8856, 0x5734},+    {0x8857, 0x5735},+    {0x8858, 0x5736},+    {0x8859, 0x5737},+    {0x885A, 0x5738},+    {0x885B, 0x573C},+    {0x885C, 0x573D},+    {0x885D, 0x573F},+    {0x885E, 0x5741},+    {0x885F, 0x5743},+    {0x8860, 0x5744},+    {0x8861, 0x5745},+    {0x8862, 0x5746},+    {0x8863, 0x5748},+    {0x8864, 0x5749},+    {0x8865, 0x574B},+    {0x8866, 0x5752},+    {0x8867, 0x5753},+    {0x8868, 0x5754},+    {0x8869, 0x5755},+    {0x886A, 0x5756},+    {0x886B, 0x5758},+    {0x886C, 0x5759},+    {0x886D, 0x5762},+    {0x886E, 0x5763},+    {0x886F, 0x5765},+    {0x8870, 0x5767},+    {0x8871, 0x576C},+    {0x8872, 0x576E},+    {0x8873, 0x5770},+    {0x8874, 0x5771},+    {0x8875, 0x5772},+    {0x8876, 0x5774},+    {0x8877, 0x5775},+    {0x8878, 0x5778},+    {0x8879, 0x5779},+    {0x887A, 0x577A},+    {0x887B, 0x577D},+    {0x887C, 0x577E},+    {0x887D, 0x577F},+    {0x887E, 0x5780},+    {0x8880, 0x5781},+    {0x8881, 0x5787},+    {0x8882, 0x5788},+    {0x8883, 0x5789},+    {0x8884, 0x578A},+    {0x8885, 0x578D},+    {0x8886, 0x578E},+    {0x8887, 0x578F},+    {0x8888, 0x5790},+    {0x8889, 0x5791},+    {0x888A, 0x5794},+    {0x888B, 0x5795},+    {0x888C, 0x5796},+    {0x888D, 0x5797},+    {0x888E, 0x5798},+    {0x888F, 0x5799},+    {0x8890, 0x579A},+    {0x8891, 0x579C},+    {0x8892, 0x579D},+    {0x8893, 0x579E},+    {0x8894, 0x579F},+    {0x8895, 0x57A5},+    {0x8896, 0x57A8},+    {0x8897, 0x57AA},+    {0x8898, 0x57AC},+    {0x8899, 0x57AF},+    {0x889A, 0x57B0},+    {0x889B, 0x57B1},+    {0x889C, 0x57B3},+    {0x889D, 0x57B5},+    {0x889E, 0x57B6},+    {0x889F, 0x57B7},+    {0x88A0, 0x57B9},+    {0x88A1, 0x57BA},+    {0x88A2, 0x57BB},+    {0x88A3, 0x57BC},+    {0x88A4, 0x57BD},+    {0x88A5, 0x57BE},+    {0x88A6, 0x57BF},+    {0x88A7, 0x57C0},+    {0x88A8, 0x57C1},+    {0x88A9, 0x57C4},+    {0x88AA, 0x57C5},+    {0x88AB, 0x57C6},+    {0x88AC, 0x57C7},+    {0x88AD, 0x57C8},+    {0x88AE, 0x57C9},+    {0x88AF, 0x57CA},+    {0x88B0, 0x57CC},+    {0x88B1, 0x57CD},+    {0x88B2, 0x57D0},+    {0x88B3, 0x57D1},+    {0x88B4, 0x57D3},+    {0x88B5, 0x57D6},+    {0x88B6, 0x57D7},+    {0x88B7, 0x57DB},+    {0x88B8, 0x57DC},+    {0x88B9, 0x57DE},+    {0x88BA, 0x57E1},+    {0x88BB, 0x57E2},+    {0x88BC, 0x57E3},+    {0x88BD, 0x57E5},+    {0x88BE, 0x57E6},+    {0x88BF, 0x57E7},+    {0x88C0, 0x57E8},+    {0x88C1, 0x57E9},+    {0x88C2, 0x57EA},+    {0x88C3, 0x57EB},+    {0x88C4, 0x57EC},+    {0x88C5, 0x57EE},+    {0x88C6, 0x57F0},+    {0x88C7, 0x57F1},+    {0x88C8, 0x57F2},+    {0x88C9, 0x57F3},+    {0x88CA, 0x57F5},+    {0x88CB, 0x57F6},+    {0x88CC, 0x57F7},+    {0x88CD, 0x57FB},+    {0x88CE, 0x57FC},+    {0x88CF, 0x57FE},+    {0x88D0, 0x57FF},+    {0x88D1, 0x5801},+    {0x88D2, 0x5803},+    {0x88D3, 0x5804},+    {0x88D4, 0x5805},+    {0x88D5, 0x5808},+    {0x88D6, 0x5809},+    {0x88D7, 0x580A},+    {0x88D8, 0x580C},+    {0x88D9, 0x580E},+    {0x88DA, 0x580F},+    {0x88DB, 0x5810},+    {0x88DC, 0x5812},+    {0x88DD, 0x5813},+    {0x88DE, 0x5814},+    {0x88DF, 0x5816},+    {0x88E0, 0x5817},+    {0x88E1, 0x5818},+    {0x88E2, 0x581A},+    {0x88E3, 0x581B},+    {0x88E4, 0x581C},+    {0x88E5, 0x581D},+    {0x88E6, 0x581F},+    {0x88E7, 0x5822},+    {0x88E8, 0x5823},+    {0x88E9, 0x5825},+    {0x88EA, 0x5826},+    {0x88EB, 0x5827},+    {0x88EC, 0x5828},+    {0x88ED, 0x5829},+    {0x88EE, 0x582B},+    {0x88EF, 0x582C},+    {0x88F0, 0x582D},+    {0x88F1, 0x582E},+    {0x88F2, 0x582F},+    {0x88F3, 0x5831},+    {0x88F4, 0x5832},+    {0x88F5, 0x5833},+    {0x88F6, 0x5834},+    {0x88F7, 0x5836},+    {0x88F8, 0x5837},+    {0x88F9, 0x5838},+    {0x88FA, 0x5839},+    {0x88FB, 0x583A},+    {0x88FC, 0x583B},+    {0x88FD, 0x583C},+    {0x88FE, 0x583D},+    {0x8940, 0x583E},+    {0x8941, 0x583F},+    {0x8942, 0x5840},+    {0x8943, 0x5841},+    {0x8944, 0x5842},+    {0x8945, 0x5843},+    {0x8946, 0x5845},+    {0x8947, 0x5846},+    {0x8948, 0x5847},+    {0x8949, 0x5848},+    {0x894A, 0x5849},+    {0x894B, 0x584A},+    {0x894C, 0x584B},+    {0x894D, 0x584E},+    {0x894E, 0x584F},+    {0x894F, 0x5850},+    {0x8950, 0x5852},+    {0x8951, 0x5853},+    {0x8952, 0x5855},+    {0x8953, 0x5856},+    {0x8954, 0x5857},+    {0x8955, 0x5859},+    {0x8956, 0x585A},+    {0x8957, 0x585B},+    {0x8958, 0x585C},+    {0x8959, 0x585D},+    {0x895A, 0x585F},+    {0x895B, 0x5860},+    {0x895C, 0x5861},+    {0x895D, 0x5862},+    {0x895E, 0x5863},+    {0x895F, 0x5864},+    {0x8960, 0x5866},+    {0x8961, 0x5867},+    {0x8962, 0x5868},+    {0x8963, 0x5869},+    {0x8964, 0x586A},+    {0x8965, 0x586D},+    {0x8966, 0x586E},+    {0x8967, 0x586F},+    {0x8968, 0x5870},+    {0x8969, 0x5871},+    {0x896A, 0x5872},+    {0x896B, 0x5873},+    {0x896C, 0x5874},+    {0x896D, 0x5875},+    {0x896E, 0x5876},+    {0x896F, 0x5877},+    {0x8970, 0x5878},+    {0x8971, 0x5879},+    {0x8972, 0x587A},+    {0x8973, 0x587B},+    {0x8974, 0x587C},+    {0x8975, 0x587D},+    {0x8976, 0x587F},+    {0x8977, 0x5882},+    {0x8978, 0x5884},+    {0x8979, 0x5886},+    {0x897A, 0x5887},+    {0x897B, 0x5888},+    {0x897C, 0x588A},+    {0x897D, 0x588B},+    {0x897E, 0x588C},+    {0x8980, 0x588D},+    {0x8981, 0x588E},+    {0x8982, 0x588F},+    {0x8983, 0x5890},+    {0x8984, 0x5891},+    {0x8985, 0x5894},+    {0x8986, 0x5895},+    {0x8987, 0x5896},+    {0x8988, 0x5897},+    {0x8989, 0x5898},+    {0x898A, 0x589B},+    {0x898B, 0x589C},+    {0x898C, 0x589D},+    {0x898D, 0x58A0},+    {0x898E, 0x58A1},+    {0x898F, 0x58A2},+    {0x8990, 0x58A3},+    {0x8991, 0x58A4},+    {0x8992, 0x58A5},+    {0x8993, 0x58A6},+    {0x8994, 0x58A7},+    {0x8995, 0x58AA},+    {0x8996, 0x58AB},+    {0x8997, 0x58AC},+    {0x8998, 0x58AD},+    {0x8999, 0x58AE},+    {0x899A, 0x58AF},+    {0x899B, 0x58B0},+    {0x899C, 0x58B1},+    {0x899D, 0x58B2},+    {0x899E, 0x58B3},+    {0x899F, 0x58B4},+    {0x89A0, 0x58B5},+    {0x89A1, 0x58B6},+    {0x89A2, 0x58B7},+    {0x89A3, 0x58B8},+    {0x89A4, 0x58B9},+    {0x89A5, 0x58BA},+    {0x89A6, 0x58BB},+    {0x89A7, 0x58BD},+    {0x89A8, 0x58BE},+    {0x89A9, 0x58BF},+    {0x89AA, 0x58C0},+    {0x89AB, 0x58C2},+    {0x89AC, 0x58C3},+    {0x89AD, 0x58C4},+    {0x89AE, 0x58C6},+    {0x89AF, 0x58C7},+    {0x89B0, 0x58C8},+    {0x89B1, 0x58C9},+    {0x89B2, 0x58CA},+    {0x89B3, 0x58CB},+    {0x89B4, 0x58CC},+    {0x89B5, 0x58CD},+    {0x89B6, 0x58CE},+    {0x89B7, 0x58CF},+    {0x89B8, 0x58D0},+    {0x89B9, 0x58D2},+    {0x89BA, 0x58D3},+    {0x89BB, 0x58D4},+    {0x89BC, 0x58D6},+    {0x89BD, 0x58D7},+    {0x89BE, 0x58D8},+    {0x89BF, 0x58D9},+    {0x89C0, 0x58DA},+    {0x89C1, 0x58DB},+    {0x89C2, 0x58DC},+    {0x89C3, 0x58DD},+    {0x89C4, 0x58DE},+    {0x89C5, 0x58DF},+    {0x89C6, 0x58E0},+    {0x89C7, 0x58E1},+    {0x89C8, 0x58E2},+    {0x89C9, 0x58E3},+    {0x89CA, 0x58E5},+    {0x89CB, 0x58E6},+    {0x89CC, 0x58E7},+    {0x89CD, 0x58E8},+    {0x89CE, 0x58E9},+    {0x89CF, 0x58EA},+    {0x89D0, 0x58ED},+    {0x89D1, 0x58EF},+    {0x89D2, 0x58F1},+    {0x89D3, 0x58F2},+    {0x89D4, 0x58F4},+    {0x89D5, 0x58F5},+    {0x89D6, 0x58F7},+    {0x89D7, 0x58F8},+    {0x89D8, 0x58FA},+    {0x89D9, 0x58FB},+    {0x89DA, 0x58FC},+    {0x89DB, 0x58FD},+    {0x89DC, 0x58FE},+    {0x89DD, 0x58FF},+    {0x89DE, 0x5900},+    {0x89DF, 0x5901},+    {0x89E0, 0x5903},+    {0x89E1, 0x5905},+    {0x89E2, 0x5906},+    {0x89E3, 0x5908},+    {0x89E4, 0x5909},+    {0x89E5, 0x590A},+    {0x89E6, 0x590B},+    {0x89E7, 0x590C},+    {0x89E8, 0x590E},+    {0x89E9, 0x5910},+    {0x89EA, 0x5911},+    {0x89EB, 0x5912},+    {0x89EC, 0x5913},+    {0x89ED, 0x5917},+    {0x89EE, 0x5918},+    {0x89EF, 0x591B},+    {0x89F0, 0x591D},+    {0x89F1, 0x591E},+    {0x89F2, 0x5920},+    {0x89F3, 0x5921},+    {0x89F4, 0x5922},+    {0x89F5, 0x5923},+    {0x89F6, 0x5926},+    {0x89F7, 0x5928},+    {0x89F8, 0x592C},+    {0x89F9, 0x5930},+    {0x89FA, 0x5932},+    {0x89FB, 0x5933},+    {0x89FC, 0x5935},+    {0x89FD, 0x5936},+    {0x89FE, 0x593B},+    {0x8A40, 0x593D},+    {0x8A41, 0x593E},+    {0x8A42, 0x593F},+    {0x8A43, 0x5940},+    {0x8A44, 0x5943},+    {0x8A45, 0x5945},+    {0x8A46, 0x5946},+    {0x8A47, 0x594A},+    {0x8A48, 0x594C},+    {0x8A49, 0x594D},+    {0x8A4A, 0x5950},+    {0x8A4B, 0x5952},+    {0x8A4C, 0x5953},+    {0x8A4D, 0x5959},+    {0x8A4E, 0x595B},+    {0x8A4F, 0x595C},+    {0x8A50, 0x595D},+    {0x8A51, 0x595E},+    {0x8A52, 0x595F},+    {0x8A53, 0x5961},+    {0x8A54, 0x5963},+    {0x8A55, 0x5964},+    {0x8A56, 0x5966},+    {0x8A57, 0x5967},+    {0x8A58, 0x5968},+    {0x8A59, 0x5969},+    {0x8A5A, 0x596A},+    {0x8A5B, 0x596B},+    {0x8A5C, 0x596C},+    {0x8A5D, 0x596D},+    {0x8A5E, 0x596E},+    {0x8A5F, 0x596F},+    {0x8A60, 0x5970},+    {0x8A61, 0x5971},+    {0x8A62, 0x5972},+    {0x8A63, 0x5975},+    {0x8A64, 0x5977},+    {0x8A65, 0x597A},+    {0x8A66, 0x597B},+    {0x8A67, 0x597C},+    {0x8A68, 0x597E},+    {0x8A69, 0x597F},+    {0x8A6A, 0x5980},+    {0x8A6B, 0x5985},+    {0x8A6C, 0x5989},+    {0x8A6D, 0x598B},+    {0x8A6E, 0x598C},+    {0x8A6F, 0x598E},+    {0x8A70, 0x598F},+    {0x8A71, 0x5990},+    {0x8A72, 0x5991},+    {0x8A73, 0x5994},+    {0x8A74, 0x5995},+    {0x8A75, 0x5998},+    {0x8A76, 0x599A},+    {0x8A77, 0x599B},+    {0x8A78, 0x599C},+    {0x8A79, 0x599D},+    {0x8A7A, 0x599F},+    {0x8A7B, 0x59A0},+    {0x8A7C, 0x59A1},+    {0x8A7D, 0x59A2},+    {0x8A7E, 0x59A6},+    {0x8A80, 0x59A7},+    {0x8A81, 0x59AC},+    {0x8A82, 0x59AD},+    {0x8A83, 0x59B0},+    {0x8A84, 0x59B1},+    {0x8A85, 0x59B3},+    {0x8A86, 0x59B4},+    {0x8A87, 0x59B5},+    {0x8A88, 0x59B6},+    {0x8A89, 0x59B7},+    {0x8A8A, 0x59B8},+    {0x8A8B, 0x59BA},+    {0x8A8C, 0x59BC},+    {0x8A8D, 0x59BD},+    {0x8A8E, 0x59BF},+    {0x8A8F, 0x59C0},+    {0x8A90, 0x59C1},+    {0x8A91, 0x59C2},+    {0x8A92, 0x59C3},+    {0x8A93, 0x59C4},+    {0x8A94, 0x59C5},+    {0x8A95, 0x59C7},+    {0x8A96, 0x59C8},+    {0x8A97, 0x59C9},+    {0x8A98, 0x59CC},+    {0x8A99, 0x59CD},+    {0x8A9A, 0x59CE},+    {0x8A9B, 0x59CF},+    {0x8A9C, 0x59D5},+    {0x8A9D, 0x59D6},+    {0x8A9E, 0x59D9},+    {0x8A9F, 0x59DB},+    {0x8AA0, 0x59DE},+    {0x8AA1, 0x59DF},+    {0x8AA2, 0x59E0},+    {0x8AA3, 0x59E1},+    {0x8AA4, 0x59E2},+    {0x8AA5, 0x59E4},+    {0x8AA6, 0x59E6},+    {0x8AA7, 0x59E7},+    {0x8AA8, 0x59E9},+    {0x8AA9, 0x59EA},+    {0x8AAA, 0x59EB},+    {0x8AAB, 0x59ED},+    {0x8AAC, 0x59EE},+    {0x8AAD, 0x59EF},+    {0x8AAE, 0x59F0},+    {0x8AAF, 0x59F1},+    {0x8AB0, 0x59F2},+    {0x8AB1, 0x59F3},+    {0x8AB2, 0x59F4},+    {0x8AB3, 0x59F5},+    {0x8AB4, 0x59F6},+    {0x8AB5, 0x59F7},+    {0x8AB6, 0x59F8},+    {0x8AB7, 0x59FA},+    {0x8AB8, 0x59FC},+    {0x8AB9, 0x59FD},+    {0x8ABA, 0x59FE},+    {0x8ABB, 0x5A00},+    {0x8ABC, 0x5A02},+    {0x8ABD, 0x5A0A},+    {0x8ABE, 0x5A0B},+    {0x8ABF, 0x5A0D},+    {0x8AC0, 0x5A0E},+    {0x8AC1, 0x5A0F},+    {0x8AC2, 0x5A10},+    {0x8AC3, 0x5A12},+    {0x8AC4, 0x5A14},+    {0x8AC5, 0x5A15},+    {0x8AC6, 0x5A16},+    {0x8AC7, 0x5A17},+    {0x8AC8, 0x5A19},+    {0x8AC9, 0x5A1A},+    {0x8ACA, 0x5A1B},+    {0x8ACB, 0x5A1D},+    {0x8ACC, 0x5A1E},+    {0x8ACD, 0x5A21},+    {0x8ACE, 0x5A22},+    {0x8ACF, 0x5A24},+    {0x8AD0, 0x5A26},+    {0x8AD1, 0x5A27},+    {0x8AD2, 0x5A28},+    {0x8AD3, 0x5A2A},+    {0x8AD4, 0x5A2B},+    {0x8AD5, 0x5A2C},+    {0x8AD6, 0x5A2D},+    {0x8AD7, 0x5A2E},+    {0x8AD8, 0x5A2F},+    {0x8AD9, 0x5A30},+    {0x8ADA, 0x5A33},+    {0x8ADB, 0x5A35},+    {0x8ADC, 0x5A37},+    {0x8ADD, 0x5A38},+    {0x8ADE, 0x5A39},+    {0x8ADF, 0x5A3A},+    {0x8AE0, 0x5A3B},+    {0x8AE1, 0x5A3D},+    {0x8AE2, 0x5A3E},+    {0x8AE3, 0x5A3F},+    {0x8AE4, 0x5A41},+    {0x8AE5, 0x5A42},+    {0x8AE6, 0x5A43},+    {0x8AE7, 0x5A44},+    {0x8AE8, 0x5A45},+    {0x8AE9, 0x5A47},+    {0x8AEA, 0x5A48},+    {0x8AEB, 0x5A4B},+    {0x8AEC, 0x5A4C},+    {0x8AED, 0x5A4D},+    {0x8AEE, 0x5A4E},+    {0x8AEF, 0x5A4F},+    {0x8AF0, 0x5A50},+    {0x8AF1, 0x5A51},+    {0x8AF2, 0x5A52},+    {0x8AF3, 0x5A53},+    {0x8AF4, 0x5A54},+    {0x8AF5, 0x5A56},+    {0x8AF6, 0x5A57},+    {0x8AF7, 0x5A58},+    {0x8AF8, 0x5A59},+    {0x8AF9, 0x5A5B},+    {0x8AFA, 0x5A5C},+    {0x8AFB, 0x5A5D},+    {0x8AFC, 0x5A5E},+    {0x8AFD, 0x5A5F},+    {0x8AFE, 0x5A60},+    {0x8B40, 0x5A61},+    {0x8B41, 0x5A63},+    {0x8B42, 0x5A64},+    {0x8B43, 0x5A65},+    {0x8B44, 0x5A66},+    {0x8B45, 0x5A68},+    {0x8B46, 0x5A69},+    {0x8B47, 0x5A6B},+    {0x8B48, 0x5A6C},+    {0x8B49, 0x5A6D},+    {0x8B4A, 0x5A6E},+    {0x8B4B, 0x5A6F},+    {0x8B4C, 0x5A70},+    {0x8B4D, 0x5A71},+    {0x8B4E, 0x5A72},+    {0x8B4F, 0x5A73},+    {0x8B50, 0x5A78},+    {0x8B51, 0x5A79},+    {0x8B52, 0x5A7B},+    {0x8B53, 0x5A7C},+    {0x8B54, 0x5A7D},+    {0x8B55, 0x5A7E},+    {0x8B56, 0x5A80},+    {0x8B57, 0x5A81},+    {0x8B58, 0x5A82},+    {0x8B59, 0x5A83},+    {0x8B5A, 0x5A84},+    {0x8B5B, 0x5A85},+    {0x8B5C, 0x5A86},+    {0x8B5D, 0x5A87},+    {0x8B5E, 0x5A88},+    {0x8B5F, 0x5A89},+    {0x8B60, 0x5A8A},+    {0x8B61, 0x5A8B},+    {0x8B62, 0x5A8C},+    {0x8B63, 0x5A8D},+    {0x8B64, 0x5A8E},+    {0x8B65, 0x5A8F},+    {0x8B66, 0x5A90},+    {0x8B67, 0x5A91},+    {0x8B68, 0x5A93},+    {0x8B69, 0x5A94},+    {0x8B6A, 0x5A95},+    {0x8B6B, 0x5A96},+    {0x8B6C, 0x5A97},+    {0x8B6D, 0x5A98},+    {0x8B6E, 0x5A99},+    {0x8B6F, 0x5A9C},+    {0x8B70, 0x5A9D},+    {0x8B71, 0x5A9E},+    {0x8B72, 0x5A9F},+    {0x8B73, 0x5AA0},+    {0x8B74, 0x5AA1},+    {0x8B75, 0x5AA2},+    {0x8B76, 0x5AA3},+    {0x8B77, 0x5AA4},+    {0x8B78, 0x5AA5},+    {0x8B79, 0x5AA6},+    {0x8B7A, 0x5AA7},+    {0x8B7B, 0x5AA8},+    {0x8B7C, 0x5AA9},+    {0x8B7D, 0x5AAB},+    {0x8B7E, 0x5AAC},+    {0x8B80, 0x5AAD},+    {0x8B81, 0x5AAE},+    {0x8B82, 0x5AAF},+    {0x8B83, 0x5AB0},+    {0x8B84, 0x5AB1},+    {0x8B85, 0x5AB4},+    {0x8B86, 0x5AB6},+    {0x8B87, 0x5AB7},+    {0x8B88, 0x5AB9},+    {0x8B89, 0x5ABA},+    {0x8B8A, 0x5ABB},+    {0x8B8B, 0x5ABC},+    {0x8B8C, 0x5ABD},+    {0x8B8D, 0x5ABF},+    {0x8B8E, 0x5AC0},+    {0x8B8F, 0x5AC3},+    {0x8B90, 0x5AC4},+    {0x8B91, 0x5AC5},+    {0x8B92, 0x5AC6},+    {0x8B93, 0x5AC7},+    {0x8B94, 0x5AC8},+    {0x8B95, 0x5ACA},+    {0x8B96, 0x5ACB},+    {0x8B97, 0x5ACD},+    {0x8B98, 0x5ACE},+    {0x8B99, 0x5ACF},+    {0x8B9A, 0x5AD0},+    {0x8B9B, 0x5AD1},+    {0x8B9C, 0x5AD3},+    {0x8B9D, 0x5AD5},+    {0x8B9E, 0x5AD7},+    {0x8B9F, 0x5AD9},+    {0x8BA0, 0x5ADA},+    {0x8BA1, 0x5ADB},+    {0x8BA2, 0x5ADD},+    {0x8BA3, 0x5ADE},+    {0x8BA4, 0x5ADF},+    {0x8BA5, 0x5AE2},+    {0x8BA6, 0x5AE4},+    {0x8BA7, 0x5AE5},+    {0x8BA8, 0x5AE7},+    {0x8BA9, 0x5AE8},+    {0x8BAA, 0x5AEA},+    {0x8BAB, 0x5AEC},+    {0x8BAC, 0x5AED},+    {0x8BAD, 0x5AEE},+    {0x8BAE, 0x5AEF},+    {0x8BAF, 0x5AF0},+    {0x8BB0, 0x5AF2},+    {0x8BB1, 0x5AF3},+    {0x8BB2, 0x5AF4},+    {0x8BB3, 0x5AF5},+    {0x8BB4, 0x5AF6},+    {0x8BB5, 0x5AF7},+    {0x8BB6, 0x5AF8},+    {0x8BB7, 0x5AF9},+    {0x8BB8, 0x5AFA},+    {0x8BB9, 0x5AFB},+    {0x8BBA, 0x5AFC},+    {0x8BBB, 0x5AFD},+    {0x8BBC, 0x5AFE},+    {0x8BBD, 0x5AFF},+    {0x8BBE, 0x5B00},+    {0x8BBF, 0x5B01},+    {0x8BC0, 0x5B02},+    {0x8BC1, 0x5B03},+    {0x8BC2, 0x5B04},+    {0x8BC3, 0x5B05},+    {0x8BC4, 0x5B06},+    {0x8BC5, 0x5B07},+    {0x8BC6, 0x5B08},+    {0x8BC7, 0x5B0A},+    {0x8BC8, 0x5B0B},+    {0x8BC9, 0x5B0C},+    {0x8BCA, 0x5B0D},+    {0x8BCB, 0x5B0E},+    {0x8BCC, 0x5B0F},+    {0x8BCD, 0x5B10},+    {0x8BCE, 0x5B11},+    {0x8BCF, 0x5B12},+    {0x8BD0, 0x5B13},+    {0x8BD1, 0x5B14},+    {0x8BD2, 0x5B15},+    {0x8BD3, 0x5B18},+    {0x8BD4, 0x5B19},+    {0x8BD5, 0x5B1A},+    {0x8BD6, 0x5B1B},+    {0x8BD7, 0x5B1C},+    {0x8BD8, 0x5B1D},+    {0x8BD9, 0x5B1E},+    {0x8BDA, 0x5B1F},+    {0x8BDB, 0x5B20},+    {0x8BDC, 0x5B21},+    {0x8BDD, 0x5B22},+    {0x8BDE, 0x5B23},+    {0x8BDF, 0x5B24},+    {0x8BE0, 0x5B25},+    {0x8BE1, 0x5B26},+    {0x8BE2, 0x5B27},+    {0x8BE3, 0x5B28},+    {0x8BE4, 0x5B29},+    {0x8BE5, 0x5B2A},+    {0x8BE6, 0x5B2B},+    {0x8BE7, 0x5B2C},+    {0x8BE8, 0x5B2D},+    {0x8BE9, 0x5B2E},+    {0x8BEA, 0x5B2F},+    {0x8BEB, 0x5B30},+    {0x8BEC, 0x5B31},+    {0x8BED, 0x5B33},+    {0x8BEE, 0x5B35},+    {0x8BEF, 0x5B36},+    {0x8BF0, 0x5B38},+    {0x8BF1, 0x5B39},+    {0x8BF2, 0x5B3A},+    {0x8BF3, 0x5B3B},+    {0x8BF4, 0x5B3C},+    {0x8BF5, 0x5B3D},+    {0x8BF6, 0x5B3E},+    {0x8BF7, 0x5B3F},+    {0x8BF8, 0x5B41},+    {0x8BF9, 0x5B42},+    {0x8BFA, 0x5B43},+    {0x8BFB, 0x5B44},+    {0x8BFC, 0x5B45},+    {0x8BFD, 0x5B46},+    {0x8BFE, 0x5B47},+    {0x8C40, 0x5B48},+    {0x8C41, 0x5B49},+    {0x8C42, 0x5B4A},+    {0x8C43, 0x5B4B},+    {0x8C44, 0x5B4C},+    {0x8C45, 0x5B4D},+    {0x8C46, 0x5B4E},+    {0x8C47, 0x5B4F},+    {0x8C48, 0x5B52},+    {0x8C49, 0x5B56},+    {0x8C4A, 0x5B5E},+    {0x8C4B, 0x5B60},+    {0x8C4C, 0x5B61},+    {0x8C4D, 0x5B67},+    {0x8C4E, 0x5B68},+    {0x8C4F, 0x5B6B},+    {0x8C50, 0x5B6D},+    {0x8C51, 0x5B6E},+    {0x8C52, 0x5B6F},+    {0x8C53, 0x5B72},+    {0x8C54, 0x5B74},+    {0x8C55, 0x5B76},+    {0x8C56, 0x5B77},+    {0x8C57, 0x5B78},+    {0x8C58, 0x5B79},+    {0x8C59, 0x5B7B},+    {0x8C5A, 0x5B7C},+    {0x8C5B, 0x5B7E},+    {0x8C5C, 0x5B7F},+    {0x8C5D, 0x5B82},+    {0x8C5E, 0x5B86},+    {0x8C5F, 0x5B8A},+    {0x8C60, 0x5B8D},+    {0x8C61, 0x5B8E},+    {0x8C62, 0x5B90},+    {0x8C63, 0x5B91},+    {0x8C64, 0x5B92},+    {0x8C65, 0x5B94},+    {0x8C66, 0x5B96},+    {0x8C67, 0x5B9F},+    {0x8C68, 0x5BA7},+    {0x8C69, 0x5BA8},+    {0x8C6A, 0x5BA9},+    {0x8C6B, 0x5BAC},+    {0x8C6C, 0x5BAD},+    {0x8C6D, 0x5BAE},+    {0x8C6E, 0x5BAF},+    {0x8C6F, 0x5BB1},+    {0x8C70, 0x5BB2},+    {0x8C71, 0x5BB7},+    {0x8C72, 0x5BBA},+    {0x8C73, 0x5BBB},+    {0x8C74, 0x5BBC},+    {0x8C75, 0x5BC0},+    {0x8C76, 0x5BC1},+    {0x8C77, 0x5BC3},+    {0x8C78, 0x5BC8},+    {0x8C79, 0x5BC9},+    {0x8C7A, 0x5BCA},+    {0x8C7B, 0x5BCB},+    {0x8C7C, 0x5BCD},+    {0x8C7D, 0x5BCE},+    {0x8C7E, 0x5BCF},+    {0x8C80, 0x5BD1},+    {0x8C81, 0x5BD4},+    {0x8C82, 0x5BD5},+    {0x8C83, 0x5BD6},+    {0x8C84, 0x5BD7},+    {0x8C85, 0x5BD8},+    {0x8C86, 0x5BD9},+    {0x8C87, 0x5BDA},+    {0x8C88, 0x5BDB},+    {0x8C89, 0x5BDC},+    {0x8C8A, 0x5BE0},+    {0x8C8B, 0x5BE2},+    {0x8C8C, 0x5BE3},+    {0x8C8D, 0x5BE6},+    {0x8C8E, 0x5BE7},+    {0x8C8F, 0x5BE9},+    {0x8C90, 0x5BEA},+    {0x8C91, 0x5BEB},+    {0x8C92, 0x5BEC},+    {0x8C93, 0x5BED},+    {0x8C94, 0x5BEF},+    {0x8C95, 0x5BF1},+    {0x8C96, 0x5BF2},+    {0x8C97, 0x5BF3},+    {0x8C98, 0x5BF4},+    {0x8C99, 0x5BF5},+    {0x8C9A, 0x5BF6},+    {0x8C9B, 0x5BF7},+    {0x8C9C, 0x5BFD},+    {0x8C9D, 0x5BFE},+    {0x8C9E, 0x5C00},+    {0x8C9F, 0x5C02},+    {0x8CA0, 0x5C03},+    {0x8CA1, 0x5C05},+    {0x8CA2, 0x5C07},+    {0x8CA3, 0x5C08},+    {0x8CA4, 0x5C0B},+    {0x8CA5, 0x5C0C},+    {0x8CA6, 0x5C0D},+    {0x8CA7, 0x5C0E},+    {0x8CA8, 0x5C10},+    {0x8CA9, 0x5C12},+    {0x8CAA, 0x5C13},+    {0x8CAB, 0x5C17},+    {0x8CAC, 0x5C19},+    {0x8CAD, 0x5C1B},+    {0x8CAE, 0x5C1E},+    {0x8CAF, 0x5C1F},+    {0x8CB0, 0x5C20},+    {0x8CB1, 0x5C21},+    {0x8CB2, 0x5C23},+    {0x8CB3, 0x5C26},+    {0x8CB4, 0x5C28},+    {0x8CB5, 0x5C29},+    {0x8CB6, 0x5C2A},+    {0x8CB7, 0x5C2B},+    {0x8CB8, 0x5C2D},+    {0x8CB9, 0x5C2E},+    {0x8CBA, 0x5C2F},+    {0x8CBB, 0x5C30},+    {0x8CBC, 0x5C32},+    {0x8CBD, 0x5C33},+    {0x8CBE, 0x5C35},+    {0x8CBF, 0x5C36},+    {0x8CC0, 0x5C37},+    {0x8CC1, 0x5C43},+    {0x8CC2, 0x5C44},+    {0x8CC3, 0x5C46},+    {0x8CC4, 0x5C47},+    {0x8CC5, 0x5C4C},+    {0x8CC6, 0x5C4D},+    {0x8CC7, 0x5C52},+    {0x8CC8, 0x5C53},+    {0x8CC9, 0x5C54},+    {0x8CCA, 0x5C56},+    {0x8CCB, 0x5C57},+    {0x8CCC, 0x5C58},+    {0x8CCD, 0x5C5A},+    {0x8CCE, 0x5C5B},+    {0x8CCF, 0x5C5C},+    {0x8CD0, 0x5C5D},+    {0x8CD1, 0x5C5F},+    {0x8CD2, 0x5C62},+    {0x8CD3, 0x5C64},+    {0x8CD4, 0x5C67},+    {0x8CD5, 0x5C68},+    {0x8CD6, 0x5C69},+    {0x8CD7, 0x5C6A},+    {0x8CD8, 0x5C6B},+    {0x8CD9, 0x5C6C},+    {0x8CDA, 0x5C6D},+    {0x8CDB, 0x5C70},+    {0x8CDC, 0x5C72},+    {0x8CDD, 0x5C73},+    {0x8CDE, 0x5C74},+    {0x8CDF, 0x5C75},+    {0x8CE0, 0x5C76},+    {0x8CE1, 0x5C77},+    {0x8CE2, 0x5C78},+    {0x8CE3, 0x5C7B},+    {0x8CE4, 0x5C7C},+    {0x8CE5, 0x5C7D},+    {0x8CE6, 0x5C7E},+    {0x8CE7, 0x5C80},+    {0x8CE8, 0x5C83},+    {0x8CE9, 0x5C84},+    {0x8CEA, 0x5C85},+    {0x8CEB, 0x5C86},+    {0x8CEC, 0x5C87},+    {0x8CED, 0x5C89},+    {0x8CEE, 0x5C8A},+    {0x8CEF, 0x5C8B},+    {0x8CF0, 0x5C8E},+    {0x8CF1, 0x5C8F},+    {0x8CF2, 0x5C92},+    {0x8CF3, 0x5C93},+    {0x8CF4, 0x5C95},+    {0x8CF5, 0x5C9D},+    {0x8CF6, 0x5C9E},+    {0x8CF7, 0x5C9F},+    {0x8CF8, 0x5CA0},+    {0x8CF9, 0x5CA1},+    {0x8CFA, 0x5CA4},+    {0x8CFB, 0x5CA5},+    {0x8CFC, 0x5CA6},+    {0x8CFD, 0x5CA7},+    {0x8CFE, 0x5CA8},+    {0x8D40, 0x5CAA},+    {0x8D41, 0x5CAE},+    {0x8D42, 0x5CAF},+    {0x8D43, 0x5CB0},+    {0x8D44, 0x5CB2},+    {0x8D45, 0x5CB4},+    {0x8D46, 0x5CB6},+    {0x8D47, 0x5CB9},+    {0x8D48, 0x5CBA},+    {0x8D49, 0x5CBB},+    {0x8D4A, 0x5CBC},+    {0x8D4B, 0x5CBE},+    {0x8D4C, 0x5CC0},+    {0x8D4D, 0x5CC2},+    {0x8D4E, 0x5CC3},+    {0x8D4F, 0x5CC5},+    {0x8D50, 0x5CC6},+    {0x8D51, 0x5CC7},+    {0x8D52, 0x5CC8},+    {0x8D53, 0x5CC9},+    {0x8D54, 0x5CCA},+    {0x8D55, 0x5CCC},+    {0x8D56, 0x5CCD},+    {0x8D57, 0x5CCE},+    {0x8D58, 0x5CCF},+    {0x8D59, 0x5CD0},+    {0x8D5A, 0x5CD1},+    {0x8D5B, 0x5CD3},+    {0x8D5C, 0x5CD4},+    {0x8D5D, 0x5CD5},+    {0x8D5E, 0x5CD6},+    {0x8D5F, 0x5CD7},+    {0x8D60, 0x5CD8},+    {0x8D61, 0x5CDA},+    {0x8D62, 0x5CDB},+    {0x8D63, 0x5CDC},+    {0x8D64, 0x5CDD},+    {0x8D65, 0x5CDE},+    {0x8D66, 0x5CDF},+    {0x8D67, 0x5CE0},+    {0x8D68, 0x5CE2},+    {0x8D69, 0x5CE3},+    {0x8D6A, 0x5CE7},+    {0x8D6B, 0x5CE9},+    {0x8D6C, 0x5CEB},+    {0x8D6D, 0x5CEC},+    {0x8D6E, 0x5CEE},+    {0x8D6F, 0x5CEF},+    {0x8D70, 0x5CF1},+    {0x8D71, 0x5CF2},+    {0x8D72, 0x5CF3},+    {0x8D73, 0x5CF4},+    {0x8D74, 0x5CF5},+    {0x8D75, 0x5CF6},+    {0x8D76, 0x5CF7},+    {0x8D77, 0x5CF8},+    {0x8D78, 0x5CF9},+    {0x8D79, 0x5CFA},+    {0x8D7A, 0x5CFC},+    {0x8D7B, 0x5CFD},+    {0x8D7C, 0x5CFE},+    {0x8D7D, 0x5CFF},+    {0x8D7E, 0x5D00},+    {0x8D80, 0x5D01},+    {0x8D81, 0x5D04},+    {0x8D82, 0x5D05},+    {0x8D83, 0x5D08},+    {0x8D84, 0x5D09},+    {0x8D85, 0x5D0A},+    {0x8D86, 0x5D0B},+    {0x8D87, 0x5D0C},+    {0x8D88, 0x5D0D},+    {0x8D89, 0x5D0F},+    {0x8D8A, 0x5D10},+    {0x8D8B, 0x5D11},+    {0x8D8C, 0x5D12},+    {0x8D8D, 0x5D13},+    {0x8D8E, 0x5D15},+    {0x8D8F, 0x5D17},+    {0x8D90, 0x5D18},+    {0x8D91, 0x5D19},+    {0x8D92, 0x5D1A},+    {0x8D93, 0x5D1C},+    {0x8D94, 0x5D1D},+    {0x8D95, 0x5D1F},+    {0x8D96, 0x5D20},+    {0x8D97, 0x5D21},+    {0x8D98, 0x5D22},+    {0x8D99, 0x5D23},+    {0x8D9A, 0x5D25},+    {0x8D9B, 0x5D28},+    {0x8D9C, 0x5D2A},+    {0x8D9D, 0x5D2B},+    {0x8D9E, 0x5D2C},+    {0x8D9F, 0x5D2F},+    {0x8DA0, 0x5D30},+    {0x8DA1, 0x5D31},+    {0x8DA2, 0x5D32},+    {0x8DA3, 0x5D33},+    {0x8DA4, 0x5D35},+    {0x8DA5, 0x5D36},+    {0x8DA6, 0x5D37},+    {0x8DA7, 0x5D38},+    {0x8DA8, 0x5D39},+    {0x8DA9, 0x5D3A},+    {0x8DAA, 0x5D3B},+    {0x8DAB, 0x5D3C},+    {0x8DAC, 0x5D3F},+    {0x8DAD, 0x5D40},+    {0x8DAE, 0x5D41},+    {0x8DAF, 0x5D42},+    {0x8DB0, 0x5D43},+    {0x8DB1, 0x5D44},+    {0x8DB2, 0x5D45},+    {0x8DB3, 0x5D46},+    {0x8DB4, 0x5D48},+    {0x8DB5, 0x5D49},+    {0x8DB6, 0x5D4D},+    {0x8DB7, 0x5D4E},+    {0x8DB8, 0x5D4F},+    {0x8DB9, 0x5D50},+    {0x8DBA, 0x5D51},+    {0x8DBB, 0x5D52},+    {0x8DBC, 0x5D53},+    {0x8DBD, 0x5D54},+    {0x8DBE, 0x5D55},+    {0x8DBF, 0x5D56},+    {0x8DC0, 0x5D57},+    {0x8DC1, 0x5D59},+    {0x8DC2, 0x5D5A},+    {0x8DC3, 0x5D5C},+    {0x8DC4, 0x5D5E},+    {0x8DC5, 0x5D5F},+    {0x8DC6, 0x5D60},+    {0x8DC7, 0x5D61},+    {0x8DC8, 0x5D62},+    {0x8DC9, 0x5D63},+    {0x8DCA, 0x5D64},+    {0x8DCB, 0x5D65},+    {0x8DCC, 0x5D66},+    {0x8DCD, 0x5D67},+    {0x8DCE, 0x5D68},+    {0x8DCF, 0x5D6A},+    {0x8DD0, 0x5D6D},+    {0x8DD1, 0x5D6E},+    {0x8DD2, 0x5D70},+    {0x8DD3, 0x5D71},+    {0x8DD4, 0x5D72},+    {0x8DD5, 0x5D73},+    {0x8DD6, 0x5D75},+    {0x8DD7, 0x5D76},+    {0x8DD8, 0x5D77},+    {0x8DD9, 0x5D78},+    {0x8DDA, 0x5D79},+    {0x8DDB, 0x5D7A},+    {0x8DDC, 0x5D7B},+    {0x8DDD, 0x5D7C},+    {0x8DDE, 0x5D7D},+    {0x8DDF, 0x5D7E},+    {0x8DE0, 0x5D7F},+    {0x8DE1, 0x5D80},+    {0x8DE2, 0x5D81},+    {0x8DE3, 0x5D83},+    {0x8DE4, 0x5D84},+    {0x8DE5, 0x5D85},+    {0x8DE6, 0x5D86},+    {0x8DE7, 0x5D87},+    {0x8DE8, 0x5D88},+    {0x8DE9, 0x5D89},+    {0x8DEA, 0x5D8A},+    {0x8DEB, 0x5D8B},+    {0x8DEC, 0x5D8C},+    {0x8DED, 0x5D8D},+    {0x8DEE, 0x5D8E},+    {0x8DEF, 0x5D8F},+    {0x8DF0, 0x5D90},+    {0x8DF1, 0x5D91},+    {0x8DF2, 0x5D92},+    {0x8DF3, 0x5D93},+    {0x8DF4, 0x5D94},+    {0x8DF5, 0x5D95},+    {0x8DF6, 0x5D96},+    {0x8DF7, 0x5D97},+    {0x8DF8, 0x5D98},+    {0x8DF9, 0x5D9A},+    {0x8DFA, 0x5D9B},+    {0x8DFB, 0x5D9C},+    {0x8DFC, 0x5D9E},+    {0x8DFD, 0x5D9F},+    {0x8DFE, 0x5DA0},+    {0x8E40, 0x5DA1},+    {0x8E41, 0x5DA2},+    {0x8E42, 0x5DA3},+    {0x8E43, 0x5DA4},+    {0x8E44, 0x5DA5},+    {0x8E45, 0x5DA6},+    {0x8E46, 0x5DA7},+    {0x8E47, 0x5DA8},+    {0x8E48, 0x5DA9},+    {0x8E49, 0x5DAA},+    {0x8E4A, 0x5DAB},+    {0x8E4B, 0x5DAC},+    {0x8E4C, 0x5DAD},+    {0x8E4D, 0x5DAE},+    {0x8E4E, 0x5DAF},+    {0x8E4F, 0x5DB0},+    {0x8E50, 0x5DB1},+    {0x8E51, 0x5DB2},+    {0x8E52, 0x5DB3},+    {0x8E53, 0x5DB4},+    {0x8E54, 0x5DB5},+    {0x8E55, 0x5DB6},+    {0x8E56, 0x5DB8},+    {0x8E57, 0x5DB9},+    {0x8E58, 0x5DBA},+    {0x8E59, 0x5DBB},+    {0x8E5A, 0x5DBC},+    {0x8E5B, 0x5DBD},+    {0x8E5C, 0x5DBE},+    {0x8E5D, 0x5DBF},+    {0x8E5E, 0x5DC0},+    {0x8E5F, 0x5DC1},+    {0x8E60, 0x5DC2},+    {0x8E61, 0x5DC3},+    {0x8E62, 0x5DC4},+    {0x8E63, 0x5DC6},+    {0x8E64, 0x5DC7},+    {0x8E65, 0x5DC8},+    {0x8E66, 0x5DC9},+    {0x8E67, 0x5DCA},+    {0x8E68, 0x5DCB},+    {0x8E69, 0x5DCC},+    {0x8E6A, 0x5DCE},+    {0x8E6B, 0x5DCF},+    {0x8E6C, 0x5DD0},+    {0x8E6D, 0x5DD1},+    {0x8E6E, 0x5DD2},+    {0x8E6F, 0x5DD3},+    {0x8E70, 0x5DD4},+    {0x8E71, 0x5DD5},+    {0x8E72, 0x5DD6},+    {0x8E73, 0x5DD7},+    {0x8E74, 0x5DD8},+    {0x8E75, 0x5DD9},+    {0x8E76, 0x5DDA},+    {0x8E77, 0x5DDC},+    {0x8E78, 0x5DDF},+    {0x8E79, 0x5DE0},+    {0x8E7A, 0x5DE3},+    {0x8E7B, 0x5DE4},+    {0x8E7C, 0x5DEA},+    {0x8E7D, 0x5DEC},+    {0x8E7E, 0x5DED},+    {0x8E80, 0x5DF0},+    {0x8E81, 0x5DF5},+    {0x8E82, 0x5DF6},+    {0x8E83, 0x5DF8},+    {0x8E84, 0x5DF9},+    {0x8E85, 0x5DFA},+    {0x8E86, 0x5DFB},+    {0x8E87, 0x5DFC},+    {0x8E88, 0x5DFF},+    {0x8E89, 0x5E00},+    {0x8E8A, 0x5E04},+    {0x8E8B, 0x5E07},+    {0x8E8C, 0x5E09},+    {0x8E8D, 0x5E0A},+    {0x8E8E, 0x5E0B},+    {0x8E8F, 0x5E0D},+    {0x8E90, 0x5E0E},+    {0x8E91, 0x5E12},+    {0x8E92, 0x5E13},+    {0x8E93, 0x5E17},+    {0x8E94, 0x5E1E},+    {0x8E95, 0x5E1F},+    {0x8E96, 0x5E20},+    {0x8E97, 0x5E21},+    {0x8E98, 0x5E22},+    {0x8E99, 0x5E23},+    {0x8E9A, 0x5E24},+    {0x8E9B, 0x5E25},+    {0x8E9C, 0x5E28},+    {0x8E9D, 0x5E29},+    {0x8E9E, 0x5E2A},+    {0x8E9F, 0x5E2B},+    {0x8EA0, 0x5E2C},+    {0x8EA1, 0x5E2F},+    {0x8EA2, 0x5E30},+    {0x8EA3, 0x5E32},+    {0x8EA4, 0x5E33},+    {0x8EA5, 0x5E34},+    {0x8EA6, 0x5E35},+    {0x8EA7, 0x5E36},+    {0x8EA8, 0x5E39},+    {0x8EA9, 0x5E3A},+    {0x8EAA, 0x5E3E},+    {0x8EAB, 0x5E3F},+    {0x8EAC, 0x5E40},+    {0x8EAD, 0x5E41},+    {0x8EAE, 0x5E43},+    {0x8EAF, 0x5E46},+    {0x8EB0, 0x5E47},+    {0x8EB1, 0x5E48},+    {0x8EB2, 0x5E49},+    {0x8EB3, 0x5E4A},+    {0x8EB4, 0x5E4B},+    {0x8EB5, 0x5E4D},+    {0x8EB6, 0x5E4E},+    {0x8EB7, 0x5E4F},+    {0x8EB8, 0x5E50},+    {0x8EB9, 0x5E51},+    {0x8EBA, 0x5E52},+    {0x8EBB, 0x5E53},+    {0x8EBC, 0x5E56},+    {0x8EBD, 0x5E57},+    {0x8EBE, 0x5E58},+    {0x8EBF, 0x5E59},+    {0x8EC0, 0x5E5A},+    {0x8EC1, 0x5E5C},+    {0x8EC2, 0x5E5D},+    {0x8EC3, 0x5E5F},+    {0x8EC4, 0x5E60},+    {0x8EC5, 0x5E63},+    {0x8EC6, 0x5E64},+    {0x8EC7, 0x5E65},+    {0x8EC8, 0x5E66},+    {0x8EC9, 0x5E67},+    {0x8ECA, 0x5E68},+    {0x8ECB, 0x5E69},+    {0x8ECC, 0x5E6A},+    {0x8ECD, 0x5E6B},+    {0x8ECE, 0x5E6C},+    {0x8ECF, 0x5E6D},+    {0x8ED0, 0x5E6E},+    {0x8ED1, 0x5E6F},+    {0x8ED2, 0x5E70},+    {0x8ED3, 0x5E71},+    {0x8ED4, 0x5E75},+    {0x8ED5, 0x5E77},+    {0x8ED6, 0x5E79},+    {0x8ED7, 0x5E7E},+    {0x8ED8, 0x5E81},+    {0x8ED9, 0x5E82},+    {0x8EDA, 0x5E83},+    {0x8EDB, 0x5E85},+    {0x8EDC, 0x5E88},+    {0x8EDD, 0x5E89},+    {0x8EDE, 0x5E8C},+    {0x8EDF, 0x5E8D},+    {0x8EE0, 0x5E8E},+    {0x8EE1, 0x5E92},+    {0x8EE2, 0x5E98},+    {0x8EE3, 0x5E9B},+    {0x8EE4, 0x5E9D},+    {0x8EE5, 0x5EA1},+    {0x8EE6, 0x5EA2},+    {0x8EE7, 0x5EA3},+    {0x8EE8, 0x5EA4},+    {0x8EE9, 0x5EA8},+    {0x8EEA, 0x5EA9},+    {0x8EEB, 0x5EAA},+    {0x8EEC, 0x5EAB},+    {0x8EED, 0x5EAC},+    {0x8EEE, 0x5EAE},+    {0x8EEF, 0x5EAF},+    {0x8EF0, 0x5EB0},+    {0x8EF1, 0x5EB1},+    {0x8EF2, 0x5EB2},+    {0x8EF3, 0x5EB4},+    {0x8EF4, 0x5EBA},+    {0x8EF5, 0x5EBB},+    {0x8EF6, 0x5EBC},+    {0x8EF7, 0x5EBD},+    {0x8EF8, 0x5EBF},+    {0x8EF9, 0x5EC0},+    {0x8EFA, 0x5EC1},+    {0x8EFB, 0x5EC2},+    {0x8EFC, 0x5EC3},+    {0x8EFD, 0x5EC4},+    {0x8EFE, 0x5EC5},+    {0x8F40, 0x5EC6},+    {0x8F41, 0x5EC7},+    {0x8F42, 0x5EC8},+    {0x8F43, 0x5ECB},+    {0x8F44, 0x5ECC},+    {0x8F45, 0x5ECD},+    {0x8F46, 0x5ECE},+    {0x8F47, 0x5ECF},+    {0x8F48, 0x5ED0},+    {0x8F49, 0x5ED4},+    {0x8F4A, 0x5ED5},+    {0x8F4B, 0x5ED7},+    {0x8F4C, 0x5ED8},+    {0x8F4D, 0x5ED9},+    {0x8F4E, 0x5EDA},+    {0x8F4F, 0x5EDC},+    {0x8F50, 0x5EDD},+    {0x8F51, 0x5EDE},+    {0x8F52, 0x5EDF},+    {0x8F53, 0x5EE0},+    {0x8F54, 0x5EE1},+    {0x8F55, 0x5EE2},+    {0x8F56, 0x5EE3},+    {0x8F57, 0x5EE4},+    {0x8F58, 0x5EE5},+    {0x8F59, 0x5EE6},+    {0x8F5A, 0x5EE7},+    {0x8F5B, 0x5EE9},+    {0x8F5C, 0x5EEB},+    {0x8F5D, 0x5EEC},+    {0x8F5E, 0x5EED},+    {0x8F5F, 0x5EEE},+    {0x8F60, 0x5EEF},+    {0x8F61, 0x5EF0},+    {0x8F62, 0x5EF1},+    {0x8F63, 0x5EF2},+    {0x8F64, 0x5EF3},+    {0x8F65, 0x5EF5},+    {0x8F66, 0x5EF8},+    {0x8F67, 0x5EF9},+    {0x8F68, 0x5EFB},+    {0x8F69, 0x5EFC},+    {0x8F6A, 0x5EFD},+    {0x8F6B, 0x5F05},+    {0x8F6C, 0x5F06},+    {0x8F6D, 0x5F07},+    {0x8F6E, 0x5F09},+    {0x8F6F, 0x5F0C},+    {0x8F70, 0x5F0D},+    {0x8F71, 0x5F0E},+    {0x8F72, 0x5F10},+    {0x8F73, 0x5F12},+    {0x8F74, 0x5F14},+    {0x8F75, 0x5F16},+    {0x8F76, 0x5F19},+    {0x8F77, 0x5F1A},+    {0x8F78, 0x5F1C},+    {0x8F79, 0x5F1D},+    {0x8F7A, 0x5F1E},+    {0x8F7B, 0x5F21},+    {0x8F7C, 0x5F22},+    {0x8F7D, 0x5F23},+    {0x8F7E, 0x5F24},+    {0x8F80, 0x5F28},+    {0x8F81, 0x5F2B},+    {0x8F82, 0x5F2C},+    {0x8F83, 0x5F2E},+    {0x8F84, 0x5F30},+    {0x8F85, 0x5F32},+    {0x8F86, 0x5F33},+    {0x8F87, 0x5F34},+    {0x8F88, 0x5F35},+    {0x8F89, 0x5F36},+    {0x8F8A, 0x5F37},+    {0x8F8B, 0x5F38},+    {0x8F8C, 0x5F3B},+    {0x8F8D, 0x5F3D},+    {0x8F8E, 0x5F3E},+    {0x8F8F, 0x5F3F},+    {0x8F90, 0x5F41},+    {0x8F91, 0x5F42},+    {0x8F92, 0x5F43},+    {0x8F93, 0x5F44},+    {0x8F94, 0x5F45},+    {0x8F95, 0x5F46},+    {0x8F96, 0x5F47},+    {0x8F97, 0x5F48},+    {0x8F98, 0x5F49},+    {0x8F99, 0x5F4A},+    {0x8F9A, 0x5F4B},+    {0x8F9B, 0x5F4C},+    {0x8F9C, 0x5F4D},+    {0x8F9D, 0x5F4E},+    {0x8F9E, 0x5F4F},+    {0x8F9F, 0x5F51},+    {0x8FA0, 0x5F54},+    {0x8FA1, 0x5F59},+    {0x8FA2, 0x5F5A},+    {0x8FA3, 0x5F5B},+    {0x8FA4, 0x5F5C},+    {0x8FA5, 0x5F5E},+    {0x8FA6, 0x5F5F},+    {0x8FA7, 0x5F60},+    {0x8FA8, 0x5F63},+    {0x8FA9, 0x5F65},+    {0x8FAA, 0x5F67},+    {0x8FAB, 0x5F68},+    {0x8FAC, 0x5F6B},+    {0x8FAD, 0x5F6E},+    {0x8FAE, 0x5F6F},+    {0x8FAF, 0x5F72},+    {0x8FB0, 0x5F74},+    {0x8FB1, 0x5F75},+    {0x8FB2, 0x5F76},+    {0x8FB3, 0x5F78},+    {0x8FB4, 0x5F7A},+    {0x8FB5, 0x5F7D},+    {0x8FB6, 0x5F7E},+    {0x8FB7, 0x5F7F},+    {0x8FB8, 0x5F83},+    {0x8FB9, 0x5F86},+    {0x8FBA, 0x5F8D},+    {0x8FBB, 0x5F8E},+    {0x8FBC, 0x5F8F},+    {0x8FBD, 0x5F91},+    {0x8FBE, 0x5F93},+    {0x8FBF, 0x5F94},+    {0x8FC0, 0x5F96},+    {0x8FC1, 0x5F9A},+    {0x8FC2, 0x5F9B},+    {0x8FC3, 0x5F9D},+    {0x8FC4, 0x5F9E},+    {0x8FC5, 0x5F9F},+    {0x8FC6, 0x5FA0},+    {0x8FC7, 0x5FA2},+    {0x8FC8, 0x5FA3},+    {0x8FC9, 0x5FA4},+    {0x8FCA, 0x5FA5},+    {0x8FCB, 0x5FA6},+    {0x8FCC, 0x5FA7},+    {0x8FCD, 0x5FA9},+    {0x8FCE, 0x5FAB},+    {0x8FCF, 0x5FAC},+    {0x8FD0, 0x5FAF},+    {0x8FD1, 0x5FB0},+    {0x8FD2, 0x5FB1},+    {0x8FD3, 0x5FB2},+    {0x8FD4, 0x5FB3},+    {0x8FD5, 0x5FB4},+    {0x8FD6, 0x5FB6},+    {0x8FD7, 0x5FB8},+    {0x8FD8, 0x5FB9},+    {0x8FD9, 0x5FBA},+    {0x8FDA, 0x5FBB},+    {0x8FDB, 0x5FBE},+    {0x8FDC, 0x5FBF},+    {0x8FDD, 0x5FC0},+    {0x8FDE, 0x5FC1},+    {0x8FDF, 0x5FC2},+    {0x8FE0, 0x5FC7},+    {0x8FE1, 0x5FC8},+    {0x8FE2, 0x5FCA},+    {0x8FE3, 0x5FCB},+    {0x8FE4, 0x5FCE},+    {0x8FE5, 0x5FD3},+    {0x8FE6, 0x5FD4},+    {0x8FE7, 0x5FD5},+    {0x8FE8, 0x5FDA},+    {0x8FE9, 0x5FDB},+    {0x8FEA, 0x5FDC},+    {0x8FEB, 0x5FDE},+    {0x8FEC, 0x5FDF},+    {0x8FED, 0x5FE2},+    {0x8FEE, 0x5FE3},+    {0x8FEF, 0x5FE5},+    {0x8FF0, 0x5FE6},+    {0x8FF1, 0x5FE8},+    {0x8FF2, 0x5FE9},+    {0x8FF3, 0x5FEC},+    {0x8FF4, 0x5FEF},+    {0x8FF5, 0x5FF0},+    {0x8FF6, 0x5FF2},+    {0x8FF7, 0x5FF3},+    {0x8FF8, 0x5FF4},+    {0x8FF9, 0x5FF6},+    {0x8FFA, 0x5FF7},+    {0x8FFB, 0x5FF9},+    {0x8FFC, 0x5FFA},+    {0x8FFD, 0x5FFC},+    {0x8FFE, 0x6007},+    {0x9040, 0x6008},+    {0x9041, 0x6009},+    {0x9042, 0x600B},+    {0x9043, 0x600C},+    {0x9044, 0x6010},+    {0x9045, 0x6011},+    {0x9046, 0x6013},+    {0x9047, 0x6017},+    {0x9048, 0x6018},+    {0x9049, 0x601A},+    {0x904A, 0x601E},+    {0x904B, 0x601F},+    {0x904C, 0x6022},+    {0x904D, 0x6023},+    {0x904E, 0x6024},+    {0x904F, 0x602C},+    {0x9050, 0x602D},+    {0x9051, 0x602E},+    {0x9052, 0x6030},+    {0x9053, 0x6031},+    {0x9054, 0x6032},+    {0x9055, 0x6033},+    {0x9056, 0x6034},+    {0x9057, 0x6036},+    {0x9058, 0x6037},+    {0x9059, 0x6038},+    {0x905A, 0x6039},+    {0x905B, 0x603A},+    {0x905C, 0x603D},+    {0x905D, 0x603E},+    {0x905E, 0x6040},+    {0x905F, 0x6044},+    {0x9060, 0x6045},+    {0x9061, 0x6046},+    {0x9062, 0x6047},+    {0x9063, 0x6048},+    {0x9064, 0x6049},+    {0x9065, 0x604A},+    {0x9066, 0x604C},+    {0x9067, 0x604E},+    {0x9068, 0x604F},+    {0x9069, 0x6051},+    {0x906A, 0x6053},+    {0x906B, 0x6054},+    {0x906C, 0x6056},+    {0x906D, 0x6057},+    {0x906E, 0x6058},+    {0x906F, 0x605B},+    {0x9070, 0x605C},+    {0x9071, 0x605E},+    {0x9072, 0x605F},+    {0x9073, 0x6060},+    {0x9074, 0x6061},+    {0x9075, 0x6065},+    {0x9076, 0x6066},+    {0x9077, 0x606E},+    {0x9078, 0x6071},+    {0x9079, 0x6072},+    {0x907A, 0x6074},+    {0x907B, 0x6075},+    {0x907C, 0x6077},+    {0x907D, 0x607E},+    {0x907E, 0x6080},+    {0x9080, 0x6081},+    {0x9081, 0x6082},+    {0x9082, 0x6085},+    {0x9083, 0x6086},+    {0x9084, 0x6087},+    {0x9085, 0x6088},+    {0x9086, 0x608A},+    {0x9087, 0x608B},+    {0x9088, 0x608E},+    {0x9089, 0x608F},+    {0x908A, 0x6090},+    {0x908B, 0x6091},+    {0x908C, 0x6093},+    {0x908D, 0x6095},+    {0x908E, 0x6097},+    {0x908F, 0x6098},+    {0x9090, 0x6099},+    {0x9091, 0x609C},+    {0x9092, 0x609E},+    {0x9093, 0x60A1},+    {0x9094, 0x60A2},+    {0x9095, 0x60A4},+    {0x9096, 0x60A5},+    {0x9097, 0x60A7},+    {0x9098, 0x60A9},+    {0x9099, 0x60AA},+    {0x909A, 0x60AE},+    {0x909B, 0x60B0},+    {0x909C, 0x60B3},+    {0x909D, 0x60B5},+    {0x909E, 0x60B6},+    {0x909F, 0x60B7},+    {0x90A0, 0x60B9},+    {0x90A1, 0x60BA},+    {0x90A2, 0x60BD},+    {0x90A3, 0x60BE},+    {0x90A4, 0x60BF},+    {0x90A5, 0x60C0},+    {0x90A6, 0x60C1},+    {0x90A7, 0x60C2},+    {0x90A8, 0x60C3},+    {0x90A9, 0x60C4},+    {0x90AA, 0x60C7},+    {0x90AB, 0x60C8},+    {0x90AC, 0x60C9},+    {0x90AD, 0x60CC},+    {0x90AE, 0x60CD},+    {0x90AF, 0x60CE},+    {0x90B0, 0x60CF},+    {0x90B1, 0x60D0},+    {0x90B2, 0x60D2},+    {0x90B3, 0x60D3},+    {0x90B4, 0x60D4},+    {0x90B5, 0x60D6},+    {0x90B6, 0x60D7},+    {0x90B7, 0x60D9},+    {0x90B8, 0x60DB},+    {0x90B9, 0x60DE},+    {0x90BA, 0x60E1},+    {0x90BB, 0x60E2},+    {0x90BC, 0x60E3},+    {0x90BD, 0x60E4},+    {0x90BE, 0x60E5},+    {0x90BF, 0x60EA},+    {0x90C0, 0x60F1},+    {0x90C1, 0x60F2},+    {0x90C2, 0x60F5},+    {0x90C3, 0x60F7},+    {0x90C4, 0x60F8},+    {0x90C5, 0x60FB},+    {0x90C6, 0x60FC},+    {0x90C7, 0x60FD},+    {0x90C8, 0x60FE},+    {0x90C9, 0x60FF},+    {0x90CA, 0x6102},+    {0x90CB, 0x6103},+    {0x90CC, 0x6104},+    {0x90CD, 0x6105},+    {0x90CE, 0x6107},+    {0x90CF, 0x610A},+    {0x90D0, 0x610B},+    {0x90D1, 0x610C},+    {0x90D2, 0x6110},+    {0x90D3, 0x6111},+    {0x90D4, 0x6112},+    {0x90D5, 0x6113},+    {0x90D6, 0x6114},+    {0x90D7, 0x6116},+    {0x90D8, 0x6117},+    {0x90D9, 0x6118},+    {0x90DA, 0x6119},+    {0x90DB, 0x611B},+    {0x90DC, 0x611C},+    {0x90DD, 0x611D},+    {0x90DE, 0x611E},+    {0x90DF, 0x6121},+    {0x90E0, 0x6122},+    {0x90E1, 0x6125},+    {0x90E2, 0x6128},+    {0x90E3, 0x6129},+    {0x90E4, 0x612A},+    {0x90E5, 0x612C},+    {0x90E6, 0x612D},+    {0x90E7, 0x612E},+    {0x90E8, 0x612F},+    {0x90E9, 0x6130},+    {0x90EA, 0x6131},+    {0x90EB, 0x6132},+    {0x90EC, 0x6133},+    {0x90ED, 0x6134},+    {0x90EE, 0x6135},+    {0x90EF, 0x6136},+    {0x90F0, 0x6137},+    {0x90F1, 0x6138},+    {0x90F2, 0x6139},+    {0x90F3, 0x613A},+    {0x90F4, 0x613B},+    {0x90F5, 0x613C},+    {0x90F6, 0x613D},+    {0x90F7, 0x613E},+    {0x90F8, 0x6140},+    {0x90F9, 0x6141},+    {0x90FA, 0x6142},+    {0x90FB, 0x6143},+    {0x90FC, 0x6144},+    {0x90FD, 0x6145},+    {0x90FE, 0x6146},+    {0x9140, 0x6147},+    {0x9141, 0x6149},+    {0x9142, 0x614B},+    {0x9143, 0x614D},+    {0x9144, 0x614F},+    {0x9145, 0x6150},+    {0x9146, 0x6152},+    {0x9147, 0x6153},+    {0x9148, 0x6154},+    {0x9149, 0x6156},+    {0x914A, 0x6157},+    {0x914B, 0x6158},+    {0x914C, 0x6159},+    {0x914D, 0x615A},+    {0x914E, 0x615B},+    {0x914F, 0x615C},+    {0x9150, 0x615E},+    {0x9151, 0x615F},+    {0x9152, 0x6160},+    {0x9153, 0x6161},+    {0x9154, 0x6163},+    {0x9155, 0x6164},+    {0x9156, 0x6165},+    {0x9157, 0x6166},+    {0x9158, 0x6169},+    {0x9159, 0x616A},+    {0x915A, 0x616B},+    {0x915B, 0x616C},+    {0x915C, 0x616D},+    {0x915D, 0x616E},+    {0x915E, 0x616F},+    {0x915F, 0x6171},+    {0x9160, 0x6172},+    {0x9161, 0x6173},+    {0x9162, 0x6174},+    {0x9163, 0x6176},+    {0x9164, 0x6178},+    {0x9165, 0x6179},+    {0x9166, 0x617A},+    {0x9167, 0x617B},+    {0x9168, 0x617C},+    {0x9169, 0x617D},+    {0x916A, 0x617E},+    {0x916B, 0x617F},+    {0x916C, 0x6180},+    {0x916D, 0x6181},+    {0x916E, 0x6182},+    {0x916F, 0x6183},+    {0x9170, 0x6184},+    {0x9171, 0x6185},+    {0x9172, 0x6186},+    {0x9173, 0x6187},+    {0x9174, 0x6188},+    {0x9175, 0x6189},+    {0x9176, 0x618A},+    {0x9177, 0x618C},+    {0x9178, 0x618D},+    {0x9179, 0x618F},+    {0x917A, 0x6190},+    {0x917B, 0x6191},+    {0x917C, 0x6192},+    {0x917D, 0x6193},+    {0x917E, 0x6195},+    {0x9180, 0x6196},+    {0x9181, 0x6197},+    {0x9182, 0x6198},+    {0x9183, 0x6199},+    {0x9184, 0x619A},+    {0x9185, 0x619B},+    {0x9186, 0x619C},+    {0x9187, 0x619E},+    {0x9188, 0x619F},+    {0x9189, 0x61A0},+    {0x918A, 0x61A1},+    {0x918B, 0x61A2},+    {0x918C, 0x61A3},+    {0x918D, 0x61A4},+    {0x918E, 0x61A5},+    {0x918F, 0x61A6},+    {0x9190, 0x61AA},+    {0x9191, 0x61AB},+    {0x9192, 0x61AD},+    {0x9193, 0x61AE},+    {0x9194, 0x61AF},+    {0x9195, 0x61B0},+    {0x9196, 0x61B1},+    {0x9197, 0x61B2},+    {0x9198, 0x61B3},+    {0x9199, 0x61B4},+    {0x919A, 0x61B5},+    {0x919B, 0x61B6},+    {0x919C, 0x61B8},+    {0x919D, 0x61B9},+    {0x919E, 0x61BA},+    {0x919F, 0x61BB},+    {0x91A0, 0x61BC},+    {0x91A1, 0x61BD},+    {0x91A2, 0x61BF},+    {0x91A3, 0x61C0},+    {0x91A4, 0x61C1},+    {0x91A5, 0x61C3},+    {0x91A6, 0x61C4},+    {0x91A7, 0x61C5},+    {0x91A8, 0x61C6},+    {0x91A9, 0x61C7},+    {0x91AA, 0x61C9},+    {0x91AB, 0x61CC},+    {0x91AC, 0x61CD},+    {0x91AD, 0x61CE},+    {0x91AE, 0x61CF},+    {0x91AF, 0x61D0},+    {0x91B0, 0x61D3},+    {0x91B1, 0x61D5},+    {0x91B2, 0x61D6},+    {0x91B3, 0x61D7},+    {0x91B4, 0x61D8},+    {0x91B5, 0x61D9},+    {0x91B6, 0x61DA},+    {0x91B7, 0x61DB},+    {0x91B8, 0x61DC},+    {0x91B9, 0x61DD},+    {0x91BA, 0x61DE},+    {0x91BB, 0x61DF},+    {0x91BC, 0x61E0},+    {0x91BD, 0x61E1},+    {0x91BE, 0x61E2},+    {0x91BF, 0x61E3},+    {0x91C0, 0x61E4},+    {0x91C1, 0x61E5},+    {0x91C2, 0x61E7},+    {0x91C3, 0x61E8},+    {0x91C4, 0x61E9},+    {0x91C5, 0x61EA},+    {0x91C6, 0x61EB},+    {0x91C7, 0x61EC},+    {0x91C8, 0x61ED},+    {0x91C9, 0x61EE},+    {0x91CA, 0x61EF},+    {0x91CB, 0x61F0},+    {0x91CC, 0x61F1},+    {0x91CD, 0x61F2},+    {0x91CE, 0x61F3},+    {0x91CF, 0x61F4},+    {0x91D0, 0x61F6},+    {0x91D1, 0x61F7},+    {0x91D2, 0x61F8},+    {0x91D3, 0x61F9},+    {0x91D4, 0x61FA},+    {0x91D5, 0x61FB},+    {0x91D6, 0x61FC},+    {0x91D7, 0x61FD},+    {0x91D8, 0x61FE},+    {0x91D9, 0x6200},+    {0x91DA, 0x6201},+    {0x91DB, 0x6202},+    {0x91DC, 0x6203},+    {0x91DD, 0x6204},+    {0x91DE, 0x6205},+    {0x91DF, 0x6207},+    {0x91E0, 0x6209},+    {0x91E1, 0x6213},+    {0x91E2, 0x6214},+    {0x91E3, 0x6219},+    {0x91E4, 0x621C},+    {0x91E5, 0x621D},+    {0x91E6, 0x621E},+    {0x91E7, 0x6220},+    {0x91E8, 0x6223},+    {0x91E9, 0x6226},+    {0x91EA, 0x6227},+    {0x91EB, 0x6228},+    {0x91EC, 0x6229},+    {0x91ED, 0x622B},+    {0x91EE, 0x622D},+    {0x91EF, 0x622F},+    {0x91F0, 0x6230},+    {0x91F1, 0x6231},+    {0x91F2, 0x6232},+    {0x91F3, 0x6235},+    {0x91F4, 0x6236},+    {0x91F5, 0x6238},+    {0x91F6, 0x6239},+    {0x91F7, 0x623A},+    {0x91F8, 0x623B},+    {0x91F9, 0x623C},+    {0x91FA, 0x6242},+    {0x91FB, 0x6244},+    {0x91FC, 0x6245},+    {0x91FD, 0x6246},+    {0x91FE, 0x624A},+    {0x9240, 0x624F},+    {0x9241, 0x6250},+    {0x9242, 0x6255},+    {0x9243, 0x6256},+    {0x9244, 0x6257},+    {0x9245, 0x6259},+    {0x9246, 0x625A},+    {0x9247, 0x625C},+    {0x9248, 0x625D},+    {0x9249, 0x625E},+    {0x924A, 0x625F},+    {0x924B, 0x6260},+    {0x924C, 0x6261},+    {0x924D, 0x6262},+    {0x924E, 0x6264},+    {0x924F, 0x6265},+    {0x9250, 0x6268},+    {0x9251, 0x6271},+    {0x9252, 0x6272},+    {0x9253, 0x6274},+    {0x9254, 0x6275},+    {0x9255, 0x6277},+    {0x9256, 0x6278},+    {0x9257, 0x627A},+    {0x9258, 0x627B},+    {0x9259, 0x627D},+    {0x925A, 0x6281},+    {0x925B, 0x6282},+    {0x925C, 0x6283},+    {0x925D, 0x6285},+    {0x925E, 0x6286},+    {0x925F, 0x6287},+    {0x9260, 0x6288},+    {0x9261, 0x628B},+    {0x9262, 0x628C},+    {0x9263, 0x628D},+    {0x9264, 0x628E},+    {0x9265, 0x628F},+    {0x9266, 0x6290},+    {0x9267, 0x6294},+    {0x9268, 0x6299},+    {0x9269, 0x629C},+    {0x926A, 0x629D},+    {0x926B, 0x629E},+    {0x926C, 0x62A3},+    {0x926D, 0x62A6},+    {0x926E, 0x62A7},+    {0x926F, 0x62A9},+    {0x9270, 0x62AA},+    {0x9271, 0x62AD},+    {0x9272, 0x62AE},+    {0x9273, 0x62AF},+    {0x9274, 0x62B0},+    {0x9275, 0x62B2},+    {0x9276, 0x62B3},+    {0x9277, 0x62B4},+    {0x9278, 0x62B6},+    {0x9279, 0x62B7},+    {0x927A, 0x62B8},+    {0x927B, 0x62BA},+    {0x927C, 0x62BE},+    {0x927D, 0x62C0},+    {0x927E, 0x62C1},+    {0x9280, 0x62C3},+    {0x9281, 0x62CB},+    {0x9282, 0x62CF},+    {0x9283, 0x62D1},+    {0x9284, 0x62D5},+    {0x9285, 0x62DD},+    {0x9286, 0x62DE},+    {0x9287, 0x62E0},+    {0x9288, 0x62E1},+    {0x9289, 0x62E4},+    {0x928A, 0x62EA},+    {0x928B, 0x62EB},+    {0x928C, 0x62F0},+    {0x928D, 0x62F2},+    {0x928E, 0x62F5},+    {0x928F, 0x62F8},+    {0x9290, 0x62F9},+    {0x9291, 0x62FA},+    {0x9292, 0x62FB},+    {0x9293, 0x6300},+    {0x9294, 0x6303},+    {0x9295, 0x6304},+    {0x9296, 0x6305},+    {0x9297, 0x6306},+    {0x9298, 0x630A},+    {0x9299, 0x630B},+    {0x929A, 0x630C},+    {0x929B, 0x630D},+    {0x929C, 0x630F},+    {0x929D, 0x6310},+    {0x929E, 0x6312},+    {0x929F, 0x6313},+    {0x92A0, 0x6314},+    {0x92A1, 0x6315},+    {0x92A2, 0x6317},+    {0x92A3, 0x6318},+    {0x92A4, 0x6319},+    {0x92A5, 0x631C},+    {0x92A6, 0x6326},+    {0x92A7, 0x6327},+    {0x92A8, 0x6329},+    {0x92A9, 0x632C},+    {0x92AA, 0x632D},+    {0x92AB, 0x632E},+    {0x92AC, 0x6330},+    {0x92AD, 0x6331},+    {0x92AE, 0x6333},+    {0x92AF, 0x6334},+    {0x92B0, 0x6335},+    {0x92B1, 0x6336},+    {0x92B2, 0x6337},+    {0x92B3, 0x6338},+    {0x92B4, 0x633B},+    {0x92B5, 0x633C},+    {0x92B6, 0x633E},+    {0x92B7, 0x633F},+    {0x92B8, 0x6340},+    {0x92B9, 0x6341},+    {0x92BA, 0x6344},+    {0x92BB, 0x6347},+    {0x92BC, 0x6348},+    {0x92BD, 0x634A},+    {0x92BE, 0x6351},+    {0x92BF, 0x6352},+    {0x92C0, 0x6353},+    {0x92C1, 0x6354},+    {0x92C2, 0x6356},+    {0x92C3, 0x6357},+    {0x92C4, 0x6358},+    {0x92C5, 0x6359},+    {0x92C6, 0x635A},+    {0x92C7, 0x635B},+    {0x92C8, 0x635C},+    {0x92C9, 0x635D},+    {0x92CA, 0x6360},+    {0x92CB, 0x6364},+    {0x92CC, 0x6365},+    {0x92CD, 0x6366},+    {0x92CE, 0x6368},+    {0x92CF, 0x636A},+    {0x92D0, 0x636B},+    {0x92D1, 0x636C},+    {0x92D2, 0x636F},+    {0x92D3, 0x6370},+    {0x92D4, 0x6372},+    {0x92D5, 0x6373},+    {0x92D6, 0x6374},+    {0x92D7, 0x6375},+    {0x92D8, 0x6378},+    {0x92D9, 0x6379},+    {0x92DA, 0x637C},+    {0x92DB, 0x637D},+    {0x92DC, 0x637E},+    {0x92DD, 0x637F},+    {0x92DE, 0x6381},+    {0x92DF, 0x6383},+    {0x92E0, 0x6384},+    {0x92E1, 0x6385},+    {0x92E2, 0x6386},+    {0x92E3, 0x638B},+    {0x92E4, 0x638D},+    {0x92E5, 0x6391},+    {0x92E6, 0x6393},+    {0x92E7, 0x6394},+    {0x92E8, 0x6395},+    {0x92E9, 0x6397},+    {0x92EA, 0x6399},+    {0x92EB, 0x639A},+    {0x92EC, 0x639B},+    {0x92ED, 0x639C},+    {0x92EE, 0x639D},+    {0x92EF, 0x639E},+    {0x92F0, 0x639F},+    {0x92F1, 0x63A1},+    {0x92F2, 0x63A4},+    {0x92F3, 0x63A6},+    {0x92F4, 0x63AB},+    {0x92F5, 0x63AF},+    {0x92F6, 0x63B1},+    {0x92F7, 0x63B2},+    {0x92F8, 0x63B5},+    {0x92F9, 0x63B6},+    {0x92FA, 0x63B9},+    {0x92FB, 0x63BB},+    {0x92FC, 0x63BD},+    {0x92FD, 0x63BF},+    {0x92FE, 0x63C0},+    {0x9340, 0x63C1},+    {0x9341, 0x63C2},+    {0x9342, 0x63C3},+    {0x9343, 0x63C5},+    {0x9344, 0x63C7},+    {0x9345, 0x63C8},+    {0x9346, 0x63CA},+    {0x9347, 0x63CB},+    {0x9348, 0x63CC},+    {0x9349, 0x63D1},+    {0x934A, 0x63D3},+    {0x934B, 0x63D4},+    {0x934C, 0x63D5},+    {0x934D, 0x63D7},+    {0x934E, 0x63D8},+    {0x934F, 0x63D9},+    {0x9350, 0x63DA},+    {0x9351, 0x63DB},+    {0x9352, 0x63DC},+    {0x9353, 0x63DD},+    {0x9354, 0x63DF},+    {0x9355, 0x63E2},+    {0x9356, 0x63E4},+    {0x9357, 0x63E5},+    {0x9358, 0x63E6},+    {0x9359, 0x63E7},+    {0x935A, 0x63E8},+    {0x935B, 0x63EB},+    {0x935C, 0x63EC},+    {0x935D, 0x63EE},+    {0x935E, 0x63EF},+    {0x935F, 0x63F0},+    {0x9360, 0x63F1},+    {0x9361, 0x63F3},+    {0x9362, 0x63F5},+    {0x9363, 0x63F7},+    {0x9364, 0x63F9},+    {0x9365, 0x63FA},+    {0x9366, 0x63FB},+    {0x9367, 0x63FC},+    {0x9368, 0x63FE},+    {0x9369, 0x6403},+    {0x936A, 0x6404},+    {0x936B, 0x6406},+    {0x936C, 0x6407},+    {0x936D, 0x6408},+    {0x936E, 0x6409},+    {0x936F, 0x640A},+    {0x9370, 0x640D},+    {0x9371, 0x640E},+    {0x9372, 0x6411},+    {0x9373, 0x6412},+    {0x9374, 0x6415},+    {0x9375, 0x6416},+    {0x9376, 0x6417},+    {0x9377, 0x6418},+    {0x9378, 0x6419},+    {0x9379, 0x641A},+    {0x937A, 0x641D},+    {0x937B, 0x641F},+    {0x937C, 0x6422},+    {0x937D, 0x6423},+    {0x937E, 0x6424},+    {0x9380, 0x6425},+    {0x9381, 0x6427},+    {0x9382, 0x6428},+    {0x9383, 0x6429},+    {0x9384, 0x642B},+    {0x9385, 0x642E},+    {0x9386, 0x642F},+    {0x9387, 0x6430},+    {0x9388, 0x6431},+    {0x9389, 0x6432},+    {0x938A, 0x6433},+    {0x938B, 0x6435},+    {0x938C, 0x6436},+    {0x938D, 0x6437},+    {0x938E, 0x6438},+    {0x938F, 0x6439},+    {0x9390, 0x643B},+    {0x9391, 0x643C},+    {0x9392, 0x643E},+    {0x9393, 0x6440},+    {0x9394, 0x6442},+    {0x9395, 0x6443},+    {0x9396, 0x6449},+    {0x9397, 0x644B},+    {0x9398, 0x644C},+    {0x9399, 0x644D},+    {0x939A, 0x644E},+    {0x939B, 0x644F},+    {0x939C, 0x6450},+    {0x939D, 0x6451},+    {0x939E, 0x6453},+    {0x939F, 0x6455},+    {0x93A0, 0x6456},+    {0x93A1, 0x6457},+    {0x93A2, 0x6459},+    {0x93A3, 0x645A},+    {0x93A4, 0x645B},+    {0x93A5, 0x645C},+    {0x93A6, 0x645D},+    {0x93A7, 0x645F},+    {0x93A8, 0x6460},+    {0x93A9, 0x6461},+    {0x93AA, 0x6462},+    {0x93AB, 0x6463},+    {0x93AC, 0x6464},+    {0x93AD, 0x6465},+    {0x93AE, 0x6466},+    {0x93AF, 0x6468},+    {0x93B0, 0x646A},+    {0x93B1, 0x646B},+    {0x93B2, 0x646C},+    {0x93B3, 0x646E},+    {0x93B4, 0x646F},+    {0x93B5, 0x6470},+    {0x93B6, 0x6471},+    {0x93B7, 0x6472},+    {0x93B8, 0x6473},+    {0x93B9, 0x6474},+    {0x93BA, 0x6475},+    {0x93BB, 0x6476},+    {0x93BC, 0x6477},+    {0x93BD, 0x647B},+    {0x93BE, 0x647C},+    {0x93BF, 0x647D},+    {0x93C0, 0x647E},+    {0x93C1, 0x647F},+    {0x93C2, 0x6480},+    {0x93C3, 0x6481},+    {0x93C4, 0x6483},+    {0x93C5, 0x6486},+    {0x93C6, 0x6488},+    {0x93C7, 0x6489},+    {0x93C8, 0x648A},+    {0x93C9, 0x648B},+    {0x93CA, 0x648C},+    {0x93CB, 0x648D},+    {0x93CC, 0x648E},+    {0x93CD, 0x648F},+    {0x93CE, 0x6490},+    {0x93CF, 0x6493},+    {0x93D0, 0x6494},+    {0x93D1, 0x6497},+    {0x93D2, 0x6498},+    {0x93D3, 0x649A},+    {0x93D4, 0x649B},+    {0x93D5, 0x649C},+    {0x93D6, 0x649D},+    {0x93D7, 0x649F},+    {0x93D8, 0x64A0},+    {0x93D9, 0x64A1},+    {0x93DA, 0x64A2},+    {0x93DB, 0x64A3},+    {0x93DC, 0x64A5},+    {0x93DD, 0x64A6},+    {0x93DE, 0x64A7},+    {0x93DF, 0x64A8},+    {0x93E0, 0x64AA},+    {0x93E1, 0x64AB},+    {0x93E2, 0x64AF},+    {0x93E3, 0x64B1},+    {0x93E4, 0x64B2},+    {0x93E5, 0x64B3},+    {0x93E6, 0x64B4},+    {0x93E7, 0x64B6},+    {0x93E8, 0x64B9},+    {0x93E9, 0x64BB},+    {0x93EA, 0x64BD},+    {0x93EB, 0x64BE},+    {0x93EC, 0x64BF},+    {0x93ED, 0x64C1},+    {0x93EE, 0x64C3},+    {0x93EF, 0x64C4},+    {0x93F0, 0x64C6},+    {0x93F1, 0x64C7},+    {0x93F2, 0x64C8},+    {0x93F3, 0x64C9},+    {0x93F4, 0x64CA},+    {0x93F5, 0x64CB},+    {0x93F6, 0x64CC},+    {0x93F7, 0x64CF},+    {0x93F8, 0x64D1},+    {0x93F9, 0x64D3},+    {0x93FA, 0x64D4},+    {0x93FB, 0x64D5},+    {0x93FC, 0x64D6},+    {0x93FD, 0x64D9},+    {0x93FE, 0x64DA},+    {0x9440, 0x64DB},+    {0x9441, 0x64DC},+    {0x9442, 0x64DD},+    {0x9443, 0x64DF},+    {0x9444, 0x64E0},+    {0x9445, 0x64E1},+    {0x9446, 0x64E3},+    {0x9447, 0x64E5},+    {0x9448, 0x64E7},+    {0x9449, 0x64E8},+    {0x944A, 0x64E9},+    {0x944B, 0x64EA},+    {0x944C, 0x64EB},+    {0x944D, 0x64EC},+    {0x944E, 0x64ED},+    {0x944F, 0x64EE},+    {0x9450, 0x64EF},+    {0x9451, 0x64F0},+    {0x9452, 0x64F1},+    {0x9453, 0x64F2},+    {0x9454, 0x64F3},+    {0x9455, 0x64F4},+    {0x9456, 0x64F5},+    {0x9457, 0x64F6},+    {0x9458, 0x64F7},+    {0x9459, 0x64F8},+    {0x945A, 0x64F9},+    {0x945B, 0x64FA},+    {0x945C, 0x64FB},+    {0x945D, 0x64FC},+    {0x945E, 0x64FD},+    {0x945F, 0x64FE},+    {0x9460, 0x64FF},+    {0x9461, 0x6501},+    {0x9462, 0x6502},+    {0x9463, 0x6503},+    {0x9464, 0x6504},+    {0x9465, 0x6505},+    {0x9466, 0x6506},+    {0x9467, 0x6507},+    {0x9468, 0x6508},+    {0x9469, 0x650A},+    {0x946A, 0x650B},+    {0x946B, 0x650C},+    {0x946C, 0x650D},+    {0x946D, 0x650E},+    {0x946E, 0x650F},+    {0x946F, 0x6510},+    {0x9470, 0x6511},+    {0x9471, 0x6513},+    {0x9472, 0x6514},+    {0x9473, 0x6515},+    {0x9474, 0x6516},+    {0x9475, 0x6517},+    {0x9476, 0x6519},+    {0x9477, 0x651A},+    {0x9478, 0x651B},+    {0x9479, 0x651C},+    {0x947A, 0x651D},+    {0x947B, 0x651E},+    {0x947C, 0x651F},+    {0x947D, 0x6520},+    {0x947E, 0x6521},+    {0x9480, 0x6522},+    {0x9481, 0x6523},+    {0x9482, 0x6524},+    {0x9483, 0x6526},+    {0x9484, 0x6527},+    {0x9485, 0x6528},+    {0x9486, 0x6529},+    {0x9487, 0x652A},+    {0x9488, 0x652C},+    {0x9489, 0x652D},+    {0x948A, 0x6530},+    {0x948B, 0x6531},+    {0x948C, 0x6532},+    {0x948D, 0x6533},+    {0x948E, 0x6537},+    {0x948F, 0x653A},+    {0x9490, 0x653C},+    {0x9491, 0x653D},+    {0x9492, 0x6540},+    {0x9493, 0x6541},+    {0x9494, 0x6542},+    {0x9495, 0x6543},+    {0x9496, 0x6544},+    {0x9497, 0x6546},+    {0x9498, 0x6547},+    {0x9499, 0x654A},+    {0x949A, 0x654B},+    {0x949B, 0x654D},+    {0x949C, 0x654E},+    {0x949D, 0x6550},+    {0x949E, 0x6552},+    {0x949F, 0x6553},+    {0x94A0, 0x6554},+    {0x94A1, 0x6557},+    {0x94A2, 0x6558},+    {0x94A3, 0x655A},+    {0x94A4, 0x655C},+    {0x94A5, 0x655F},+    {0x94A6, 0x6560},+    {0x94A7, 0x6561},+    {0x94A8, 0x6564},+    {0x94A9, 0x6565},+    {0x94AA, 0x6567},+    {0x94AB, 0x6568},+    {0x94AC, 0x6569},+    {0x94AD, 0x656A},+    {0x94AE, 0x656D},+    {0x94AF, 0x656E},+    {0x94B0, 0x656F},+    {0x94B1, 0x6571},+    {0x94B2, 0x6573},+    {0x94B3, 0x6575},+    {0x94B4, 0x6576},+    {0x94B5, 0x6578},+    {0x94B6, 0x6579},+    {0x94B7, 0x657A},+    {0x94B8, 0x657B},+    {0x94B9, 0x657C},+    {0x94BA, 0x657D},+    {0x94BB, 0x657E},+    {0x94BC, 0x657F},+    {0x94BD, 0x6580},+    {0x94BE, 0x6581},+    {0x94BF, 0x6582},+    {0x94C0, 0x6583},+    {0x94C1, 0x6584},+    {0x94C2, 0x6585},+    {0x94C3, 0x6586},+    {0x94C4, 0x6588},+    {0x94C5, 0x6589},+    {0x94C6, 0x658A},+    {0x94C7, 0x658D},+    {0x94C8, 0x658E},+    {0x94C9, 0x658F},+    {0x94CA, 0x6592},+    {0x94CB, 0x6594},+    {0x94CC, 0x6595},+    {0x94CD, 0x6596},+    {0x94CE, 0x6598},+    {0x94CF, 0x659A},+    {0x94D0, 0x659D},+    {0x94D1, 0x659E},+    {0x94D2, 0x65A0},+    {0x94D3, 0x65A2},+    {0x94D4, 0x65A3},+    {0x94D5, 0x65A6},+    {0x94D6, 0x65A8},+    {0x94D7, 0x65AA},+    {0x94D8, 0x65AC},+    {0x94D9, 0x65AE},+    {0x94DA, 0x65B1},+    {0x94DB, 0x65B2},+    {0x94DC, 0x65B3},+    {0x94DD, 0x65B4},+    {0x94DE, 0x65B5},+    {0x94DF, 0x65B6},+    {0x94E0, 0x65B7},+    {0x94E1, 0x65B8},+    {0x94E2, 0x65BA},+    {0x94E3, 0x65BB},+    {0x94E4, 0x65BE},+    {0x94E5, 0x65BF},+    {0x94E6, 0x65C0},+    {0x94E7, 0x65C2},+    {0x94E8, 0x65C7},+    {0x94E9, 0x65C8},+    {0x94EA, 0x65C9},+    {0x94EB, 0x65CA},+    {0x94EC, 0x65CD},+    {0x94ED, 0x65D0},+    {0x94EE, 0x65D1},+    {0x94EF, 0x65D3},+    {0x94F0, 0x65D4},+    {0x94F1, 0x65D5},+    {0x94F2, 0x65D8},+    {0x94F3, 0x65D9},+    {0x94F4, 0x65DA},+    {0x94F5, 0x65DB},+    {0x94F6, 0x65DC},+    {0x94F7, 0x65DD},+    {0x94F8, 0x65DE},+    {0x94F9, 0x65DF},+    {0x94FA, 0x65E1},+    {0x94FB, 0x65E3},+    {0x94FC, 0x65E4},+    {0x94FD, 0x65EA},+    {0x94FE, 0x65EB},+    {0x9540, 0x65F2},+    {0x9541, 0x65F3},+    {0x9542, 0x65F4},+    {0x9543, 0x65F5},+    {0x9544, 0x65F8},+    {0x9545, 0x65F9},+    {0x9546, 0x65FB},+    {0x9547, 0x65FC},+    {0x9548, 0x65FD},+    {0x9549, 0x65FE},+    {0x954A, 0x65FF},+    {0x954B, 0x6601},+    {0x954C, 0x6604},+    {0x954D, 0x6605},+    {0x954E, 0x6607},+    {0x954F, 0x6608},+    {0x9550, 0x6609},+    {0x9551, 0x660B},+    {0x9552, 0x660D},+    {0x9553, 0x6610},+    {0x9554, 0x6611},+    {0x9555, 0x6612},+    {0x9556, 0x6616},+    {0x9557, 0x6617},+    {0x9558, 0x6618},+    {0x9559, 0x661A},+    {0x955A, 0x661B},+    {0x955B, 0x661C},+    {0x955C, 0x661E},+    {0x955D, 0x6621},+    {0x955E, 0x6622},+    {0x955F, 0x6623},+    {0x9560, 0x6624},+    {0x9561, 0x6626},+    {0x9562, 0x6629},+    {0x9563, 0x662A},+    {0x9564, 0x662B},+    {0x9565, 0x662C},+    {0x9566, 0x662E},+    {0x9567, 0x6630},+    {0x9568, 0x6632},+    {0x9569, 0x6633},+    {0x956A, 0x6637},+    {0x956B, 0x6638},+    {0x956C, 0x6639},+    {0x956D, 0x663A},+    {0x956E, 0x663B},+    {0x956F, 0x663D},+    {0x9570, 0x663F},+    {0x9571, 0x6640},+    {0x9572, 0x6642},+    {0x9573, 0x6644},+    {0x9574, 0x6645},+    {0x9575, 0x6646},+    {0x9576, 0x6647},+    {0x9577, 0x6648},+    {0x9578, 0x6649},+    {0x9579, 0x664A},+    {0x957A, 0x664D},+    {0x957B, 0x664E},+    {0x957C, 0x6650},+    {0x957D, 0x6651},+    {0x957E, 0x6658},+    {0x9580, 0x6659},+    {0x9581, 0x665B},+    {0x9582, 0x665C},+    {0x9583, 0x665D},+    {0x9584, 0x665E},+    {0x9585, 0x6660},+    {0x9586, 0x6662},+    {0x9587, 0x6663},+    {0x9588, 0x6665},+    {0x9589, 0x6667},+    {0x958A, 0x6669},+    {0x958B, 0x666A},+    {0x958C, 0x666B},+    {0x958D, 0x666C},+    {0x958E, 0x666D},+    {0x958F, 0x6671},+    {0x9590, 0x6672},+    {0x9591, 0x6673},+    {0x9592, 0x6675},+    {0x9593, 0x6678},+    {0x9594, 0x6679},+    {0x9595, 0x667B},+    {0x9596, 0x667C},+    {0x9597, 0x667D},+    {0x9598, 0x667F},+    {0x9599, 0x6680},+    {0x959A, 0x6681},+    {0x959B, 0x6683},+    {0x959C, 0x6685},+    {0x959D, 0x6686},+    {0x959E, 0x6688},+    {0x959F, 0x6689},+    {0x95A0, 0x668A},+    {0x95A1, 0x668B},+    {0x95A2, 0x668D},+    {0x95A3, 0x668E},+    {0x95A4, 0x668F},+    {0x95A5, 0x6690},+    {0x95A6, 0x6692},+    {0x95A7, 0x6693},+    {0x95A8, 0x6694},+    {0x95A9, 0x6695},+    {0x95AA, 0x6698},+    {0x95AB, 0x6699},+    {0x95AC, 0x669A},+    {0x95AD, 0x669B},+    {0x95AE, 0x669C},+    {0x95AF, 0x669E},+    {0x95B0, 0x669F},+    {0x95B1, 0x66A0},+    {0x95B2, 0x66A1},+    {0x95B3, 0x66A2},+    {0x95B4, 0x66A3},+    {0x95B5, 0x66A4},+    {0x95B6, 0x66A5},+    {0x95B7, 0x66A6},+    {0x95B8, 0x66A9},+    {0x95B9, 0x66AA},+    {0x95BA, 0x66AB},+    {0x95BB, 0x66AC},+    {0x95BC, 0x66AD},+    {0x95BD, 0x66AF},+    {0x95BE, 0x66B0},+    {0x95BF, 0x66B1},+    {0x95C0, 0x66B2},+    {0x95C1, 0x66B3},+    {0x95C2, 0x66B5},+    {0x95C3, 0x66B6},+    {0x95C4, 0x66B7},+    {0x95C5, 0x66B8},+    {0x95C6, 0x66BA},+    {0x95C7, 0x66BB},+    {0x95C8, 0x66BC},+    {0x95C9, 0x66BD},+    {0x95CA, 0x66BF},+    {0x95CB, 0x66C0},+    {0x95CC, 0x66C1},+    {0x95CD, 0x66C2},+    {0x95CE, 0x66C3},+    {0x95CF, 0x66C4},+    {0x95D0, 0x66C5},+    {0x95D1, 0x66C6},+    {0x95D2, 0x66C7},+    {0x95D3, 0x66C8},+    {0x95D4, 0x66C9},+    {0x95D5, 0x66CA},+    {0x95D6, 0x66CB},+    {0x95D7, 0x66CC},+    {0x95D8, 0x66CD},+    {0x95D9, 0x66CE},+    {0x95DA, 0x66CF},+    {0x95DB, 0x66D0},+    {0x95DC, 0x66D1},+    {0x95DD, 0x66D2},+    {0x95DE, 0x66D3},+    {0x95DF, 0x66D4},+    {0x95E0, 0x66D5},+    {0x95E1, 0x66D6},+    {0x95E2, 0x66D7},+    {0x95E3, 0x66D8},+    {0x95E4, 0x66DA},+    {0x95E5, 0x66DE},+    {0x95E6, 0x66DF},+    {0x95E7, 0x66E0},+    {0x95E8, 0x66E1},+    {0x95E9, 0x66E2},+    {0x95EA, 0x66E3},+    {0x95EB, 0x66E4},+    {0x95EC, 0x66E5},+    {0x95ED, 0x66E7},+    {0x95EE, 0x66E8},+    {0x95EF, 0x66EA},+    {0x95F0, 0x66EB},+    {0x95F1, 0x66EC},+    {0x95F2, 0x66ED},+    {0x95F3, 0x66EE},+    {0x95F4, 0x66EF},+    {0x95F5, 0x66F1},+    {0x95F6, 0x66F5},+    {0x95F7, 0x66F6},+    {0x95F8, 0x66F8},+    {0x95F9, 0x66FA},+    {0x95FA, 0x66FB},+    {0x95FB, 0x66FD},+    {0x95FC, 0x6701},+    {0x95FD, 0x6702},+    {0x95FE, 0x6703},+    {0x9640, 0x6704},+    {0x9641, 0x6705},+    {0x9642, 0x6706},+    {0x9643, 0x6707},+    {0x9644, 0x670C},+    {0x9645, 0x670E},+    {0x9646, 0x670F},+    {0x9647, 0x6711},+    {0x9648, 0x6712},+    {0x9649, 0x6713},+    {0x964A, 0x6716},+    {0x964B, 0x6718},+    {0x964C, 0x6719},+    {0x964D, 0x671A},+    {0x964E, 0x671C},+    {0x964F, 0x671E},+    {0x9650, 0x6720},+    {0x9651, 0x6721},+    {0x9652, 0x6722},+    {0x9653, 0x6723},+    {0x9654, 0x6724},+    {0x9655, 0x6725},+    {0x9656, 0x6727},+    {0x9657, 0x6729},+    {0x9658, 0x672E},+    {0x9659, 0x6730},+    {0x965A, 0x6732},+    {0x965B, 0x6733},+    {0x965C, 0x6736},+    {0x965D, 0x6737},+    {0x965E, 0x6738},+    {0x965F, 0x6739},+    {0x9660, 0x673B},+    {0x9661, 0x673C},+    {0x9662, 0x673E},+    {0x9663, 0x673F},+    {0x9664, 0x6741},+    {0x9665, 0x6744},+    {0x9666, 0x6745},+    {0x9667, 0x6747},+    {0x9668, 0x674A},+    {0x9669, 0x674B},+    {0x966A, 0x674D},+    {0x966B, 0x6752},+    {0x966C, 0x6754},+    {0x966D, 0x6755},+    {0x966E, 0x6757},+    {0x966F, 0x6758},+    {0x9670, 0x6759},+    {0x9671, 0x675A},+    {0x9672, 0x675B},+    {0x9673, 0x675D},+    {0x9674, 0x6762},+    {0x9675, 0x6763},+    {0x9676, 0x6764},+    {0x9677, 0x6766},+    {0x9678, 0x6767},+    {0x9679, 0x676B},+    {0x967A, 0x676C},+    {0x967B, 0x676E},+    {0x967C, 0x6771},+    {0x967D, 0x6774},+    {0x967E, 0x6776},+    {0x9680, 0x6778},+    {0x9681, 0x6779},+    {0x9682, 0x677A},+    {0x9683, 0x677B},+    {0x9684, 0x677D},+    {0x9685, 0x6780},+    {0x9686, 0x6782},+    {0x9687, 0x6783},+    {0x9688, 0x6785},+    {0x9689, 0x6786},+    {0x968A, 0x6788},+    {0x968B, 0x678A},+    {0x968C, 0x678C},+    {0x968D, 0x678D},+    {0x968E, 0x678E},+    {0x968F, 0x678F},+    {0x9690, 0x6791},+    {0x9691, 0x6792},+    {0x9692, 0x6793},+    {0x9693, 0x6794},+    {0x9694, 0x6796},+    {0x9695, 0x6799},+    {0x9696, 0x679B},+    {0x9697, 0x679F},+    {0x9698, 0x67A0},+    {0x9699, 0x67A1},+    {0x969A, 0x67A4},+    {0x969B, 0x67A6},+    {0x969C, 0x67A9},+    {0x969D, 0x67AC},+    {0x969E, 0x67AE},+    {0x969F, 0x67B1},+    {0x96A0, 0x67B2},+    {0x96A1, 0x67B4},+    {0x96A2, 0x67B9},+    {0x96A3, 0x67BA},+    {0x96A4, 0x67BB},+    {0x96A5, 0x67BC},+    {0x96A6, 0x67BD},+    {0x96A7, 0x67BE},+    {0x96A8, 0x67BF},+    {0x96A9, 0x67C0},+    {0x96AA, 0x67C2},+    {0x96AB, 0x67C5},+    {0x96AC, 0x67C6},+    {0x96AD, 0x67C7},+    {0x96AE, 0x67C8},+    {0x96AF, 0x67C9},+    {0x96B0, 0x67CA},+    {0x96B1, 0x67CB},+    {0x96B2, 0x67CC},+    {0x96B3, 0x67CD},+    {0x96B4, 0x67CE},+    {0x96B5, 0x67D5},+    {0x96B6, 0x67D6},+    {0x96B7, 0x67D7},+    {0x96B8, 0x67DB},+    {0x96B9, 0x67DF},+    {0x96BA, 0x67E1},+    {0x96BB, 0x67E3},+    {0x96BC, 0x67E4},+    {0x96BD, 0x67E6},+    {0x96BE, 0x67E7},+    {0x96BF, 0x67E8},+    {0x96C0, 0x67EA},+    {0x96C1, 0x67EB},+    {0x96C2, 0x67ED},+    {0x96C3, 0x67EE},+    {0x96C4, 0x67F2},+    {0x96C5, 0x67F5},+    {0x96C6, 0x67F6},+    {0x96C7, 0x67F7},+    {0x96C8, 0x67F8},+    {0x96C9, 0x67F9},+    {0x96CA, 0x67FA},+    {0x96CB, 0x67FB},+    {0x96CC, 0x67FC},+    {0x96CD, 0x67FE},+    {0x96CE, 0x6801},+    {0x96CF, 0x6802},+    {0x96D0, 0x6803},+    {0x96D1, 0x6804},+    {0x96D2, 0x6806},+    {0x96D3, 0x680D},+    {0x96D4, 0x6810},+    {0x96D5, 0x6812},+    {0x96D6, 0x6814},+    {0x96D7, 0x6815},+    {0x96D8, 0x6818},+    {0x96D9, 0x6819},+    {0x96DA, 0x681A},+    {0x96DB, 0x681B},+    {0x96DC, 0x681C},+    {0x96DD, 0x681E},+    {0x96DE, 0x681F},+    {0x96DF, 0x6820},+    {0x96E0, 0x6822},+    {0x96E1, 0x6823},+    {0x96E2, 0x6824},+    {0x96E3, 0x6825},+    {0x96E4, 0x6826},+    {0x96E5, 0x6827},+    {0x96E6, 0x6828},+    {0x96E7, 0x682B},+    {0x96E8, 0x682C},+    {0x96E9, 0x682D},+    {0x96EA, 0x682E},+    {0x96EB, 0x682F},+    {0x96EC, 0x6830},+    {0x96ED, 0x6831},+    {0x96EE, 0x6834},+    {0x96EF, 0x6835},+    {0x96F0, 0x6836},+    {0x96F1, 0x683A},+    {0x96F2, 0x683B},+    {0x96F3, 0x683F},+    {0x96F4, 0x6847},+    {0x96F5, 0x684B},+    {0x96F6, 0x684D},+    {0x96F7, 0x684F},+    {0x96F8, 0x6852},+    {0x96F9, 0x6856},+    {0x96FA, 0x6857},+    {0x96FB, 0x6858},+    {0x96FC, 0x6859},+    {0x96FD, 0x685A},+    {0x96FE, 0x685B},+    {0x9740, 0x685C},+    {0x9741, 0x685D},+    {0x9742, 0x685E},+    {0x9743, 0x685F},+    {0x9744, 0x686A},+    {0x9745, 0x686C},+    {0x9746, 0x686D},+    {0x9747, 0x686E},+    {0x9748, 0x686F},+    {0x9749, 0x6870},+    {0x974A, 0x6871},+    {0x974B, 0x6872},+    {0x974C, 0x6873},+    {0x974D, 0x6875},+    {0x974E, 0x6878},+    {0x974F, 0x6879},+    {0x9750, 0x687A},+    {0x9751, 0x687B},+    {0x9752, 0x687C},+    {0x9753, 0x687D},+    {0x9754, 0x687E},+    {0x9755, 0x687F},+    {0x9756, 0x6880},+    {0x9757, 0x6882},+    {0x9758, 0x6884},+    {0x9759, 0x6887},+    {0x975A, 0x6888},+    {0x975B, 0x6889},+    {0x975C, 0x688A},+    {0x975D, 0x688B},+    {0x975E, 0x688C},+    {0x975F, 0x688D},+    {0x9760, 0x688E},+    {0x9761, 0x6890},+    {0x9762, 0x6891},+    {0x9763, 0x6892},+    {0x9764, 0x6894},+    {0x9765, 0x6895},+    {0x9766, 0x6896},+    {0x9767, 0x6898},+    {0x9768, 0x6899},+    {0x9769, 0x689A},+    {0x976A, 0x689B},+    {0x976B, 0x689C},+    {0x976C, 0x689D},+    {0x976D, 0x689E},+    {0x976E, 0x689F},+    {0x976F, 0x68A0},+    {0x9770, 0x68A1},+    {0x9771, 0x68A3},+    {0x9772, 0x68A4},+    {0x9773, 0x68A5},+    {0x9774, 0x68A9},+    {0x9775, 0x68AA},+    {0x9776, 0x68AB},+    {0x9777, 0x68AC},+    {0x9778, 0x68AE},+    {0x9779, 0x68B1},+    {0x977A, 0x68B2},+    {0x977B, 0x68B4},+    {0x977C, 0x68B6},+    {0x977D, 0x68B7},+    {0x977E, 0x68B8},+    {0x9780, 0x68B9},+    {0x9781, 0x68BA},+    {0x9782, 0x68BB},+    {0x9783, 0x68BC},+    {0x9784, 0x68BD},+    {0x9785, 0x68BE},+    {0x9786, 0x68BF},+    {0x9787, 0x68C1},+    {0x9788, 0x68C3},+    {0x9789, 0x68C4},+    {0x978A, 0x68C5},+    {0x978B, 0x68C6},+    {0x978C, 0x68C7},+    {0x978D, 0x68C8},+    {0x978E, 0x68CA},+    {0x978F, 0x68CC},+    {0x9790, 0x68CE},+    {0x9791, 0x68CF},+    {0x9792, 0x68D0},+    {0x9793, 0x68D1},+    {0x9794, 0x68D3},+    {0x9795, 0x68D4},+    {0x9796, 0x68D6},+    {0x9797, 0x68D7},+    {0x9798, 0x68D9},+    {0x9799, 0x68DB},+    {0x979A, 0x68DC},+    {0x979B, 0x68DD},+    {0x979C, 0x68DE},+    {0x979D, 0x68DF},+    {0x979E, 0x68E1},+    {0x979F, 0x68E2},+    {0x97A0, 0x68E4},+    {0x97A1, 0x68E5},+    {0x97A2, 0x68E6},+    {0x97A3, 0x68E7},+    {0x97A4, 0x68E8},+    {0x97A5, 0x68E9},+    {0x97A6, 0x68EA},+    {0x97A7, 0x68EB},+    {0x97A8, 0x68EC},+    {0x97A9, 0x68ED},+    {0x97AA, 0x68EF},+    {0x97AB, 0x68F2},+    {0x97AC, 0x68F3},+    {0x97AD, 0x68F4},+    {0x97AE, 0x68F6},+    {0x97AF, 0x68F7},+    {0x97B0, 0x68F8},+    {0x97B1, 0x68FB},+    {0x97B2, 0x68FD},+    {0x97B3, 0x68FE},+    {0x97B4, 0x68FF},+    {0x97B5, 0x6900},+    {0x97B6, 0x6902},+    {0x97B7, 0x6903},+    {0x97B8, 0x6904},+    {0x97B9, 0x6906},+    {0x97BA, 0x6907},+    {0x97BB, 0x6908},+    {0x97BC, 0x6909},+    {0x97BD, 0x690A},+    {0x97BE, 0x690C},+    {0x97BF, 0x690F},+    {0x97C0, 0x6911},+    {0x97C1, 0x6913},+    {0x97C2, 0x6914},+    {0x97C3, 0x6915},+    {0x97C4, 0x6916},+    {0x97C5, 0x6917},+    {0x97C6, 0x6918},+    {0x97C7, 0x6919},+    {0x97C8, 0x691A},+    {0x97C9, 0x691B},+    {0x97CA, 0x691C},+    {0x97CB, 0x691D},+    {0x97CC, 0x691E},+    {0x97CD, 0x6921},+    {0x97CE, 0x6922},+    {0x97CF, 0x6923},+    {0x97D0, 0x6925},+    {0x97D1, 0x6926},+    {0x97D2, 0x6927},+    {0x97D3, 0x6928},+    {0x97D4, 0x6929},+    {0x97D5, 0x692A},+    {0x97D6, 0x692B},+    {0x97D7, 0x692C},+    {0x97D8, 0x692E},+    {0x97D9, 0x692F},+    {0x97DA, 0x6931},+    {0x97DB, 0x6932},+    {0x97DC, 0x6933},+    {0x97DD, 0x6935},+    {0x97DE, 0x6936},+    {0x97DF, 0x6937},+    {0x97E0, 0x6938},+    {0x97E1, 0x693A},+    {0x97E2, 0x693B},+    {0x97E3, 0x693C},+    {0x97E4, 0x693E},+    {0x97E5, 0x6940},+    {0x97E6, 0x6941},+    {0x97E7, 0x6943},+    {0x97E8, 0x6944},+    {0x97E9, 0x6945},+    {0x97EA, 0x6946},+    {0x97EB, 0x6947},+    {0x97EC, 0x6948},+    {0x97ED, 0x6949},+    {0x97EE, 0x694A},+    {0x97EF, 0x694B},+    {0x97F0, 0x694C},+    {0x97F1, 0x694D},+    {0x97F2, 0x694E},+    {0x97F3, 0x694F},+    {0x97F4, 0x6950},+    {0x97F5, 0x6951},+    {0x97F6, 0x6952},+    {0x97F7, 0x6953},+    {0x97F8, 0x6955},+    {0x97F9, 0x6956},+    {0x97FA, 0x6958},+    {0x97FB, 0x6959},+    {0x97FC, 0x695B},+    {0x97FD, 0x695C},+    {0x97FE, 0x695F},+    {0x9840, 0x6961},+    {0x9841, 0x6962},+    {0x9842, 0x6964},+    {0x9843, 0x6965},+    {0x9844, 0x6967},+    {0x9845, 0x6968},+    {0x9846, 0x6969},+    {0x9847, 0x696A},+    {0x9848, 0x696C},+    {0x9849, 0x696D},+    {0x984A, 0x696F},+    {0x984B, 0x6970},+    {0x984C, 0x6972},+    {0x984D, 0x6973},+    {0x984E, 0x6974},+    {0x984F, 0x6975},+    {0x9850, 0x6976},+    {0x9851, 0x697A},+    {0x9852, 0x697B},+    {0x9853, 0x697D},+    {0x9854, 0x697E},+    {0x9855, 0x697F},+    {0x9856, 0x6981},+    {0x9857, 0x6983},+    {0x9858, 0x6985},+    {0x9859, 0x698A},+    {0x985A, 0x698B},+    {0x985B, 0x698C},+    {0x985C, 0x698E},+    {0x985D, 0x698F},+    {0x985E, 0x6990},+    {0x985F, 0x6991},+    {0x9860, 0x6992},+    {0x9861, 0x6993},+    {0x9862, 0x6996},+    {0x9863, 0x6997},+    {0x9864, 0x6999},+    {0x9865, 0x699A},+    {0x9866, 0x699D},+    {0x9867, 0x699E},+    {0x9868, 0x699F},+    {0x9869, 0x69A0},+    {0x986A, 0x69A1},+    {0x986B, 0x69A2},+    {0x986C, 0x69A3},+    {0x986D, 0x69A4},+    {0x986E, 0x69A5},+    {0x986F, 0x69A6},+    {0x9870, 0x69A9},+    {0x9871, 0x69AA},+    {0x9872, 0x69AC},+    {0x9873, 0x69AE},+    {0x9874, 0x69AF},+    {0x9875, 0x69B0},+    {0x9876, 0x69B2},+    {0x9877, 0x69B3},+    {0x9878, 0x69B5},+    {0x9879, 0x69B6},+    {0x987A, 0x69B8},+    {0x987B, 0x69B9},+    {0x987C, 0x69BA},+    {0x987D, 0x69BC},+    {0x987E, 0x69BD},+    {0x9880, 0x69BE},+    {0x9881, 0x69BF},+    {0x9882, 0x69C0},+    {0x9883, 0x69C2},+    {0x9884, 0x69C3},+    {0x9885, 0x69C4},+    {0x9886, 0x69C5},+    {0x9887, 0x69C6},+    {0x9888, 0x69C7},+    {0x9889, 0x69C8},+    {0x988A, 0x69C9},+    {0x988B, 0x69CB},+    {0x988C, 0x69CD},+    {0x988D, 0x69CF},+    {0x988E, 0x69D1},+    {0x988F, 0x69D2},+    {0x9890, 0x69D3},+    {0x9891, 0x69D5},+    {0x9892, 0x69D6},+    {0x9893, 0x69D7},+    {0x9894, 0x69D8},+    {0x9895, 0x69D9},+    {0x9896, 0x69DA},+    {0x9897, 0x69DC},+    {0x9898, 0x69DD},+    {0x9899, 0x69DE},+    {0x989A, 0x69E1},+    {0x989B, 0x69E2},+    {0x989C, 0x69E3},+    {0x989D, 0x69E4},+    {0x989E, 0x69E5},+    {0x989F, 0x69E6},+    {0x98A0, 0x69E7},+    {0x98A1, 0x69E8},+    {0x98A2, 0x69E9},+    {0x98A3, 0x69EA},+    {0x98A4, 0x69EB},+    {0x98A5, 0x69EC},+    {0x98A6, 0x69EE},+    {0x98A7, 0x69EF},+    {0x98A8, 0x69F0},+    {0x98A9, 0x69F1},+    {0x98AA, 0x69F3},+    {0x98AB, 0x69F4},+    {0x98AC, 0x69F5},+    {0x98AD, 0x69F6},+    {0x98AE, 0x69F7},+    {0x98AF, 0x69F8},+    {0x98B0, 0x69F9},+    {0x98B1, 0x69FA},+    {0x98B2, 0x69FB},+    {0x98B3, 0x69FC},+    {0x98B4, 0x69FE},+    {0x98B5, 0x6A00},+    {0x98B6, 0x6A01},+    {0x98B7, 0x6A02},+    {0x98B8, 0x6A03},+    {0x98B9, 0x6A04},+    {0x98BA, 0x6A05},+    {0x98BB, 0x6A06},+    {0x98BC, 0x6A07},+    {0x98BD, 0x6A08},+    {0x98BE, 0x6A09},+    {0x98BF, 0x6A0B},+    {0x98C0, 0x6A0C},+    {0x98C1, 0x6A0D},+    {0x98C2, 0x6A0E},+    {0x98C3, 0x6A0F},+    {0x98C4, 0x6A10},+    {0x98C5, 0x6A11},+    {0x98C6, 0x6A12},+    {0x98C7, 0x6A13},+    {0x98C8, 0x6A14},+    {0x98C9, 0x6A15},+    {0x98CA, 0x6A16},+    {0x98CB, 0x6A19},+    {0x98CC, 0x6A1A},+    {0x98CD, 0x6A1B},+    {0x98CE, 0x6A1C},+    {0x98CF, 0x6A1D},+    {0x98D0, 0x6A1E},+    {0x98D1, 0x6A20},+    {0x98D2, 0x6A22},+    {0x98D3, 0x6A23},+    {0x98D4, 0x6A24},+    {0x98D5, 0x6A25},+    {0x98D6, 0x6A26},+    {0x98D7, 0x6A27},+    {0x98D8, 0x6A29},+    {0x98D9, 0x6A2B},+    {0x98DA, 0x6A2C},+    {0x98DB, 0x6A2D},+    {0x98DC, 0x6A2E},+    {0x98DD, 0x6A30},+    {0x98DE, 0x6A32},+    {0x98DF, 0x6A33},+    {0x98E0, 0x6A34},+    {0x98E1, 0x6A36},+    {0x98E2, 0x6A37},+    {0x98E3, 0x6A38},+    {0x98E4, 0x6A39},+    {0x98E5, 0x6A3A},+    {0x98E6, 0x6A3B},+    {0x98E7, 0x6A3C},+    {0x98E8, 0x6A3F},+    {0x98E9, 0x6A40},+    {0x98EA, 0x6A41},+    {0x98EB, 0x6A42},+    {0x98EC, 0x6A43},+    {0x98ED, 0x6A45},+    {0x98EE, 0x6A46},+    {0x98EF, 0x6A48},+    {0x98F0, 0x6A49},+    {0x98F1, 0x6A4A},+    {0x98F2, 0x6A4B},+    {0x98F3, 0x6A4C},+    {0x98F4, 0x6A4D},+    {0x98F5, 0x6A4E},+    {0x98F6, 0x6A4F},+    {0x98F7, 0x6A51},+    {0x98F8, 0x6A52},+    {0x98F9, 0x6A53},+    {0x98FA, 0x6A54},+    {0x98FB, 0x6A55},+    {0x98FC, 0x6A56},+    {0x98FD, 0x6A57},+    {0x98FE, 0x6A5A},+    {0x9940, 0x6A5C},+    {0x9941, 0x6A5D},+    {0x9942, 0x6A5E},+    {0x9943, 0x6A5F},+    {0x9944, 0x6A60},+    {0x9945, 0x6A62},+    {0x9946, 0x6A63},+    {0x9947, 0x6A64},+    {0x9948, 0x6A66},+    {0x9949, 0x6A67},+    {0x994A, 0x6A68},+    {0x994B, 0x6A69},+    {0x994C, 0x6A6A},+    {0x994D, 0x6A6B},+    {0x994E, 0x6A6C},+    {0x994F, 0x6A6D},+    {0x9950, 0x6A6E},+    {0x9951, 0x6A6F},+    {0x9952, 0x6A70},+    {0x9953, 0x6A72},+    {0x9954, 0x6A73},+    {0x9955, 0x6A74},+    {0x9956, 0x6A75},+    {0x9957, 0x6A76},+    {0x9958, 0x6A77},+    {0x9959, 0x6A78},+    {0x995A, 0x6A7A},+    {0x995B, 0x6A7B},+    {0x995C, 0x6A7D},+    {0x995D, 0x6A7E},+    {0x995E, 0x6A7F},+    {0x995F, 0x6A81},+    {0x9960, 0x6A82},+    {0x9961, 0x6A83},+    {0x9962, 0x6A85},+    {0x9963, 0x6A86},+    {0x9964, 0x6A87},+    {0x9965, 0x6A88},+    {0x9966, 0x6A89},+    {0x9967, 0x6A8A},+    {0x9968, 0x6A8B},+    {0x9969, 0x6A8C},+    {0x996A, 0x6A8D},+    {0x996B, 0x6A8F},+    {0x996C, 0x6A92},+    {0x996D, 0x6A93},+    {0x996E, 0x6A94},+    {0x996F, 0x6A95},+    {0x9970, 0x6A96},+    {0x9971, 0x6A98},+    {0x9972, 0x6A99},+    {0x9973, 0x6A9A},+    {0x9974, 0x6A9B},+    {0x9975, 0x6A9C},+    {0x9976, 0x6A9D},+    {0x9977, 0x6A9E},+    {0x9978, 0x6A9F},+    {0x9979, 0x6AA1},+    {0x997A, 0x6AA2},+    {0x997B, 0x6AA3},+    {0x997C, 0x6AA4},+    {0x997D, 0x6AA5},+    {0x997E, 0x6AA6},+    {0x9980, 0x6AA7},+    {0x9981, 0x6AA8},+    {0x9982, 0x6AAA},+    {0x9983, 0x6AAD},+    {0x9984, 0x6AAE},+    {0x9985, 0x6AAF},+    {0x9986, 0x6AB0},+    {0x9987, 0x6AB1},+    {0x9988, 0x6AB2},+    {0x9989, 0x6AB3},+    {0x998A, 0x6AB4},+    {0x998B, 0x6AB5},+    {0x998C, 0x6AB6},+    {0x998D, 0x6AB7},+    {0x998E, 0x6AB8},+    {0x998F, 0x6AB9},+    {0x9990, 0x6ABA},+    {0x9991, 0x6ABB},+    {0x9992, 0x6ABC},+    {0x9993, 0x6ABD},+    {0x9994, 0x6ABE},+    {0x9995, 0x6ABF},+    {0x9996, 0x6AC0},+    {0x9997, 0x6AC1},+    {0x9998, 0x6AC2},+    {0x9999, 0x6AC3},+    {0x999A, 0x6AC4},+    {0x999B, 0x6AC5},+    {0x999C, 0x6AC6},+    {0x999D, 0x6AC7},+    {0x999E, 0x6AC8},+    {0x999F, 0x6AC9},+    {0x99A0, 0x6ACA},+    {0x99A1, 0x6ACB},+    {0x99A2, 0x6ACC},+    {0x99A3, 0x6ACD},+    {0x99A4, 0x6ACE},+    {0x99A5, 0x6ACF},+    {0x99A6, 0x6AD0},+    {0x99A7, 0x6AD1},+    {0x99A8, 0x6AD2},+    {0x99A9, 0x6AD3},+    {0x99AA, 0x6AD4},+    {0x99AB, 0x6AD5},+    {0x99AC, 0x6AD6},+    {0x99AD, 0x6AD7},+    {0x99AE, 0x6AD8},+    {0x99AF, 0x6AD9},+    {0x99B0, 0x6ADA},+    {0x99B1, 0x6ADB},+    {0x99B2, 0x6ADC},+    {0x99B3, 0x6ADD},+    {0x99B4, 0x6ADE},+    {0x99B5, 0x6ADF},+    {0x99B6, 0x6AE0},+    {0x99B7, 0x6AE1},+    {0x99B8, 0x6AE2},+    {0x99B9, 0x6AE3},+    {0x99BA, 0x6AE4},+    {0x99BB, 0x6AE5},+    {0x99BC, 0x6AE6},+    {0x99BD, 0x6AE7},+    {0x99BE, 0x6AE8},+    {0x99BF, 0x6AE9},+    {0x99C0, 0x6AEA},+    {0x99C1, 0x6AEB},+    {0x99C2, 0x6AEC},+    {0x99C3, 0x6AED},+    {0x99C4, 0x6AEE},+    {0x99C5, 0x6AEF},+    {0x99C6, 0x6AF0},+    {0x99C7, 0x6AF1},+    {0x99C8, 0x6AF2},+    {0x99C9, 0x6AF3},+    {0x99CA, 0x6AF4},+    {0x99CB, 0x6AF5},+    {0x99CC, 0x6AF6},+    {0x99CD, 0x6AF7},+    {0x99CE, 0x6AF8},+    {0x99CF, 0x6AF9},+    {0x99D0, 0x6AFA},+    {0x99D1, 0x6AFB},+    {0x99D2, 0x6AFC},+    {0x99D3, 0x6AFD},+    {0x99D4, 0x6AFE},+    {0x99D5, 0x6AFF},+    {0x99D6, 0x6B00},+    {0x99D7, 0x6B01},+    {0x99D8, 0x6B02},+    {0x99D9, 0x6B03},+    {0x99DA, 0x6B04},+    {0x99DB, 0x6B05},+    {0x99DC, 0x6B06},+    {0x99DD, 0x6B07},+    {0x99DE, 0x6B08},+    {0x99DF, 0x6B09},+    {0x99E0, 0x6B0A},+    {0x99E1, 0x6B0B},+    {0x99E2, 0x6B0C},+    {0x99E3, 0x6B0D},+    {0x99E4, 0x6B0E},+    {0x99E5, 0x6B0F},+    {0x99E6, 0x6B10},+    {0x99E7, 0x6B11},+    {0x99E8, 0x6B12},+    {0x99E9, 0x6B13},+    {0x99EA, 0x6B14},+    {0x99EB, 0x6B15},+    {0x99EC, 0x6B16},+    {0x99ED, 0x6B17},+    {0x99EE, 0x6B18},+    {0x99EF, 0x6B19},+    {0x99F0, 0x6B1A},+    {0x99F1, 0x6B1B},+    {0x99F2, 0x6B1C},+    {0x99F3, 0x6B1D},+    {0x99F4, 0x6B1E},+    {0x99F5, 0x6B1F},+    {0x99F6, 0x6B25},+    {0x99F7, 0x6B26},+    {0x99F8, 0x6B28},+    {0x99F9, 0x6B29},+    {0x99FA, 0x6B2A},+    {0x99FB, 0x6B2B},+    {0x99FC, 0x6B2C},+    {0x99FD, 0x6B2D},+    {0x99FE, 0x6B2E},+    {0x9A40, 0x6B2F},+    {0x9A41, 0x6B30},+    {0x9A42, 0x6B31},+    {0x9A43, 0x6B33},+    {0x9A44, 0x6B34},+    {0x9A45, 0x6B35},+    {0x9A46, 0x6B36},+    {0x9A47, 0x6B38},+    {0x9A48, 0x6B3B},+    {0x9A49, 0x6B3C},+    {0x9A4A, 0x6B3D},+    {0x9A4B, 0x6B3F},+    {0x9A4C, 0x6B40},+    {0x9A4D, 0x6B41},+    {0x9A4E, 0x6B42},+    {0x9A4F, 0x6B44},+    {0x9A50, 0x6B45},+    {0x9A51, 0x6B48},+    {0x9A52, 0x6B4A},+    {0x9A53, 0x6B4B},+    {0x9A54, 0x6B4D},+    {0x9A55, 0x6B4E},+    {0x9A56, 0x6B4F},+    {0x9A57, 0x6B50},+    {0x9A58, 0x6B51},+    {0x9A59, 0x6B52},+    {0x9A5A, 0x6B53},+    {0x9A5B, 0x6B54},+    {0x9A5C, 0x6B55},+    {0x9A5D, 0x6B56},+    {0x9A5E, 0x6B57},+    {0x9A5F, 0x6B58},+    {0x9A60, 0x6B5A},+    {0x9A61, 0x6B5B},+    {0x9A62, 0x6B5C},+    {0x9A63, 0x6B5D},+    {0x9A64, 0x6B5E},+    {0x9A65, 0x6B5F},+    {0x9A66, 0x6B60},+    {0x9A67, 0x6B61},+    {0x9A68, 0x6B68},+    {0x9A69, 0x6B69},+    {0x9A6A, 0x6B6B},+    {0x9A6B, 0x6B6C},+    {0x9A6C, 0x6B6D},+    {0x9A6D, 0x6B6E},+    {0x9A6E, 0x6B6F},+    {0x9A6F, 0x6B70},+    {0x9A70, 0x6B71},+    {0x9A71, 0x6B72},+    {0x9A72, 0x6B73},+    {0x9A73, 0x6B74},+    {0x9A74, 0x6B75},+    {0x9A75, 0x6B76},+    {0x9A76, 0x6B77},+    {0x9A77, 0x6B78},+    {0x9A78, 0x6B7A},+    {0x9A79, 0x6B7D},+    {0x9A7A, 0x6B7E},+    {0x9A7B, 0x6B7F},+    {0x9A7C, 0x6B80},+    {0x9A7D, 0x6B85},+    {0x9A7E, 0x6B88},+    {0x9A80, 0x6B8C},+    {0x9A81, 0x6B8E},+    {0x9A82, 0x6B8F},+    {0x9A83, 0x6B90},+    {0x9A84, 0x6B91},+    {0x9A85, 0x6B94},+    {0x9A86, 0x6B95},+    {0x9A87, 0x6B97},+    {0x9A88, 0x6B98},+    {0x9A89, 0x6B99},+    {0x9A8A, 0x6B9C},+    {0x9A8B, 0x6B9D},+    {0x9A8C, 0x6B9E},+    {0x9A8D, 0x6B9F},+    {0x9A8E, 0x6BA0},+    {0x9A8F, 0x6BA2},+    {0x9A90, 0x6BA3},+    {0x9A91, 0x6BA4},+    {0x9A92, 0x6BA5},+    {0x9A93, 0x6BA6},+    {0x9A94, 0x6BA7},+    {0x9A95, 0x6BA8},+    {0x9A96, 0x6BA9},+    {0x9A97, 0x6BAB},+    {0x9A98, 0x6BAC},+    {0x9A99, 0x6BAD},+    {0x9A9A, 0x6BAE},+    {0x9A9B, 0x6BAF},+    {0x9A9C, 0x6BB0},+    {0x9A9D, 0x6BB1},+    {0x9A9E, 0x6BB2},+    {0x9A9F, 0x6BB6},+    {0x9AA0, 0x6BB8},+    {0x9AA1, 0x6BB9},+    {0x9AA2, 0x6BBA},+    {0x9AA3, 0x6BBB},+    {0x9AA4, 0x6BBC},+    {0x9AA5, 0x6BBD},+    {0x9AA6, 0x6BBE},+    {0x9AA7, 0x6BC0},+    {0x9AA8, 0x6BC3},+    {0x9AA9, 0x6BC4},+    {0x9AAA, 0x6BC6},+    {0x9AAB, 0x6BC7},+    {0x9AAC, 0x6BC8},+    {0x9AAD, 0x6BC9},+    {0x9AAE, 0x6BCA},+    {0x9AAF, 0x6BCC},+    {0x9AB0, 0x6BCE},+    {0x9AB1, 0x6BD0},+    {0x9AB2, 0x6BD1},+    {0x9AB3, 0x6BD8},+    {0x9AB4, 0x6BDA},+    {0x9AB5, 0x6BDC},+    {0x9AB6, 0x6BDD},+    {0x9AB7, 0x6BDE},+    {0x9AB8, 0x6BDF},+    {0x9AB9, 0x6BE0},+    {0x9ABA, 0x6BE2},+    {0x9ABB, 0x6BE3},+    {0x9ABC, 0x6BE4},+    {0x9ABD, 0x6BE5},+    {0x9ABE, 0x6BE6},+    {0x9ABF, 0x6BE7},+    {0x9AC0, 0x6BE8},+    {0x9AC1, 0x6BE9},+    {0x9AC2, 0x6BEC},+    {0x9AC3, 0x6BED},+    {0x9AC4, 0x6BEE},+    {0x9AC5, 0x6BF0},+    {0x9AC6, 0x6BF1},+    {0x9AC7, 0x6BF2},+    {0x9AC8, 0x6BF4},+    {0x9AC9, 0x6BF6},+    {0x9ACA, 0x6BF7},+    {0x9ACB, 0x6BF8},+    {0x9ACC, 0x6BFA},+    {0x9ACD, 0x6BFB},+    {0x9ACE, 0x6BFC},+    {0x9ACF, 0x6BFE},+    {0x9AD0, 0x6BFF},+    {0x9AD1, 0x6C00},+    {0x9AD2, 0x6C01},+    {0x9AD3, 0x6C02},+    {0x9AD4, 0x6C03},+    {0x9AD5, 0x6C04},+    {0x9AD6, 0x6C08},+    {0x9AD7, 0x6C09},+    {0x9AD8, 0x6C0A},+    {0x9AD9, 0x6C0B},+    {0x9ADA, 0x6C0C},+    {0x9ADB, 0x6C0E},+    {0x9ADC, 0x6C12},+    {0x9ADD, 0x6C17},+    {0x9ADE, 0x6C1C},+    {0x9ADF, 0x6C1D},+    {0x9AE0, 0x6C1E},+    {0x9AE1, 0x6C20},+    {0x9AE2, 0x6C23},+    {0x9AE3, 0x6C25},+    {0x9AE4, 0x6C2B},+    {0x9AE5, 0x6C2C},+    {0x9AE6, 0x6C2D},+    {0x9AE7, 0x6C31},+    {0x9AE8, 0x6C33},+    {0x9AE9, 0x6C36},+    {0x9AEA, 0x6C37},+    {0x9AEB, 0x6C39},+    {0x9AEC, 0x6C3A},+    {0x9AED, 0x6C3B},+    {0x9AEE, 0x6C3C},+    {0x9AEF, 0x6C3E},+    {0x9AF0, 0x6C3F},+    {0x9AF1, 0x6C43},+    {0x9AF2, 0x6C44},+    {0x9AF3, 0x6C45},+    {0x9AF4, 0x6C48},+    {0x9AF5, 0x6C4B},+    {0x9AF6, 0x6C4C},+    {0x9AF7, 0x6C4D},+    {0x9AF8, 0x6C4E},+    {0x9AF9, 0x6C4F},+    {0x9AFA, 0x6C51},+    {0x9AFB, 0x6C52},+    {0x9AFC, 0x6C53},+    {0x9AFD, 0x6C56},+    {0x9AFE, 0x6C58},+    {0x9B40, 0x6C59},+    {0x9B41, 0x6C5A},+    {0x9B42, 0x6C62},+    {0x9B43, 0x6C63},+    {0x9B44, 0x6C65},+    {0x9B45, 0x6C66},+    {0x9B46, 0x6C67},+    {0x9B47, 0x6C6B},+    {0x9B48, 0x6C6C},+    {0x9B49, 0x6C6D},+    {0x9B4A, 0x6C6E},+    {0x9B4B, 0x6C6F},+    {0x9B4C, 0x6C71},+    {0x9B4D, 0x6C73},+    {0x9B4E, 0x6C75},+    {0x9B4F, 0x6C77},+    {0x9B50, 0x6C78},+    {0x9B51, 0x6C7A},+    {0x9B52, 0x6C7B},+    {0x9B53, 0x6C7C},+    {0x9B54, 0x6C7F},+    {0x9B55, 0x6C80},+    {0x9B56, 0x6C84},+    {0x9B57, 0x6C87},+    {0x9B58, 0x6C8A},+    {0x9B59, 0x6C8B},+    {0x9B5A, 0x6C8D},+    {0x9B5B, 0x6C8E},+    {0x9B5C, 0x6C91},+    {0x9B5D, 0x6C92},+    {0x9B5E, 0x6C95},+    {0x9B5F, 0x6C96},+    {0x9B60, 0x6C97},+    {0x9B61, 0x6C98},+    {0x9B62, 0x6C9A},+    {0x9B63, 0x6C9C},+    {0x9B64, 0x6C9D},+    {0x9B65, 0x6C9E},+    {0x9B66, 0x6CA0},+    {0x9B67, 0x6CA2},+    {0x9B68, 0x6CA8},+    {0x9B69, 0x6CAC},+    {0x9B6A, 0x6CAF},+    {0x9B6B, 0x6CB0},+    {0x9B6C, 0x6CB4},+    {0x9B6D, 0x6CB5},+    {0x9B6E, 0x6CB6},+    {0x9B6F, 0x6CB7},+    {0x9B70, 0x6CBA},+    {0x9B71, 0x6CC0},+    {0x9B72, 0x6CC1},+    {0x9B73, 0x6CC2},+    {0x9B74, 0x6CC3},+    {0x9B75, 0x6CC6},+    {0x9B76, 0x6CC7},+    {0x9B77, 0x6CC8},+    {0x9B78, 0x6CCB},+    {0x9B79, 0x6CCD},+    {0x9B7A, 0x6CCE},+    {0x9B7B, 0x6CCF},+    {0x9B7C, 0x6CD1},+    {0x9B7D, 0x6CD2},+    {0x9B7E, 0x6CD8},+    {0x9B80, 0x6CD9},+    {0x9B81, 0x6CDA},+    {0x9B82, 0x6CDC},+    {0x9B83, 0x6CDD},+    {0x9B84, 0x6CDF},+    {0x9B85, 0x6CE4},+    {0x9B86, 0x6CE6},+    {0x9B87, 0x6CE7},+    {0x9B88, 0x6CE9},+    {0x9B89, 0x6CEC},+    {0x9B8A, 0x6CED},+    {0x9B8B, 0x6CF2},+    {0x9B8C, 0x6CF4},+    {0x9B8D, 0x6CF9},+    {0x9B8E, 0x6CFF},+    {0x9B8F, 0x6D00},+    {0x9B90, 0x6D02},+    {0x9B91, 0x6D03},+    {0x9B92, 0x6D05},+    {0x9B93, 0x6D06},+    {0x9B94, 0x6D08},+    {0x9B95, 0x6D09},+    {0x9B96, 0x6D0A},+    {0x9B97, 0x6D0D},+    {0x9B98, 0x6D0F},+    {0x9B99, 0x6D10},+    {0x9B9A, 0x6D11},+    {0x9B9B, 0x6D13},+    {0x9B9C, 0x6D14},+    {0x9B9D, 0x6D15},+    {0x9B9E, 0x6D16},+    {0x9B9F, 0x6D18},+    {0x9BA0, 0x6D1C},+    {0x9BA1, 0x6D1D},+    {0x9BA2, 0x6D1F},+    {0x9BA3, 0x6D20},+    {0x9BA4, 0x6D21},+    {0x9BA5, 0x6D22},+    {0x9BA6, 0x6D23},+    {0x9BA7, 0x6D24},+    {0x9BA8, 0x6D26},+    {0x9BA9, 0x6D28},+    {0x9BAA, 0x6D29},+    {0x9BAB, 0x6D2C},+    {0x9BAC, 0x6D2D},+    {0x9BAD, 0x6D2F},+    {0x9BAE, 0x6D30},+    {0x9BAF, 0x6D34},+    {0x9BB0, 0x6D36},+    {0x9BB1, 0x6D37},+    {0x9BB2, 0x6D38},+    {0x9BB3, 0x6D3A},+    {0x9BB4, 0x6D3F},+    {0x9BB5, 0x6D40},+    {0x9BB6, 0x6D42},+    {0x9BB7, 0x6D44},+    {0x9BB8, 0x6D49},+    {0x9BB9, 0x6D4C},+    {0x9BBA, 0x6D50},+    {0x9BBB, 0x6D55},+    {0x9BBC, 0x6D56},+    {0x9BBD, 0x6D57},+    {0x9BBE, 0x6D58},+    {0x9BBF, 0x6D5B},+    {0x9BC0, 0x6D5D},+    {0x9BC1, 0x6D5F},+    {0x9BC2, 0x6D61},+    {0x9BC3, 0x6D62},+    {0x9BC4, 0x6D64},+    {0x9BC5, 0x6D65},+    {0x9BC6, 0x6D67},+    {0x9BC7, 0x6D68},+    {0x9BC8, 0x6D6B},+    {0x9BC9, 0x6D6C},+    {0x9BCA, 0x6D6D},+    {0x9BCB, 0x6D70},+    {0x9BCC, 0x6D71},+    {0x9BCD, 0x6D72},+    {0x9BCE, 0x6D73},+    {0x9BCF, 0x6D75},+    {0x9BD0, 0x6D76},+    {0x9BD1, 0x6D79},+    {0x9BD2, 0x6D7A},+    {0x9BD3, 0x6D7B},+    {0x9BD4, 0x6D7D},+    {0x9BD5, 0x6D7E},+    {0x9BD6, 0x6D7F},+    {0x9BD7, 0x6D80},+    {0x9BD8, 0x6D81},+    {0x9BD9, 0x6D83},+    {0x9BDA, 0x6D84},+    {0x9BDB, 0x6D86},+    {0x9BDC, 0x6D87},+    {0x9BDD, 0x6D8A},+    {0x9BDE, 0x6D8B},+    {0x9BDF, 0x6D8D},+    {0x9BE0, 0x6D8F},+    {0x9BE1, 0x6D90},+    {0x9BE2, 0x6D92},+    {0x9BE3, 0x6D96},+    {0x9BE4, 0x6D97},+    {0x9BE5, 0x6D98},+    {0x9BE6, 0x6D99},+    {0x9BE7, 0x6D9A},+    {0x9BE8, 0x6D9C},+    {0x9BE9, 0x6DA2},+    {0x9BEA, 0x6DA5},+    {0x9BEB, 0x6DAC},+    {0x9BEC, 0x6DAD},+    {0x9BED, 0x6DB0},+    {0x9BEE, 0x6DB1},+    {0x9BEF, 0x6DB3},+    {0x9BF0, 0x6DB4},+    {0x9BF1, 0x6DB6},+    {0x9BF2, 0x6DB7},+    {0x9BF3, 0x6DB9},+    {0x9BF4, 0x6DBA},+    {0x9BF5, 0x6DBB},+    {0x9BF6, 0x6DBC},+    {0x9BF7, 0x6DBD},+    {0x9BF8, 0x6DBE},+    {0x9BF9, 0x6DC1},+    {0x9BFA, 0x6DC2},+    {0x9BFB, 0x6DC3},+    {0x9BFC, 0x6DC8},+    {0x9BFD, 0x6DC9},+    {0x9BFE, 0x6DCA},+    {0x9C40, 0x6DCD},+    {0x9C41, 0x6DCE},+    {0x9C42, 0x6DCF},+    {0x9C43, 0x6DD0},+    {0x9C44, 0x6DD2},+    {0x9C45, 0x6DD3},+    {0x9C46, 0x6DD4},+    {0x9C47, 0x6DD5},+    {0x9C48, 0x6DD7},+    {0x9C49, 0x6DDA},+    {0x9C4A, 0x6DDB},+    {0x9C4B, 0x6DDC},+    {0x9C4C, 0x6DDF},+    {0x9C4D, 0x6DE2},+    {0x9C4E, 0x6DE3},+    {0x9C4F, 0x6DE5},+    {0x9C50, 0x6DE7},+    {0x9C51, 0x6DE8},+    {0x9C52, 0x6DE9},+    {0x9C53, 0x6DEA},+    {0x9C54, 0x6DED},+    {0x9C55, 0x6DEF},+    {0x9C56, 0x6DF0},+    {0x9C57, 0x6DF2},+    {0x9C58, 0x6DF4},+    {0x9C59, 0x6DF5},+    {0x9C5A, 0x6DF6},+    {0x9C5B, 0x6DF8},+    {0x9C5C, 0x6DFA},+    {0x9C5D, 0x6DFD},+    {0x9C5E, 0x6DFE},+    {0x9C5F, 0x6DFF},+    {0x9C60, 0x6E00},+    {0x9C61, 0x6E01},+    {0x9C62, 0x6E02},+    {0x9C63, 0x6E03},+    {0x9C64, 0x6E04},+    {0x9C65, 0x6E06},+    {0x9C66, 0x6E07},+    {0x9C67, 0x6E08},+    {0x9C68, 0x6E09},+    {0x9C69, 0x6E0B},+    {0x9C6A, 0x6E0F},+    {0x9C6B, 0x6E12},+    {0x9C6C, 0x6E13},+    {0x9C6D, 0x6E15},+    {0x9C6E, 0x6E18},+    {0x9C6F, 0x6E19},+    {0x9C70, 0x6E1B},+    {0x9C71, 0x6E1C},+    {0x9C72, 0x6E1E},+    {0x9C73, 0x6E1F},+    {0x9C74, 0x6E22},+    {0x9C75, 0x6E26},+    {0x9C76, 0x6E27},+    {0x9C77, 0x6E28},+    {0x9C78, 0x6E2A},+    {0x9C79, 0x6E2C},+    {0x9C7A, 0x6E2E},+    {0x9C7B, 0x6E30},+    {0x9C7C, 0x6E31},+    {0x9C7D, 0x6E33},+    {0x9C7E, 0x6E35},+    {0x9C80, 0x6E36},+    {0x9C81, 0x6E37},+    {0x9C82, 0x6E39},+    {0x9C83, 0x6E3B},+    {0x9C84, 0x6E3C},+    {0x9C85, 0x6E3D},+    {0x9C86, 0x6E3E},+    {0x9C87, 0x6E3F},+    {0x9C88, 0x6E40},+    {0x9C89, 0x6E41},+    {0x9C8A, 0x6E42},+    {0x9C8B, 0x6E45},+    {0x9C8C, 0x6E46},+    {0x9C8D, 0x6E47},+    {0x9C8E, 0x6E48},+    {0x9C8F, 0x6E49},+    {0x9C90, 0x6E4A},+    {0x9C91, 0x6E4B},+    {0x9C92, 0x6E4C},+    {0x9C93, 0x6E4F},+    {0x9C94, 0x6E50},+    {0x9C95, 0x6E51},+    {0x9C96, 0x6E52},+    {0x9C97, 0x6E55},+    {0x9C98, 0x6E57},+    {0x9C99, 0x6E59},+    {0x9C9A, 0x6E5A},+    {0x9C9B, 0x6E5C},+    {0x9C9C, 0x6E5D},+    {0x9C9D, 0x6E5E},+    {0x9C9E, 0x6E60},+    {0x9C9F, 0x6E61},+    {0x9CA0, 0x6E62},+    {0x9CA1, 0x6E63},+    {0x9CA2, 0x6E64},+    {0x9CA3, 0x6E65},+    {0x9CA4, 0x6E66},+    {0x9CA5, 0x6E67},+    {0x9CA6, 0x6E68},+    {0x9CA7, 0x6E69},+    {0x9CA8, 0x6E6A},+    {0x9CA9, 0x6E6C},+    {0x9CAA, 0x6E6D},+    {0x9CAB, 0x6E6F},+    {0x9CAC, 0x6E70},+    {0x9CAD, 0x6E71},+    {0x9CAE, 0x6E72},+    {0x9CAF, 0x6E73},+    {0x9CB0, 0x6E74},+    {0x9CB1, 0x6E75},+    {0x9CB2, 0x6E76},+    {0x9CB3, 0x6E77},+    {0x9CB4, 0x6E78},+    {0x9CB5, 0x6E79},+    {0x9CB6, 0x6E7A},+    {0x9CB7, 0x6E7B},+    {0x9CB8, 0x6E7C},+    {0x9CB9, 0x6E7D},+    {0x9CBA, 0x6E80},+    {0x9CBB, 0x6E81},+    {0x9CBC, 0x6E82},+    {0x9CBD, 0x6E84},+    {0x9CBE, 0x6E87},+    {0x9CBF, 0x6E88},+    {0x9CC0, 0x6E8A},+    {0x9CC1, 0x6E8B},+    {0x9CC2, 0x6E8C},+    {0x9CC3, 0x6E8D},+    {0x9CC4, 0x6E8E},+    {0x9CC5, 0x6E91},+    {0x9CC6, 0x6E92},+    {0x9CC7, 0x6E93},+    {0x9CC8, 0x6E94},+    {0x9CC9, 0x6E95},+    {0x9CCA, 0x6E96},+    {0x9CCB, 0x6E97},+    {0x9CCC, 0x6E99},+    {0x9CCD, 0x6E9A},+    {0x9CCE, 0x6E9B},+    {0x9CCF, 0x6E9D},+    {0x9CD0, 0x6E9E},+    {0x9CD1, 0x6EA0},+    {0x9CD2, 0x6EA1},+    {0x9CD3, 0x6EA3},+    {0x9CD4, 0x6EA4},+    {0x9CD5, 0x6EA6},+    {0x9CD6, 0x6EA8},+    {0x9CD7, 0x6EA9},+    {0x9CD8, 0x6EAB},+    {0x9CD9, 0x6EAC},+    {0x9CDA, 0x6EAD},+    {0x9CDB, 0x6EAE},+    {0x9CDC, 0x6EB0},+    {0x9CDD, 0x6EB3},+    {0x9CDE, 0x6EB5},+    {0x9CDF, 0x6EB8},+    {0x9CE0, 0x6EB9},+    {0x9CE1, 0x6EBC},+    {0x9CE2, 0x6EBE},+    {0x9CE3, 0x6EBF},+    {0x9CE4, 0x6EC0},+    {0x9CE5, 0x6EC3},+    {0x9CE6, 0x6EC4},+    {0x9CE7, 0x6EC5},+    {0x9CE8, 0x6EC6},+    {0x9CE9, 0x6EC8},+    {0x9CEA, 0x6EC9},+    {0x9CEB, 0x6ECA},+    {0x9CEC, 0x6ECC},+    {0x9CED, 0x6ECD},+    {0x9CEE, 0x6ECE},+    {0x9CEF, 0x6ED0},+    {0x9CF0, 0x6ED2},+    {0x9CF1, 0x6ED6},+    {0x9CF2, 0x6ED8},+    {0x9CF3, 0x6ED9},+    {0x9CF4, 0x6EDB},+    {0x9CF5, 0x6EDC},+    {0x9CF6, 0x6EDD},+    {0x9CF7, 0x6EE3},+    {0x9CF8, 0x6EE7},+    {0x9CF9, 0x6EEA},+    {0x9CFA, 0x6EEB},+    {0x9CFB, 0x6EEC},+    {0x9CFC, 0x6EED},+    {0x9CFD, 0x6EEE},+    {0x9CFE, 0x6EEF},+    {0x9D40, 0x6EF0},+    {0x9D41, 0x6EF1},+    {0x9D42, 0x6EF2},+    {0x9D43, 0x6EF3},+    {0x9D44, 0x6EF5},+    {0x9D45, 0x6EF6},+    {0x9D46, 0x6EF7},+    {0x9D47, 0x6EF8},+    {0x9D48, 0x6EFA},+    {0x9D49, 0x6EFB},+    {0x9D4A, 0x6EFC},+    {0x9D4B, 0x6EFD},+    {0x9D4C, 0x6EFE},+    {0x9D4D, 0x6EFF},+    {0x9D4E, 0x6F00},+    {0x9D4F, 0x6F01},+    {0x9D50, 0x6F03},+    {0x9D51, 0x6F04},+    {0x9D52, 0x6F05},+    {0x9D53, 0x6F07},+    {0x9D54, 0x6F08},+    {0x9D55, 0x6F0A},+    {0x9D56, 0x6F0B},+    {0x9D57, 0x6F0C},+    {0x9D58, 0x6F0D},+    {0x9D59, 0x6F0E},+    {0x9D5A, 0x6F10},+    {0x9D5B, 0x6F11},+    {0x9D5C, 0x6F12},+    {0x9D5D, 0x6F16},+    {0x9D5E, 0x6F17},+    {0x9D5F, 0x6F18},+    {0x9D60, 0x6F19},+    {0x9D61, 0x6F1A},+    {0x9D62, 0x6F1B},+    {0x9D63, 0x6F1C},+    {0x9D64, 0x6F1D},+    {0x9D65, 0x6F1E},+    {0x9D66, 0x6F1F},+    {0x9D67, 0x6F21},+    {0x9D68, 0x6F22},+    {0x9D69, 0x6F23},+    {0x9D6A, 0x6F25},+    {0x9D6B, 0x6F26},+    {0x9D6C, 0x6F27},+    {0x9D6D, 0x6F28},+    {0x9D6E, 0x6F2C},+    {0x9D6F, 0x6F2E},+    {0x9D70, 0x6F30},+    {0x9D71, 0x6F32},+    {0x9D72, 0x6F34},+    {0x9D73, 0x6F35},+    {0x9D74, 0x6F37},+    {0x9D75, 0x6F38},+    {0x9D76, 0x6F39},+    {0x9D77, 0x6F3A},+    {0x9D78, 0x6F3B},+    {0x9D79, 0x6F3C},+    {0x9D7A, 0x6F3D},+    {0x9D7B, 0x6F3F},+    {0x9D7C, 0x6F40},+    {0x9D7D, 0x6F41},+    {0x9D7E, 0x6F42},+    {0x9D80, 0x6F43},+    {0x9D81, 0x6F44},+    {0x9D82, 0x6F45},+    {0x9D83, 0x6F48},+    {0x9D84, 0x6F49},+    {0x9D85, 0x6F4A},+    {0x9D86, 0x6F4C},+    {0x9D87, 0x6F4E},+    {0x9D88, 0x6F4F},+    {0x9D89, 0x6F50},+    {0x9D8A, 0x6F51},+    {0x9D8B, 0x6F52},+    {0x9D8C, 0x6F53},+    {0x9D8D, 0x6F54},+    {0x9D8E, 0x6F55},+    {0x9D8F, 0x6F56},+    {0x9D90, 0x6F57},+    {0x9D91, 0x6F59},+    {0x9D92, 0x6F5A},+    {0x9D93, 0x6F5B},+    {0x9D94, 0x6F5D},+    {0x9D95, 0x6F5F},+    {0x9D96, 0x6F60},+    {0x9D97, 0x6F61},+    {0x9D98, 0x6F63},+    {0x9D99, 0x6F64},+    {0x9D9A, 0x6F65},+    {0x9D9B, 0x6F67},+    {0x9D9C, 0x6F68},+    {0x9D9D, 0x6F69},+    {0x9D9E, 0x6F6A},+    {0x9D9F, 0x6F6B},+    {0x9DA0, 0x6F6C},+    {0x9DA1, 0x6F6F},+    {0x9DA2, 0x6F70},+    {0x9DA3, 0x6F71},+    {0x9DA4, 0x6F73},+    {0x9DA5, 0x6F75},+    {0x9DA6, 0x6F76},+    {0x9DA7, 0x6F77},+    {0x9DA8, 0x6F79},+    {0x9DA9, 0x6F7B},+    {0x9DAA, 0x6F7D},+    {0x9DAB, 0x6F7E},+    {0x9DAC, 0x6F7F},+    {0x9DAD, 0x6F80},+    {0x9DAE, 0x6F81},+    {0x9DAF, 0x6F82},+    {0x9DB0, 0x6F83},+    {0x9DB1, 0x6F85},+    {0x9DB2, 0x6F86},+    {0x9DB3, 0x6F87},+    {0x9DB4, 0x6F8A},+    {0x9DB5, 0x6F8B},+    {0x9DB6, 0x6F8F},+    {0x9DB7, 0x6F90},+    {0x9DB8, 0x6F91},+    {0x9DB9, 0x6F92},+    {0x9DBA, 0x6F93},+    {0x9DBB, 0x6F94},+    {0x9DBC, 0x6F95},+    {0x9DBD, 0x6F96},+    {0x9DBE, 0x6F97},+    {0x9DBF, 0x6F98},+    {0x9DC0, 0x6F99},+    {0x9DC1, 0x6F9A},+    {0x9DC2, 0x6F9B},+    {0x9DC3, 0x6F9D},+    {0x9DC4, 0x6F9E},+    {0x9DC5, 0x6F9F},+    {0x9DC6, 0x6FA0},+    {0x9DC7, 0x6FA2},+    {0x9DC8, 0x6FA3},+    {0x9DC9, 0x6FA4},+    {0x9DCA, 0x6FA5},+    {0x9DCB, 0x6FA6},+    {0x9DCC, 0x6FA8},+    {0x9DCD, 0x6FA9},+    {0x9DCE, 0x6FAA},+    {0x9DCF, 0x6FAB},+    {0x9DD0, 0x6FAC},+    {0x9DD1, 0x6FAD},+    {0x9DD2, 0x6FAE},+    {0x9DD3, 0x6FAF},+    {0x9DD4, 0x6FB0},+    {0x9DD5, 0x6FB1},+    {0x9DD6, 0x6FB2},+    {0x9DD7, 0x6FB4},+    {0x9DD8, 0x6FB5},+    {0x9DD9, 0x6FB7},+    {0x9DDA, 0x6FB8},+    {0x9DDB, 0x6FBA},+    {0x9DDC, 0x6FBB},+    {0x9DDD, 0x6FBC},+    {0x9DDE, 0x6FBD},+    {0x9DDF, 0x6FBE},+    {0x9DE0, 0x6FBF},+    {0x9DE1, 0x6FC1},+    {0x9DE2, 0x6FC3},+    {0x9DE3, 0x6FC4},+    {0x9DE4, 0x6FC5},+    {0x9DE5, 0x6FC6},+    {0x9DE6, 0x6FC7},+    {0x9DE7, 0x6FC8},+    {0x9DE8, 0x6FCA},+    {0x9DE9, 0x6FCB},+    {0x9DEA, 0x6FCC},+    {0x9DEB, 0x6FCD},+    {0x9DEC, 0x6FCE},+    {0x9DED, 0x6FCF},+    {0x9DEE, 0x6FD0},+    {0x9DEF, 0x6FD3},+    {0x9DF0, 0x6FD4},+    {0x9DF1, 0x6FD5},+    {0x9DF2, 0x6FD6},+    {0x9DF3, 0x6FD7},+    {0x9DF4, 0x6FD8},+    {0x9DF5, 0x6FD9},+    {0x9DF6, 0x6FDA},+    {0x9DF7, 0x6FDB},+    {0x9DF8, 0x6FDC},+    {0x9DF9, 0x6FDD},+    {0x9DFA, 0x6FDF},+    {0x9DFB, 0x6FE2},+    {0x9DFC, 0x6FE3},+    {0x9DFD, 0x6FE4},+    {0x9DFE, 0x6FE5},+    {0x9E40, 0x6FE6},+    {0x9E41, 0x6FE7},+    {0x9E42, 0x6FE8},+    {0x9E43, 0x6FE9},+    {0x9E44, 0x6FEA},+    {0x9E45, 0x6FEB},+    {0x9E46, 0x6FEC},+    {0x9E47, 0x6FED},+    {0x9E48, 0x6FF0},+    {0x9E49, 0x6FF1},+    {0x9E4A, 0x6FF2},+    {0x9E4B, 0x6FF3},+    {0x9E4C, 0x6FF4},+    {0x9E4D, 0x6FF5},+    {0x9E4E, 0x6FF6},+    {0x9E4F, 0x6FF7},+    {0x9E50, 0x6FF8},+    {0x9E51, 0x6FF9},+    {0x9E52, 0x6FFA},+    {0x9E53, 0x6FFB},+    {0x9E54, 0x6FFC},+    {0x9E55, 0x6FFD},+    {0x9E56, 0x6FFE},+    {0x9E57, 0x6FFF},+    {0x9E58, 0x7000},+    {0x9E59, 0x7001},+    {0x9E5A, 0x7002},+    {0x9E5B, 0x7003},+    {0x9E5C, 0x7004},+    {0x9E5D, 0x7005},+    {0x9E5E, 0x7006},+    {0x9E5F, 0x7007},+    {0x9E60, 0x7008},+    {0x9E61, 0x7009},+    {0x9E62, 0x700A},+    {0x9E63, 0x700B},+    {0x9E64, 0x700C},+    {0x9E65, 0x700D},+    {0x9E66, 0x700E},+    {0x9E67, 0x700F},+    {0x9E68, 0x7010},+    {0x9E69, 0x7012},+    {0x9E6A, 0x7013},+    {0x9E6B, 0x7014},+    {0x9E6C, 0x7015},+    {0x9E6D, 0x7016},+    {0x9E6E, 0x7017},+    {0x9E6F, 0x7018},+    {0x9E70, 0x7019},+    {0x9E71, 0x701C},+    {0x9E72, 0x701D},+    {0x9E73, 0x701E},+    {0x9E74, 0x701F},+    {0x9E75, 0x7020},+    {0x9E76, 0x7021},+    {0x9E77, 0x7022},+    {0x9E78, 0x7024},+    {0x9E79, 0x7025},+    {0x9E7A, 0x7026},+    {0x9E7B, 0x7027},+    {0x9E7C, 0x7028},+    {0x9E7D, 0x7029},+    {0x9E7E, 0x702A},+    {0x9E80, 0x702B},+    {0x9E81, 0x702C},+    {0x9E82, 0x702D},+    {0x9E83, 0x702E},+    {0x9E84, 0x702F},+    {0x9E85, 0x7030},+    {0x9E86, 0x7031},+    {0x9E87, 0x7032},+    {0x9E88, 0x7033},+    {0x9E89, 0x7034},+    {0x9E8A, 0x7036},+    {0x9E8B, 0x7037},+    {0x9E8C, 0x7038},+    {0x9E8D, 0x703A},+    {0x9E8E, 0x703B},+    {0x9E8F, 0x703C},+    {0x9E90, 0x703D},+    {0x9E91, 0x703E},+    {0x9E92, 0x703F},+    {0x9E93, 0x7040},+    {0x9E94, 0x7041},+    {0x9E95, 0x7042},+    {0x9E96, 0x7043},+    {0x9E97, 0x7044},+    {0x9E98, 0x7045},+    {0x9E99, 0x7046},+    {0x9E9A, 0x7047},+    {0x9E9B, 0x7048},+    {0x9E9C, 0x7049},+    {0x9E9D, 0x704A},+    {0x9E9E, 0x704B},+    {0x9E9F, 0x704D},+    {0x9EA0, 0x704E},+    {0x9EA1, 0x7050},+    {0x9EA2, 0x7051},+    {0x9EA3, 0x7052},+    {0x9EA4, 0x7053},+    {0x9EA5, 0x7054},+    {0x9EA6, 0x7055},+    {0x9EA7, 0x7056},+    {0x9EA8, 0x7057},+    {0x9EA9, 0x7058},+    {0x9EAA, 0x7059},+    {0x9EAB, 0x705A},+    {0x9EAC, 0x705B},+    {0x9EAD, 0x705C},+    {0x9EAE, 0x705D},+    {0x9EAF, 0x705F},+    {0x9EB0, 0x7060},+    {0x9EB1, 0x7061},+    {0x9EB2, 0x7062},+    {0x9EB3, 0x7063},+    {0x9EB4, 0x7064},+    {0x9EB5, 0x7065},+    {0x9EB6, 0x7066},+    {0x9EB7, 0x7067},+    {0x9EB8, 0x7068},+    {0x9EB9, 0x7069},+    {0x9EBA, 0x706A},+    {0x9EBB, 0x706E},+    {0x9EBC, 0x7071},+    {0x9EBD, 0x7072},+    {0x9EBE, 0x7073},+    {0x9EBF, 0x7074},+    {0x9EC0, 0x7077},+    {0x9EC1, 0x7079},+    {0x9EC2, 0x707A},+    {0x9EC3, 0x707B},+    {0x9EC4, 0x707D},+    {0x9EC5, 0x7081},+    {0x9EC6, 0x7082},+    {0x9EC7, 0x7083},+    {0x9EC8, 0x7084},+    {0x9EC9, 0x7086},+    {0x9ECA, 0x7087},+    {0x9ECB, 0x7088},+    {0x9ECC, 0x708B},+    {0x9ECD, 0x708C},+    {0x9ECE, 0x708D},+    {0x9ECF, 0x708F},+    {0x9ED0, 0x7090},+    {0x9ED1, 0x7091},+    {0x9ED2, 0x7093},+    {0x9ED3, 0x7097},+    {0x9ED4, 0x7098},+    {0x9ED5, 0x709A},+    {0x9ED6, 0x709B},+    {0x9ED7, 0x709E},+    {0x9ED8, 0x709F},+    {0x9ED9, 0x70A0},+    {0x9EDA, 0x70A1},+    {0x9EDB, 0x70A2},+    {0x9EDC, 0x70A3},+    {0x9EDD, 0x70A4},+    {0x9EDE, 0x70A5},+    {0x9EDF, 0x70A6},+    {0x9EE0, 0x70A7},+    {0x9EE1, 0x70A8},+    {0x9EE2, 0x70A9},+    {0x9EE3, 0x70AA},+    {0x9EE4, 0x70B0},+    {0x9EE5, 0x70B2},+    {0x9EE6, 0x70B4},+    {0x9EE7, 0x70B5},+    {0x9EE8, 0x70B6},+    {0x9EE9, 0x70BA},+    {0x9EEA, 0x70BE},+    {0x9EEB, 0x70BF},+    {0x9EEC, 0x70C4},+    {0x9EED, 0x70C5},+    {0x9EEE, 0x70C6},+    {0x9EEF, 0x70C7},+    {0x9EF0, 0x70C9},+    {0x9EF1, 0x70CB},+    {0x9EF2, 0x70CC},+    {0x9EF3, 0x70CD},+    {0x9EF4, 0x70CE},+    {0x9EF5, 0x70CF},+    {0x9EF6, 0x70D0},+    {0x9EF7, 0x70D1},+    {0x9EF8, 0x70D2},+    {0x9EF9, 0x70D3},+    {0x9EFA, 0x70D4},+    {0x9EFB, 0x70D5},+    {0x9EFC, 0x70D6},+    {0x9EFD, 0x70D7},+    {0x9EFE, 0x70DA},+    {0x9F40, 0x70DC},+    {0x9F41, 0x70DD},+    {0x9F42, 0x70DE},+    {0x9F43, 0x70E0},+    {0x9F44, 0x70E1},+    {0x9F45, 0x70E2},+    {0x9F46, 0x70E3},+    {0x9F47, 0x70E5},+    {0x9F48, 0x70EA},+    {0x9F49, 0x70EE},+    {0x9F4A, 0x70F0},+    {0x9F4B, 0x70F1},+    {0x9F4C, 0x70F2},+    {0x9F4D, 0x70F3},+    {0x9F4E, 0x70F4},+    {0x9F4F, 0x70F5},+    {0x9F50, 0x70F6},+    {0x9F51, 0x70F8},+    {0x9F52, 0x70FA},+    {0x9F53, 0x70FB},+    {0x9F54, 0x70FC},+    {0x9F55, 0x70FE},+    {0x9F56, 0x70FF},+    {0x9F57, 0x7100},+    {0x9F58, 0x7101},+    {0x9F59, 0x7102},+    {0x9F5A, 0x7103},+    {0x9F5B, 0x7104},+    {0x9F5C, 0x7105},+    {0x9F5D, 0x7106},+    {0x9F5E, 0x7107},+    {0x9F5F, 0x7108},+    {0x9F60, 0x710B},+    {0x9F61, 0x710C},+    {0x9F62, 0x710D},+    {0x9F63, 0x710E},+    {0x9F64, 0x710F},+    {0x9F65, 0x7111},+    {0x9F66, 0x7112},+    {0x9F67, 0x7114},+    {0x9F68, 0x7117},+    {0x9F69, 0x711B},+    {0x9F6A, 0x711C},+    {0x9F6B, 0x711D},+    {0x9F6C, 0x711E},+    {0x9F6D, 0x711F},+    {0x9F6E, 0x7120},+    {0x9F6F, 0x7121},+    {0x9F70, 0x7122},+    {0x9F71, 0x7123},+    {0x9F72, 0x7124},+    {0x9F73, 0x7125},+    {0x9F74, 0x7127},+    {0x9F75, 0x7128},+    {0x9F76, 0x7129},+    {0x9F77, 0x712A},+    {0x9F78, 0x712B},+    {0x9F79, 0x712C},+    {0x9F7A, 0x712D},+    {0x9F7B, 0x712E},+    {0x9F7C, 0x7132},+    {0x9F7D, 0x7133},+    {0x9F7E, 0x7134},+    {0x9F80, 0x7135},+    {0x9F81, 0x7137},+    {0x9F82, 0x7138},+    {0x9F83, 0x7139},+    {0x9F84, 0x713A},+    {0x9F85, 0x713B},+    {0x9F86, 0x713C},+    {0x9F87, 0x713D},+    {0x9F88, 0x713E},+    {0x9F89, 0x713F},+    {0x9F8A, 0x7140},+    {0x9F8B, 0x7141},+    {0x9F8C, 0x7142},+    {0x9F8D, 0x7143},+    {0x9F8E, 0x7144},+    {0x9F8F, 0x7146},+    {0x9F90, 0x7147},+    {0x9F91, 0x7148},+    {0x9F92, 0x7149},+    {0x9F93, 0x714B},+    {0x9F94, 0x714D},+    {0x9F95, 0x714F},+    {0x9F96, 0x7150},+    {0x9F97, 0x7151},+    {0x9F98, 0x7152},+    {0x9F99, 0x7153},+    {0x9F9A, 0x7154},+    {0x9F9B, 0x7155},+    {0x9F9C, 0x7156},+    {0x9F9D, 0x7157},+    {0x9F9E, 0x7158},+    {0x9F9F, 0x7159},+    {0x9FA0, 0x715A},+    {0x9FA1, 0x715B},+    {0x9FA2, 0x715D},+    {0x9FA3, 0x715F},+    {0x9FA4, 0x7160},+    {0x9FA5, 0x7161},+    {0x9FA6, 0x7162},+    {0x9FA7, 0x7163},+    {0x9FA8, 0x7165},+    {0x9FA9, 0x7169},+    {0x9FAA, 0x716A},+    {0x9FAB, 0x716B},+    {0x9FAC, 0x716C},+    {0x9FAD, 0x716D},+    {0x9FAE, 0x716F},+    {0x9FAF, 0x7170},+    {0x9FB0, 0x7171},+    {0x9FB1, 0x7174},+    {0x9FB2, 0x7175},+    {0x9FB3, 0x7176},+    {0x9FB4, 0x7177},+    {0x9FB5, 0x7179},+    {0x9FB6, 0x717B},+    {0x9FB7, 0x717C},+    {0x9FB8, 0x717E},+    {0x9FB9, 0x717F},+    {0x9FBA, 0x7180},+    {0x9FBB, 0x7181},+    {0x9FBC, 0x7182},+    {0x9FBD, 0x7183},+    {0x9FBE, 0x7185},+    {0x9FBF, 0x7186},+    {0x9FC0, 0x7187},+    {0x9FC1, 0x7188},+    {0x9FC2, 0x7189},+    {0x9FC3, 0x718B},+    {0x9FC4, 0x718C},+    {0x9FC5, 0x718D},+    {0x9FC6, 0x718E},+    {0x9FC7, 0x7190},+    {0x9FC8, 0x7191},+    {0x9FC9, 0x7192},+    {0x9FCA, 0x7193},+    {0x9FCB, 0x7195},+    {0x9FCC, 0x7196},+    {0x9FCD, 0x7197},+    {0x9FCE, 0x719A},+    {0x9FCF, 0x719B},+    {0x9FD0, 0x719C},+    {0x9FD1, 0x719D},+    {0x9FD2, 0x719E},+    {0x9FD3, 0x71A1},+    {0x9FD4, 0x71A2},+    {0x9FD5, 0x71A3},+    {0x9FD6, 0x71A4},+    {0x9FD7, 0x71A5},+    {0x9FD8, 0x71A6},+    {0x9FD9, 0x71A7},+    {0x9FDA, 0x71A9},+    {0x9FDB, 0x71AA},+    {0x9FDC, 0x71AB},+    {0x9FDD, 0x71AD},+    {0x9FDE, 0x71AE},+    {0x9FDF, 0x71AF},+    {0x9FE0, 0x71B0},+    {0x9FE1, 0x71B1},+    {0x9FE2, 0x71B2},+    {0x9FE3, 0x71B4},+    {0x9FE4, 0x71B6},+    {0x9FE5, 0x71B7},+    {0x9FE6, 0x71B8},+    {0x9FE7, 0x71BA},+    {0x9FE8, 0x71BB},+    {0x9FE9, 0x71BC},+    {0x9FEA, 0x71BD},+    {0x9FEB, 0x71BE},+    {0x9FEC, 0x71BF},+    {0x9FED, 0x71C0},+    {0x9FEE, 0x71C1},+    {0x9FEF, 0x71C2},+    {0x9FF0, 0x71C4},+    {0x9FF1, 0x71C5},+    {0x9FF2, 0x71C6},+    {0x9FF3, 0x71C7},+    {0x9FF4, 0x71C8},+    {0x9FF5, 0x71C9},+    {0x9FF6, 0x71CA},+    {0x9FF7, 0x71CB},+    {0x9FF8, 0x71CC},+    {0x9FF9, 0x71CD},+    {0x9FFA, 0x71CF},+    {0x9FFB, 0x71D0},+    {0x9FFC, 0x71D1},+    {0x9FFD, 0x71D2},+    {0x9FFE, 0x71D3},+    {0xA040, 0x71D6},+    {0xA041, 0x71D7},+    {0xA042, 0x71D8},+    {0xA043, 0x71D9},+    {0xA044, 0x71DA},+    {0xA045, 0x71DB},+    {0xA046, 0x71DC},+    {0xA047, 0x71DD},+    {0xA048, 0x71DE},+    {0xA049, 0x71DF},+    {0xA04A, 0x71E1},+    {0xA04B, 0x71E2},+    {0xA04C, 0x71E3},+    {0xA04D, 0x71E4},+    {0xA04E, 0x71E6},+    {0xA04F, 0x71E8},+    {0xA050, 0x71E9},+    {0xA051, 0x71EA},+    {0xA052, 0x71EB},+    {0xA053, 0x71EC},+    {0xA054, 0x71ED},+    {0xA055, 0x71EF},+    {0xA056, 0x71F0},+    {0xA057, 0x71F1},+    {0xA058, 0x71F2},+    {0xA059, 0x71F3},+    {0xA05A, 0x71F4},+    {0xA05B, 0x71F5},+    {0xA05C, 0x71F6},+    {0xA05D, 0x71F7},+    {0xA05E, 0x71F8},+    {0xA05F, 0x71FA},+    {0xA060, 0x71FB},+    {0xA061, 0x71FC},+    {0xA062, 0x71FD},+    {0xA063, 0x71FE},+    {0xA064, 0x71FF},+    {0xA065, 0x7200},+    {0xA066, 0x7201},+    {0xA067, 0x7202},+    {0xA068, 0x7203},+    {0xA069, 0x7204},+    {0xA06A, 0x7205},+    {0xA06B, 0x7207},+    {0xA06C, 0x7208},+    {0xA06D, 0x7209},+    {0xA06E, 0x720A},+    {0xA06F, 0x720B},+    {0xA070, 0x720C},+    {0xA071, 0x720D},+    {0xA072, 0x720E},+    {0xA073, 0x720F},+    {0xA074, 0x7210},+    {0xA075, 0x7211},+    {0xA076, 0x7212},+    {0xA077, 0x7213},+    {0xA078, 0x7214},+    {0xA079, 0x7215},+    {0xA07A, 0x7216},+    {0xA07B, 0x7217},+    {0xA07C, 0x7218},+    {0xA07D, 0x7219},+    {0xA07E, 0x721A},+    {0xA080, 0x721B},+    {0xA081, 0x721C},+    {0xA082, 0x721E},+    {0xA083, 0x721F},+    {0xA084, 0x7220},+    {0xA085, 0x7221},+    {0xA086, 0x7222},+    {0xA087, 0x7223},+    {0xA088, 0x7224},+    {0xA089, 0x7225},+    {0xA08A, 0x7226},+    {0xA08B, 0x7227},+    {0xA08C, 0x7229},+    {0xA08D, 0x722B},+    {0xA08E, 0x722D},+    {0xA08F, 0x722E},+    {0xA090, 0x722F},+    {0xA091, 0x7232},+    {0xA092, 0x7233},+    {0xA093, 0x7234},+    {0xA094, 0x723A},+    {0xA095, 0x723C},+    {0xA096, 0x723E},+    {0xA097, 0x7240},+    {0xA098, 0x7241},+    {0xA099, 0x7242},+    {0xA09A, 0x7243},+    {0xA09B, 0x7244},+    {0xA09C, 0x7245},+    {0xA09D, 0x7246},+    {0xA09E, 0x7249},+    {0xA09F, 0x724A},+    {0xA0A0, 0x724B},+    {0xA0A1, 0x724E},+    {0xA0A2, 0x724F},+    {0xA0A3, 0x7250},+    {0xA0A4, 0x7251},+    {0xA0A5, 0x7253},+    {0xA0A6, 0x7254},+    {0xA0A7, 0x7255},+    {0xA0A8, 0x7257},+    {0xA0A9, 0x7258},+    {0xA0AA, 0x725A},+    {0xA0AB, 0x725C},+    {0xA0AC, 0x725E},+    {0xA0AD, 0x7260},+    {0xA0AE, 0x7263},+    {0xA0AF, 0x7264},+    {0xA0B0, 0x7265},+    {0xA0B1, 0x7268},+    {0xA0B2, 0x726A},+    {0xA0B3, 0x726B},+    {0xA0B4, 0x726C},+    {0xA0B5, 0x726D},+    {0xA0B6, 0x7270},+    {0xA0B7, 0x7271},+    {0xA0B8, 0x7273},+    {0xA0B9, 0x7274},+    {0xA0BA, 0x7276},+    {0xA0BB, 0x7277},+    {0xA0BC, 0x7278},+    {0xA0BD, 0x727B},+    {0xA0BE, 0x727C},+    {0xA0BF, 0x727D},+    {0xA0C0, 0x7282},+    {0xA0C1, 0x7283},+    {0xA0C2, 0x7285},+    {0xA0C3, 0x7286},+    {0xA0C4, 0x7287},+    {0xA0C5, 0x7288},+    {0xA0C6, 0x7289},+    {0xA0C7, 0x728C},+    {0xA0C8, 0x728E},+    {0xA0C9, 0x7290},+    {0xA0CA, 0x7291},+    {0xA0CB, 0x7293},+    {0xA0CC, 0x7294},+    {0xA0CD, 0x7295},+    {0xA0CE, 0x7296},+    {0xA0CF, 0x7297},+    {0xA0D0, 0x7298},+    {0xA0D1, 0x7299},+    {0xA0D2, 0x729A},+    {0xA0D3, 0x729B},+    {0xA0D4, 0x729C},+    {0xA0D5, 0x729D},+    {0xA0D6, 0x729E},+    {0xA0D7, 0x72A0},+    {0xA0D8, 0x72A1},+    {0xA0D9, 0x72A2},+    {0xA0DA, 0x72A3},+    {0xA0DB, 0x72A4},+    {0xA0DC, 0x72A5},+    {0xA0DD, 0x72A6},+    {0xA0DE, 0x72A7},+    {0xA0DF, 0x72A8},+    {0xA0E0, 0x72A9},+    {0xA0E1, 0x72AA},+    {0xA0E2, 0x72AB},+    {0xA0E3, 0x72AE},+    {0xA0E4, 0x72B1},+    {0xA0E5, 0x72B2},+    {0xA0E6, 0x72B3},+    {0xA0E7, 0x72B5},+    {0xA0E8, 0x72BA},+    {0xA0E9, 0x72BB},+    {0xA0EA, 0x72BC},+    {0xA0EB, 0x72BD},+    {0xA0EC, 0x72BE},+    {0xA0ED, 0x72BF},+    {0xA0EE, 0x72C0},+    {0xA0EF, 0x72C5},+    {0xA0F0, 0x72C6},+    {0xA0F1, 0x72C7},+    {0xA0F2, 0x72C9},+    {0xA0F3, 0x72CA},+    {0xA0F4, 0x72CB},+    {0xA0F5, 0x72CC},+    {0xA0F6, 0x72CF},+    {0xA0F7, 0x72D1},+    {0xA0F8, 0x72D3},+    {0xA0F9, 0x72D4},+    {0xA0FA, 0x72D5},+    {0xA0FB, 0x72D6},+    {0xA0FC, 0x72D8},+    {0xA0FD, 0x72DA},+    {0xA0FE, 0x72DB},+    {0xA140, 0xE4C6},+    {0xA141, 0xE4C7},+    {0xA142, 0xE4C8},+    {0xA143, 0xE4C9},+    {0xA144, 0xE4CA},+    {0xA145, 0xE4CB},+    {0xA146, 0xE4CC},+    {0xA147, 0xE4CD},+    {0xA148, 0xE4CE},+    {0xA149, 0xE4CF},+    {0xA14A, 0xE4D0},+    {0xA14B, 0xE4D1},+    {0xA14C, 0xE4D2},+    {0xA14D, 0xE4D3},+    {0xA14E, 0xE4D4},+    {0xA14F, 0xE4D5},+    {0xA150, 0xE4D6},+    {0xA151, 0xE4D7},+    {0xA152, 0xE4D8},+    {0xA153, 0xE4D9},+    {0xA154, 0xE4DA},+    {0xA155, 0xE4DB},+    {0xA156, 0xE4DC},+    {0xA157, 0xE4DD},+    {0xA158, 0xE4DE},+    {0xA159, 0xE4DF},+    {0xA15A, 0xE4E0},+    {0xA15B, 0xE4E1},+    {0xA15C, 0xE4E2},+    {0xA15D, 0xE4E3},+    {0xA15E, 0xE4E4},+    {0xA15F, 0xE4E5},+    {0xA160, 0xE4E6},+    {0xA161, 0xE4E7},+    {0xA162, 0xE4E8},+    {0xA163, 0xE4E9},+    {0xA164, 0xE4EA},+    {0xA165, 0xE4EB},+    {0xA166, 0xE4EC},+    {0xA167, 0xE4ED},+    {0xA168, 0xE4EE},+    {0xA169, 0xE4EF},+    {0xA16A, 0xE4F0},+    {0xA16B, 0xE4F1},+    {0xA16C, 0xE4F2},+    {0xA16D, 0xE4F3},+    {0xA16E, 0xE4F4},+    {0xA16F, 0xE4F5},+    {0xA170, 0xE4F6},+    {0xA171, 0xE4F7},+    {0xA172, 0xE4F8},+    {0xA173, 0xE4F9},+    {0xA174, 0xE4FA},+    {0xA175, 0xE4FB},+    {0xA176, 0xE4FC},+    {0xA177, 0xE4FD},+    {0xA178, 0xE4FE},+    {0xA179, 0xE4FF},+    {0xA17A, 0xE500},+    {0xA17B, 0xE501},+    {0xA17C, 0xE502},+    {0xA17D, 0xE503},+    {0xA17E, 0xE504},+    {0xA180, 0xE505},+    {0xA181, 0xE506},+    {0xA182, 0xE507},+    {0xA183, 0xE508},+    {0xA184, 0xE509},+    {0xA185, 0xE50A},+    {0xA186, 0xE50B},+    {0xA187, 0xE50C},+    {0xA188, 0xE50D},+    {0xA189, 0xE50E},+    {0xA18A, 0xE50F},+    {0xA18B, 0xE510},+    {0xA18C, 0xE511},+    {0xA18D, 0xE512},+    {0xA18E, 0xE513},+    {0xA18F, 0xE514},+    {0xA190, 0xE515},+    {0xA191, 0xE516},+    {0xA192, 0xE517},+    {0xA193, 0xE518},+    {0xA194, 0xE519},+    {0xA195, 0xE51A},+    {0xA196, 0xE51B},+    {0xA197, 0xE51C},+    {0xA198, 0xE51D},+    {0xA199, 0xE51E},+    {0xA19A, 0xE51F},+    {0xA19B, 0xE520},+    {0xA19C, 0xE521},+    {0xA19D, 0xE522},+    {0xA19E, 0xE523},+    {0xA19F, 0xE524},+    {0xA1A0, 0xE525},+    {0xA1A1, 0x3000},+    {0xA1A2, 0x3001},+    {0xA1A3, 0x3002},+    {0xA1A4, 0x00B7},+    {0xA1A5, 0x02C9},+    {0xA1A6, 0x02C7},+    {0xA1A7, 0x00A8},+    {0xA1A8, 0x3003},+    {0xA1A9, 0x3005},+    {0xA1AA, 0x2014},+    {0xA1AB, 0xFF5E},+    {0xA1AC, 0x2016},+    {0xA1AD, 0x2026},+    {0xA1AE, 0x2018},+    {0xA1AF, 0x2019},+    {0xA1B0, 0x201C},+    {0xA1B1, 0x201D},+    {0xA1B2, 0x3014},+    {0xA1B3, 0x3015},+    {0xA1B4, 0x3008},+    {0xA1B5, 0x3009},+    {0xA1B6, 0x300A},+    {0xA1B7, 0x300B},+    {0xA1B8, 0x300C},+    {0xA1B9, 0x300D},+    {0xA1BA, 0x300E},+    {0xA1BB, 0x300F},+    {0xA1BC, 0x3016},+    {0xA1BD, 0x3017},+    {0xA1BE, 0x3010},+    {0xA1BF, 0x3011},+    {0xA1C0, 0x00B1},+    {0xA1C1, 0x00D7},+    {0xA1C2, 0x00F7},+    {0xA1C3, 0x2236},+    {0xA1C4, 0x2227},+    {0xA1C5, 0x2228},+    {0xA1C6, 0x2211},+    {0xA1C7, 0x220F},+    {0xA1C8, 0x222A},+    {0xA1C9, 0x2229},+    {0xA1CA, 0x2208},+    {0xA1CB, 0x2237},+    {0xA1CC, 0x221A},+    {0xA1CD, 0x22A5},+    {0xA1CE, 0x2225},+    {0xA1CF, 0x2220},+    {0xA1D0, 0x2312},+    {0xA1D1, 0x2299},+    {0xA1D2, 0x222B},+    {0xA1D3, 0x222E},+    {0xA1D4, 0x2261},+    {0xA1D5, 0x224C},+    {0xA1D6, 0x2248},+    {0xA1D7, 0x223D},+    {0xA1D8, 0x221D},+    {0xA1D9, 0x2260},+    {0xA1DA, 0x226E},+    {0xA1DB, 0x226F},+    {0xA1DC, 0x2264},+    {0xA1DD, 0x2265},+    {0xA1DE, 0x221E},+    {0xA1DF, 0x2235},+    {0xA1E0, 0x2234},+    {0xA1E1, 0x2642},+    {0xA1E2, 0x2640},+    {0xA1E3, 0x00B0},+    {0xA1E4, 0x2032},+    {0xA1E5, 0x2033},+    {0xA1E6, 0x2103},+    {0xA1E7, 0xFF04},+    {0xA1E8, 0x00A4},+    {0xA1E9, 0xFFE0},+    {0xA1EA, 0xFFE1},+    {0xA1EB, 0x2030},+    {0xA1EC, 0x00A7},+    {0xA1ED, 0x2116},+    {0xA1EE, 0x2606},+    {0xA1EF, 0x2605},+    {0xA1F0, 0x25CB},+    {0xA1F1, 0x25CF},+    {0xA1F2, 0x25CE},+    {0xA1F3, 0x25C7},+    {0xA1F4, 0x25C6},+    {0xA1F5, 0x25A1},+    {0xA1F6, 0x25A0},+    {0xA1F7, 0x25B3},+    {0xA1F8, 0x25B2},+    {0xA1F9, 0x203B},+    {0xA1FA, 0x2192},+    {0xA1FB, 0x2190},+    {0xA1FC, 0x2191},+    {0xA1FD, 0x2193},+    {0xA1FE, 0x3013},+    {0xA240, 0xE526},+    {0xA241, 0xE527},+    {0xA242, 0xE528},+    {0xA243, 0xE529},+    {0xA244, 0xE52A},+    {0xA245, 0xE52B},+    {0xA246, 0xE52C},+    {0xA247, 0xE52D},+    {0xA248, 0xE52E},+    {0xA249, 0xE52F},+    {0xA24A, 0xE530},+    {0xA24B, 0xE531},+    {0xA24C, 0xE532},+    {0xA24D, 0xE533},+    {0xA24E, 0xE534},+    {0xA24F, 0xE535},+    {0xA250, 0xE536},+    {0xA251, 0xE537},+    {0xA252, 0xE538},+    {0xA253, 0xE539},+    {0xA254, 0xE53A},+    {0xA255, 0xE53B},+    {0xA256, 0xE53C},+    {0xA257, 0xE53D},+    {0xA258, 0xE53E},+    {0xA259, 0xE53F},+    {0xA25A, 0xE540},+    {0xA25B, 0xE541},+    {0xA25C, 0xE542},+    {0xA25D, 0xE543},+    {0xA25E, 0xE544},+    {0xA25F, 0xE545},+    {0xA260, 0xE546},+    {0xA261, 0xE547},+    {0xA262, 0xE548},+    {0xA263, 0xE549},+    {0xA264, 0xE54A},+    {0xA265, 0xE54B},+    {0xA266, 0xE54C},+    {0xA267, 0xE54D},+    {0xA268, 0xE54E},+    {0xA269, 0xE54F},+    {0xA26A, 0xE550},+    {0xA26B, 0xE551},+    {0xA26C, 0xE552},+    {0xA26D, 0xE553},+    {0xA26E, 0xE554},+    {0xA26F, 0xE555},+    {0xA270, 0xE556},+    {0xA271, 0xE557},+    {0xA272, 0xE558},+    {0xA273, 0xE559},+    {0xA274, 0xE55A},+    {0xA275, 0xE55B},+    {0xA276, 0xE55C},+    {0xA277, 0xE55D},+    {0xA278, 0xE55E},+    {0xA279, 0xE55F},+    {0xA27A, 0xE560},+    {0xA27B, 0xE561},+    {0xA27C, 0xE562},+    {0xA27D, 0xE563},+    {0xA27E, 0xE564},+    {0xA280, 0xE565},+    {0xA281, 0xE566},+    {0xA282, 0xE567},+    {0xA283, 0xE568},+    {0xA284, 0xE569},+    {0xA285, 0xE56A},+    {0xA286, 0xE56B},+    {0xA287, 0xE56C},+    {0xA288, 0xE56D},+    {0xA289, 0xE56E},+    {0xA28A, 0xE56F},+    {0xA28B, 0xE570},+    {0xA28C, 0xE571},+    {0xA28D, 0xE572},+    {0xA28E, 0xE573},+    {0xA28F, 0xE574},+    {0xA290, 0xE575},+    {0xA291, 0xE576},+    {0xA292, 0xE577},+    {0xA293, 0xE578},+    {0xA294, 0xE579},+    {0xA295, 0xE57A},+    {0xA296, 0xE57B},+    {0xA297, 0xE57C},+    {0xA298, 0xE57D},+    {0xA299, 0xE57E},+    {0xA29A, 0xE57F},+    {0xA29B, 0xE580},+    {0xA29C, 0xE581},+    {0xA29D, 0xE582},+    {0xA29E, 0xE583},+    {0xA29F, 0xE584},+    {0xA2A0, 0xE585},+    {0xA2A1, 0x2170},+    {0xA2A2, 0x2171},+    {0xA2A3, 0x2172},+    {0xA2A4, 0x2173},+    {0xA2A5, 0x2174},+    {0xA2A6, 0x2175},+    {0xA2A7, 0x2176},+    {0xA2A8, 0x2177},+    {0xA2A9, 0x2178},+    {0xA2AA, 0x2179},+    {0xA2AB, 0xE766},+    {0xA2AC, 0xE767},+    {0xA2AD, 0xE768},+    {0xA2AE, 0xE769},+    {0xA2AF, 0xE76A},+    {0xA2B0, 0xE76B},+    {0xA2B1, 0x2488},+    {0xA2B2, 0x2489},+    {0xA2B3, 0x248A},+    {0xA2B4, 0x248B},+    {0xA2B5, 0x248C},+    {0xA2B6, 0x248D},+    {0xA2B7, 0x248E},+    {0xA2B8, 0x248F},+    {0xA2B9, 0x2490},+    {0xA2BA, 0x2491},+    {0xA2BB, 0x2492},+    {0xA2BC, 0x2493},+    {0xA2BD, 0x2494},+    {0xA2BE, 0x2495},+    {0xA2BF, 0x2496},+    {0xA2C0, 0x2497},+    {0xA2C1, 0x2498},+    {0xA2C2, 0x2499},+    {0xA2C3, 0x249A},+    {0xA2C4, 0x249B},+    {0xA2C5, 0x2474},+    {0xA2C6, 0x2475},+    {0xA2C7, 0x2476},+    {0xA2C8, 0x2477},+    {0xA2C9, 0x2478},+    {0xA2CA, 0x2479},+    {0xA2CB, 0x247A},+    {0xA2CC, 0x247B},+    {0xA2CD, 0x247C},+    {0xA2CE, 0x247D},+    {0xA2CF, 0x247E},+    {0xA2D0, 0x247F},+    {0xA2D1, 0x2480},+    {0xA2D2, 0x2481},+    {0xA2D3, 0x2482},+    {0xA2D4, 0x2483},+    {0xA2D5, 0x2484},+    {0xA2D6, 0x2485},+    {0xA2D7, 0x2486},+    {0xA2D8, 0x2487},+    {0xA2D9, 0x2460},+    {0xA2DA, 0x2461},+    {0xA2DB, 0x2462},+    {0xA2DC, 0x2463},+    {0xA2DD, 0x2464},+    {0xA2DE, 0x2465},+    {0xA2DF, 0x2466},+    {0xA2E0, 0x2467},+    {0xA2E1, 0x2468},+    {0xA2E2, 0x2469},+    {0xA2E3, 0xE76C},+    {0xA2E4, 0xE76D},+    {0xA2E5, 0x3220},+    {0xA2E6, 0x3221},+    {0xA2E7, 0x3222},+    {0xA2E8, 0x3223},+    {0xA2E9, 0x3224},+    {0xA2EA, 0x3225},+    {0xA2EB, 0x3226},+    {0xA2EC, 0x3227},+    {0xA2ED, 0x3228},+    {0xA2EE, 0x3229},+    {0xA2EF, 0xE76E},+    {0xA2F0, 0xE76F},+    {0xA2F1, 0x2160},+    {0xA2F2, 0x2161},+    {0xA2F3, 0x2162},+    {0xA2F4, 0x2163},+    {0xA2F5, 0x2164},+    {0xA2F6, 0x2165},+    {0xA2F7, 0x2166},+    {0xA2F8, 0x2167},+    {0xA2F9, 0x2168},+    {0xA2FA, 0x2169},+    {0xA2FB, 0x216A},+    {0xA2FC, 0x216B},+    {0xA2FD, 0xE770},+    {0xA2FE, 0xE771},+    {0xA340, 0xE586},+    {0xA341, 0xE587},+    {0xA342, 0xE588},+    {0xA343, 0xE589},+    {0xA344, 0xE58A},+    {0xA345, 0xE58B},+    {0xA346, 0xE58C},+    {0xA347, 0xE58D},+    {0xA348, 0xE58E},+    {0xA349, 0xE58F},+    {0xA34A, 0xE590},+    {0xA34B, 0xE591},+    {0xA34C, 0xE592},+    {0xA34D, 0xE593},+    {0xA34E, 0xE594},+    {0xA34F, 0xE595},+    {0xA350, 0xE596},+    {0xA351, 0xE597},+    {0xA352, 0xE598},+    {0xA353, 0xE599},+    {0xA354, 0xE59A},+    {0xA355, 0xE59B},+    {0xA356, 0xE59C},+    {0xA357, 0xE59D},+    {0xA358, 0xE59E},+    {0xA359, 0xE59F},+    {0xA35A, 0xE5A0},+    {0xA35B, 0xE5A1},+    {0xA35C, 0xE5A2},+    {0xA35D, 0xE5A3},+    {0xA35E, 0xE5A4},+    {0xA35F, 0xE5A5},+    {0xA360, 0xE5A6},+    {0xA361, 0xE5A7},+    {0xA362, 0xE5A8},+    {0xA363, 0xE5A9},+    {0xA364, 0xE5AA},+    {0xA365, 0xE5AB},+    {0xA366, 0xE5AC},+    {0xA367, 0xE5AD},+    {0xA368, 0xE5AE},+    {0xA369, 0xE5AF},+    {0xA36A, 0xE5B0},+    {0xA36B, 0xE5B1},+    {0xA36C, 0xE5B2},+    {0xA36D, 0xE5B3},+    {0xA36E, 0xE5B4},+    {0xA36F, 0xE5B5},+    {0xA370, 0xE5B6},+    {0xA371, 0xE5B7},+    {0xA372, 0xE5B8},+    {0xA373, 0xE5B9},+    {0xA374, 0xE5BA},+    {0xA375, 0xE5BB},+    {0xA376, 0xE5BC},+    {0xA377, 0xE5BD},+    {0xA378, 0xE5BE},+    {0xA379, 0xE5BF},+    {0xA37A, 0xE5C0},+    {0xA37B, 0xE5C1},+    {0xA37C, 0xE5C2},+    {0xA37D, 0xE5C3},+    {0xA37E, 0xE5C4},+    {0xA380, 0xE5C5},+    {0xA381, 0xE5C6},+    {0xA382, 0xE5C7},+    {0xA383, 0xE5C8},+    {0xA384, 0xE5C9},+    {0xA385, 0xE5CA},+    {0xA386, 0xE5CB},+    {0xA387, 0xE5CC},+    {0xA388, 0xE5CD},+    {0xA389, 0xE5CE},+    {0xA38A, 0xE5CF},+    {0xA38B, 0xE5D0},+    {0xA38C, 0xE5D1},+    {0xA38D, 0xE5D2},+    {0xA38E, 0xE5D3},+    {0xA38F, 0xE5D4},+    {0xA390, 0xE5D5},+    {0xA391, 0xE5D6},+    {0xA392, 0xE5D7},+    {0xA393, 0xE5D8},+    {0xA394, 0xE5D9},+    {0xA395, 0xE5DA},+    {0xA396, 0xE5DB},+    {0xA397, 0xE5DC},+    {0xA398, 0xE5DD},+    {0xA399, 0xE5DE},+    {0xA39A, 0xE5DF},+    {0xA39B, 0xE5E0},+    {0xA39C, 0xE5E1},+    {0xA39D, 0xE5E2},+    {0xA39E, 0xE5E3},+    {0xA39F, 0xE5E4},+    {0xA3A0, 0xE5E5},+    {0xA3A1, 0xFF01},+    {0xA3A2, 0xFF02},+    {0xA3A3, 0xFF03},+    {0xA3A4, 0xFFE5},+    {0xA3A5, 0xFF05},+    {0xA3A6, 0xFF06},+    {0xA3A7, 0xFF07},+    {0xA3A8, 0xFF08},+    {0xA3A9, 0xFF09},+    {0xA3AA, 0xFF0A},+    {0xA3AB, 0xFF0B},+    {0xA3AC, 0xFF0C},+    {0xA3AD, 0xFF0D},+    {0xA3AE, 0xFF0E},+    {0xA3AF, 0xFF0F},+    {0xA3B0, 0xFF10},+    {0xA3B1, 0xFF11},+    {0xA3B2, 0xFF12},+    {0xA3B3, 0xFF13},+    {0xA3B4, 0xFF14},+    {0xA3B5, 0xFF15},+    {0xA3B6, 0xFF16},+    {0xA3B7, 0xFF17},+    {0xA3B8, 0xFF18},+    {0xA3B9, 0xFF19},+    {0xA3BA, 0xFF1A},+    {0xA3BB, 0xFF1B},+    {0xA3BC, 0xFF1C},+    {0xA3BD, 0xFF1D},+    {0xA3BE, 0xFF1E},+    {0xA3BF, 0xFF1F},+    {0xA3C0, 0xFF20},+    {0xA3C1, 0xFF21},+    {0xA3C2, 0xFF22},+    {0xA3C3, 0xFF23},+    {0xA3C4, 0xFF24},+    {0xA3C5, 0xFF25},+    {0xA3C6, 0xFF26},+    {0xA3C7, 0xFF27},+    {0xA3C8, 0xFF28},+    {0xA3C9, 0xFF29},+    {0xA3CA, 0xFF2A},+    {0xA3CB, 0xFF2B},+    {0xA3CC, 0xFF2C},+    {0xA3CD, 0xFF2D},+    {0xA3CE, 0xFF2E},+    {0xA3CF, 0xFF2F},+    {0xA3D0, 0xFF30},+    {0xA3D1, 0xFF31},+    {0xA3D2, 0xFF32},+    {0xA3D3, 0xFF33},+    {0xA3D4, 0xFF34},+    {0xA3D5, 0xFF35},+    {0xA3D6, 0xFF36},+    {0xA3D7, 0xFF37},+    {0xA3D8, 0xFF38},+    {0xA3D9, 0xFF39},+    {0xA3DA, 0xFF3A},+    {0xA3DB, 0xFF3B},+    {0xA3DC, 0xFF3C},+    {0xA3DD, 0xFF3D},+    {0xA3DE, 0xFF3E},+    {0xA3DF, 0xFF3F},+    {0xA3E0, 0xFF40},+    {0xA3E1, 0xFF41},+    {0xA3E2, 0xFF42},+    {0xA3E3, 0xFF43},+    {0xA3E4, 0xFF44},+    {0xA3E5, 0xFF45},+    {0xA3E6, 0xFF46},+    {0xA3E7, 0xFF47},+    {0xA3E8, 0xFF48},+    {0xA3E9, 0xFF49},+    {0xA3EA, 0xFF4A},+    {0xA3EB, 0xFF4B},+    {0xA3EC, 0xFF4C},+    {0xA3ED, 0xFF4D},+    {0xA3EE, 0xFF4E},+    {0xA3EF, 0xFF4F},+    {0xA3F0, 0xFF50},+    {0xA3F1, 0xFF51},+    {0xA3F2, 0xFF52},+    {0xA3F3, 0xFF53},+    {0xA3F4, 0xFF54},+    {0xA3F5, 0xFF55},+    {0xA3F6, 0xFF56},+    {0xA3F7, 0xFF57},+    {0xA3F8, 0xFF58},+    {0xA3F9, 0xFF59},+    {0xA3FA, 0xFF5A},+    {0xA3FB, 0xFF5B},+    {0xA3FC, 0xFF5C},+    {0xA3FD, 0xFF5D},+    {0xA3FE, 0xFFE3},+    {0xA440, 0xE5E6},+    {0xA441, 0xE5E7},+    {0xA442, 0xE5E8},+    {0xA443, 0xE5E9},+    {0xA444, 0xE5EA},+    {0xA445, 0xE5EB},+    {0xA446, 0xE5EC},+    {0xA447, 0xE5ED},+    {0xA448, 0xE5EE},+    {0xA449, 0xE5EF},+    {0xA44A, 0xE5F0},+    {0xA44B, 0xE5F1},+    {0xA44C, 0xE5F2},+    {0xA44D, 0xE5F3},+    {0xA44E, 0xE5F4},+    {0xA44F, 0xE5F5},+    {0xA450, 0xE5F6},+    {0xA451, 0xE5F7},+    {0xA452, 0xE5F8},+    {0xA453, 0xE5F9},+    {0xA454, 0xE5FA},+    {0xA455, 0xE5FB},+    {0xA456, 0xE5FC},+    {0xA457, 0xE5FD},+    {0xA458, 0xE5FE},+    {0xA459, 0xE5FF},+    {0xA45A, 0xE600},+    {0xA45B, 0xE601},+    {0xA45C, 0xE602},+    {0xA45D, 0xE603},+    {0xA45E, 0xE604},+    {0xA45F, 0xE605},+    {0xA460, 0xE606},+    {0xA461, 0xE607},+    {0xA462, 0xE608},+    {0xA463, 0xE609},+    {0xA464, 0xE60A},+    {0xA465, 0xE60B},+    {0xA466, 0xE60C},+    {0xA467, 0xE60D},+    {0xA468, 0xE60E},+    {0xA469, 0xE60F},+    {0xA46A, 0xE610},+    {0xA46B, 0xE611},+    {0xA46C, 0xE612},+    {0xA46D, 0xE613},+    {0xA46E, 0xE614},+    {0xA46F, 0xE615},+    {0xA470, 0xE616},+    {0xA471, 0xE617},+    {0xA472, 0xE618},+    {0xA473, 0xE619},+    {0xA474, 0xE61A},+    {0xA475, 0xE61B},+    {0xA476, 0xE61C},+    {0xA477, 0xE61D},+    {0xA478, 0xE61E},+    {0xA479, 0xE61F},+    {0xA47A, 0xE620},+    {0xA47B, 0xE621},+    {0xA47C, 0xE622},+    {0xA47D, 0xE623},+    {0xA47E, 0xE624},+    {0xA480, 0xE625},+    {0xA481, 0xE626},+    {0xA482, 0xE627},+    {0xA483, 0xE628},+    {0xA484, 0xE629},+    {0xA485, 0xE62A},+    {0xA486, 0xE62B},+    {0xA487, 0xE62C},+    {0xA488, 0xE62D},+    {0xA489, 0xE62E},+    {0xA48A, 0xE62F},+    {0xA48B, 0xE630},+    {0xA48C, 0xE631},+    {0xA48D, 0xE632},+    {0xA48E, 0xE633},+    {0xA48F, 0xE634},+    {0xA490, 0xE635},+    {0xA491, 0xE636},+    {0xA492, 0xE637},+    {0xA493, 0xE638},+    {0xA494, 0xE639},+    {0xA495, 0xE63A},+    {0xA496, 0xE63B},+    {0xA497, 0xE63C},+    {0xA498, 0xE63D},+    {0xA499, 0xE63E},+    {0xA49A, 0xE63F},+    {0xA49B, 0xE640},+    {0xA49C, 0xE641},+    {0xA49D, 0xE642},+    {0xA49E, 0xE643},+    {0xA49F, 0xE644},+    {0xA4A0, 0xE645},+    {0xA4A1, 0x3041},+    {0xA4A2, 0x3042},+    {0xA4A3, 0x3043},+    {0xA4A4, 0x3044},+    {0xA4A5, 0x3045},+    {0xA4A6, 0x3046},+    {0xA4A7, 0x3047},+    {0xA4A8, 0x3048},+    {0xA4A9, 0x3049},+    {0xA4AA, 0x304A},+    {0xA4AB, 0x304B},+    {0xA4AC, 0x304C},+    {0xA4AD, 0x304D},+    {0xA4AE, 0x304E},+    {0xA4AF, 0x304F},+    {0xA4B0, 0x3050},+    {0xA4B1, 0x3051},+    {0xA4B2, 0x3052},+    {0xA4B3, 0x3053},+    {0xA4B4, 0x3054},+    {0xA4B5, 0x3055},+    {0xA4B6, 0x3056},+    {0xA4B7, 0x3057},+    {0xA4B8, 0x3058},+    {0xA4B9, 0x3059},+    {0xA4BA, 0x305A},+    {0xA4BB, 0x305B},+    {0xA4BC, 0x305C},+    {0xA4BD, 0x305D},+    {0xA4BE, 0x305E},+    {0xA4BF, 0x305F},+    {0xA4C0, 0x3060},+    {0xA4C1, 0x3061},+    {0xA4C2, 0x3062},+    {0xA4C3, 0x3063},+    {0xA4C4, 0x3064},+    {0xA4C5, 0x3065},+    {0xA4C6, 0x3066},+    {0xA4C7, 0x3067},+    {0xA4C8, 0x3068},+    {0xA4C9, 0x3069},+    {0xA4CA, 0x306A},+    {0xA4CB, 0x306B},+    {0xA4CC, 0x306C},+    {0xA4CD, 0x306D},+    {0xA4CE, 0x306E},+    {0xA4CF, 0x306F},+    {0xA4D0, 0x3070},+    {0xA4D1, 0x3071},+    {0xA4D2, 0x3072},+    {0xA4D3, 0x3073},+    {0xA4D4, 0x3074},+    {0xA4D5, 0x3075},+    {0xA4D6, 0x3076},+    {0xA4D7, 0x3077},+    {0xA4D8, 0x3078},+    {0xA4D9, 0x3079},+    {0xA4DA, 0x307A},+    {0xA4DB, 0x307B},+    {0xA4DC, 0x307C},+    {0xA4DD, 0x307D},+    {0xA4DE, 0x307E},+    {0xA4DF, 0x307F},+    {0xA4E0, 0x3080},+    {0xA4E1, 0x3081},+    {0xA4E2, 0x3082},+    {0xA4E3, 0x3083},+    {0xA4E4, 0x3084},+    {0xA4E5, 0x3085},+    {0xA4E6, 0x3086},+    {0xA4E7, 0x3087},+    {0xA4E8, 0x3088},+    {0xA4E9, 0x3089},+    {0xA4EA, 0x308A},+    {0xA4EB, 0x308B},+    {0xA4EC, 0x308C},+    {0xA4ED, 0x308D},+    {0xA4EE, 0x308E},+    {0xA4EF, 0x308F},+    {0xA4F0, 0x3090},+    {0xA4F1, 0x3091},+    {0xA4F2, 0x3092},+    {0xA4F3, 0x3093},+    {0xA4F4, 0xE772},+    {0xA4F5, 0xE773},+    {0xA4F6, 0xE774},+    {0xA4F7, 0xE775},+    {0xA4F8, 0xE776},+    {0xA4F9, 0xE777},+    {0xA4FA, 0xE778},+    {0xA4FB, 0xE779},+    {0xA4FC, 0xE77A},+    {0xA4FD, 0xE77B},+    {0xA4FE, 0xE77C},+    {0xA540, 0xE646},+    {0xA541, 0xE647},+    {0xA542, 0xE648},+    {0xA543, 0xE649},+    {0xA544, 0xE64A},+    {0xA545, 0xE64B},+    {0xA546, 0xE64C},+    {0xA547, 0xE64D},+    {0xA548, 0xE64E},+    {0xA549, 0xE64F},+    {0xA54A, 0xE650},+    {0xA54B, 0xE651},+    {0xA54C, 0xE652},+    {0xA54D, 0xE653},+    {0xA54E, 0xE654},+    {0xA54F, 0xE655},+    {0xA550, 0xE656},+    {0xA551, 0xE657},+    {0xA552, 0xE658},+    {0xA553, 0xE659},+    {0xA554, 0xE65A},+    {0xA555, 0xE65B},+    {0xA556, 0xE65C},+    {0xA557, 0xE65D},+    {0xA558, 0xE65E},+    {0xA559, 0xE65F},+    {0xA55A, 0xE660},+    {0xA55B, 0xE661},+    {0xA55C, 0xE662},+    {0xA55D, 0xE663},+    {0xA55E, 0xE664},+    {0xA55F, 0xE665},+    {0xA560, 0xE666},+    {0xA561, 0xE667},+    {0xA562, 0xE668},+    {0xA563, 0xE669},+    {0xA564, 0xE66A},+    {0xA565, 0xE66B},+    {0xA566, 0xE66C},+    {0xA567, 0xE66D},+    {0xA568, 0xE66E},+    {0xA569, 0xE66F},+    {0xA56A, 0xE670},+    {0xA56B, 0xE671},+    {0xA56C, 0xE672},+    {0xA56D, 0xE673},+    {0xA56E, 0xE674},+    {0xA56F, 0xE675},+    {0xA570, 0xE676},+    {0xA571, 0xE677},+    {0xA572, 0xE678},+    {0xA573, 0xE679},+    {0xA574, 0xE67A},+    {0xA575, 0xE67B},+    {0xA576, 0xE67C},+    {0xA577, 0xE67D},+    {0xA578, 0xE67E},+    {0xA579, 0xE67F},+    {0xA57A, 0xE680},+    {0xA57B, 0xE681},+    {0xA57C, 0xE682},+    {0xA57D, 0xE683},+    {0xA57E, 0xE684},+    {0xA580, 0xE685},+    {0xA581, 0xE686},+    {0xA582, 0xE687},+    {0xA583, 0xE688},+    {0xA584, 0xE689},+    {0xA585, 0xE68A},+    {0xA586, 0xE68B},+    {0xA587, 0xE68C},+    {0xA588, 0xE68D},+    {0xA589, 0xE68E},+    {0xA58A, 0xE68F},+    {0xA58B, 0xE690},+    {0xA58C, 0xE691},+    {0xA58D, 0xE692},+    {0xA58E, 0xE693},+    {0xA58F, 0xE694},+    {0xA590, 0xE695},+    {0xA591, 0xE696},+    {0xA592, 0xE697},+    {0xA593, 0xE698},+    {0xA594, 0xE699},+    {0xA595, 0xE69A},+    {0xA596, 0xE69B},+    {0xA597, 0xE69C},+    {0xA598, 0xE69D},+    {0xA599, 0xE69E},+    {0xA59A, 0xE69F},+    {0xA59B, 0xE6A0},+    {0xA59C, 0xE6A1},+    {0xA59D, 0xE6A2},+    {0xA59E, 0xE6A3},+    {0xA59F, 0xE6A4},+    {0xA5A0, 0xE6A5},+    {0xA5A1, 0x30A1},+    {0xA5A2, 0x30A2},+    {0xA5A3, 0x30A3},+    {0xA5A4, 0x30A4},+    {0xA5A5, 0x30A5},+    {0xA5A6, 0x30A6},+    {0xA5A7, 0x30A7},+    {0xA5A8, 0x30A8},+    {0xA5A9, 0x30A9},+    {0xA5AA, 0x30AA},+    {0xA5AB, 0x30AB},+    {0xA5AC, 0x30AC},+    {0xA5AD, 0x30AD},+    {0xA5AE, 0x30AE},+    {0xA5AF, 0x30AF},+    {0xA5B0, 0x30B0},+    {0xA5B1, 0x30B1},+    {0xA5B2, 0x30B2},+    {0xA5B3, 0x30B3},+    {0xA5B4, 0x30B4},+    {0xA5B5, 0x30B5},+    {0xA5B6, 0x30B6},+    {0xA5B7, 0x30B7},+    {0xA5B8, 0x30B8},+    {0xA5B9, 0x30B9},+    {0xA5BA, 0x30BA},+    {0xA5BB, 0x30BB},+    {0xA5BC, 0x30BC},+    {0xA5BD, 0x30BD},+    {0xA5BE, 0x30BE},+    {0xA5BF, 0x30BF},+    {0xA5C0, 0x30C0},+    {0xA5C1, 0x30C1},+    {0xA5C2, 0x30C2},+    {0xA5C3, 0x30C3},+    {0xA5C4, 0x30C4},+    {0xA5C5, 0x30C5},+    {0xA5C6, 0x30C6},+    {0xA5C7, 0x30C7},+    {0xA5C8, 0x30C8},+    {0xA5C9, 0x30C9},+    {0xA5CA, 0x30CA},+    {0xA5CB, 0x30CB},+    {0xA5CC, 0x30CC},+    {0xA5CD, 0x30CD},+    {0xA5CE, 0x30CE},+    {0xA5CF, 0x30CF},+    {0xA5D0, 0x30D0},+    {0xA5D1, 0x30D1},+    {0xA5D2, 0x30D2},+    {0xA5D3, 0x30D3},+    {0xA5D4, 0x30D4},+    {0xA5D5, 0x30D5},+    {0xA5D6, 0x30D6},+    {0xA5D7, 0x30D7},+    {0xA5D8, 0x30D8},+    {0xA5D9, 0x30D9},+    {0xA5DA, 0x30DA},+    {0xA5DB, 0x30DB},+    {0xA5DC, 0x30DC},+    {0xA5DD, 0x30DD},+    {0xA5DE, 0x30DE},+    {0xA5DF, 0x30DF},+    {0xA5E0, 0x30E0},+    {0xA5E1, 0x30E1},+    {0xA5E2, 0x30E2},+    {0xA5E3, 0x30E3},+    {0xA5E4, 0x30E4},+    {0xA5E5, 0x30E5},+    {0xA5E6, 0x30E6},+    {0xA5E7, 0x30E7},+    {0xA5E8, 0x30E8},+    {0xA5E9, 0x30E9},+    {0xA5EA, 0x30EA},+    {0xA5EB, 0x30EB},+    {0xA5EC, 0x30EC},+    {0xA5ED, 0x30ED},+    {0xA5EE, 0x30EE},+    {0xA5EF, 0x30EF},+    {0xA5F0, 0x30F0},+    {0xA5F1, 0x30F1},+    {0xA5F2, 0x30F2},+    {0xA5F3, 0x30F3},+    {0xA5F4, 0x30F4},+    {0xA5F5, 0x30F5},+    {0xA5F6, 0x30F6},+    {0xA5F7, 0xE77D},+    {0xA5F8, 0xE77E},+    {0xA5F9, 0xE77F},+    {0xA5FA, 0xE780},+    {0xA5FB, 0xE781},+    {0xA5FC, 0xE782},+    {0xA5FD, 0xE783},+    {0xA5FE, 0xE784},+    {0xA640, 0xE6A6},+    {0xA641, 0xE6A7},+    {0xA642, 0xE6A8},+    {0xA643, 0xE6A9},+    {0xA644, 0xE6AA},+    {0xA645, 0xE6AB},+    {0xA646, 0xE6AC},+    {0xA647, 0xE6AD},+    {0xA648, 0xE6AE},+    {0xA649, 0xE6AF},+    {0xA64A, 0xE6B0},+    {0xA64B, 0xE6B1},+    {0xA64C, 0xE6B2},+    {0xA64D, 0xE6B3},+    {0xA64E, 0xE6B4},+    {0xA64F, 0xE6B5},+    {0xA650, 0xE6B6},+    {0xA651, 0xE6B7},+    {0xA652, 0xE6B8},+    {0xA653, 0xE6B9},+    {0xA654, 0xE6BA},+    {0xA655, 0xE6BB},+    {0xA656, 0xE6BC},+    {0xA657, 0xE6BD},+    {0xA658, 0xE6BE},+    {0xA659, 0xE6BF},+    {0xA65A, 0xE6C0},+    {0xA65B, 0xE6C1},+    {0xA65C, 0xE6C2},+    {0xA65D, 0xE6C3},+    {0xA65E, 0xE6C4},+    {0xA65F, 0xE6C5},+    {0xA660, 0xE6C6},+    {0xA661, 0xE6C7},+    {0xA662, 0xE6C8},+    {0xA663, 0xE6C9},+    {0xA664, 0xE6CA},+    {0xA665, 0xE6CB},+    {0xA666, 0xE6CC},+    {0xA667, 0xE6CD},+    {0xA668, 0xE6CE},+    {0xA669, 0xE6CF},+    {0xA66A, 0xE6D0},+    {0xA66B, 0xE6D1},+    {0xA66C, 0xE6D2},+    {0xA66D, 0xE6D3},+    {0xA66E, 0xE6D4},+    {0xA66F, 0xE6D5},+    {0xA670, 0xE6D6},+    {0xA671, 0xE6D7},+    {0xA672, 0xE6D8},+    {0xA673, 0xE6D9},+    {0xA674, 0xE6DA},+    {0xA675, 0xE6DB},+    {0xA676, 0xE6DC},+    {0xA677, 0xE6DD},+    {0xA678, 0xE6DE},+    {0xA679, 0xE6DF},+    {0xA67A, 0xE6E0},+    {0xA67B, 0xE6E1},+    {0xA67C, 0xE6E2},+    {0xA67D, 0xE6E3},+    {0xA67E, 0xE6E4},+    {0xA680, 0xE6E5},+    {0xA681, 0xE6E6},+    {0xA682, 0xE6E7},+    {0xA683, 0xE6E8},+    {0xA684, 0xE6E9},+    {0xA685, 0xE6EA},+    {0xA686, 0xE6EB},+    {0xA687, 0xE6EC},+    {0xA688, 0xE6ED},+    {0xA689, 0xE6EE},+    {0xA68A, 0xE6EF},+    {0xA68B, 0xE6F0},+    {0xA68C, 0xE6F1},+    {0xA68D, 0xE6F2},+    {0xA68E, 0xE6F3},+    {0xA68F, 0xE6F4},+    {0xA690, 0xE6F5},+    {0xA691, 0xE6F6},+    {0xA692, 0xE6F7},+    {0xA693, 0xE6F8},+    {0xA694, 0xE6F9},+    {0xA695, 0xE6FA},+    {0xA696, 0xE6FB},+    {0xA697, 0xE6FC},+    {0xA698, 0xE6FD},+    {0xA699, 0xE6FE},+    {0xA69A, 0xE6FF},+    {0xA69B, 0xE700},+    {0xA69C, 0xE701},+    {0xA69D, 0xE702},+    {0xA69E, 0xE703},+    {0xA69F, 0xE704},+    {0xA6A0, 0xE705},+    {0xA6A1, 0x0391},+    {0xA6A2, 0x0392},+    {0xA6A3, 0x0393},+    {0xA6A4, 0x0394},+    {0xA6A5, 0x0395},+    {0xA6A6, 0x0396},+    {0xA6A7, 0x0397},+    {0xA6A8, 0x0398},+    {0xA6A9, 0x0399},+    {0xA6AA, 0x039A},+    {0xA6AB, 0x039B},+    {0xA6AC, 0x039C},+    {0xA6AD, 0x039D},+    {0xA6AE, 0x039E},+    {0xA6AF, 0x039F},+    {0xA6B0, 0x03A0},+    {0xA6B1, 0x03A1},+    {0xA6B2, 0x03A3},+    {0xA6B3, 0x03A4},+    {0xA6B4, 0x03A5},+    {0xA6B5, 0x03A6},+    {0xA6B6, 0x03A7},+    {0xA6B7, 0x03A8},+    {0xA6B8, 0x03A9},+    {0xA6B9, 0xE785},+    {0xA6BA, 0xE786},+    {0xA6BB, 0xE787},+    {0xA6BC, 0xE788},+    {0xA6BD, 0xE789},+    {0xA6BE, 0xE78A},+    {0xA6BF, 0xE78B},+    {0xA6C0, 0xE78C},+    {0xA6C1, 0x03B1},+    {0xA6C2, 0x03B2},+    {0xA6C3, 0x03B3},+    {0xA6C4, 0x03B4},+    {0xA6C5, 0x03B5},+    {0xA6C6, 0x03B6},+    {0xA6C7, 0x03B7},+    {0xA6C8, 0x03B8},+    {0xA6C9, 0x03B9},+    {0xA6CA, 0x03BA},+    {0xA6CB, 0x03BB},+    {0xA6CC, 0x03BC},+    {0xA6CD, 0x03BD},+    {0xA6CE, 0x03BE},+    {0xA6CF, 0x03BF},+    {0xA6D0, 0x03C0},+    {0xA6D1, 0x03C1},+    {0xA6D2, 0x03C3},+    {0xA6D3, 0x03C4},+    {0xA6D4, 0x03C5},+    {0xA6D5, 0x03C6},+    {0xA6D6, 0x03C7},+    {0xA6D7, 0x03C8},+    {0xA6D8, 0x03C9},+    {0xA6D9, 0xE78D},+    {0xA6DA, 0xE78E},+    {0xA6DB, 0xE78F},+    {0xA6DC, 0xE790},+    {0xA6DD, 0xE791},+    {0xA6DE, 0xE792},+    {0xA6DF, 0xE793},+    {0xA6E0, 0xFE35},+    {0xA6E1, 0xFE36},+    {0xA6E2, 0xFE39},+    {0xA6E3, 0xFE3A},+    {0xA6E4, 0xFE3F},+    {0xA6E5, 0xFE40},+    {0xA6E6, 0xFE3D},+    {0xA6E7, 0xFE3E},+    {0xA6E8, 0xFE41},+    {0xA6E9, 0xFE42},+    {0xA6EA, 0xFE43},+    {0xA6EB, 0xFE44},+    {0xA6EC, 0xE794},+    {0xA6ED, 0xE795},+    {0xA6EE, 0xFE3B},+    {0xA6EF, 0xFE3C},+    {0xA6F0, 0xFE37},+    {0xA6F1, 0xFE38},+    {0xA6F2, 0xFE31},+    {0xA6F3, 0xE796},+    {0xA6F4, 0xFE33},+    {0xA6F5, 0xFE34},+    {0xA6F6, 0xE797},+    {0xA6F7, 0xE798},+    {0xA6F8, 0xE799},+    {0xA6F9, 0xE79A},+    {0xA6FA, 0xE79B},+    {0xA6FB, 0xE79C},+    {0xA6FC, 0xE79D},+    {0xA6FD, 0xE79E},+    {0xA6FE, 0xE79F},+    {0xA740, 0xE706},+    {0xA741, 0xE707},+    {0xA742, 0xE708},+    {0xA743, 0xE709},+    {0xA744, 0xE70A},+    {0xA745, 0xE70B},+    {0xA746, 0xE70C},+    {0xA747, 0xE70D},+    {0xA748, 0xE70E},+    {0xA749, 0xE70F},+    {0xA74A, 0xE710},+    {0xA74B, 0xE711},+    {0xA74C, 0xE712},+    {0xA74D, 0xE713},+    {0xA74E, 0xE714},+    {0xA74F, 0xE715},+    {0xA750, 0xE716},+    {0xA751, 0xE717},+    {0xA752, 0xE718},+    {0xA753, 0xE719},+    {0xA754, 0xE71A},+    {0xA755, 0xE71B},+    {0xA756, 0xE71C},+    {0xA757, 0xE71D},+    {0xA758, 0xE71E},+    {0xA759, 0xE71F},+    {0xA75A, 0xE720},+    {0xA75B, 0xE721},+    {0xA75C, 0xE722},+    {0xA75D, 0xE723},+    {0xA75E, 0xE724},+    {0xA75F, 0xE725},+    {0xA760, 0xE726},+    {0xA761, 0xE727},+    {0xA762, 0xE728},+    {0xA763, 0xE729},+    {0xA764, 0xE72A},+    {0xA765, 0xE72B},+    {0xA766, 0xE72C},+    {0xA767, 0xE72D},+    {0xA768, 0xE72E},+    {0xA769, 0xE72F},+    {0xA76A, 0xE730},+    {0xA76B, 0xE731},+    {0xA76C, 0xE732},+    {0xA76D, 0xE733},+    {0xA76E, 0xE734},+    {0xA76F, 0xE735},+    {0xA770, 0xE736},+    {0xA771, 0xE737},+    {0xA772, 0xE738},+    {0xA773, 0xE739},+    {0xA774, 0xE73A},+    {0xA775, 0xE73B},+    {0xA776, 0xE73C},+    {0xA777, 0xE73D},+    {0xA778, 0xE73E},+    {0xA779, 0xE73F},+    {0xA77A, 0xE740},+    {0xA77B, 0xE741},+    {0xA77C, 0xE742},+    {0xA77D, 0xE743},+    {0xA77E, 0xE744},+    {0xA780, 0xE745},+    {0xA781, 0xE746},+    {0xA782, 0xE747},+    {0xA783, 0xE748},+    {0xA784, 0xE749},+    {0xA785, 0xE74A},+    {0xA786, 0xE74B},+    {0xA787, 0xE74C},+    {0xA788, 0xE74D},+    {0xA789, 0xE74E},+    {0xA78A, 0xE74F},+    {0xA78B, 0xE750},+    {0xA78C, 0xE751},+    {0xA78D, 0xE752},+    {0xA78E, 0xE753},+    {0xA78F, 0xE754},+    {0xA790, 0xE755},+    {0xA791, 0xE756},+    {0xA792, 0xE757},+    {0xA793, 0xE758},+    {0xA794, 0xE759},+    {0xA795, 0xE75A},+    {0xA796, 0xE75B},+    {0xA797, 0xE75C},+    {0xA798, 0xE75D},+    {0xA799, 0xE75E},+    {0xA79A, 0xE75F},+    {0xA79B, 0xE760},+    {0xA79C, 0xE761},+    {0xA79D, 0xE762},+    {0xA79E, 0xE763},+    {0xA79F, 0xE764},+    {0xA7A0, 0xE765},+    {0xA7A1, 0x0410},+    {0xA7A2, 0x0411},+    {0xA7A3, 0x0412},+    {0xA7A4, 0x0413},+    {0xA7A5, 0x0414},+    {0xA7A6, 0x0415},+    {0xA7A7, 0x0401},+    {0xA7A8, 0x0416},+    {0xA7A9, 0x0417},+    {0xA7AA, 0x0418},+    {0xA7AB, 0x0419},+    {0xA7AC, 0x041A},+    {0xA7AD, 0x041B},+    {0xA7AE, 0x041C},+    {0xA7AF, 0x041D},+    {0xA7B0, 0x041E},+    {0xA7B1, 0x041F},+    {0xA7B2, 0x0420},+    {0xA7B3, 0x0421},+    {0xA7B4, 0x0422},+    {0xA7B5, 0x0423},+    {0xA7B6, 0x0424},+    {0xA7B7, 0x0425},+    {0xA7B8, 0x0426},+    {0xA7B9, 0x0427},+    {0xA7BA, 0x0428},+    {0xA7BB, 0x0429},+    {0xA7BC, 0x042A},+    {0xA7BD, 0x042B},+    {0xA7BE, 0x042C},+    {0xA7BF, 0x042D},+    {0xA7C0, 0x042E},+    {0xA7C1, 0x042F},+    {0xA7C2, 0xE7A0},+    {0xA7C3, 0xE7A1},+    {0xA7C4, 0xE7A2},+    {0xA7C5, 0xE7A3},+    {0xA7C6, 0xE7A4},+    {0xA7C7, 0xE7A5},+    {0xA7C8, 0xE7A6},+    {0xA7C9, 0xE7A7},+    {0xA7CA, 0xE7A8},+    {0xA7CB, 0xE7A9},+    {0xA7CC, 0xE7AA},+    {0xA7CD, 0xE7AB},+    {0xA7CE, 0xE7AC},+    {0xA7CF, 0xE7AD},+    {0xA7D0, 0xE7AE},+    {0xA7D1, 0x0430},+    {0xA7D2, 0x0431},+    {0xA7D3, 0x0432},+    {0xA7D4, 0x0433},+    {0xA7D5, 0x0434},+    {0xA7D6, 0x0435},+    {0xA7D7, 0x0451},+    {0xA7D8, 0x0436},+    {0xA7D9, 0x0437},+    {0xA7DA, 0x0438},+    {0xA7DB, 0x0439},+    {0xA7DC, 0x043A},+    {0xA7DD, 0x043B},+    {0xA7DE, 0x043C},+    {0xA7DF, 0x043D},+    {0xA7E0, 0x043E},+    {0xA7E1, 0x043F},+    {0xA7E2, 0x0440},+    {0xA7E3, 0x0441},+    {0xA7E4, 0x0442},+    {0xA7E5, 0x0443},+    {0xA7E6, 0x0444},+    {0xA7E7, 0x0445},+    {0xA7E8, 0x0446},+    {0xA7E9, 0x0447},+    {0xA7EA, 0x0448},+    {0xA7EB, 0x0449},+    {0xA7EC, 0x044A},+    {0xA7ED, 0x044B},+    {0xA7EE, 0x044C},+    {0xA7EF, 0x044D},+    {0xA7F0, 0x044E},+    {0xA7F1, 0x044F},+    {0xA7F2, 0xE7AF},+    {0xA7F3, 0xE7B0},+    {0xA7F4, 0xE7B1},+    {0xA7F5, 0xE7B2},+    {0xA7F6, 0xE7B3},+    {0xA7F7, 0xE7B4},+    {0xA7F8, 0xE7B5},+    {0xA7F9, 0xE7B6},+    {0xA7FA, 0xE7B7},+    {0xA7FB, 0xE7B8},+    {0xA7FC, 0xE7B9},+    {0xA7FD, 0xE7BA},+    {0xA7FE, 0xE7BB},+    {0xA840, 0x02CA},+    {0xA841, 0x02CB},+    {0xA842, 0x02D9},+    {0xA843, 0x2013},+    {0xA844, 0x2015},+    {0xA845, 0x2025},+    {0xA846, 0x2035},+    {0xA847, 0x2105},+    {0xA848, 0x2109},+    {0xA849, 0x2196},+    {0xA84A, 0x2197},+    {0xA84B, 0x2198},+    {0xA84C, 0x2199},+    {0xA84D, 0x2215},+    {0xA84E, 0x221F},+    {0xA84F, 0x2223},+    {0xA850, 0x2252},+    {0xA851, 0x2266},+    {0xA852, 0x2267},+    {0xA853, 0x22BF},+    {0xA854, 0x2550},+    {0xA855, 0x2551},+    {0xA856, 0x2552},+    {0xA857, 0x2553},+    {0xA858, 0x2554},+    {0xA859, 0x2555},+    {0xA85A, 0x2556},+    {0xA85B, 0x2557},+    {0xA85C, 0x2558},+    {0xA85D, 0x2559},+    {0xA85E, 0x255A},+    {0xA85F, 0x255B},+    {0xA860, 0x255C},+    {0xA861, 0x255D},+    {0xA862, 0x255E},+    {0xA863, 0x255F},+    {0xA864, 0x2560},+    {0xA865, 0x2561},+    {0xA866, 0x2562},+    {0xA867, 0x2563},+    {0xA868, 0x2564},+    {0xA869, 0x2565},+    {0xA86A, 0x2566},+    {0xA86B, 0x2567},+    {0xA86C, 0x2568},+    {0xA86D, 0x2569},+    {0xA86E, 0x256A},+    {0xA86F, 0x256B},+    {0xA870, 0x256C},+    {0xA871, 0x256D},+    {0xA872, 0x256E},+    {0xA873, 0x256F},+    {0xA874, 0x2570},+    {0xA875, 0x2571},+    {0xA876, 0x2572},+    {0xA877, 0x2573},+    {0xA878, 0x2581},+    {0xA879, 0x2582},+    {0xA87A, 0x2583},+    {0xA87B, 0x2584},+    {0xA87C, 0x2585},+    {0xA87D, 0x2586},+    {0xA87E, 0x2587},+    {0xA880, 0x2588},+    {0xA881, 0x2589},+    {0xA882, 0x258A},+    {0xA883, 0x258B},+    {0xA884, 0x258C},+    {0xA885, 0x258D},+    {0xA886, 0x258E},+    {0xA887, 0x258F},+    {0xA888, 0x2593},+    {0xA889, 0x2594},+    {0xA88A, 0x2595},+    {0xA88B, 0x25BC},+    {0xA88C, 0x25BD},+    {0xA88D, 0x25E2},+    {0xA88E, 0x25E3},+    {0xA88F, 0x25E4},+    {0xA890, 0x25E5},+    {0xA891, 0x2609},+    {0xA892, 0x2295},+    {0xA893, 0x3012},+    {0xA894, 0x301D},+    {0xA895, 0x301E},+    {0xA896, 0xE7BC},+    {0xA897, 0xE7BD},+    {0xA898, 0xE7BE},+    {0xA899, 0xE7BF},+    {0xA89A, 0xE7C0},+    {0xA89B, 0xE7C1},+    {0xA89C, 0xE7C2},+    {0xA89D, 0xE7C3},+    {0xA89E, 0xE7C4},+    {0xA89F, 0xE7C5},+    {0xA8A0, 0xE7C6},+    {0xA8A1, 0x0101},+    {0xA8A2, 0x00E1},+    {0xA8A3, 0x01CE},+    {0xA8A4, 0x00E0},+    {0xA8A5, 0x0113},+    {0xA8A6, 0x00E9},+    {0xA8A7, 0x011B},+    {0xA8A8, 0x00E8},+    {0xA8A9, 0x012B},+    {0xA8AA, 0x00ED},+    {0xA8AB, 0x01D0},+    {0xA8AC, 0x00EC},+    {0xA8AD, 0x014D},+    {0xA8AE, 0x00F3},+    {0xA8AF, 0x01D2},+    {0xA8B0, 0x00F2},+    {0xA8B1, 0x016B},+    {0xA8B2, 0x00FA},+    {0xA8B3, 0x01D4},+    {0xA8B4, 0x00F9},+    {0xA8B5, 0x01D6},+    {0xA8B6, 0x01D8},+    {0xA8B7, 0x01DA},+    {0xA8B8, 0x01DC},+    {0xA8B9, 0x00FC},+    {0xA8BA, 0x00EA},+    {0xA8BB, 0x0251},+    {0xA8BC, 0x1E3F},+    {0xA8BD, 0x0144},+    {0xA8BE, 0x0148},+    {0xA8BF, 0xE7C8},+    {0xA8C0, 0x0261},+    {0xA8C1, 0xE7C9},+    {0xA8C2, 0xE7CA},+    {0xA8C3, 0xE7CB},+    {0xA8C4, 0xE7CC},+    {0xA8C5, 0x3105},+    {0xA8C6, 0x3106},+    {0xA8C7, 0x3107},+    {0xA8C8, 0x3108},+    {0xA8C9, 0x3109},+    {0xA8CA, 0x310A},+    {0xA8CB, 0x310B},+    {0xA8CC, 0x310C},+    {0xA8CD, 0x310D},+    {0xA8CE, 0x310E},+    {0xA8CF, 0x310F},+    {0xA8D0, 0x3110},+    {0xA8D1, 0x3111},+    {0xA8D2, 0x3112},+    {0xA8D3, 0x3113},+    {0xA8D4, 0x3114},+    {0xA8D5, 0x3115},+    {0xA8D6, 0x3116},+    {0xA8D7, 0x3117},+    {0xA8D8, 0x3118},+    {0xA8D9, 0x3119},+    {0xA8DA, 0x311A},+    {0xA8DB, 0x311B},+    {0xA8DC, 0x311C},+    {0xA8DD, 0x311D},+    {0xA8DE, 0x311E},+    {0xA8DF, 0x311F},+    {0xA8E0, 0x3120},+    {0xA8E1, 0x3121},+    {0xA8E2, 0x3122},+    {0xA8E3, 0x3123},+    {0xA8E4, 0x3124},+    {0xA8E5, 0x3125},+    {0xA8E6, 0x3126},+    {0xA8E7, 0x3127},+    {0xA8E8, 0x3128},+    {0xA8E9, 0x3129},+    {0xA8EA, 0xE7CD},+    {0xA8EB, 0xE7CE},+    {0xA8EC, 0xE7CF},+    {0xA8ED, 0xE7D0},+    {0xA8EE, 0xE7D1},+    {0xA8EF, 0xE7D2},+    {0xA8F0, 0xE7D3},+    {0xA8F1, 0xE7D4},+    {0xA8F2, 0xE7D5},+    {0xA8F3, 0xE7D6},+    {0xA8F4, 0xE7D7},+    {0xA8F5, 0xE7D8},+    {0xA8F6, 0xE7D9},+    {0xA8F7, 0xE7DA},+    {0xA8F8, 0xE7DB},+    {0xA8F9, 0xE7DC},+    {0xA8FA, 0xE7DD},+    {0xA8FB, 0xE7DE},+    {0xA8FC, 0xE7DF},+    {0xA8FD, 0xE7E0},+    {0xA8FE, 0xE7E1},+    {0xA940, 0x3021},+    {0xA941, 0x3022},+    {0xA942, 0x3023},+    {0xA943, 0x3024},+    {0xA944, 0x3025},+    {0xA945, 0x3026},+    {0xA946, 0x3027},+    {0xA947, 0x3028},+    {0xA948, 0x3029},+    {0xA949, 0x32A3},+    {0xA94A, 0x338E},+    {0xA94B, 0x338F},+    {0xA94C, 0x339C},+    {0xA94D, 0x339D},+    {0xA94E, 0x339E},+    {0xA94F, 0x33A1},+    {0xA950, 0x33C4},+    {0xA951, 0x33CE},+    {0xA952, 0x33D1},+    {0xA953, 0x33D2},+    {0xA954, 0x33D5},+    {0xA955, 0xFE30},+    {0xA956, 0xFFE2},+    {0xA957, 0xFFE4},+    {0xA958, 0xE7E2},+    {0xA959, 0x2121},+    {0xA95A, 0x3231},+    {0xA95B, 0xE7E3},+    {0xA95C, 0x2010},+    {0xA95D, 0xE7E4},+    {0xA95E, 0xE7E5},+    {0xA95F, 0xE7E6},+    {0xA960, 0x30FC},+    {0xA961, 0x309B},+    {0xA962, 0x309C},+    {0xA963, 0x30FD},+    {0xA964, 0x30FE},+    {0xA965, 0x3006},+    {0xA966, 0x309D},+    {0xA967, 0x309E},+    {0xA968, 0xFE49},+    {0xA969, 0xFE4A},+    {0xA96A, 0xFE4B},+    {0xA96B, 0xFE4C},+    {0xA96C, 0xFE4D},+    {0xA96D, 0xFE4E},+    {0xA96E, 0xFE4F},+    {0xA96F, 0xFE50},+    {0xA970, 0xFE51},+    {0xA971, 0xFE52},+    {0xA972, 0xFE54},+    {0xA973, 0xFE55},+    {0xA974, 0xFE56},+    {0xA975, 0xFE57},+    {0xA976, 0xFE59},+    {0xA977, 0xFE5A},+    {0xA978, 0xFE5B},+    {0xA979, 0xFE5C},+    {0xA97A, 0xFE5D},+    {0xA97B, 0xFE5E},+    {0xA97C, 0xFE5F},+    {0xA97D, 0xFE60},+    {0xA97E, 0xFE61},+    {0xA980, 0xFE62},+    {0xA981, 0xFE63},+    {0xA982, 0xFE64},+    {0xA983, 0xFE65},+    {0xA984, 0xFE66},+    {0xA985, 0xFE68},+    {0xA986, 0xFE69},+    {0xA987, 0xFE6A},+    {0xA988, 0xFE6B},+    {0xA989, 0xE7E7},+    {0xA98A, 0xE7E8},+    {0xA98B, 0xE7E9},+    {0xA98C, 0xE7EA},+    {0xA98D, 0xE7EB},+    {0xA98E, 0xE7EC},+    {0xA98F, 0xE7ED},+    {0xA990, 0xE7EE},+    {0xA991, 0xE7EF},+    {0xA992, 0xE7F0},+    {0xA993, 0xE7F1},+    {0xA994, 0xE7F2},+    {0xA995, 0xE7F3},+    {0xA996, 0x3007},+    {0xA997, 0xE7F4},+    {0xA998, 0xE7F5},+    {0xA999, 0xE7F6},+    {0xA99A, 0xE7F7},+    {0xA99B, 0xE7F8},+    {0xA99C, 0xE7F9},+    {0xA99D, 0xE7FA},+    {0xA99E, 0xE7FB},+    {0xA99F, 0xE7FC},+    {0xA9A0, 0xE7FD},+    {0xA9A1, 0xE7FE},+    {0xA9A2, 0xE7FF},+    {0xA9A3, 0xE800},+    {0xA9A4, 0x2500},+    {0xA9A5, 0x2501},+    {0xA9A6, 0x2502},+    {0xA9A7, 0x2503},+    {0xA9A8, 0x2504},+    {0xA9A9, 0x2505},+    {0xA9AA, 0x2506},+    {0xA9AB, 0x2507},+    {0xA9AC, 0x2508},+    {0xA9AD, 0x2509},+    {0xA9AE, 0x250A},+    {0xA9AF, 0x250B},+    {0xA9B0, 0x250C},+    {0xA9B1, 0x250D},+    {0xA9B2, 0x250E},+    {0xA9B3, 0x250F},+    {0xA9B4, 0x2510},+    {0xA9B5, 0x2511},+    {0xA9B6, 0x2512},+    {0xA9B7, 0x2513},+    {0xA9B8, 0x2514},+    {0xA9B9, 0x2515},+    {0xA9BA, 0x2516},+    {0xA9BB, 0x2517},+    {0xA9BC, 0x2518},+    {0xA9BD, 0x2519},+    {0xA9BE, 0x251A},+    {0xA9BF, 0x251B},+    {0xA9C0, 0x251C},+    {0xA9C1, 0x251D},+    {0xA9C2, 0x251E},+    {0xA9C3, 0x251F},+    {0xA9C4, 0x2520},+    {0xA9C5, 0x2521},+    {0xA9C6, 0x2522},+    {0xA9C7, 0x2523},+    {0xA9C8, 0x2524},+    {0xA9C9, 0x2525},+    {0xA9CA, 0x2526},+    {0xA9CB, 0x2527},+    {0xA9CC, 0x2528},+    {0xA9CD, 0x2529},+    {0xA9CE, 0x252A},+    {0xA9CF, 0x252B},+    {0xA9D0, 0x252C},+    {0xA9D1, 0x252D},+    {0xA9D2, 0x252E},+    {0xA9D3, 0x252F},+    {0xA9D4, 0x2530},+    {0xA9D5, 0x2531},+    {0xA9D6, 0x2532},+    {0xA9D7, 0x2533},+    {0xA9D8, 0x2534},+    {0xA9D9, 0x2535},+    {0xA9DA, 0x2536},+    {0xA9DB, 0x2537},+    {0xA9DC, 0x2538},+    {0xA9DD, 0x2539},+    {0xA9DE, 0x253A},+    {0xA9DF, 0x253B},+    {0xA9E0, 0x253C},+    {0xA9E1, 0x253D},+    {0xA9E2, 0x253E},+    {0xA9E3, 0x253F},+    {0xA9E4, 0x2540},+    {0xA9E5, 0x2541},+    {0xA9E6, 0x2542},+    {0xA9E7, 0x2543},+    {0xA9E8, 0x2544},+    {0xA9E9, 0x2545},+    {0xA9EA, 0x2546},+    {0xA9EB, 0x2547},+    {0xA9EC, 0x2548},+    {0xA9ED, 0x2549},+    {0xA9EE, 0x254A},+    {0xA9EF, 0x254B},+    {0xA9F0, 0xE801},+    {0xA9F1, 0xE802},+    {0xA9F2, 0xE803},+    {0xA9F3, 0xE804},+    {0xA9F4, 0xE805},+    {0xA9F5, 0xE806},+    {0xA9F6, 0xE807},+    {0xA9F7, 0xE808},+    {0xA9F8, 0xE809},+    {0xA9F9, 0xE80A},+    {0xA9FA, 0xE80B},+    {0xA9FB, 0xE80C},+    {0xA9FC, 0xE80D},+    {0xA9FD, 0xE80E},+    {0xA9FE, 0xE80F},+    {0xAA40, 0x72DC},+    {0xAA41, 0x72DD},+    {0xAA42, 0x72DF},+    {0xAA43, 0x72E2},+    {0xAA44, 0x72E3},+    {0xAA45, 0x72E4},+    {0xAA46, 0x72E5},+    {0xAA47, 0x72E6},+    {0xAA48, 0x72E7},+    {0xAA49, 0x72EA},+    {0xAA4A, 0x72EB},+    {0xAA4B, 0x72F5},+    {0xAA4C, 0x72F6},+    {0xAA4D, 0x72F9},+    {0xAA4E, 0x72FD},+    {0xAA4F, 0x72FE},+    {0xAA50, 0x72FF},+    {0xAA51, 0x7300},+    {0xAA52, 0x7302},+    {0xAA53, 0x7304},+    {0xAA54, 0x7305},+    {0xAA55, 0x7306},+    {0xAA56, 0x7307},+    {0xAA57, 0x7308},+    {0xAA58, 0x7309},+    {0xAA59, 0x730B},+    {0xAA5A, 0x730C},+    {0xAA5B, 0x730D},+    {0xAA5C, 0x730F},+    {0xAA5D, 0x7310},+    {0xAA5E, 0x7311},+    {0xAA5F, 0x7312},+    {0xAA60, 0x7314},+    {0xAA61, 0x7318},+    {0xAA62, 0x7319},+    {0xAA63, 0x731A},+    {0xAA64, 0x731F},+    {0xAA65, 0x7320},+    {0xAA66, 0x7323},+    {0xAA67, 0x7324},+    {0xAA68, 0x7326},+    {0xAA69, 0x7327},+    {0xAA6A, 0x7328},+    {0xAA6B, 0x732D},+    {0xAA6C, 0x732F},+    {0xAA6D, 0x7330},+    {0xAA6E, 0x7332},+    {0xAA6F, 0x7333},+    {0xAA70, 0x7335},+    {0xAA71, 0x7336},+    {0xAA72, 0x733A},+    {0xAA73, 0x733B},+    {0xAA74, 0x733C},+    {0xAA75, 0x733D},+    {0xAA76, 0x7340},+    {0xAA77, 0x7341},+    {0xAA78, 0x7342},+    {0xAA79, 0x7343},+    {0xAA7A, 0x7344},+    {0xAA7B, 0x7345},+    {0xAA7C, 0x7346},+    {0xAA7D, 0x7347},+    {0xAA7E, 0x7348},+    {0xAA80, 0x7349},+    {0xAA81, 0x734A},+    {0xAA82, 0x734B},+    {0xAA83, 0x734C},+    {0xAA84, 0x734E},+    {0xAA85, 0x734F},+    {0xAA86, 0x7351},+    {0xAA87, 0x7353},+    {0xAA88, 0x7354},+    {0xAA89, 0x7355},+    {0xAA8A, 0x7356},+    {0xAA8B, 0x7358},+    {0xAA8C, 0x7359},+    {0xAA8D, 0x735A},+    {0xAA8E, 0x735B},+    {0xAA8F, 0x735C},+    {0xAA90, 0x735D},+    {0xAA91, 0x735E},+    {0xAA92, 0x735F},+    {0xAA93, 0x7361},+    {0xAA94, 0x7362},+    {0xAA95, 0x7363},+    {0xAA96, 0x7364},+    {0xAA97, 0x7365},+    {0xAA98, 0x7366},+    {0xAA99, 0x7367},+    {0xAA9A, 0x7368},+    {0xAA9B, 0x7369},+    {0xAA9C, 0x736A},+    {0xAA9D, 0x736B},+    {0xAA9E, 0x736E},+    {0xAA9F, 0x7370},+    {0xAAA0, 0x7371},+    {0xAAA1, 0xE000},+    {0xAAA2, 0xE001},+    {0xAAA3, 0xE002},+    {0xAAA4, 0xE003},+    {0xAAA5, 0xE004},+    {0xAAA6, 0xE005},+    {0xAAA7, 0xE006},+    {0xAAA8, 0xE007},+    {0xAAA9, 0xE008},+    {0xAAAA, 0xE009},+    {0xAAAB, 0xE00A},+    {0xAAAC, 0xE00B},+    {0xAAAD, 0xE00C},+    {0xAAAE, 0xE00D},+    {0xAAAF, 0xE00E},+    {0xAAB0, 0xE00F},+    {0xAAB1, 0xE010},+    {0xAAB2, 0xE011},+    {0xAAB3, 0xE012},+    {0xAAB4, 0xE013},+    {0xAAB5, 0xE014},+    {0xAAB6, 0xE015},+    {0xAAB7, 0xE016},+    {0xAAB8, 0xE017},+    {0xAAB9, 0xE018},+    {0xAABA, 0xE019},+    {0xAABB, 0xE01A},+    {0xAABC, 0xE01B},+    {0xAABD, 0xE01C},+    {0xAABE, 0xE01D},+    {0xAABF, 0xE01E},+    {0xAAC0, 0xE01F},+    {0xAAC1, 0xE020},+    {0xAAC2, 0xE021},+    {0xAAC3, 0xE022},+    {0xAAC4, 0xE023},+    {0xAAC5, 0xE024},+    {0xAAC6, 0xE025},+    {0xAAC7, 0xE026},+    {0xAAC8, 0xE027},+    {0xAAC9, 0xE028},+    {0xAACA, 0xE029},+    {0xAACB, 0xE02A},+    {0xAACC, 0xE02B},+    {0xAACD, 0xE02C},+    {0xAACE, 0xE02D},+    {0xAACF, 0xE02E},+    {0xAAD0, 0xE02F},+    {0xAAD1, 0xE030},+    {0xAAD2, 0xE031},+    {0xAAD3, 0xE032},+    {0xAAD4, 0xE033},+    {0xAAD5, 0xE034},+    {0xAAD6, 0xE035},+    {0xAAD7, 0xE036},+    {0xAAD8, 0xE037},+    {0xAAD9, 0xE038},+    {0xAADA, 0xE039},+    {0xAADB, 0xE03A},+    {0xAADC, 0xE03B},+    {0xAADD, 0xE03C},+    {0xAADE, 0xE03D},+    {0xAADF, 0xE03E},+    {0xAAE0, 0xE03F},+    {0xAAE1, 0xE040},+    {0xAAE2, 0xE041},+    {0xAAE3, 0xE042},+    {0xAAE4, 0xE043},+    {0xAAE5, 0xE044},+    {0xAAE6, 0xE045},+    {0xAAE7, 0xE046},+    {0xAAE8, 0xE047},+    {0xAAE9, 0xE048},+    {0xAAEA, 0xE049},+    {0xAAEB, 0xE04A},+    {0xAAEC, 0xE04B},+    {0xAAED, 0xE04C},+    {0xAAEE, 0xE04D},+    {0xAAEF, 0xE04E},+    {0xAAF0, 0xE04F},+    {0xAAF1, 0xE050},+    {0xAAF2, 0xE051},+    {0xAAF3, 0xE052},+    {0xAAF4, 0xE053},+    {0xAAF5, 0xE054},+    {0xAAF6, 0xE055},+    {0xAAF7, 0xE056},+    {0xAAF8, 0xE057},+    {0xAAF9, 0xE058},+    {0xAAFA, 0xE059},+    {0xAAFB, 0xE05A},+    {0xAAFC, 0xE05B},+    {0xAAFD, 0xE05C},+    {0xAAFE, 0xE05D},+    {0xAB40, 0x7372},+    {0xAB41, 0x7373},+    {0xAB42, 0x7374},+    {0xAB43, 0x7375},+    {0xAB44, 0x7376},+    {0xAB45, 0x7377},+    {0xAB46, 0x7378},+    {0xAB47, 0x7379},+    {0xAB48, 0x737A},+    {0xAB49, 0x737B},+    {0xAB4A, 0x737C},+    {0xAB4B, 0x737D},+    {0xAB4C, 0x737F},+    {0xAB4D, 0x7380},+    {0xAB4E, 0x7381},+    {0xAB4F, 0x7382},+    {0xAB50, 0x7383},+    {0xAB51, 0x7385},+    {0xAB52, 0x7386},+    {0xAB53, 0x7388},+    {0xAB54, 0x738A},+    {0xAB55, 0x738C},+    {0xAB56, 0x738D},+    {0xAB57, 0x738F},+    {0xAB58, 0x7390},+    {0xAB59, 0x7392},+    {0xAB5A, 0x7393},+    {0xAB5B, 0x7394},+    {0xAB5C, 0x7395},+    {0xAB5D, 0x7397},+    {0xAB5E, 0x7398},+    {0xAB5F, 0x7399},+    {0xAB60, 0x739A},+    {0xAB61, 0x739C},+    {0xAB62, 0x739D},+    {0xAB63, 0x739E},+    {0xAB64, 0x73A0},+    {0xAB65, 0x73A1},+    {0xAB66, 0x73A3},+    {0xAB67, 0x73A4},+    {0xAB68, 0x73A5},+    {0xAB69, 0x73A6},+    {0xAB6A, 0x73A7},+    {0xAB6B, 0x73A8},+    {0xAB6C, 0x73AA},+    {0xAB6D, 0x73AC},+    {0xAB6E, 0x73AD},+    {0xAB6F, 0x73B1},+    {0xAB70, 0x73B4},+    {0xAB71, 0x73B5},+    {0xAB72, 0x73B6},+    {0xAB73, 0x73B8},+    {0xAB74, 0x73B9},+    {0xAB75, 0x73BC},+    {0xAB76, 0x73BD},+    {0xAB77, 0x73BE},+    {0xAB78, 0x73BF},+    {0xAB79, 0x73C1},+    {0xAB7A, 0x73C3},+    {0xAB7B, 0x73C4},+    {0xAB7C, 0x73C5},+    {0xAB7D, 0x73C6},+    {0xAB7E, 0x73C7},+    {0xAB80, 0x73CB},+    {0xAB81, 0x73CC},+    {0xAB82, 0x73CE},+    {0xAB83, 0x73D2},+    {0xAB84, 0x73D3},+    {0xAB85, 0x73D4},+    {0xAB86, 0x73D5},+    {0xAB87, 0x73D6},+    {0xAB88, 0x73D7},+    {0xAB89, 0x73D8},+    {0xAB8A, 0x73DA},+    {0xAB8B, 0x73DB},+    {0xAB8C, 0x73DC},+    {0xAB8D, 0x73DD},+    {0xAB8E, 0x73DF},+    {0xAB8F, 0x73E1},+    {0xAB90, 0x73E2},+    {0xAB91, 0x73E3},+    {0xAB92, 0x73E4},+    {0xAB93, 0x73E6},+    {0xAB94, 0x73E8},+    {0xAB95, 0x73EA},+    {0xAB96, 0x73EB},+    {0xAB97, 0x73EC},+    {0xAB98, 0x73EE},+    {0xAB99, 0x73EF},+    {0xAB9A, 0x73F0},+    {0xAB9B, 0x73F1},+    {0xAB9C, 0x73F3},+    {0xAB9D, 0x73F4},+    {0xAB9E, 0x73F5},+    {0xAB9F, 0x73F6},+    {0xABA0, 0x73F7},+    {0xABA1, 0xE05E},+    {0xABA2, 0xE05F},+    {0xABA3, 0xE060},+    {0xABA4, 0xE061},+    {0xABA5, 0xE062},+    {0xABA6, 0xE063},+    {0xABA7, 0xE064},+    {0xABA8, 0xE065},+    {0xABA9, 0xE066},+    {0xABAA, 0xE067},+    {0xABAB, 0xE068},+    {0xABAC, 0xE069},+    {0xABAD, 0xE06A},+    {0xABAE, 0xE06B},+    {0xABAF, 0xE06C},+    {0xABB0, 0xE06D},+    {0xABB1, 0xE06E},+    {0xABB2, 0xE06F},+    {0xABB3, 0xE070},+    {0xABB4, 0xE071},+    {0xABB5, 0xE072},+    {0xABB6, 0xE073},+    {0xABB7, 0xE074},+    {0xABB8, 0xE075},+    {0xABB9, 0xE076},+    {0xABBA, 0xE077},+    {0xABBB, 0xE078},+    {0xABBC, 0xE079},+    {0xABBD, 0xE07A},+    {0xABBE, 0xE07B},+    {0xABBF, 0xE07C},+    {0xABC0, 0xE07D},+    {0xABC1, 0xE07E},+    {0xABC2, 0xE07F},+    {0xABC3, 0xE080},+    {0xABC4, 0xE081},+    {0xABC5, 0xE082},+    {0xABC6, 0xE083},+    {0xABC7, 0xE084},+    {0xABC8, 0xE085},+    {0xABC9, 0xE086},+    {0xABCA, 0xE087},+    {0xABCB, 0xE088},+    {0xABCC, 0xE089},+    {0xABCD, 0xE08A},+    {0xABCE, 0xE08B},+    {0xABCF, 0xE08C},+    {0xABD0, 0xE08D},+    {0xABD1, 0xE08E},+    {0xABD2, 0xE08F},+    {0xABD3, 0xE090},+    {0xABD4, 0xE091},+    {0xABD5, 0xE092},+    {0xABD6, 0xE093},+    {0xABD7, 0xE094},+    {0xABD8, 0xE095},+    {0xABD9, 0xE096},+    {0xABDA, 0xE097},+    {0xABDB, 0xE098},+    {0xABDC, 0xE099},+    {0xABDD, 0xE09A},+    {0xABDE, 0xE09B},+    {0xABDF, 0xE09C},+    {0xABE0, 0xE09D},+    {0xABE1, 0xE09E},+    {0xABE2, 0xE09F},+    {0xABE3, 0xE0A0},+    {0xABE4, 0xE0A1},+    {0xABE5, 0xE0A2},+    {0xABE6, 0xE0A3},+    {0xABE7, 0xE0A4},+    {0xABE8, 0xE0A5},+    {0xABE9, 0xE0A6},+    {0xABEA, 0xE0A7},+    {0xABEB, 0xE0A8},+    {0xABEC, 0xE0A9},+    {0xABED, 0xE0AA},+    {0xABEE, 0xE0AB},+    {0xABEF, 0xE0AC},+    {0xABF0, 0xE0AD},+    {0xABF1, 0xE0AE},+    {0xABF2, 0xE0AF},+    {0xABF3, 0xE0B0},+    {0xABF4, 0xE0B1},+    {0xABF5, 0xE0B2},+    {0xABF6, 0xE0B3},+    {0xABF7, 0xE0B4},+    {0xABF8, 0xE0B5},+    {0xABF9, 0xE0B6},+    {0xABFA, 0xE0B7},+    {0xABFB, 0xE0B8},+    {0xABFC, 0xE0B9},+    {0xABFD, 0xE0BA},+    {0xABFE, 0xE0BB},+    {0xAC40, 0x73F8},+    {0xAC41, 0x73F9},+    {0xAC42, 0x73FA},+    {0xAC43, 0x73FB},+    {0xAC44, 0x73FC},+    {0xAC45, 0x73FD},+    {0xAC46, 0x73FE},+    {0xAC47, 0x73FF},+    {0xAC48, 0x7400},+    {0xAC49, 0x7401},+    {0xAC4A, 0x7402},+    {0xAC4B, 0x7404},+    {0xAC4C, 0x7407},+    {0xAC4D, 0x7408},+    {0xAC4E, 0x740B},+    {0xAC4F, 0x740C},+    {0xAC50, 0x740D},+    {0xAC51, 0x740E},+    {0xAC52, 0x7411},+    {0xAC53, 0x7412},+    {0xAC54, 0x7413},+    {0xAC55, 0x7414},+    {0xAC56, 0x7415},+    {0xAC57, 0x7416},+    {0xAC58, 0x7417},+    {0xAC59, 0x7418},+    {0xAC5A, 0x7419},+    {0xAC5B, 0x741C},+    {0xAC5C, 0x741D},+    {0xAC5D, 0x741E},+    {0xAC5E, 0x741F},+    {0xAC5F, 0x7420},+    {0xAC60, 0x7421},+    {0xAC61, 0x7423},+    {0xAC62, 0x7424},+    {0xAC63, 0x7427},+    {0xAC64, 0x7429},+    {0xAC65, 0x742B},+    {0xAC66, 0x742D},+    {0xAC67, 0x742F},+    {0xAC68, 0x7431},+    {0xAC69, 0x7432},+    {0xAC6A, 0x7437},+    {0xAC6B, 0x7438},+    {0xAC6C, 0x7439},+    {0xAC6D, 0x743A},+    {0xAC6E, 0x743B},+    {0xAC6F, 0x743D},+    {0xAC70, 0x743E},+    {0xAC71, 0x743F},+    {0xAC72, 0x7440},+    {0xAC73, 0x7442},+    {0xAC74, 0x7443},+    {0xAC75, 0x7444},+    {0xAC76, 0x7445},+    {0xAC77, 0x7446},+    {0xAC78, 0x7447},+    {0xAC79, 0x7448},+    {0xAC7A, 0x7449},+    {0xAC7B, 0x744A},+    {0xAC7C, 0x744B},+    {0xAC7D, 0x744C},+    {0xAC7E, 0x744D},+    {0xAC80, 0x744E},+    {0xAC81, 0x744F},+    {0xAC82, 0x7450},+    {0xAC83, 0x7451},+    {0xAC84, 0x7452},+    {0xAC85, 0x7453},+    {0xAC86, 0x7454},+    {0xAC87, 0x7456},+    {0xAC88, 0x7458},+    {0xAC89, 0x745D},+    {0xAC8A, 0x7460},+    {0xAC8B, 0x7461},+    {0xAC8C, 0x7462},+    {0xAC8D, 0x7463},+    {0xAC8E, 0x7464},+    {0xAC8F, 0x7465},+    {0xAC90, 0x7466},+    {0xAC91, 0x7467},+    {0xAC92, 0x7468},+    {0xAC93, 0x7469},+    {0xAC94, 0x746A},+    {0xAC95, 0x746B},+    {0xAC96, 0x746C},+    {0xAC97, 0x746E},+    {0xAC98, 0x746F},+    {0xAC99, 0x7471},+    {0xAC9A, 0x7472},+    {0xAC9B, 0x7473},+    {0xAC9C, 0x7474},+    {0xAC9D, 0x7475},+    {0xAC9E, 0x7478},+    {0xAC9F, 0x7479},+    {0xACA0, 0x747A},+    {0xACA1, 0xE0BC},+    {0xACA2, 0xE0BD},+    {0xACA3, 0xE0BE},+    {0xACA4, 0xE0BF},+    {0xACA5, 0xE0C0},+    {0xACA6, 0xE0C1},+    {0xACA7, 0xE0C2},+    {0xACA8, 0xE0C3},+    {0xACA9, 0xE0C4},+    {0xACAA, 0xE0C5},+    {0xACAB, 0xE0C6},+    {0xACAC, 0xE0C7},+    {0xACAD, 0xE0C8},+    {0xACAE, 0xE0C9},+    {0xACAF, 0xE0CA},+    {0xACB0, 0xE0CB},+    {0xACB1, 0xE0CC},+    {0xACB2, 0xE0CD},+    {0xACB3, 0xE0CE},+    {0xACB4, 0xE0CF},+    {0xACB5, 0xE0D0},+    {0xACB6, 0xE0D1},+    {0xACB7, 0xE0D2},+    {0xACB8, 0xE0D3},+    {0xACB9, 0xE0D4},+    {0xACBA, 0xE0D5},+    {0xACBB, 0xE0D6},+    {0xACBC, 0xE0D7},+    {0xACBD, 0xE0D8},+    {0xACBE, 0xE0D9},+    {0xACBF, 0xE0DA},+    {0xACC0, 0xE0DB},+    {0xACC1, 0xE0DC},+    {0xACC2, 0xE0DD},+    {0xACC3, 0xE0DE},+    {0xACC4, 0xE0DF},+    {0xACC5, 0xE0E0},+    {0xACC6, 0xE0E1},+    {0xACC7, 0xE0E2},+    {0xACC8, 0xE0E3},+    {0xACC9, 0xE0E4},+    {0xACCA, 0xE0E5},+    {0xACCB, 0xE0E6},+    {0xACCC, 0xE0E7},+    {0xACCD, 0xE0E8},+    {0xACCE, 0xE0E9},+    {0xACCF, 0xE0EA},+    {0xACD0, 0xE0EB},+    {0xACD1, 0xE0EC},+    {0xACD2, 0xE0ED},+    {0xACD3, 0xE0EE},+    {0xACD4, 0xE0EF},+    {0xACD5, 0xE0F0},+    {0xACD6, 0xE0F1},+    {0xACD7, 0xE0F2},+    {0xACD8, 0xE0F3},+    {0xACD9, 0xE0F4},+    {0xACDA, 0xE0F5},+    {0xACDB, 0xE0F6},+    {0xACDC, 0xE0F7},+    {0xACDD, 0xE0F8},+    {0xACDE, 0xE0F9},+    {0xACDF, 0xE0FA},+    {0xACE0, 0xE0FB},+    {0xACE1, 0xE0FC},+    {0xACE2, 0xE0FD},+    {0xACE3, 0xE0FE},+    {0xACE4, 0xE0FF},+    {0xACE5, 0xE100},+    {0xACE6, 0xE101},+    {0xACE7, 0xE102},+    {0xACE8, 0xE103},+    {0xACE9, 0xE104},+    {0xACEA, 0xE105},+    {0xACEB, 0xE106},+    {0xACEC, 0xE107},+    {0xACED, 0xE108},+    {0xACEE, 0xE109},+    {0xACEF, 0xE10A},+    {0xACF0, 0xE10B},+    {0xACF1, 0xE10C},+    {0xACF2, 0xE10D},+    {0xACF3, 0xE10E},+    {0xACF4, 0xE10F},+    {0xACF5, 0xE110},+    {0xACF6, 0xE111},+    {0xACF7, 0xE112},+    {0xACF8, 0xE113},+    {0xACF9, 0xE114},+    {0xACFA, 0xE115},+    {0xACFB, 0xE116},+    {0xACFC, 0xE117},+    {0xACFD, 0xE118},+    {0xACFE, 0xE119},+    {0xAD40, 0x747B},+    {0xAD41, 0x747C},+    {0xAD42, 0x747D},+    {0xAD43, 0x747F},+    {0xAD44, 0x7482},+    {0xAD45, 0x7484},+    {0xAD46, 0x7485},+    {0xAD47, 0x7486},+    {0xAD48, 0x7488},+    {0xAD49, 0x7489},+    {0xAD4A, 0x748A},+    {0xAD4B, 0x748C},+    {0xAD4C, 0x748D},+    {0xAD4D, 0x748F},+    {0xAD4E, 0x7491},+    {0xAD4F, 0x7492},+    {0xAD50, 0x7493},+    {0xAD51, 0x7494},+    {0xAD52, 0x7495},+    {0xAD53, 0x7496},+    {0xAD54, 0x7497},+    {0xAD55, 0x7498},+    {0xAD56, 0x7499},+    {0xAD57, 0x749A},+    {0xAD58, 0x749B},+    {0xAD59, 0x749D},+    {0xAD5A, 0x749F},+    {0xAD5B, 0x74A0},+    {0xAD5C, 0x74A1},+    {0xAD5D, 0x74A2},+    {0xAD5E, 0x74A3},+    {0xAD5F, 0x74A4},+    {0xAD60, 0x74A5},+    {0xAD61, 0x74A6},+    {0xAD62, 0x74AA},+    {0xAD63, 0x74AB},+    {0xAD64, 0x74AC},+    {0xAD65, 0x74AD},+    {0xAD66, 0x74AE},+    {0xAD67, 0x74AF},+    {0xAD68, 0x74B0},+    {0xAD69, 0x74B1},+    {0xAD6A, 0x74B2},+    {0xAD6B, 0x74B3},+    {0xAD6C, 0x74B4},+    {0xAD6D, 0x74B5},+    {0xAD6E, 0x74B6},+    {0xAD6F, 0x74B7},+    {0xAD70, 0x74B8},+    {0xAD71, 0x74B9},+    {0xAD72, 0x74BB},+    {0xAD73, 0x74BC},+    {0xAD74, 0x74BD},+    {0xAD75, 0x74BE},+    {0xAD76, 0x74BF},+    {0xAD77, 0x74C0},+    {0xAD78, 0x74C1},+    {0xAD79, 0x74C2},+    {0xAD7A, 0x74C3},+    {0xAD7B, 0x74C4},+    {0xAD7C, 0x74C5},+    {0xAD7D, 0x74C6},+    {0xAD7E, 0x74C7},+    {0xAD80, 0x74C8},+    {0xAD81, 0x74C9},+    {0xAD82, 0x74CA},+    {0xAD83, 0x74CB},+    {0xAD84, 0x74CC},+    {0xAD85, 0x74CD},+    {0xAD86, 0x74CE},+    {0xAD87, 0x74CF},+    {0xAD88, 0x74D0},+    {0xAD89, 0x74D1},+    {0xAD8A, 0x74D3},+    {0xAD8B, 0x74D4},+    {0xAD8C, 0x74D5},+    {0xAD8D, 0x74D6},+    {0xAD8E, 0x74D7},+    {0xAD8F, 0x74D8},+    {0xAD90, 0x74D9},+    {0xAD91, 0x74DA},+    {0xAD92, 0x74DB},+    {0xAD93, 0x74DD},+    {0xAD94, 0x74DF},+    {0xAD95, 0x74E1},+    {0xAD96, 0x74E5},+    {0xAD97, 0x74E7},+    {0xAD98, 0x74E8},+    {0xAD99, 0x74E9},+    {0xAD9A, 0x74EA},+    {0xAD9B, 0x74EB},+    {0xAD9C, 0x74EC},+    {0xAD9D, 0x74ED},+    {0xAD9E, 0x74F0},+    {0xAD9F, 0x74F1},+    {0xADA0, 0x74F2},+    {0xADA1, 0xE11A},+    {0xADA2, 0xE11B},+    {0xADA3, 0xE11C},+    {0xADA4, 0xE11D},+    {0xADA5, 0xE11E},+    {0xADA6, 0xE11F},+    {0xADA7, 0xE120},+    {0xADA8, 0xE121},+    {0xADA9, 0xE122},+    {0xADAA, 0xE123},+    {0xADAB, 0xE124},+    {0xADAC, 0xE125},+    {0xADAD, 0xE126},+    {0xADAE, 0xE127},+    {0xADAF, 0xE128},+    {0xADB0, 0xE129},+    {0xADB1, 0xE12A},+    {0xADB2, 0xE12B},+    {0xADB3, 0xE12C},+    {0xADB4, 0xE12D},+    {0xADB5, 0xE12E},+    {0xADB6, 0xE12F},+    {0xADB7, 0xE130},+    {0xADB8, 0xE131},+    {0xADB9, 0xE132},+    {0xADBA, 0xE133},+    {0xADBB, 0xE134},+    {0xADBC, 0xE135},+    {0xADBD, 0xE136},+    {0xADBE, 0xE137},+    {0xADBF, 0xE138},+    {0xADC0, 0xE139},+    {0xADC1, 0xE13A},+    {0xADC2, 0xE13B},+    {0xADC3, 0xE13C},+    {0xADC4, 0xE13D},+    {0xADC5, 0xE13E},+    {0xADC6, 0xE13F},+    {0xADC7, 0xE140},+    {0xADC8, 0xE141},+    {0xADC9, 0xE142},+    {0xADCA, 0xE143},+    {0xADCB, 0xE144},+    {0xADCC, 0xE145},+    {0xADCD, 0xE146},+    {0xADCE, 0xE147},+    {0xADCF, 0xE148},+    {0xADD0, 0xE149},+    {0xADD1, 0xE14A},+    {0xADD2, 0xE14B},+    {0xADD3, 0xE14C},+    {0xADD4, 0xE14D},+    {0xADD5, 0xE14E},+    {0xADD6, 0xE14F},+    {0xADD7, 0xE150},+    {0xADD8, 0xE151},+    {0xADD9, 0xE152},+    {0xADDA, 0xE153},+    {0xADDB, 0xE154},+    {0xADDC, 0xE155},+    {0xADDD, 0xE156},+    {0xADDE, 0xE157},+    {0xADDF, 0xE158},+    {0xADE0, 0xE159},+    {0xADE1, 0xE15A},+    {0xADE2, 0xE15B},+    {0xADE3, 0xE15C},+    {0xADE4, 0xE15D},+    {0xADE5, 0xE15E},+    {0xADE6, 0xE15F},+    {0xADE7, 0xE160},+    {0xADE8, 0xE161},+    {0xADE9, 0xE162},+    {0xADEA, 0xE163},+    {0xADEB, 0xE164},+    {0xADEC, 0xE165},+    {0xADED, 0xE166},+    {0xADEE, 0xE167},+    {0xADEF, 0xE168},+    {0xADF0, 0xE169},+    {0xADF1, 0xE16A},+    {0xADF2, 0xE16B},+    {0xADF3, 0xE16C},+    {0xADF4, 0xE16D},+    {0xADF5, 0xE16E},+    {0xADF6, 0xE16F},+    {0xADF7, 0xE170},+    {0xADF8, 0xE171},+    {0xADF9, 0xE172},+    {0xADFA, 0xE173},+    {0xADFB, 0xE174},+    {0xADFC, 0xE175},+    {0xADFD, 0xE176},+    {0xADFE, 0xE177},+    {0xAE40, 0x74F3},+    {0xAE41, 0x74F5},+    {0xAE42, 0x74F8},+    {0xAE43, 0x74F9},+    {0xAE44, 0x74FA},+    {0xAE45, 0x74FB},+    {0xAE46, 0x74FC},+    {0xAE47, 0x74FD},+    {0xAE48, 0x74FE},+    {0xAE49, 0x7500},+    {0xAE4A, 0x7501},+    {0xAE4B, 0x7502},+    {0xAE4C, 0x7503},+    {0xAE4D, 0x7505},+    {0xAE4E, 0x7506},+    {0xAE4F, 0x7507},+    {0xAE50, 0x7508},+    {0xAE51, 0x7509},+    {0xAE52, 0x750A},+    {0xAE53, 0x750B},+    {0xAE54, 0x750C},+    {0xAE55, 0x750E},+    {0xAE56, 0x7510},+    {0xAE57, 0x7512},+    {0xAE58, 0x7514},+    {0xAE59, 0x7515},+    {0xAE5A, 0x7516},+    {0xAE5B, 0x7517},+    {0xAE5C, 0x751B},+    {0xAE5D, 0x751D},+    {0xAE5E, 0x751E},+    {0xAE5F, 0x7520},+    {0xAE60, 0x7521},+    {0xAE61, 0x7522},+    {0xAE62, 0x7523},+    {0xAE63, 0x7524},+    {0xAE64, 0x7526},+    {0xAE65, 0x7527},+    {0xAE66, 0x752A},+    {0xAE67, 0x752E},+    {0xAE68, 0x7534},+    {0xAE69, 0x7536},+    {0xAE6A, 0x7539},+    {0xAE6B, 0x753C},+    {0xAE6C, 0x753D},+    {0xAE6D, 0x753F},+    {0xAE6E, 0x7541},+    {0xAE6F, 0x7542},+    {0xAE70, 0x7543},+    {0xAE71, 0x7544},+    {0xAE72, 0x7546},+    {0xAE73, 0x7547},+    {0xAE74, 0x7549},+    {0xAE75, 0x754A},+    {0xAE76, 0x754D},+    {0xAE77, 0x7550},+    {0xAE78, 0x7551},+    {0xAE79, 0x7552},+    {0xAE7A, 0x7553},+    {0xAE7B, 0x7555},+    {0xAE7C, 0x7556},+    {0xAE7D, 0x7557},+    {0xAE7E, 0x7558},+    {0xAE80, 0x755D},+    {0xAE81, 0x755E},+    {0xAE82, 0x755F},+    {0xAE83, 0x7560},+    {0xAE84, 0x7561},+    {0xAE85, 0x7562},+    {0xAE86, 0x7563},+    {0xAE87, 0x7564},+    {0xAE88, 0x7567},+    {0xAE89, 0x7568},+    {0xAE8A, 0x7569},+    {0xAE8B, 0x756B},+    {0xAE8C, 0x756C},+    {0xAE8D, 0x756D},+    {0xAE8E, 0x756E},+    {0xAE8F, 0x756F},+    {0xAE90, 0x7570},+    {0xAE91, 0x7571},+    {0xAE92, 0x7573},+    {0xAE93, 0x7575},+    {0xAE94, 0x7576},+    {0xAE95, 0x7577},+    {0xAE96, 0x757A},+    {0xAE97, 0x757B},+    {0xAE98, 0x757C},+    {0xAE99, 0x757D},+    {0xAE9A, 0x757E},+    {0xAE9B, 0x7580},+    {0xAE9C, 0x7581},+    {0xAE9D, 0x7582},+    {0xAE9E, 0x7584},+    {0xAE9F, 0x7585},+    {0xAEA0, 0x7587},+    {0xAEA1, 0xE178},+    {0xAEA2, 0xE179},+    {0xAEA3, 0xE17A},+    {0xAEA4, 0xE17B},+    {0xAEA5, 0xE17C},+    {0xAEA6, 0xE17D},+    {0xAEA7, 0xE17E},+    {0xAEA8, 0xE17F},+    {0xAEA9, 0xE180},+    {0xAEAA, 0xE181},+    {0xAEAB, 0xE182},+    {0xAEAC, 0xE183},+    {0xAEAD, 0xE184},+    {0xAEAE, 0xE185},+    {0xAEAF, 0xE186},+    {0xAEB0, 0xE187},+    {0xAEB1, 0xE188},+    {0xAEB2, 0xE189},+    {0xAEB3, 0xE18A},+    {0xAEB4, 0xE18B},+    {0xAEB5, 0xE18C},+    {0xAEB6, 0xE18D},+    {0xAEB7, 0xE18E},+    {0xAEB8, 0xE18F},+    {0xAEB9, 0xE190},+    {0xAEBA, 0xE191},+    {0xAEBB, 0xE192},+    {0xAEBC, 0xE193},+    {0xAEBD, 0xE194},+    {0xAEBE, 0xE195},+    {0xAEBF, 0xE196},+    {0xAEC0, 0xE197},+    {0xAEC1, 0xE198},+    {0xAEC2, 0xE199},+    {0xAEC3, 0xE19A},+    {0xAEC4, 0xE19B},+    {0xAEC5, 0xE19C},+    {0xAEC6, 0xE19D},+    {0xAEC7, 0xE19E},+    {0xAEC8, 0xE19F},+    {0xAEC9, 0xE1A0},+    {0xAECA, 0xE1A1},+    {0xAECB, 0xE1A2},+    {0xAECC, 0xE1A3},+    {0xAECD, 0xE1A4},+    {0xAECE, 0xE1A5},+    {0xAECF, 0xE1A6},+    {0xAED0, 0xE1A7},+    {0xAED1, 0xE1A8},+    {0xAED2, 0xE1A9},+    {0xAED3, 0xE1AA},+    {0xAED4, 0xE1AB},+    {0xAED5, 0xE1AC},+    {0xAED6, 0xE1AD},+    {0xAED7, 0xE1AE},+    {0xAED8, 0xE1AF},+    {0xAED9, 0xE1B0},+    {0xAEDA, 0xE1B1},+    {0xAEDB, 0xE1B2},+    {0xAEDC, 0xE1B3},+    {0xAEDD, 0xE1B4},+    {0xAEDE, 0xE1B5},+    {0xAEDF, 0xE1B6},+    {0xAEE0, 0xE1B7},+    {0xAEE1, 0xE1B8},+    {0xAEE2, 0xE1B9},+    {0xAEE3, 0xE1BA},+    {0xAEE4, 0xE1BB},+    {0xAEE5, 0xE1BC},+    {0xAEE6, 0xE1BD},+    {0xAEE7, 0xE1BE},+    {0xAEE8, 0xE1BF},+    {0xAEE9, 0xE1C0},+    {0xAEEA, 0xE1C1},+    {0xAEEB, 0xE1C2},+    {0xAEEC, 0xE1C3},+    {0xAEED, 0xE1C4},+    {0xAEEE, 0xE1C5},+    {0xAEEF, 0xE1C6},+    {0xAEF0, 0xE1C7},+    {0xAEF1, 0xE1C8},+    {0xAEF2, 0xE1C9},+    {0xAEF3, 0xE1CA},+    {0xAEF4, 0xE1CB},+    {0xAEF5, 0xE1CC},+    {0xAEF6, 0xE1CD},+    {0xAEF7, 0xE1CE},+    {0xAEF8, 0xE1CF},+    {0xAEF9, 0xE1D0},+    {0xAEFA, 0xE1D1},+    {0xAEFB, 0xE1D2},+    {0xAEFC, 0xE1D3},+    {0xAEFD, 0xE1D4},+    {0xAEFE, 0xE1D5},+    {0xAF40, 0x7588},+    {0xAF41, 0x7589},+    {0xAF42, 0x758A},+    {0xAF43, 0x758C},+    {0xAF44, 0x758D},+    {0xAF45, 0x758E},+    {0xAF46, 0x7590},+    {0xAF47, 0x7593},+    {0xAF48, 0x7595},+    {0xAF49, 0x7598},+    {0xAF4A, 0x759B},+    {0xAF4B, 0x759C},+    {0xAF4C, 0x759E},+    {0xAF4D, 0x75A2},+    {0xAF4E, 0x75A6},+    {0xAF4F, 0x75A7},+    {0xAF50, 0x75A8},+    {0xAF51, 0x75A9},+    {0xAF52, 0x75AA},+    {0xAF53, 0x75AD},+    {0xAF54, 0x75B6},+    {0xAF55, 0x75B7},+    {0xAF56, 0x75BA},+    {0xAF57, 0x75BB},+    {0xAF58, 0x75BF},+    {0xAF59, 0x75C0},+    {0xAF5A, 0x75C1},+    {0xAF5B, 0x75C6},+    {0xAF5C, 0x75CB},+    {0xAF5D, 0x75CC},+    {0xAF5E, 0x75CE},+    {0xAF5F, 0x75CF},+    {0xAF60, 0x75D0},+    {0xAF61, 0x75D1},+    {0xAF62, 0x75D3},+    {0xAF63, 0x75D7},+    {0xAF64, 0x75D9},+    {0xAF65, 0x75DA},+    {0xAF66, 0x75DC},+    {0xAF67, 0x75DD},+    {0xAF68, 0x75DF},+    {0xAF69, 0x75E0},+    {0xAF6A, 0x75E1},+    {0xAF6B, 0x75E5},+    {0xAF6C, 0x75E9},+    {0xAF6D, 0x75EC},+    {0xAF6E, 0x75ED},+    {0xAF6F, 0x75EE},+    {0xAF70, 0x75EF},+    {0xAF71, 0x75F2},+    {0xAF72, 0x75F3},+    {0xAF73, 0x75F5},+    {0xAF74, 0x75F6},+    {0xAF75, 0x75F7},+    {0xAF76, 0x75F8},+    {0xAF77, 0x75FA},+    {0xAF78, 0x75FB},+    {0xAF79, 0x75FD},+    {0xAF7A, 0x75FE},+    {0xAF7B, 0x7602},+    {0xAF7C, 0x7604},+    {0xAF7D, 0x7606},+    {0xAF7E, 0x7607},+    {0xAF80, 0x7608},+    {0xAF81, 0x7609},+    {0xAF82, 0x760B},+    {0xAF83, 0x760D},+    {0xAF84, 0x760E},+    {0xAF85, 0x760F},+    {0xAF86, 0x7611},+    {0xAF87, 0x7612},+    {0xAF88, 0x7613},+    {0xAF89, 0x7614},+    {0xAF8A, 0x7616},+    {0xAF8B, 0x761A},+    {0xAF8C, 0x761C},+    {0xAF8D, 0x761D},+    {0xAF8E, 0x761E},+    {0xAF8F, 0x7621},+    {0xAF90, 0x7623},+    {0xAF91, 0x7627},+    {0xAF92, 0x7628},+    {0xAF93, 0x762C},+    {0xAF94, 0x762E},+    {0xAF95, 0x762F},+    {0xAF96, 0x7631},+    {0xAF97, 0x7632},+    {0xAF98, 0x7636},+    {0xAF99, 0x7637},+    {0xAF9A, 0x7639},+    {0xAF9B, 0x763A},+    {0xAF9C, 0x763B},+    {0xAF9D, 0x763D},+    {0xAF9E, 0x7641},+    {0xAF9F, 0x7642},+    {0xAFA0, 0x7644},+    {0xAFA1, 0xE1D6},+    {0xAFA2, 0xE1D7},+    {0xAFA3, 0xE1D8},+    {0xAFA4, 0xE1D9},+    {0xAFA5, 0xE1DA},+    {0xAFA6, 0xE1DB},+    {0xAFA7, 0xE1DC},+    {0xAFA8, 0xE1DD},+    {0xAFA9, 0xE1DE},+    {0xAFAA, 0xE1DF},+    {0xAFAB, 0xE1E0},+    {0xAFAC, 0xE1E1},+    {0xAFAD, 0xE1E2},+    {0xAFAE, 0xE1E3},+    {0xAFAF, 0xE1E4},+    {0xAFB0, 0xE1E5},+    {0xAFB1, 0xE1E6},+    {0xAFB2, 0xE1E7},+    {0xAFB3, 0xE1E8},+    {0xAFB4, 0xE1E9},+    {0xAFB5, 0xE1EA},+    {0xAFB6, 0xE1EB},+    {0xAFB7, 0xE1EC},+    {0xAFB8, 0xE1ED},+    {0xAFB9, 0xE1EE},+    {0xAFBA, 0xE1EF},+    {0xAFBB, 0xE1F0},+    {0xAFBC, 0xE1F1},+    {0xAFBD, 0xE1F2},+    {0xAFBE, 0xE1F3},+    {0xAFBF, 0xE1F4},+    {0xAFC0, 0xE1F5},+    {0xAFC1, 0xE1F6},+    {0xAFC2, 0xE1F7},+    {0xAFC3, 0xE1F8},+    {0xAFC4, 0xE1F9},+    {0xAFC5, 0xE1FA},+    {0xAFC6, 0xE1FB},+    {0xAFC7, 0xE1FC},+    {0xAFC8, 0xE1FD},+    {0xAFC9, 0xE1FE},+    {0xAFCA, 0xE1FF},+    {0xAFCB, 0xE200},+    {0xAFCC, 0xE201},+    {0xAFCD, 0xE202},+    {0xAFCE, 0xE203},+    {0xAFCF, 0xE204},+    {0xAFD0, 0xE205},+    {0xAFD1, 0xE206},+    {0xAFD2, 0xE207},+    {0xAFD3, 0xE208},+    {0xAFD4, 0xE209},+    {0xAFD5, 0xE20A},+    {0xAFD6, 0xE20B},+    {0xAFD7, 0xE20C},+    {0xAFD8, 0xE20D},+    {0xAFD9, 0xE20E},+    {0xAFDA, 0xE20F},+    {0xAFDB, 0xE210},+    {0xAFDC, 0xE211},+    {0xAFDD, 0xE212},+    {0xAFDE, 0xE213},+    {0xAFDF, 0xE214},+    {0xAFE0, 0xE215},+    {0xAFE1, 0xE216},+    {0xAFE2, 0xE217},+    {0xAFE3, 0xE218},+    {0xAFE4, 0xE219},+    {0xAFE5, 0xE21A},+    {0xAFE6, 0xE21B},+    {0xAFE7, 0xE21C},+    {0xAFE8, 0xE21D},+    {0xAFE9, 0xE21E},+    {0xAFEA, 0xE21F},+    {0xAFEB, 0xE220},+    {0xAFEC, 0xE221},+    {0xAFED, 0xE222},+    {0xAFEE, 0xE223},+    {0xAFEF, 0xE224},+    {0xAFF0, 0xE225},+    {0xAFF1, 0xE226},+    {0xAFF2, 0xE227},+    {0xAFF3, 0xE228},+    {0xAFF4, 0xE229},+    {0xAFF5, 0xE22A},+    {0xAFF6, 0xE22B},+    {0xAFF7, 0xE22C},+    {0xAFF8, 0xE22D},+    {0xAFF9, 0xE22E},+    {0xAFFA, 0xE22F},+    {0xAFFB, 0xE230},+    {0xAFFC, 0xE231},+    {0xAFFD, 0xE232},+    {0xAFFE, 0xE233},+    {0xB040, 0x7645},+    {0xB041, 0x7646},+    {0xB042, 0x7647},+    {0xB043, 0x7648},+    {0xB044, 0x7649},+    {0xB045, 0x764A},+    {0xB046, 0x764B},+    {0xB047, 0x764E},+    {0xB048, 0x764F},+    {0xB049, 0x7650},+    {0xB04A, 0x7651},+    {0xB04B, 0x7652},+    {0xB04C, 0x7653},+    {0xB04D, 0x7655},+    {0xB04E, 0x7657},+    {0xB04F, 0x7658},+    {0xB050, 0x7659},+    {0xB051, 0x765A},+    {0xB052, 0x765B},+    {0xB053, 0x765D},+    {0xB054, 0x765F},+    {0xB055, 0x7660},+    {0xB056, 0x7661},+    {0xB057, 0x7662},+    {0xB058, 0x7664},+    {0xB059, 0x7665},+    {0xB05A, 0x7666},+    {0xB05B, 0x7667},+    {0xB05C, 0x7668},+    {0xB05D, 0x7669},+    {0xB05E, 0x766A},+    {0xB05F, 0x766C},+    {0xB060, 0x766D},+    {0xB061, 0x766E},+    {0xB062, 0x7670},+    {0xB063, 0x7671},+    {0xB064, 0x7672},+    {0xB065, 0x7673},+    {0xB066, 0x7674},+    {0xB067, 0x7675},+    {0xB068, 0x7676},+    {0xB069, 0x7677},+    {0xB06A, 0x7679},+    {0xB06B, 0x767A},+    {0xB06C, 0x767C},+    {0xB06D, 0x767F},+    {0xB06E, 0x7680},+    {0xB06F, 0x7681},+    {0xB070, 0x7683},+    {0xB071, 0x7685},+    {0xB072, 0x7689},+    {0xB073, 0x768A},+    {0xB074, 0x768C},+    {0xB075, 0x768D},+    {0xB076, 0x768F},+    {0xB077, 0x7690},+    {0xB078, 0x7692},+    {0xB079, 0x7694},+    {0xB07A, 0x7695},+    {0xB07B, 0x7697},+    {0xB07C, 0x7698},+    {0xB07D, 0x769A},+    {0xB07E, 0x769B},+    {0xB080, 0x769C},+    {0xB081, 0x769D},+    {0xB082, 0x769E},+    {0xB083, 0x769F},+    {0xB084, 0x76A0},+    {0xB085, 0x76A1},+    {0xB086, 0x76A2},+    {0xB087, 0x76A3},+    {0xB088, 0x76A5},+    {0xB089, 0x76A6},+    {0xB08A, 0x76A7},+    {0xB08B, 0x76A8},+    {0xB08C, 0x76A9},+    {0xB08D, 0x76AA},+    {0xB08E, 0x76AB},+    {0xB08F, 0x76AC},+    {0xB090, 0x76AD},+    {0xB091, 0x76AF},+    {0xB092, 0x76B0},+    {0xB093, 0x76B3},+    {0xB094, 0x76B5},+    {0xB095, 0x76B6},+    {0xB096, 0x76B7},+    {0xB097, 0x76B8},+    {0xB098, 0x76B9},+    {0xB099, 0x76BA},+    {0xB09A, 0x76BB},+    {0xB09B, 0x76BC},+    {0xB09C, 0x76BD},+    {0xB09D, 0x76BE},+    {0xB09E, 0x76C0},+    {0xB09F, 0x76C1},+    {0xB0A0, 0x76C3},+    {0xB0A1, 0x554A},+    {0xB0A2, 0x963F},+    {0xB0A3, 0x57C3},+    {0xB0A4, 0x6328},+    {0xB0A5, 0x54CE},+    {0xB0A6, 0x5509},+    {0xB0A7, 0x54C0},+    {0xB0A8, 0x7691},+    {0xB0A9, 0x764C},+    {0xB0AA, 0x853C},+    {0xB0AB, 0x77EE},+    {0xB0AC, 0x827E},+    {0xB0AD, 0x788D},+    {0xB0AE, 0x7231},+    {0xB0AF, 0x9698},+    {0xB0B0, 0x978D},+    {0xB0B1, 0x6C28},+    {0xB0B2, 0x5B89},+    {0xB0B3, 0x4FFA},+    {0xB0B4, 0x6309},+    {0xB0B5, 0x6697},+    {0xB0B6, 0x5CB8},+    {0xB0B7, 0x80FA},+    {0xB0B8, 0x6848},+    {0xB0B9, 0x80AE},+    {0xB0BA, 0x6602},+    {0xB0BB, 0x76CE},+    {0xB0BC, 0x51F9},+    {0xB0BD, 0x6556},+    {0xB0BE, 0x71AC},+    {0xB0BF, 0x7FF1},+    {0xB0C0, 0x8884},+    {0xB0C1, 0x50B2},+    {0xB0C2, 0x5965},+    {0xB0C3, 0x61CA},+    {0xB0C4, 0x6FB3},+    {0xB0C5, 0x82AD},+    {0xB0C6, 0x634C},+    {0xB0C7, 0x6252},+    {0xB0C8, 0x53ED},+    {0xB0C9, 0x5427},+    {0xB0CA, 0x7B06},+    {0xB0CB, 0x516B},+    {0xB0CC, 0x75A4},+    {0xB0CD, 0x5DF4},+    {0xB0CE, 0x62D4},+    {0xB0CF, 0x8DCB},+    {0xB0D0, 0x9776},+    {0xB0D1, 0x628A},+    {0xB0D2, 0x8019},+    {0xB0D3, 0x575D},+    {0xB0D4, 0x9738},+    {0xB0D5, 0x7F62},+    {0xB0D6, 0x7238},+    {0xB0D7, 0x767D},+    {0xB0D8, 0x67CF},+    {0xB0D9, 0x767E},+    {0xB0DA, 0x6446},+    {0xB0DB, 0x4F70},+    {0xB0DC, 0x8D25},+    {0xB0DD, 0x62DC},+    {0xB0DE, 0x7A17},+    {0xB0DF, 0x6591},+    {0xB0E0, 0x73ED},+    {0xB0E1, 0x642C},+    {0xB0E2, 0x6273},+    {0xB0E3, 0x822C},+    {0xB0E4, 0x9881},+    {0xB0E5, 0x677F},+    {0xB0E6, 0x7248},+    {0xB0E7, 0x626E},+    {0xB0E8, 0x62CC},+    {0xB0E9, 0x4F34},+    {0xB0EA, 0x74E3},+    {0xB0EB, 0x534A},+    {0xB0EC, 0x529E},+    {0xB0ED, 0x7ECA},+    {0xB0EE, 0x90A6},+    {0xB0EF, 0x5E2E},+    {0xB0F0, 0x6886},+    {0xB0F1, 0x699C},+    {0xB0F2, 0x8180},+    {0xB0F3, 0x7ED1},+    {0xB0F4, 0x68D2},+    {0xB0F5, 0x78C5},+    {0xB0F6, 0x868C},+    {0xB0F7, 0x9551},+    {0xB0F8, 0x508D},+    {0xB0F9, 0x8C24},+    {0xB0FA, 0x82DE},+    {0xB0FB, 0x80DE},+    {0xB0FC, 0x5305},+    {0xB0FD, 0x8912},+    {0xB0FE, 0x5265},+    {0xB140, 0x76C4},+    {0xB141, 0x76C7},+    {0xB142, 0x76C9},+    {0xB143, 0x76CB},+    {0xB144, 0x76CC},+    {0xB145, 0x76D3},+    {0xB146, 0x76D5},+    {0xB147, 0x76D9},+    {0xB148, 0x76DA},+    {0xB149, 0x76DC},+    {0xB14A, 0x76DD},+    {0xB14B, 0x76DE},+    {0xB14C, 0x76E0},+    {0xB14D, 0x76E1},+    {0xB14E, 0x76E2},+    {0xB14F, 0x76E3},+    {0xB150, 0x76E4},+    {0xB151, 0x76E6},+    {0xB152, 0x76E7},+    {0xB153, 0x76E8},+    {0xB154, 0x76E9},+    {0xB155, 0x76EA},+    {0xB156, 0x76EB},+    {0xB157, 0x76EC},+    {0xB158, 0x76ED},+    {0xB159, 0x76F0},+    {0xB15A, 0x76F3},+    {0xB15B, 0x76F5},+    {0xB15C, 0x76F6},+    {0xB15D, 0x76F7},+    {0xB15E, 0x76FA},+    {0xB15F, 0x76FB},+    {0xB160, 0x76FD},+    {0xB161, 0x76FF},+    {0xB162, 0x7700},+    {0xB163, 0x7702},+    {0xB164, 0x7703},+    {0xB165, 0x7705},+    {0xB166, 0x7706},+    {0xB167, 0x770A},+    {0xB168, 0x770C},+    {0xB169, 0x770E},+    {0xB16A, 0x770F},+    {0xB16B, 0x7710},+    {0xB16C, 0x7711},+    {0xB16D, 0x7712},+    {0xB16E, 0x7713},+    {0xB16F, 0x7714},+    {0xB170, 0x7715},+    {0xB171, 0x7716},+    {0xB172, 0x7717},+    {0xB173, 0x7718},+    {0xB174, 0x771B},+    {0xB175, 0x771C},+    {0xB176, 0x771D},+    {0xB177, 0x771E},+    {0xB178, 0x7721},+    {0xB179, 0x7723},+    {0xB17A, 0x7724},+    {0xB17B, 0x7725},+    {0xB17C, 0x7727},+    {0xB17D, 0x772A},+    {0xB17E, 0x772B},+    {0xB180, 0x772C},+    {0xB181, 0x772E},+    {0xB182, 0x7730},+    {0xB183, 0x7731},+    {0xB184, 0x7732},+    {0xB185, 0x7733},+    {0xB186, 0x7734},+    {0xB187, 0x7739},+    {0xB188, 0x773B},+    {0xB189, 0x773D},+    {0xB18A, 0x773E},+    {0xB18B, 0x773F},+    {0xB18C, 0x7742},+    {0xB18D, 0x7744},+    {0xB18E, 0x7745},+    {0xB18F, 0x7746},+    {0xB190, 0x7748},+    {0xB191, 0x7749},+    {0xB192, 0x774A},+    {0xB193, 0x774B},+    {0xB194, 0x774C},+    {0xB195, 0x774D},+    {0xB196, 0x774E},+    {0xB197, 0x774F},+    {0xB198, 0x7752},+    {0xB199, 0x7753},+    {0xB19A, 0x7754},+    {0xB19B, 0x7755},+    {0xB19C, 0x7756},+    {0xB19D, 0x7757},+    {0xB19E, 0x7758},+    {0xB19F, 0x7759},+    {0xB1A0, 0x775C},+    {0xB1A1, 0x8584},+    {0xB1A2, 0x96F9},+    {0xB1A3, 0x4FDD},+    {0xB1A4, 0x5821},+    {0xB1A5, 0x9971},+    {0xB1A6, 0x5B9D},+    {0xB1A7, 0x62B1},+    {0xB1A8, 0x62A5},+    {0xB1A9, 0x66B4},+    {0xB1AA, 0x8C79},+    {0xB1AB, 0x9C8D},+    {0xB1AC, 0x7206},+    {0xB1AD, 0x676F},+    {0xB1AE, 0x7891},+    {0xB1AF, 0x60B2},+    {0xB1B0, 0x5351},+    {0xB1B1, 0x5317},+    {0xB1B2, 0x8F88},+    {0xB1B3, 0x80CC},+    {0xB1B4, 0x8D1D},+    {0xB1B5, 0x94A1},+    {0xB1B6, 0x500D},+    {0xB1B7, 0x72C8},+    {0xB1B8, 0x5907},+    {0xB1B9, 0x60EB},+    {0xB1BA, 0x7119},+    {0xB1BB, 0x88AB},+    {0xB1BC, 0x5954},+    {0xB1BD, 0x82EF},+    {0xB1BE, 0x672C},+    {0xB1BF, 0x7B28},+    {0xB1C0, 0x5D29},+    {0xB1C1, 0x7EF7},+    {0xB1C2, 0x752D},+    {0xB1C3, 0x6CF5},+    {0xB1C4, 0x8E66},+    {0xB1C5, 0x8FF8},+    {0xB1C6, 0x903C},+    {0xB1C7, 0x9F3B},+    {0xB1C8, 0x6BD4},+    {0xB1C9, 0x9119},+    {0xB1CA, 0x7B14},+    {0xB1CB, 0x5F7C},+    {0xB1CC, 0x78A7},+    {0xB1CD, 0x84D6},+    {0xB1CE, 0x853D},+    {0xB1CF, 0x6BD5},+    {0xB1D0, 0x6BD9},+    {0xB1D1, 0x6BD6},+    {0xB1D2, 0x5E01},+    {0xB1D3, 0x5E87},+    {0xB1D4, 0x75F9},+    {0xB1D5, 0x95ED},+    {0xB1D6, 0x655D},+    {0xB1D7, 0x5F0A},+    {0xB1D8, 0x5FC5},+    {0xB1D9, 0x8F9F},+    {0xB1DA, 0x58C1},+    {0xB1DB, 0x81C2},+    {0xB1DC, 0x907F},+    {0xB1DD, 0x965B},+    {0xB1DE, 0x97AD},+    {0xB1DF, 0x8FB9},+    {0xB1E0, 0x7F16},+    {0xB1E1, 0x8D2C},+    {0xB1E2, 0x6241},+    {0xB1E3, 0x4FBF},+    {0xB1E4, 0x53D8},+    {0xB1E5, 0x535E},+    {0xB1E6, 0x8FA8},+    {0xB1E7, 0x8FA9},+    {0xB1E8, 0x8FAB},+    {0xB1E9, 0x904D},+    {0xB1EA, 0x6807},+    {0xB1EB, 0x5F6A},+    {0xB1EC, 0x8198},+    {0xB1ED, 0x8868},+    {0xB1EE, 0x9CD6},+    {0xB1EF, 0x618B},+    {0xB1F0, 0x522B},+    {0xB1F1, 0x762A},+    {0xB1F2, 0x5F6C},+    {0xB1F3, 0x658C},+    {0xB1F4, 0x6FD2},+    {0xB1F5, 0x6EE8},+    {0xB1F6, 0x5BBE},+    {0xB1F7, 0x6448},+    {0xB1F8, 0x5175},+    {0xB1F9, 0x51B0},+    {0xB1FA, 0x67C4},+    {0xB1FB, 0x4E19},+    {0xB1FC, 0x79C9},+    {0xB1FD, 0x997C},+    {0xB1FE, 0x70B3},+    {0xB240, 0x775D},+    {0xB241, 0x775E},+    {0xB242, 0x775F},+    {0xB243, 0x7760},+    {0xB244, 0x7764},+    {0xB245, 0x7767},+    {0xB246, 0x7769},+    {0xB247, 0x776A},+    {0xB248, 0x776D},+    {0xB249, 0x776E},+    {0xB24A, 0x776F},+    {0xB24B, 0x7770},+    {0xB24C, 0x7771},+    {0xB24D, 0x7772},+    {0xB24E, 0x7773},+    {0xB24F, 0x7774},+    {0xB250, 0x7775},+    {0xB251, 0x7776},+    {0xB252, 0x7777},+    {0xB253, 0x7778},+    {0xB254, 0x777A},+    {0xB255, 0x777B},+    {0xB256, 0x777C},+    {0xB257, 0x7781},+    {0xB258, 0x7782},+    {0xB259, 0x7783},+    {0xB25A, 0x7786},+    {0xB25B, 0x7787},+    {0xB25C, 0x7788},+    {0xB25D, 0x7789},+    {0xB25E, 0x778A},+    {0xB25F, 0x778B},+    {0xB260, 0x778F},+    {0xB261, 0x7790},+    {0xB262, 0x7793},+    {0xB263, 0x7794},+    {0xB264, 0x7795},+    {0xB265, 0x7796},+    {0xB266, 0x7797},+    {0xB267, 0x7798},+    {0xB268, 0x7799},+    {0xB269, 0x779A},+    {0xB26A, 0x779B},+    {0xB26B, 0x779C},+    {0xB26C, 0x779D},+    {0xB26D, 0x779E},+    {0xB26E, 0x77A1},+    {0xB26F, 0x77A3},+    {0xB270, 0x77A4},+    {0xB271, 0x77A6},+    {0xB272, 0x77A8},+    {0xB273, 0x77AB},+    {0xB274, 0x77AD},+    {0xB275, 0x77AE},+    {0xB276, 0x77AF},+    {0xB277, 0x77B1},+    {0xB278, 0x77B2},+    {0xB279, 0x77B4},+    {0xB27A, 0x77B6},+    {0xB27B, 0x77B7},+    {0xB27C, 0x77B8},+    {0xB27D, 0x77B9},+    {0xB27E, 0x77BA},+    {0xB280, 0x77BC},+    {0xB281, 0x77BE},+    {0xB282, 0x77C0},+    {0xB283, 0x77C1},+    {0xB284, 0x77C2},+    {0xB285, 0x77C3},+    {0xB286, 0x77C4},+    {0xB287, 0x77C5},+    {0xB288, 0x77C6},+    {0xB289, 0x77C7},+    {0xB28A, 0x77C8},+    {0xB28B, 0x77C9},+    {0xB28C, 0x77CA},+    {0xB28D, 0x77CB},+    {0xB28E, 0x77CC},+    {0xB28F, 0x77CE},+    {0xB290, 0x77CF},+    {0xB291, 0x77D0},+    {0xB292, 0x77D1},+    {0xB293, 0x77D2},+    {0xB294, 0x77D3},+    {0xB295, 0x77D4},+    {0xB296, 0x77D5},+    {0xB297, 0x77D6},+    {0xB298, 0x77D8},+    {0xB299, 0x77D9},+    {0xB29A, 0x77DA},+    {0xB29B, 0x77DD},+    {0xB29C, 0x77DE},+    {0xB29D, 0x77DF},+    {0xB29E, 0x77E0},+    {0xB29F, 0x77E1},+    {0xB2A0, 0x77E4},+    {0xB2A1, 0x75C5},+    {0xB2A2, 0x5E76},+    {0xB2A3, 0x73BB},+    {0xB2A4, 0x83E0},+    {0xB2A5, 0x64AD},+    {0xB2A6, 0x62E8},+    {0xB2A7, 0x94B5},+    {0xB2A8, 0x6CE2},+    {0xB2A9, 0x535A},+    {0xB2AA, 0x52C3},+    {0xB2AB, 0x640F},+    {0xB2AC, 0x94C2},+    {0xB2AD, 0x7B94},+    {0xB2AE, 0x4F2F},+    {0xB2AF, 0x5E1B},+    {0xB2B0, 0x8236},+    {0xB2B1, 0x8116},+    {0xB2B2, 0x818A},+    {0xB2B3, 0x6E24},+    {0xB2B4, 0x6CCA},+    {0xB2B5, 0x9A73},+    {0xB2B6, 0x6355},+    {0xB2B7, 0x535C},+    {0xB2B8, 0x54FA},+    {0xB2B9, 0x8865},+    {0xB2BA, 0x57E0},+    {0xB2BB, 0x4E0D},+    {0xB2BC, 0x5E03},+    {0xB2BD, 0x6B65},+    {0xB2BE, 0x7C3F},+    {0xB2BF, 0x90E8},+    {0xB2C0, 0x6016},+    {0xB2C1, 0x64E6},+    {0xB2C2, 0x731C},+    {0xB2C3, 0x88C1},+    {0xB2C4, 0x6750},+    {0xB2C5, 0x624D},+    {0xB2C6, 0x8D22},+    {0xB2C7, 0x776C},+    {0xB2C8, 0x8E29},+    {0xB2C9, 0x91C7},+    {0xB2CA, 0x5F69},+    {0xB2CB, 0x83DC},+    {0xB2CC, 0x8521},+    {0xB2CD, 0x9910},+    {0xB2CE, 0x53C2},+    {0xB2CF, 0x8695},+    {0xB2D0, 0x6B8B},+    {0xB2D1, 0x60ED},+    {0xB2D2, 0x60E8},+    {0xB2D3, 0x707F},+    {0xB2D4, 0x82CD},+    {0xB2D5, 0x8231},+    {0xB2D6, 0x4ED3},+    {0xB2D7, 0x6CA7},+    {0xB2D8, 0x85CF},+    {0xB2D9, 0x64CD},+    {0xB2DA, 0x7CD9},+    {0xB2DB, 0x69FD},+    {0xB2DC, 0x66F9},+    {0xB2DD, 0x8349},+    {0xB2DE, 0x5395},+    {0xB2DF, 0x7B56},+    {0xB2E0, 0x4FA7},+    {0xB2E1, 0x518C},+    {0xB2E2, 0x6D4B},+    {0xB2E3, 0x5C42},+    {0xB2E4, 0x8E6D},+    {0xB2E5, 0x63D2},+    {0xB2E6, 0x53C9},+    {0xB2E7, 0x832C},+    {0xB2E8, 0x8336},+    {0xB2E9, 0x67E5},+    {0xB2EA, 0x78B4},+    {0xB2EB, 0x643D},+    {0xB2EC, 0x5BDF},+    {0xB2ED, 0x5C94},+    {0xB2EE, 0x5DEE},+    {0xB2EF, 0x8BE7},+    {0xB2F0, 0x62C6},+    {0xB2F1, 0x67F4},+    {0xB2F2, 0x8C7A},+    {0xB2F3, 0x6400},+    {0xB2F4, 0x63BA},+    {0xB2F5, 0x8749},+    {0xB2F6, 0x998B},+    {0xB2F7, 0x8C17},+    {0xB2F8, 0x7F20},+    {0xB2F9, 0x94F2},+    {0xB2FA, 0x4EA7},+    {0xB2FB, 0x9610},+    {0xB2FC, 0x98A4},+    {0xB2FD, 0x660C},+    {0xB2FE, 0x7316},+    {0xB340, 0x77E6},+    {0xB341, 0x77E8},+    {0xB342, 0x77EA},+    {0xB343, 0x77EF},+    {0xB344, 0x77F0},+    {0xB345, 0x77F1},+    {0xB346, 0x77F2},+    {0xB347, 0x77F4},+    {0xB348, 0x77F5},+    {0xB349, 0x77F7},+    {0xB34A, 0x77F9},+    {0xB34B, 0x77FA},+    {0xB34C, 0x77FB},+    {0xB34D, 0x77FC},+    {0xB34E, 0x7803},+    {0xB34F, 0x7804},+    {0xB350, 0x7805},+    {0xB351, 0x7806},+    {0xB352, 0x7807},+    {0xB353, 0x7808},+    {0xB354, 0x780A},+    {0xB355, 0x780B},+    {0xB356, 0x780E},+    {0xB357, 0x780F},+    {0xB358, 0x7810},+    {0xB359, 0x7813},+    {0xB35A, 0x7815},+    {0xB35B, 0x7819},+    {0xB35C, 0x781B},+    {0xB35D, 0x781E},+    {0xB35E, 0x7820},+    {0xB35F, 0x7821},+    {0xB360, 0x7822},+    {0xB361, 0x7824},+    {0xB362, 0x7828},+    {0xB363, 0x782A},+    {0xB364, 0x782B},+    {0xB365, 0x782E},+    {0xB366, 0x782F},+    {0xB367, 0x7831},+    {0xB368, 0x7832},+    {0xB369, 0x7833},+    {0xB36A, 0x7835},+    {0xB36B, 0x7836},+    {0xB36C, 0x783D},+    {0xB36D, 0x783F},+    {0xB36E, 0x7841},+    {0xB36F, 0x7842},+    {0xB370, 0x7843},+    {0xB371, 0x7844},+    {0xB372, 0x7846},+    {0xB373, 0x7848},+    {0xB374, 0x7849},+    {0xB375, 0x784A},+    {0xB376, 0x784B},+    {0xB377, 0x784D},+    {0xB378, 0x784F},+    {0xB379, 0x7851},+    {0xB37A, 0x7853},+    {0xB37B, 0x7854},+    {0xB37C, 0x7858},+    {0xB37D, 0x7859},+    {0xB37E, 0x785A},+    {0xB380, 0x785B},+    {0xB381, 0x785C},+    {0xB382, 0x785E},+    {0xB383, 0x785F},+    {0xB384, 0x7860},+    {0xB385, 0x7861},+    {0xB386, 0x7862},+    {0xB387, 0x7863},+    {0xB388, 0x7864},+    {0xB389, 0x7865},+    {0xB38A, 0x7866},+    {0xB38B, 0x7867},+    {0xB38C, 0x7868},+    {0xB38D, 0x7869},+    {0xB38E, 0x786F},+    {0xB38F, 0x7870},+    {0xB390, 0x7871},+    {0xB391, 0x7872},+    {0xB392, 0x7873},+    {0xB393, 0x7874},+    {0xB394, 0x7875},+    {0xB395, 0x7876},+    {0xB396, 0x7878},+    {0xB397, 0x7879},+    {0xB398, 0x787A},+    {0xB399, 0x787B},+    {0xB39A, 0x787D},+    {0xB39B, 0x787E},+    {0xB39C, 0x787F},+    {0xB39D, 0x7880},+    {0xB39E, 0x7881},+    {0xB39F, 0x7882},+    {0xB3A0, 0x7883},+    {0xB3A1, 0x573A},+    {0xB3A2, 0x5C1D},+    {0xB3A3, 0x5E38},+    {0xB3A4, 0x957F},+    {0xB3A5, 0x507F},+    {0xB3A6, 0x80A0},+    {0xB3A7, 0x5382},+    {0xB3A8, 0x655E},+    {0xB3A9, 0x7545},+    {0xB3AA, 0x5531},+    {0xB3AB, 0x5021},+    {0xB3AC, 0x8D85},+    {0xB3AD, 0x6284},+    {0xB3AE, 0x949E},+    {0xB3AF, 0x671D},+    {0xB3B0, 0x5632},+    {0xB3B1, 0x6F6E},+    {0xB3B2, 0x5DE2},+    {0xB3B3, 0x5435},+    {0xB3B4, 0x7092},+    {0xB3B5, 0x8F66},+    {0xB3B6, 0x626F},+    {0xB3B7, 0x64A4},+    {0xB3B8, 0x63A3},+    {0xB3B9, 0x5F7B},+    {0xB3BA, 0x6F88},+    {0xB3BB, 0x90F4},+    {0xB3BC, 0x81E3},+    {0xB3BD, 0x8FB0},+    {0xB3BE, 0x5C18},+    {0xB3BF, 0x6668},+    {0xB3C0, 0x5FF1},+    {0xB3C1, 0x6C89},+    {0xB3C2, 0x9648},+    {0xB3C3, 0x8D81},+    {0xB3C4, 0x886C},+    {0xB3C5, 0x6491},+    {0xB3C6, 0x79F0},+    {0xB3C7, 0x57CE},+    {0xB3C8, 0x6A59},+    {0xB3C9, 0x6210},+    {0xB3CA, 0x5448},+    {0xB3CB, 0x4E58},+    {0xB3CC, 0x7A0B},+    {0xB3CD, 0x60E9},+    {0xB3CE, 0x6F84},+    {0xB3CF, 0x8BDA},+    {0xB3D0, 0x627F},+    {0xB3D1, 0x901E},+    {0xB3D2, 0x9A8B},+    {0xB3D3, 0x79E4},+    {0xB3D4, 0x5403},+    {0xB3D5, 0x75F4},+    {0xB3D6, 0x6301},+    {0xB3D7, 0x5319},+    {0xB3D8, 0x6C60},+    {0xB3D9, 0x8FDF},+    {0xB3DA, 0x5F1B},+    {0xB3DB, 0x9A70},+    {0xB3DC, 0x803B},+    {0xB3DD, 0x9F7F},+    {0xB3DE, 0x4F88},+    {0xB3DF, 0x5C3A},+    {0xB3E0, 0x8D64},+    {0xB3E1, 0x7FC5},+    {0xB3E2, 0x65A5},+    {0xB3E3, 0x70BD},+    {0xB3E4, 0x5145},+    {0xB3E5, 0x51B2},+    {0xB3E6, 0x866B},+    {0xB3E7, 0x5D07},+    {0xB3E8, 0x5BA0},+    {0xB3E9, 0x62BD},+    {0xB3EA, 0x916C},+    {0xB3EB, 0x7574},+    {0xB3EC, 0x8E0C},+    {0xB3ED, 0x7A20},+    {0xB3EE, 0x6101},+    {0xB3EF, 0x7B79},+    {0xB3F0, 0x4EC7},+    {0xB3F1, 0x7EF8},+    {0xB3F2, 0x7785},+    {0xB3F3, 0x4E11},+    {0xB3F4, 0x81ED},+    {0xB3F5, 0x521D},+    {0xB3F6, 0x51FA},+    {0xB3F7, 0x6A71},+    {0xB3F8, 0x53A8},+    {0xB3F9, 0x8E87},+    {0xB3FA, 0x9504},+    {0xB3FB, 0x96CF},+    {0xB3FC, 0x6EC1},+    {0xB3FD, 0x9664},+    {0xB3FE, 0x695A},+    {0xB440, 0x7884},+    {0xB441, 0x7885},+    {0xB442, 0x7886},+    {0xB443, 0x7888},+    {0xB444, 0x788A},+    {0xB445, 0x788B},+    {0xB446, 0x788F},+    {0xB447, 0x7890},+    {0xB448, 0x7892},+    {0xB449, 0x7894},+    {0xB44A, 0x7895},+    {0xB44B, 0x7896},+    {0xB44C, 0x7899},+    {0xB44D, 0x789D},+    {0xB44E, 0x789E},+    {0xB44F, 0x78A0},+    {0xB450, 0x78A2},+    {0xB451, 0x78A4},+    {0xB452, 0x78A6},+    {0xB453, 0x78A8},+    {0xB454, 0x78A9},+    {0xB455, 0x78AA},+    {0xB456, 0x78AB},+    {0xB457, 0x78AC},+    {0xB458, 0x78AD},+    {0xB459, 0x78AE},+    {0xB45A, 0x78AF},+    {0xB45B, 0x78B5},+    {0xB45C, 0x78B6},+    {0xB45D, 0x78B7},+    {0xB45E, 0x78B8},+    {0xB45F, 0x78BA},+    {0xB460, 0x78BB},+    {0xB461, 0x78BC},+    {0xB462, 0x78BD},+    {0xB463, 0x78BF},+    {0xB464, 0x78C0},+    {0xB465, 0x78C2},+    {0xB466, 0x78C3},+    {0xB467, 0x78C4},+    {0xB468, 0x78C6},+    {0xB469, 0x78C7},+    {0xB46A, 0x78C8},+    {0xB46B, 0x78CC},+    {0xB46C, 0x78CD},+    {0xB46D, 0x78CE},+    {0xB46E, 0x78CF},+    {0xB46F, 0x78D1},+    {0xB470, 0x78D2},+    {0xB471, 0x78D3},+    {0xB472, 0x78D6},+    {0xB473, 0x78D7},+    {0xB474, 0x78D8},+    {0xB475, 0x78DA},+    {0xB476, 0x78DB},+    {0xB477, 0x78DC},+    {0xB478, 0x78DD},+    {0xB479, 0x78DE},+    {0xB47A, 0x78DF},+    {0xB47B, 0x78E0},+    {0xB47C, 0x78E1},+    {0xB47D, 0x78E2},+    {0xB47E, 0x78E3},+    {0xB480, 0x78E4},+    {0xB481, 0x78E5},+    {0xB482, 0x78E6},+    {0xB483, 0x78E7},+    {0xB484, 0x78E9},+    {0xB485, 0x78EA},+    {0xB486, 0x78EB},+    {0xB487, 0x78ED},+    {0xB488, 0x78EE},+    {0xB489, 0x78EF},+    {0xB48A, 0x78F0},+    {0xB48B, 0x78F1},+    {0xB48C, 0x78F3},+    {0xB48D, 0x78F5},+    {0xB48E, 0x78F6},+    {0xB48F, 0x78F8},+    {0xB490, 0x78F9},+    {0xB491, 0x78FB},+    {0xB492, 0x78FC},+    {0xB493, 0x78FD},+    {0xB494, 0x78FE},+    {0xB495, 0x78FF},+    {0xB496, 0x7900},+    {0xB497, 0x7902},+    {0xB498, 0x7903},+    {0xB499, 0x7904},+    {0xB49A, 0x7906},+    {0xB49B, 0x7907},+    {0xB49C, 0x7908},+    {0xB49D, 0x7909},+    {0xB49E, 0x790A},+    {0xB49F, 0x790B},+    {0xB4A0, 0x790C},+    {0xB4A1, 0x7840},+    {0xB4A2, 0x50A8},+    {0xB4A3, 0x77D7},+    {0xB4A4, 0x6410},+    {0xB4A5, 0x89E6},+    {0xB4A6, 0x5904},+    {0xB4A7, 0x63E3},+    {0xB4A8, 0x5DDD},+    {0xB4A9, 0x7A7F},+    {0xB4AA, 0x693D},+    {0xB4AB, 0x4F20},+    {0xB4AC, 0x8239},+    {0xB4AD, 0x5598},+    {0xB4AE, 0x4E32},+    {0xB4AF, 0x75AE},+    {0xB4B0, 0x7A97},+    {0xB4B1, 0x5E62},+    {0xB4B2, 0x5E8A},+    {0xB4B3, 0x95EF},+    {0xB4B4, 0x521B},+    {0xB4B5, 0x5439},+    {0xB4B6, 0x708A},+    {0xB4B7, 0x6376},+    {0xB4B8, 0x9524},+    {0xB4B9, 0x5782},+    {0xB4BA, 0x6625},+    {0xB4BB, 0x693F},+    {0xB4BC, 0x9187},+    {0xB4BD, 0x5507},+    {0xB4BE, 0x6DF3},+    {0xB4BF, 0x7EAF},+    {0xB4C0, 0x8822},+    {0xB4C1, 0x6233},+    {0xB4C2, 0x7EF0},+    {0xB4C3, 0x75B5},+    {0xB4C4, 0x8328},+    {0xB4C5, 0x78C1},+    {0xB4C6, 0x96CC},+    {0xB4C7, 0x8F9E},+    {0xB4C8, 0x6148},+    {0xB4C9, 0x74F7},+    {0xB4CA, 0x8BCD},+    {0xB4CB, 0x6B64},+    {0xB4CC, 0x523A},+    {0xB4CD, 0x8D50},+    {0xB4CE, 0x6B21},+    {0xB4CF, 0x806A},+    {0xB4D0, 0x8471},+    {0xB4D1, 0x56F1},+    {0xB4D2, 0x5306},+    {0xB4D3, 0x4ECE},+    {0xB4D4, 0x4E1B},+    {0xB4D5, 0x51D1},+    {0xB4D6, 0x7C97},+    {0xB4D7, 0x918B},+    {0xB4D8, 0x7C07},+    {0xB4D9, 0x4FC3},+    {0xB4DA, 0x8E7F},+    {0xB4DB, 0x7BE1},+    {0xB4DC, 0x7A9C},+    {0xB4DD, 0x6467},+    {0xB4DE, 0x5D14},+    {0xB4DF, 0x50AC},+    {0xB4E0, 0x8106},+    {0xB4E1, 0x7601},+    {0xB4E2, 0x7CB9},+    {0xB4E3, 0x6DEC},+    {0xB4E4, 0x7FE0},+    {0xB4E5, 0x6751},+    {0xB4E6, 0x5B58},+    {0xB4E7, 0x5BF8},+    {0xB4E8, 0x78CB},+    {0xB4E9, 0x64AE},+    {0xB4EA, 0x6413},+    {0xB4EB, 0x63AA},+    {0xB4EC, 0x632B},+    {0xB4ED, 0x9519},+    {0xB4EE, 0x642D},+    {0xB4EF, 0x8FBE},+    {0xB4F0, 0x7B54},+    {0xB4F1, 0x7629},+    {0xB4F2, 0x6253},+    {0xB4F3, 0x5927},+    {0xB4F4, 0x5446},+    {0xB4F5, 0x6B79},+    {0xB4F6, 0x50A3},+    {0xB4F7, 0x6234},+    {0xB4F8, 0x5E26},+    {0xB4F9, 0x6B86},+    {0xB4FA, 0x4EE3},+    {0xB4FB, 0x8D37},+    {0xB4FC, 0x888B},+    {0xB4FD, 0x5F85},+    {0xB4FE, 0x902E},+    {0xB540, 0x790D},+    {0xB541, 0x790E},+    {0xB542, 0x790F},+    {0xB543, 0x7910},+    {0xB544, 0x7911},+    {0xB545, 0x7912},+    {0xB546, 0x7914},+    {0xB547, 0x7915},+    {0xB548, 0x7916},+    {0xB549, 0x7917},+    {0xB54A, 0x7918},+    {0xB54B, 0x7919},+    {0xB54C, 0x791A},+    {0xB54D, 0x791B},+    {0xB54E, 0x791C},+    {0xB54F, 0x791D},+    {0xB550, 0x791F},+    {0xB551, 0x7920},+    {0xB552, 0x7921},+    {0xB553, 0x7922},+    {0xB554, 0x7923},+    {0xB555, 0x7925},+    {0xB556, 0x7926},+    {0xB557, 0x7927},+    {0xB558, 0x7928},+    {0xB559, 0x7929},+    {0xB55A, 0x792A},+    {0xB55B, 0x792B},+    {0xB55C, 0x792C},+    {0xB55D, 0x792D},+    {0xB55E, 0x792E},+    {0xB55F, 0x792F},+    {0xB560, 0x7930},+    {0xB561, 0x7931},+    {0xB562, 0x7932},+    {0xB563, 0x7933},+    {0xB564, 0x7935},+    {0xB565, 0x7936},+    {0xB566, 0x7937},+    {0xB567, 0x7938},+    {0xB568, 0x7939},+    {0xB569, 0x793D},+    {0xB56A, 0x793F},+    {0xB56B, 0x7942},+    {0xB56C, 0x7943},+    {0xB56D, 0x7944},+    {0xB56E, 0x7945},+    {0xB56F, 0x7947},+    {0xB570, 0x794A},+    {0xB571, 0x794B},+    {0xB572, 0x794C},+    {0xB573, 0x794D},+    {0xB574, 0x794E},+    {0xB575, 0x794F},+    {0xB576, 0x7950},+    {0xB577, 0x7951},+    {0xB578, 0x7952},+    {0xB579, 0x7954},+    {0xB57A, 0x7955},+    {0xB57B, 0x7958},+    {0xB57C, 0x7959},+    {0xB57D, 0x7961},+    {0xB57E, 0x7963},+    {0xB580, 0x7964},+    {0xB581, 0x7966},+    {0xB582, 0x7969},+    {0xB583, 0x796A},+    {0xB584, 0x796B},+    {0xB585, 0x796C},+    {0xB586, 0x796E},+    {0xB587, 0x7970},+    {0xB588, 0x7971},+    {0xB589, 0x7972},+    {0xB58A, 0x7973},+    {0xB58B, 0x7974},+    {0xB58C, 0x7975},+    {0xB58D, 0x7976},+    {0xB58E, 0x7979},+    {0xB58F, 0x797B},+    {0xB590, 0x797C},+    {0xB591, 0x797D},+    {0xB592, 0x797E},+    {0xB593, 0x797F},+    {0xB594, 0x7982},+    {0xB595, 0x7983},+    {0xB596, 0x7986},+    {0xB597, 0x7987},+    {0xB598, 0x7988},+    {0xB599, 0x7989},+    {0xB59A, 0x798B},+    {0xB59B, 0x798C},+    {0xB59C, 0x798D},+    {0xB59D, 0x798E},+    {0xB59E, 0x7990},+    {0xB59F, 0x7991},+    {0xB5A0, 0x7992},+    {0xB5A1, 0x6020},+    {0xB5A2, 0x803D},+    {0xB5A3, 0x62C5},+    {0xB5A4, 0x4E39},+    {0xB5A5, 0x5355},+    {0xB5A6, 0x90F8},+    {0xB5A7, 0x63B8},+    {0xB5A8, 0x80C6},+    {0xB5A9, 0x65E6},+    {0xB5AA, 0x6C2E},+    {0xB5AB, 0x4F46},+    {0xB5AC, 0x60EE},+    {0xB5AD, 0x6DE1},+    {0xB5AE, 0x8BDE},+    {0xB5AF, 0x5F39},+    {0xB5B0, 0x86CB},+    {0xB5B1, 0x5F53},+    {0xB5B2, 0x6321},+    {0xB5B3, 0x515A},+    {0xB5B4, 0x8361},+    {0xB5B5, 0x6863},+    {0xB5B6, 0x5200},+    {0xB5B7, 0x6363},+    {0xB5B8, 0x8E48},+    {0xB5B9, 0x5012},+    {0xB5BA, 0x5C9B},+    {0xB5BB, 0x7977},+    {0xB5BC, 0x5BFC},+    {0xB5BD, 0x5230},+    {0xB5BE, 0x7A3B},+    {0xB5BF, 0x60BC},+    {0xB5C0, 0x9053},+    {0xB5C1, 0x76D7},+    {0xB5C2, 0x5FB7},+    {0xB5C3, 0x5F97},+    {0xB5C4, 0x7684},+    {0xB5C5, 0x8E6C},+    {0xB5C6, 0x706F},+    {0xB5C7, 0x767B},+    {0xB5C8, 0x7B49},+    {0xB5C9, 0x77AA},+    {0xB5CA, 0x51F3},+    {0xB5CB, 0x9093},+    {0xB5CC, 0x5824},+    {0xB5CD, 0x4F4E},+    {0xB5CE, 0x6EF4},+    {0xB5CF, 0x8FEA},+    {0xB5D0, 0x654C},+    {0xB5D1, 0x7B1B},+    {0xB5D2, 0x72C4},+    {0xB5D3, 0x6DA4},+    {0xB5D4, 0x7FDF},+    {0xB5D5, 0x5AE1},+    {0xB5D6, 0x62B5},+    {0xB5D7, 0x5E95},+    {0xB5D8, 0x5730},+    {0xB5D9, 0x8482},+    {0xB5DA, 0x7B2C},+    {0xB5DB, 0x5E1D},+    {0xB5DC, 0x5F1F},+    {0xB5DD, 0x9012},+    {0xB5DE, 0x7F14},+    {0xB5DF, 0x98A0},+    {0xB5E0, 0x6382},+    {0xB5E1, 0x6EC7},+    {0xB5E2, 0x7898},+    {0xB5E3, 0x70B9},+    {0xB5E4, 0x5178},+    {0xB5E5, 0x975B},+    {0xB5E6, 0x57AB},+    {0xB5E7, 0x7535},+    {0xB5E8, 0x4F43},+    {0xB5E9, 0x7538},+    {0xB5EA, 0x5E97},+    {0xB5EB, 0x60E6},+    {0xB5EC, 0x5960},+    {0xB5ED, 0x6DC0},+    {0xB5EE, 0x6BBF},+    {0xB5EF, 0x7889},+    {0xB5F0, 0x53FC},+    {0xB5F1, 0x96D5},+    {0xB5F2, 0x51CB},+    {0xB5F3, 0x5201},+    {0xB5F4, 0x6389},+    {0xB5F5, 0x540A},+    {0xB5F6, 0x9493},+    {0xB5F7, 0x8C03},+    {0xB5F8, 0x8DCC},+    {0xB5F9, 0x7239},+    {0xB5FA, 0x789F},+    {0xB5FB, 0x8776},+    {0xB5FC, 0x8FED},+    {0xB5FD, 0x8C0D},+    {0xB5FE, 0x53E0},+    {0xB640, 0x7993},+    {0xB641, 0x7994},+    {0xB642, 0x7995},+    {0xB643, 0x7996},+    {0xB644, 0x7997},+    {0xB645, 0x7998},+    {0xB646, 0x7999},+    {0xB647, 0x799B},+    {0xB648, 0x799C},+    {0xB649, 0x799D},+    {0xB64A, 0x799E},+    {0xB64B, 0x799F},+    {0xB64C, 0x79A0},+    {0xB64D, 0x79A1},+    {0xB64E, 0x79A2},+    {0xB64F, 0x79A3},+    {0xB650, 0x79A4},+    {0xB651, 0x79A5},+    {0xB652, 0x79A6},+    {0xB653, 0x79A8},+    {0xB654, 0x79A9},+    {0xB655, 0x79AA},+    {0xB656, 0x79AB},+    {0xB657, 0x79AC},+    {0xB658, 0x79AD},+    {0xB659, 0x79AE},+    {0xB65A, 0x79AF},+    {0xB65B, 0x79B0},+    {0xB65C, 0x79B1},+    {0xB65D, 0x79B2},+    {0xB65E, 0x79B4},+    {0xB65F, 0x79B5},+    {0xB660, 0x79B6},+    {0xB661, 0x79B7},+    {0xB662, 0x79B8},+    {0xB663, 0x79BC},+    {0xB664, 0x79BF},+    {0xB665, 0x79C2},+    {0xB666, 0x79C4},+    {0xB667, 0x79C5},+    {0xB668, 0x79C7},+    {0xB669, 0x79C8},+    {0xB66A, 0x79CA},+    {0xB66B, 0x79CC},+    {0xB66C, 0x79CE},+    {0xB66D, 0x79CF},+    {0xB66E, 0x79D0},+    {0xB66F, 0x79D3},+    {0xB670, 0x79D4},+    {0xB671, 0x79D6},+    {0xB672, 0x79D7},+    {0xB673, 0x79D9},+    {0xB674, 0x79DA},+    {0xB675, 0x79DB},+    {0xB676, 0x79DC},+    {0xB677, 0x79DD},+    {0xB678, 0x79DE},+    {0xB679, 0x79E0},+    {0xB67A, 0x79E1},+    {0xB67B, 0x79E2},+    {0xB67C, 0x79E5},+    {0xB67D, 0x79E8},+    {0xB67E, 0x79EA},+    {0xB680, 0x79EC},+    {0xB681, 0x79EE},+    {0xB682, 0x79F1},+    {0xB683, 0x79F2},+    {0xB684, 0x79F3},+    {0xB685, 0x79F4},+    {0xB686, 0x79F5},+    {0xB687, 0x79F6},+    {0xB688, 0x79F7},+    {0xB689, 0x79F9},+    {0xB68A, 0x79FA},+    {0xB68B, 0x79FC},+    {0xB68C, 0x79FE},+    {0xB68D, 0x79FF},+    {0xB68E, 0x7A01},+    {0xB68F, 0x7A04},+    {0xB690, 0x7A05},+    {0xB691, 0x7A07},+    {0xB692, 0x7A08},+    {0xB693, 0x7A09},+    {0xB694, 0x7A0A},+    {0xB695, 0x7A0C},+    {0xB696, 0x7A0F},+    {0xB697, 0x7A10},+    {0xB698, 0x7A11},+    {0xB699, 0x7A12},+    {0xB69A, 0x7A13},+    {0xB69B, 0x7A15},+    {0xB69C, 0x7A16},+    {0xB69D, 0x7A18},+    {0xB69E, 0x7A19},+    {0xB69F, 0x7A1B},+    {0xB6A0, 0x7A1C},+    {0xB6A1, 0x4E01},+    {0xB6A2, 0x76EF},+    {0xB6A3, 0x53EE},+    {0xB6A4, 0x9489},+    {0xB6A5, 0x9876},+    {0xB6A6, 0x9F0E},+    {0xB6A7, 0x952D},+    {0xB6A8, 0x5B9A},+    {0xB6A9, 0x8BA2},+    {0xB6AA, 0x4E22},+    {0xB6AB, 0x4E1C},+    {0xB6AC, 0x51AC},+    {0xB6AD, 0x8463},+    {0xB6AE, 0x61C2},+    {0xB6AF, 0x52A8},+    {0xB6B0, 0x680B},+    {0xB6B1, 0x4F97},+    {0xB6B2, 0x606B},+    {0xB6B3, 0x51BB},+    {0xB6B4, 0x6D1E},+    {0xB6B5, 0x515C},+    {0xB6B6, 0x6296},+    {0xB6B7, 0x6597},+    {0xB6B8, 0x9661},+    {0xB6B9, 0x8C46},+    {0xB6BA, 0x9017},+    {0xB6BB, 0x75D8},+    {0xB6BC, 0x90FD},+    {0xB6BD, 0x7763},+    {0xB6BE, 0x6BD2},+    {0xB6BF, 0x728A},+    {0xB6C0, 0x72EC},+    {0xB6C1, 0x8BFB},+    {0xB6C2, 0x5835},+    {0xB6C3, 0x7779},+    {0xB6C4, 0x8D4C},+    {0xB6C5, 0x675C},+    {0xB6C6, 0x9540},+    {0xB6C7, 0x809A},+    {0xB6C8, 0x5EA6},+    {0xB6C9, 0x6E21},+    {0xB6CA, 0x5992},+    {0xB6CB, 0x7AEF},+    {0xB6CC, 0x77ED},+    {0xB6CD, 0x953B},+    {0xB6CE, 0x6BB5},+    {0xB6CF, 0x65AD},+    {0xB6D0, 0x7F0E},+    {0xB6D1, 0x5806},+    {0xB6D2, 0x5151},+    {0xB6D3, 0x961F},+    {0xB6D4, 0x5BF9},+    {0xB6D5, 0x58A9},+    {0xB6D6, 0x5428},+    {0xB6D7, 0x8E72},+    {0xB6D8, 0x6566},+    {0xB6D9, 0x987F},+    {0xB6DA, 0x56E4},+    {0xB6DB, 0x949D},+    {0xB6DC, 0x76FE},+    {0xB6DD, 0x9041},+    {0xB6DE, 0x6387},+    {0xB6DF, 0x54C6},+    {0xB6E0, 0x591A},+    {0xB6E1, 0x593A},+    {0xB6E2, 0x579B},+    {0xB6E3, 0x8EB2},+    {0xB6E4, 0x6735},+    {0xB6E5, 0x8DFA},+    {0xB6E6, 0x8235},+    {0xB6E7, 0x5241},+    {0xB6E8, 0x60F0},+    {0xB6E9, 0x5815},+    {0xB6EA, 0x86FE},+    {0xB6EB, 0x5CE8},+    {0xB6EC, 0x9E45},+    {0xB6ED, 0x4FC4},+    {0xB6EE, 0x989D},+    {0xB6EF, 0x8BB9},+    {0xB6F0, 0x5A25},+    {0xB6F1, 0x6076},+    {0xB6F2, 0x5384},+    {0xB6F3, 0x627C},+    {0xB6F4, 0x904F},+    {0xB6F5, 0x9102},+    {0xB6F6, 0x997F},+    {0xB6F7, 0x6069},+    {0xB6F8, 0x800C},+    {0xB6F9, 0x513F},+    {0xB6FA, 0x8033},+    {0xB6FB, 0x5C14},+    {0xB6FC, 0x9975},+    {0xB6FD, 0x6D31},+    {0xB6FE, 0x4E8C},+    {0xB740, 0x7A1D},+    {0xB741, 0x7A1F},+    {0xB742, 0x7A21},+    {0xB743, 0x7A22},+    {0xB744, 0x7A24},+    {0xB745, 0x7A25},+    {0xB746, 0x7A26},+    {0xB747, 0x7A27},+    {0xB748, 0x7A28},+    {0xB749, 0x7A29},+    {0xB74A, 0x7A2A},+    {0xB74B, 0x7A2B},+    {0xB74C, 0x7A2C},+    {0xB74D, 0x7A2D},+    {0xB74E, 0x7A2E},+    {0xB74F, 0x7A2F},+    {0xB750, 0x7A30},+    {0xB751, 0x7A31},+    {0xB752, 0x7A32},+    {0xB753, 0x7A34},+    {0xB754, 0x7A35},+    {0xB755, 0x7A36},+    {0xB756, 0x7A38},+    {0xB757, 0x7A3A},+    {0xB758, 0x7A3E},+    {0xB759, 0x7A40},+    {0xB75A, 0x7A41},+    {0xB75B, 0x7A42},+    {0xB75C, 0x7A43},+    {0xB75D, 0x7A44},+    {0xB75E, 0x7A45},+    {0xB75F, 0x7A47},+    {0xB760, 0x7A48},+    {0xB761, 0x7A49},+    {0xB762, 0x7A4A},+    {0xB763, 0x7A4B},+    {0xB764, 0x7A4C},+    {0xB765, 0x7A4D},+    {0xB766, 0x7A4E},+    {0xB767, 0x7A4F},+    {0xB768, 0x7A50},+    {0xB769, 0x7A52},+    {0xB76A, 0x7A53},+    {0xB76B, 0x7A54},+    {0xB76C, 0x7A55},+    {0xB76D, 0x7A56},+    {0xB76E, 0x7A58},+    {0xB76F, 0x7A59},+    {0xB770, 0x7A5A},+    {0xB771, 0x7A5B},+    {0xB772, 0x7A5C},+    {0xB773, 0x7A5D},+    {0xB774, 0x7A5E},+    {0xB775, 0x7A5F},+    {0xB776, 0x7A60},+    {0xB777, 0x7A61},+    {0xB778, 0x7A62},+    {0xB779, 0x7A63},+    {0xB77A, 0x7A64},+    {0xB77B, 0x7A65},+    {0xB77C, 0x7A66},+    {0xB77D, 0x7A67},+    {0xB77E, 0x7A68},+    {0xB780, 0x7A69},+    {0xB781, 0x7A6A},+    {0xB782, 0x7A6B},+    {0xB783, 0x7A6C},+    {0xB784, 0x7A6D},+    {0xB785, 0x7A6E},+    {0xB786, 0x7A6F},+    {0xB787, 0x7A71},+    {0xB788, 0x7A72},+    {0xB789, 0x7A73},+    {0xB78A, 0x7A75},+    {0xB78B, 0x7A7B},+    {0xB78C, 0x7A7C},+    {0xB78D, 0x7A7D},+    {0xB78E, 0x7A7E},+    {0xB78F, 0x7A82},+    {0xB790, 0x7A85},+    {0xB791, 0x7A87},+    {0xB792, 0x7A89},+    {0xB793, 0x7A8A},+    {0xB794, 0x7A8B},+    {0xB795, 0x7A8C},+    {0xB796, 0x7A8E},+    {0xB797, 0x7A8F},+    {0xB798, 0x7A90},+    {0xB799, 0x7A93},+    {0xB79A, 0x7A94},+    {0xB79B, 0x7A99},+    {0xB79C, 0x7A9A},+    {0xB79D, 0x7A9B},+    {0xB79E, 0x7A9E},+    {0xB79F, 0x7AA1},+    {0xB7A0, 0x7AA2},+    {0xB7A1, 0x8D30},+    {0xB7A2, 0x53D1},+    {0xB7A3, 0x7F5A},+    {0xB7A4, 0x7B4F},+    {0xB7A5, 0x4F10},+    {0xB7A6, 0x4E4F},+    {0xB7A7, 0x9600},+    {0xB7A8, 0x6CD5},+    {0xB7A9, 0x73D0},+    {0xB7AA, 0x85E9},+    {0xB7AB, 0x5E06},+    {0xB7AC, 0x756A},+    {0xB7AD, 0x7FFB},+    {0xB7AE, 0x6A0A},+    {0xB7AF, 0x77FE},+    {0xB7B0, 0x9492},+    {0xB7B1, 0x7E41},+    {0xB7B2, 0x51E1},+    {0xB7B3, 0x70E6},+    {0xB7B4, 0x53CD},+    {0xB7B5, 0x8FD4},+    {0xB7B6, 0x8303},+    {0xB7B7, 0x8D29},+    {0xB7B8, 0x72AF},+    {0xB7B9, 0x996D},+    {0xB7BA, 0x6CDB},+    {0xB7BB, 0x574A},+    {0xB7BC, 0x82B3},+    {0xB7BD, 0x65B9},+    {0xB7BE, 0x80AA},+    {0xB7BF, 0x623F},+    {0xB7C0, 0x9632},+    {0xB7C1, 0x59A8},+    {0xB7C2, 0x4EFF},+    {0xB7C3, 0x8BBF},+    {0xB7C4, 0x7EBA},+    {0xB7C5, 0x653E},+    {0xB7C6, 0x83F2},+    {0xB7C7, 0x975E},+    {0xB7C8, 0x5561},+    {0xB7C9, 0x98DE},+    {0xB7CA, 0x80A5},+    {0xB7CB, 0x532A},+    {0xB7CC, 0x8BFD},+    {0xB7CD, 0x5420},+    {0xB7CE, 0x80BA},+    {0xB7CF, 0x5E9F},+    {0xB7D0, 0x6CB8},+    {0xB7D1, 0x8D39},+    {0xB7D2, 0x82AC},+    {0xB7D3, 0x915A},+    {0xB7D4, 0x5429},+    {0xB7D5, 0x6C1B},+    {0xB7D6, 0x5206},+    {0xB7D7, 0x7EB7},+    {0xB7D8, 0x575F},+    {0xB7D9, 0x711A},+    {0xB7DA, 0x6C7E},+    {0xB7DB, 0x7C89},+    {0xB7DC, 0x594B},+    {0xB7DD, 0x4EFD},+    {0xB7DE, 0x5FFF},+    {0xB7DF, 0x6124},+    {0xB7E0, 0x7CAA},+    {0xB7E1, 0x4E30},+    {0xB7E2, 0x5C01},+    {0xB7E3, 0x67AB},+    {0xB7E4, 0x8702},+    {0xB7E5, 0x5CF0},+    {0xB7E6, 0x950B},+    {0xB7E7, 0x98CE},+    {0xB7E8, 0x75AF},+    {0xB7E9, 0x70FD},+    {0xB7EA, 0x9022},+    {0xB7EB, 0x51AF},+    {0xB7EC, 0x7F1D},+    {0xB7ED, 0x8BBD},+    {0xB7EE, 0x5949},+    {0xB7EF, 0x51E4},+    {0xB7F0, 0x4F5B},+    {0xB7F1, 0x5426},+    {0xB7F2, 0x592B},+    {0xB7F3, 0x6577},+    {0xB7F4, 0x80A4},+    {0xB7F5, 0x5B75},+    {0xB7F6, 0x6276},+    {0xB7F7, 0x62C2},+    {0xB7F8, 0x8F90},+    {0xB7F9, 0x5E45},+    {0xB7FA, 0x6C1F},+    {0xB7FB, 0x7B26},+    {0xB7FC, 0x4F0F},+    {0xB7FD, 0x4FD8},+    {0xB7FE, 0x670D},+    {0xB840, 0x7AA3},+    {0xB841, 0x7AA4},+    {0xB842, 0x7AA7},+    {0xB843, 0x7AA9},+    {0xB844, 0x7AAA},+    {0xB845, 0x7AAB},+    {0xB846, 0x7AAE},+    {0xB847, 0x7AAF},+    {0xB848, 0x7AB0},+    {0xB849, 0x7AB1},+    {0xB84A, 0x7AB2},+    {0xB84B, 0x7AB4},+    {0xB84C, 0x7AB5},+    {0xB84D, 0x7AB6},+    {0xB84E, 0x7AB7},+    {0xB84F, 0x7AB8},+    {0xB850, 0x7AB9},+    {0xB851, 0x7ABA},+    {0xB852, 0x7ABB},+    {0xB853, 0x7ABC},+    {0xB854, 0x7ABD},+    {0xB855, 0x7ABE},+    {0xB856, 0x7AC0},+    {0xB857, 0x7AC1},+    {0xB858, 0x7AC2},+    {0xB859, 0x7AC3},+    {0xB85A, 0x7AC4},+    {0xB85B, 0x7AC5},+    {0xB85C, 0x7AC6},+    {0xB85D, 0x7AC7},+    {0xB85E, 0x7AC8},+    {0xB85F, 0x7AC9},+    {0xB860, 0x7ACA},+    {0xB861, 0x7ACC},+    {0xB862, 0x7ACD},+    {0xB863, 0x7ACE},+    {0xB864, 0x7ACF},+    {0xB865, 0x7AD0},+    {0xB866, 0x7AD1},+    {0xB867, 0x7AD2},+    {0xB868, 0x7AD3},+    {0xB869, 0x7AD4},+    {0xB86A, 0x7AD5},+    {0xB86B, 0x7AD7},+    {0xB86C, 0x7AD8},+    {0xB86D, 0x7ADA},+    {0xB86E, 0x7ADB},+    {0xB86F, 0x7ADC},+    {0xB870, 0x7ADD},+    {0xB871, 0x7AE1},+    {0xB872, 0x7AE2},+    {0xB873, 0x7AE4},+    {0xB874, 0x7AE7},+    {0xB875, 0x7AE8},+    {0xB876, 0x7AE9},+    {0xB877, 0x7AEA},+    {0xB878, 0x7AEB},+    {0xB879, 0x7AEC},+    {0xB87A, 0x7AEE},+    {0xB87B, 0x7AF0},+    {0xB87C, 0x7AF1},+    {0xB87D, 0x7AF2},+    {0xB87E, 0x7AF3},+    {0xB880, 0x7AF4},+    {0xB881, 0x7AF5},+    {0xB882, 0x7AF6},+    {0xB883, 0x7AF7},+    {0xB884, 0x7AF8},+    {0xB885, 0x7AFB},+    {0xB886, 0x7AFC},+    {0xB887, 0x7AFE},+    {0xB888, 0x7B00},+    {0xB889, 0x7B01},+    {0xB88A, 0x7B02},+    {0xB88B, 0x7B05},+    {0xB88C, 0x7B07},+    {0xB88D, 0x7B09},+    {0xB88E, 0x7B0C},+    {0xB88F, 0x7B0D},+    {0xB890, 0x7B0E},+    {0xB891, 0x7B10},+    {0xB892, 0x7B12},+    {0xB893, 0x7B13},+    {0xB894, 0x7B16},+    {0xB895, 0x7B17},+    {0xB896, 0x7B18},+    {0xB897, 0x7B1A},+    {0xB898, 0x7B1C},+    {0xB899, 0x7B1D},+    {0xB89A, 0x7B1F},+    {0xB89B, 0x7B21},+    {0xB89C, 0x7B22},+    {0xB89D, 0x7B23},+    {0xB89E, 0x7B27},+    {0xB89F, 0x7B29},+    {0xB8A0, 0x7B2D},+    {0xB8A1, 0x6D6E},+    {0xB8A2, 0x6DAA},+    {0xB8A3, 0x798F},+    {0xB8A4, 0x88B1},+    {0xB8A5, 0x5F17},+    {0xB8A6, 0x752B},+    {0xB8A7, 0x629A},+    {0xB8A8, 0x8F85},+    {0xB8A9, 0x4FEF},+    {0xB8AA, 0x91DC},+    {0xB8AB, 0x65A7},+    {0xB8AC, 0x812F},+    {0xB8AD, 0x8151},+    {0xB8AE, 0x5E9C},+    {0xB8AF, 0x8150},+    {0xB8B0, 0x8D74},+    {0xB8B1, 0x526F},+    {0xB8B2, 0x8986},+    {0xB8B3, 0x8D4B},+    {0xB8B4, 0x590D},+    {0xB8B5, 0x5085},+    {0xB8B6, 0x4ED8},+    {0xB8B7, 0x961C},+    {0xB8B8, 0x7236},+    {0xB8B9, 0x8179},+    {0xB8BA, 0x8D1F},+    {0xB8BB, 0x5BCC},+    {0xB8BC, 0x8BA3},+    {0xB8BD, 0x9644},+    {0xB8BE, 0x5987},+    {0xB8BF, 0x7F1A},+    {0xB8C0, 0x5490},+    {0xB8C1, 0x5676},+    {0xB8C2, 0x560E},+    {0xB8C3, 0x8BE5},+    {0xB8C4, 0x6539},+    {0xB8C5, 0x6982},+    {0xB8C6, 0x9499},+    {0xB8C7, 0x76D6},+    {0xB8C8, 0x6E89},+    {0xB8C9, 0x5E72},+    {0xB8CA, 0x7518},+    {0xB8CB, 0x6746},+    {0xB8CC, 0x67D1},+    {0xB8CD, 0x7AFF},+    {0xB8CE, 0x809D},+    {0xB8CF, 0x8D76},+    {0xB8D0, 0x611F},+    {0xB8D1, 0x79C6},+    {0xB8D2, 0x6562},+    {0xB8D3, 0x8D63},+    {0xB8D4, 0x5188},+    {0xB8D5, 0x521A},+    {0xB8D6, 0x94A2},+    {0xB8D7, 0x7F38},+    {0xB8D8, 0x809B},+    {0xB8D9, 0x7EB2},+    {0xB8DA, 0x5C97},+    {0xB8DB, 0x6E2F},+    {0xB8DC, 0x6760},+    {0xB8DD, 0x7BD9},+    {0xB8DE, 0x768B},+    {0xB8DF, 0x9AD8},+    {0xB8E0, 0x818F},+    {0xB8E1, 0x7F94},+    {0xB8E2, 0x7CD5},+    {0xB8E3, 0x641E},+    {0xB8E4, 0x9550},+    {0xB8E5, 0x7A3F},+    {0xB8E6, 0x544A},+    {0xB8E7, 0x54E5},+    {0xB8E8, 0x6B4C},+    {0xB8E9, 0x6401},+    {0xB8EA, 0x6208},+    {0xB8EB, 0x9E3D},+    {0xB8EC, 0x80F3},+    {0xB8ED, 0x7599},+    {0xB8EE, 0x5272},+    {0xB8EF, 0x9769},+    {0xB8F0, 0x845B},+    {0xB8F1, 0x683C},+    {0xB8F2, 0x86E4},+    {0xB8F3, 0x9601},+    {0xB8F4, 0x9694},+    {0xB8F5, 0x94EC},+    {0xB8F6, 0x4E2A},+    {0xB8F7, 0x5404},+    {0xB8F8, 0x7ED9},+    {0xB8F9, 0x6839},+    {0xB8FA, 0x8DDF},+    {0xB8FB, 0x8015},+    {0xB8FC, 0x66F4},+    {0xB8FD, 0x5E9A},+    {0xB8FE, 0x7FB9},+    {0xB940, 0x7B2F},+    {0xB941, 0x7B30},+    {0xB942, 0x7B32},+    {0xB943, 0x7B34},+    {0xB944, 0x7B35},+    {0xB945, 0x7B36},+    {0xB946, 0x7B37},+    {0xB947, 0x7B39},+    {0xB948, 0x7B3B},+    {0xB949, 0x7B3D},+    {0xB94A, 0x7B3F},+    {0xB94B, 0x7B40},+    {0xB94C, 0x7B41},+    {0xB94D, 0x7B42},+    {0xB94E, 0x7B43},+    {0xB94F, 0x7B44},+    {0xB950, 0x7B46},+    {0xB951, 0x7B48},+    {0xB952, 0x7B4A},+    {0xB953, 0x7B4D},+    {0xB954, 0x7B4E},+    {0xB955, 0x7B53},+    {0xB956, 0x7B55},+    {0xB957, 0x7B57},+    {0xB958, 0x7B59},+    {0xB959, 0x7B5C},+    {0xB95A, 0x7B5E},+    {0xB95B, 0x7B5F},+    {0xB95C, 0x7B61},+    {0xB95D, 0x7B63},+    {0xB95E, 0x7B64},+    {0xB95F, 0x7B65},+    {0xB960, 0x7B66},+    {0xB961, 0x7B67},+    {0xB962, 0x7B68},+    {0xB963, 0x7B69},+    {0xB964, 0x7B6A},+    {0xB965, 0x7B6B},+    {0xB966, 0x7B6C},+    {0xB967, 0x7B6D},+    {0xB968, 0x7B6F},+    {0xB969, 0x7B70},+    {0xB96A, 0x7B73},+    {0xB96B, 0x7B74},+    {0xB96C, 0x7B76},+    {0xB96D, 0x7B78},+    {0xB96E, 0x7B7A},+    {0xB96F, 0x7B7C},+    {0xB970, 0x7B7D},+    {0xB971, 0x7B7F},+    {0xB972, 0x7B81},+    {0xB973, 0x7B82},+    {0xB974, 0x7B83},+    {0xB975, 0x7B84},+    {0xB976, 0x7B86},+    {0xB977, 0x7B87},+    {0xB978, 0x7B88},+    {0xB979, 0x7B89},+    {0xB97A, 0x7B8A},+    {0xB97B, 0x7B8B},+    {0xB97C, 0x7B8C},+    {0xB97D, 0x7B8E},+    {0xB97E, 0x7B8F},+    {0xB980, 0x7B91},+    {0xB981, 0x7B92},+    {0xB982, 0x7B93},+    {0xB983, 0x7B96},+    {0xB984, 0x7B98},+    {0xB985, 0x7B99},+    {0xB986, 0x7B9A},+    {0xB987, 0x7B9B},+    {0xB988, 0x7B9E},+    {0xB989, 0x7B9F},+    {0xB98A, 0x7BA0},+    {0xB98B, 0x7BA3},+    {0xB98C, 0x7BA4},+    {0xB98D, 0x7BA5},+    {0xB98E, 0x7BAE},+    {0xB98F, 0x7BAF},+    {0xB990, 0x7BB0},+    {0xB991, 0x7BB2},+    {0xB992, 0x7BB3},+    {0xB993, 0x7BB5},+    {0xB994, 0x7BB6},+    {0xB995, 0x7BB7},+    {0xB996, 0x7BB9},+    {0xB997, 0x7BBA},+    {0xB998, 0x7BBB},+    {0xB999, 0x7BBC},+    {0xB99A, 0x7BBD},+    {0xB99B, 0x7BBE},+    {0xB99C, 0x7BBF},+    {0xB99D, 0x7BC0},+    {0xB99E, 0x7BC2},+    {0xB99F, 0x7BC3},+    {0xB9A0, 0x7BC4},+    {0xB9A1, 0x57C2},+    {0xB9A2, 0x803F},+    {0xB9A3, 0x6897},+    {0xB9A4, 0x5DE5},+    {0xB9A5, 0x653B},+    {0xB9A6, 0x529F},+    {0xB9A7, 0x606D},+    {0xB9A8, 0x9F9A},+    {0xB9A9, 0x4F9B},+    {0xB9AA, 0x8EAC},+    {0xB9AB, 0x516C},+    {0xB9AC, 0x5BAB},+    {0xB9AD, 0x5F13},+    {0xB9AE, 0x5DE9},+    {0xB9AF, 0x6C5E},+    {0xB9B0, 0x62F1},+    {0xB9B1, 0x8D21},+    {0xB9B2, 0x5171},+    {0xB9B3, 0x94A9},+    {0xB9B4, 0x52FE},+    {0xB9B5, 0x6C9F},+    {0xB9B6, 0x82DF},+    {0xB9B7, 0x72D7},+    {0xB9B8, 0x57A2},+    {0xB9B9, 0x6784},+    {0xB9BA, 0x8D2D},+    {0xB9BB, 0x591F},+    {0xB9BC, 0x8F9C},+    {0xB9BD, 0x83C7},+    {0xB9BE, 0x5495},+    {0xB9BF, 0x7B8D},+    {0xB9C0, 0x4F30},+    {0xB9C1, 0x6CBD},+    {0xB9C2, 0x5B64},+    {0xB9C3, 0x59D1},+    {0xB9C4, 0x9F13},+    {0xB9C5, 0x53E4},+    {0xB9C6, 0x86CA},+    {0xB9C7, 0x9AA8},+    {0xB9C8, 0x8C37},+    {0xB9C9, 0x80A1},+    {0xB9CA, 0x6545},+    {0xB9CB, 0x987E},+    {0xB9CC, 0x56FA},+    {0xB9CD, 0x96C7},+    {0xB9CE, 0x522E},+    {0xB9CF, 0x74DC},+    {0xB9D0, 0x5250},+    {0xB9D1, 0x5BE1},+    {0xB9D2, 0x6302},+    {0xB9D3, 0x8902},+    {0xB9D4, 0x4E56},+    {0xB9D5, 0x62D0},+    {0xB9D6, 0x602A},+    {0xB9D7, 0x68FA},+    {0xB9D8, 0x5173},+    {0xB9D9, 0x5B98},+    {0xB9DA, 0x51A0},+    {0xB9DB, 0x89C2},+    {0xB9DC, 0x7BA1},+    {0xB9DD, 0x9986},+    {0xB9DE, 0x7F50},+    {0xB9DF, 0x60EF},+    {0xB9E0, 0x704C},+    {0xB9E1, 0x8D2F},+    {0xB9E2, 0x5149},+    {0xB9E3, 0x5E7F},+    {0xB9E4, 0x901B},+    {0xB9E5, 0x7470},+    {0xB9E6, 0x89C4},+    {0xB9E7, 0x572D},+    {0xB9E8, 0x7845},+    {0xB9E9, 0x5F52},+    {0xB9EA, 0x9F9F},+    {0xB9EB, 0x95FA},+    {0xB9EC, 0x8F68},+    {0xB9ED, 0x9B3C},+    {0xB9EE, 0x8BE1},+    {0xB9EF, 0x7678},+    {0xB9F0, 0x6842},+    {0xB9F1, 0x67DC},+    {0xB9F2, 0x8DEA},+    {0xB9F3, 0x8D35},+    {0xB9F4, 0x523D},+    {0xB9F5, 0x8F8A},+    {0xB9F6, 0x6EDA},+    {0xB9F7, 0x68CD},+    {0xB9F8, 0x9505},+    {0xB9F9, 0x90ED},+    {0xB9FA, 0x56FD},+    {0xB9FB, 0x679C},+    {0xB9FC, 0x88F9},+    {0xB9FD, 0x8FC7},+    {0xB9FE, 0x54C8},+    {0xBA40, 0x7BC5},+    {0xBA41, 0x7BC8},+    {0xBA42, 0x7BC9},+    {0xBA43, 0x7BCA},+    {0xBA44, 0x7BCB},+    {0xBA45, 0x7BCD},+    {0xBA46, 0x7BCE},+    {0xBA47, 0x7BCF},+    {0xBA48, 0x7BD0},+    {0xBA49, 0x7BD2},+    {0xBA4A, 0x7BD4},+    {0xBA4B, 0x7BD5},+    {0xBA4C, 0x7BD6},+    {0xBA4D, 0x7BD7},+    {0xBA4E, 0x7BD8},+    {0xBA4F, 0x7BDB},+    {0xBA50, 0x7BDC},+    {0xBA51, 0x7BDE},+    {0xBA52, 0x7BDF},+    {0xBA53, 0x7BE0},+    {0xBA54, 0x7BE2},+    {0xBA55, 0x7BE3},+    {0xBA56, 0x7BE4},+    {0xBA57, 0x7BE7},+    {0xBA58, 0x7BE8},+    {0xBA59, 0x7BE9},+    {0xBA5A, 0x7BEB},+    {0xBA5B, 0x7BEC},+    {0xBA5C, 0x7BED},+    {0xBA5D, 0x7BEF},+    {0xBA5E, 0x7BF0},+    {0xBA5F, 0x7BF2},+    {0xBA60, 0x7BF3},+    {0xBA61, 0x7BF4},+    {0xBA62, 0x7BF5},+    {0xBA63, 0x7BF6},+    {0xBA64, 0x7BF8},+    {0xBA65, 0x7BF9},+    {0xBA66, 0x7BFA},+    {0xBA67, 0x7BFB},+    {0xBA68, 0x7BFD},+    {0xBA69, 0x7BFF},+    {0xBA6A, 0x7C00},+    {0xBA6B, 0x7C01},+    {0xBA6C, 0x7C02},+    {0xBA6D, 0x7C03},+    {0xBA6E, 0x7C04},+    {0xBA6F, 0x7C05},+    {0xBA70, 0x7C06},+    {0xBA71, 0x7C08},+    {0xBA72, 0x7C09},+    {0xBA73, 0x7C0A},+    {0xBA74, 0x7C0D},+    {0xBA75, 0x7C0E},+    {0xBA76, 0x7C10},+    {0xBA77, 0x7C11},+    {0xBA78, 0x7C12},+    {0xBA79, 0x7C13},+    {0xBA7A, 0x7C14},+    {0xBA7B, 0x7C15},+    {0xBA7C, 0x7C17},+    {0xBA7D, 0x7C18},+    {0xBA7E, 0x7C19},+    {0xBA80, 0x7C1A},+    {0xBA81, 0x7C1B},+    {0xBA82, 0x7C1C},+    {0xBA83, 0x7C1D},+    {0xBA84, 0x7C1E},+    {0xBA85, 0x7C20},+    {0xBA86, 0x7C21},+    {0xBA87, 0x7C22},+    {0xBA88, 0x7C23},+    {0xBA89, 0x7C24},+    {0xBA8A, 0x7C25},+    {0xBA8B, 0x7C28},+    {0xBA8C, 0x7C29},+    {0xBA8D, 0x7C2B},+    {0xBA8E, 0x7C2C},+    {0xBA8F, 0x7C2D},+    {0xBA90, 0x7C2E},+    {0xBA91, 0x7C2F},+    {0xBA92, 0x7C30},+    {0xBA93, 0x7C31},+    {0xBA94, 0x7C32},+    {0xBA95, 0x7C33},+    {0xBA96, 0x7C34},+    {0xBA97, 0x7C35},+    {0xBA98, 0x7C36},+    {0xBA99, 0x7C37},+    {0xBA9A, 0x7C39},+    {0xBA9B, 0x7C3A},+    {0xBA9C, 0x7C3B},+    {0xBA9D, 0x7C3C},+    {0xBA9E, 0x7C3D},+    {0xBA9F, 0x7C3E},+    {0xBAA0, 0x7C42},+    {0xBAA1, 0x9AB8},+    {0xBAA2, 0x5B69},+    {0xBAA3, 0x6D77},+    {0xBAA4, 0x6C26},+    {0xBAA5, 0x4EA5},+    {0xBAA6, 0x5BB3},+    {0xBAA7, 0x9A87},+    {0xBAA8, 0x9163},+    {0xBAA9, 0x61A8},+    {0xBAAA, 0x90AF},+    {0xBAAB, 0x97E9},+    {0xBAAC, 0x542B},+    {0xBAAD, 0x6DB5},+    {0xBAAE, 0x5BD2},+    {0xBAAF, 0x51FD},+    {0xBAB0, 0x558A},+    {0xBAB1, 0x7F55},+    {0xBAB2, 0x7FF0},+    {0xBAB3, 0x64BC},+    {0xBAB4, 0x634D},+    {0xBAB5, 0x65F1},+    {0xBAB6, 0x61BE},+    {0xBAB7, 0x608D},+    {0xBAB8, 0x710A},+    {0xBAB9, 0x6C57},+    {0xBABA, 0x6C49},+    {0xBABB, 0x592F},+    {0xBABC, 0x676D},+    {0xBABD, 0x822A},+    {0xBABE, 0x58D5},+    {0xBABF, 0x568E},+    {0xBAC0, 0x8C6A},+    {0xBAC1, 0x6BEB},+    {0xBAC2, 0x90DD},+    {0xBAC3, 0x597D},+    {0xBAC4, 0x8017},+    {0xBAC5, 0x53F7},+    {0xBAC6, 0x6D69},+    {0xBAC7, 0x5475},+    {0xBAC8, 0x559D},+    {0xBAC9, 0x8377},+    {0xBACA, 0x83CF},+    {0xBACB, 0x6838},+    {0xBACC, 0x79BE},+    {0xBACD, 0x548C},+    {0xBACE, 0x4F55},+    {0xBACF, 0x5408},+    {0xBAD0, 0x76D2},+    {0xBAD1, 0x8C89},+    {0xBAD2, 0x9602},+    {0xBAD3, 0x6CB3},+    {0xBAD4, 0x6DB8},+    {0xBAD5, 0x8D6B},+    {0xBAD6, 0x8910},+    {0xBAD7, 0x9E64},+    {0xBAD8, 0x8D3A},+    {0xBAD9, 0x563F},+    {0xBADA, 0x9ED1},+    {0xBADB, 0x75D5},+    {0xBADC, 0x5F88},+    {0xBADD, 0x72E0},+    {0xBADE, 0x6068},+    {0xBADF, 0x54FC},+    {0xBAE0, 0x4EA8},+    {0xBAE1, 0x6A2A},+    {0xBAE2, 0x8861},+    {0xBAE3, 0x6052},+    {0xBAE4, 0x8F70},+    {0xBAE5, 0x54C4},+    {0xBAE6, 0x70D8},+    {0xBAE7, 0x8679},+    {0xBAE8, 0x9E3F},+    {0xBAE9, 0x6D2A},+    {0xBAEA, 0x5B8F},+    {0xBAEB, 0x5F18},+    {0xBAEC, 0x7EA2},+    {0xBAED, 0x5589},+    {0xBAEE, 0x4FAF},+    {0xBAEF, 0x7334},+    {0xBAF0, 0x543C},+    {0xBAF1, 0x539A},+    {0xBAF2, 0x5019},+    {0xBAF3, 0x540E},+    {0xBAF4, 0x547C},+    {0xBAF5, 0x4E4E},+    {0xBAF6, 0x5FFD},+    {0xBAF7, 0x745A},+    {0xBAF8, 0x58F6},+    {0xBAF9, 0x846B},+    {0xBAFA, 0x80E1},+    {0xBAFB, 0x8774},+    {0xBAFC, 0x72D0},+    {0xBAFD, 0x7CCA},+    {0xBAFE, 0x6E56},+    {0xBB40, 0x7C43},+    {0xBB41, 0x7C44},+    {0xBB42, 0x7C45},+    {0xBB43, 0x7C46},+    {0xBB44, 0x7C47},+    {0xBB45, 0x7C48},+    {0xBB46, 0x7C49},+    {0xBB47, 0x7C4A},+    {0xBB48, 0x7C4B},+    {0xBB49, 0x7C4C},+    {0xBB4A, 0x7C4E},+    {0xBB4B, 0x7C4F},+    {0xBB4C, 0x7C50},+    {0xBB4D, 0x7C51},+    {0xBB4E, 0x7C52},+    {0xBB4F, 0x7C53},+    {0xBB50, 0x7C54},+    {0xBB51, 0x7C55},+    {0xBB52, 0x7C56},+    {0xBB53, 0x7C57},+    {0xBB54, 0x7C58},+    {0xBB55, 0x7C59},+    {0xBB56, 0x7C5A},+    {0xBB57, 0x7C5B},+    {0xBB58, 0x7C5C},+    {0xBB59, 0x7C5D},+    {0xBB5A, 0x7C5E},+    {0xBB5B, 0x7C5F},+    {0xBB5C, 0x7C60},+    {0xBB5D, 0x7C61},+    {0xBB5E, 0x7C62},+    {0xBB5F, 0x7C63},+    {0xBB60, 0x7C64},+    {0xBB61, 0x7C65},+    {0xBB62, 0x7C66},+    {0xBB63, 0x7C67},+    {0xBB64, 0x7C68},+    {0xBB65, 0x7C69},+    {0xBB66, 0x7C6A},+    {0xBB67, 0x7C6B},+    {0xBB68, 0x7C6C},+    {0xBB69, 0x7C6D},+    {0xBB6A, 0x7C6E},+    {0xBB6B, 0x7C6F},+    {0xBB6C, 0x7C70},+    {0xBB6D, 0x7C71},+    {0xBB6E, 0x7C72},+    {0xBB6F, 0x7C75},+    {0xBB70, 0x7C76},+    {0xBB71, 0x7C77},+    {0xBB72, 0x7C78},+    {0xBB73, 0x7C79},+    {0xBB74, 0x7C7A},+    {0xBB75, 0x7C7E},+    {0xBB76, 0x7C7F},+    {0xBB77, 0x7C80},+    {0xBB78, 0x7C81},+    {0xBB79, 0x7C82},+    {0xBB7A, 0x7C83},+    {0xBB7B, 0x7C84},+    {0xBB7C, 0x7C85},+    {0xBB7D, 0x7C86},+    {0xBB7E, 0x7C87},+    {0xBB80, 0x7C88},+    {0xBB81, 0x7C8A},+    {0xBB82, 0x7C8B},+    {0xBB83, 0x7C8C},+    {0xBB84, 0x7C8D},+    {0xBB85, 0x7C8E},+    {0xBB86, 0x7C8F},+    {0xBB87, 0x7C90},+    {0xBB88, 0x7C93},+    {0xBB89, 0x7C94},+    {0xBB8A, 0x7C96},+    {0xBB8B, 0x7C99},+    {0xBB8C, 0x7C9A},+    {0xBB8D, 0x7C9B},+    {0xBB8E, 0x7CA0},+    {0xBB8F, 0x7CA1},+    {0xBB90, 0x7CA3},+    {0xBB91, 0x7CA6},+    {0xBB92, 0x7CA7},+    {0xBB93, 0x7CA8},+    {0xBB94, 0x7CA9},+    {0xBB95, 0x7CAB},+    {0xBB96, 0x7CAC},+    {0xBB97, 0x7CAD},+    {0xBB98, 0x7CAF},+    {0xBB99, 0x7CB0},+    {0xBB9A, 0x7CB4},+    {0xBB9B, 0x7CB5},+    {0xBB9C, 0x7CB6},+    {0xBB9D, 0x7CB7},+    {0xBB9E, 0x7CB8},+    {0xBB9F, 0x7CBA},+    {0xBBA0, 0x7CBB},+    {0xBBA1, 0x5F27},+    {0xBBA2, 0x864E},+    {0xBBA3, 0x552C},+    {0xBBA4, 0x62A4},+    {0xBBA5, 0x4E92},+    {0xBBA6, 0x6CAA},+    {0xBBA7, 0x6237},+    {0xBBA8, 0x82B1},+    {0xBBA9, 0x54D7},+    {0xBBAA, 0x534E},+    {0xBBAB, 0x733E},+    {0xBBAC, 0x6ED1},+    {0xBBAD, 0x753B},+    {0xBBAE, 0x5212},+    {0xBBAF, 0x5316},+    {0xBBB0, 0x8BDD},+    {0xBBB1, 0x69D0},+    {0xBBB2, 0x5F8A},+    {0xBBB3, 0x6000},+    {0xBBB4, 0x6DEE},+    {0xBBB5, 0x574F},+    {0xBBB6, 0x6B22},+    {0xBBB7, 0x73AF},+    {0xBBB8, 0x6853},+    {0xBBB9, 0x8FD8},+    {0xBBBA, 0x7F13},+    {0xBBBB, 0x6362},+    {0xBBBC, 0x60A3},+    {0xBBBD, 0x5524},+    {0xBBBE, 0x75EA},+    {0xBBBF, 0x8C62},+    {0xBBC0, 0x7115},+    {0xBBC1, 0x6DA3},+    {0xBBC2, 0x5BA6},+    {0xBBC3, 0x5E7B},+    {0xBBC4, 0x8352},+    {0xBBC5, 0x614C},+    {0xBBC6, 0x9EC4},+    {0xBBC7, 0x78FA},+    {0xBBC8, 0x8757},+    {0xBBC9, 0x7C27},+    {0xBBCA, 0x7687},+    {0xBBCB, 0x51F0},+    {0xBBCC, 0x60F6},+    {0xBBCD, 0x714C},+    {0xBBCE, 0x6643},+    {0xBBCF, 0x5E4C},+    {0xBBD0, 0x604D},+    {0xBBD1, 0x8C0E},+    {0xBBD2, 0x7070},+    {0xBBD3, 0x6325},+    {0xBBD4, 0x8F89},+    {0xBBD5, 0x5FBD},+    {0xBBD6, 0x6062},+    {0xBBD7, 0x86D4},+    {0xBBD8, 0x56DE},+    {0xBBD9, 0x6BC1},+    {0xBBDA, 0x6094},+    {0xBBDB, 0x6167},+    {0xBBDC, 0x5349},+    {0xBBDD, 0x60E0},+    {0xBBDE, 0x6666},+    {0xBBDF, 0x8D3F},+    {0xBBE0, 0x79FD},+    {0xBBE1, 0x4F1A},+    {0xBBE2, 0x70E9},+    {0xBBE3, 0x6C47},+    {0xBBE4, 0x8BB3},+    {0xBBE5, 0x8BF2},+    {0xBBE6, 0x7ED8},+    {0xBBE7, 0x8364},+    {0xBBE8, 0x660F},+    {0xBBE9, 0x5A5A},+    {0xBBEA, 0x9B42},+    {0xBBEB, 0x6D51},+    {0xBBEC, 0x6DF7},+    {0xBBED, 0x8C41},+    {0xBBEE, 0x6D3B},+    {0xBBEF, 0x4F19},+    {0xBBF0, 0x706B},+    {0xBBF1, 0x83B7},+    {0xBBF2, 0x6216},+    {0xBBF3, 0x60D1},+    {0xBBF4, 0x970D},+    {0xBBF5, 0x8D27},+    {0xBBF6, 0x7978},+    {0xBBF7, 0x51FB},+    {0xBBF8, 0x573E},+    {0xBBF9, 0x57FA},+    {0xBBFA, 0x673A},+    {0xBBFB, 0x7578},+    {0xBBFC, 0x7A3D},+    {0xBBFD, 0x79EF},+    {0xBBFE, 0x7B95},+    {0xBC40, 0x7CBF},+    {0xBC41, 0x7CC0},+    {0xBC42, 0x7CC2},+    {0xBC43, 0x7CC3},+    {0xBC44, 0x7CC4},+    {0xBC45, 0x7CC6},+    {0xBC46, 0x7CC9},+    {0xBC47, 0x7CCB},+    {0xBC48, 0x7CCE},+    {0xBC49, 0x7CCF},+    {0xBC4A, 0x7CD0},+    {0xBC4B, 0x7CD1},+    {0xBC4C, 0x7CD2},+    {0xBC4D, 0x7CD3},+    {0xBC4E, 0x7CD4},+    {0xBC4F, 0x7CD8},+    {0xBC50, 0x7CDA},+    {0xBC51, 0x7CDB},+    {0xBC52, 0x7CDD},+    {0xBC53, 0x7CDE},+    {0xBC54, 0x7CE1},+    {0xBC55, 0x7CE2},+    {0xBC56, 0x7CE3},+    {0xBC57, 0x7CE4},+    {0xBC58, 0x7CE5},+    {0xBC59, 0x7CE6},+    {0xBC5A, 0x7CE7},+    {0xBC5B, 0x7CE9},+    {0xBC5C, 0x7CEA},+    {0xBC5D, 0x7CEB},+    {0xBC5E, 0x7CEC},+    {0xBC5F, 0x7CED},+    {0xBC60, 0x7CEE},+    {0xBC61, 0x7CF0},+    {0xBC62, 0x7CF1},+    {0xBC63, 0x7CF2},+    {0xBC64, 0x7CF3},+    {0xBC65, 0x7CF4},+    {0xBC66, 0x7CF5},+    {0xBC67, 0x7CF6},+    {0xBC68, 0x7CF7},+    {0xBC69, 0x7CF9},+    {0xBC6A, 0x7CFA},+    {0xBC6B, 0x7CFC},+    {0xBC6C, 0x7CFD},+    {0xBC6D, 0x7CFE},+    {0xBC6E, 0x7CFF},+    {0xBC6F, 0x7D00},+    {0xBC70, 0x7D01},+    {0xBC71, 0x7D02},+    {0xBC72, 0x7D03},+    {0xBC73, 0x7D04},+    {0xBC74, 0x7D05},+    {0xBC75, 0x7D06},+    {0xBC76, 0x7D07},+    {0xBC77, 0x7D08},+    {0xBC78, 0x7D09},+    {0xBC79, 0x7D0B},+    {0xBC7A, 0x7D0C},+    {0xBC7B, 0x7D0D},+    {0xBC7C, 0x7D0E},+    {0xBC7D, 0x7D0F},+    {0xBC7E, 0x7D10},+    {0xBC80, 0x7D11},+    {0xBC81, 0x7D12},+    {0xBC82, 0x7D13},+    {0xBC83, 0x7D14},+    {0xBC84, 0x7D15},+    {0xBC85, 0x7D16},+    {0xBC86, 0x7D17},+    {0xBC87, 0x7D18},+    {0xBC88, 0x7D19},+    {0xBC89, 0x7D1A},+    {0xBC8A, 0x7D1B},+    {0xBC8B, 0x7D1C},+    {0xBC8C, 0x7D1D},+    {0xBC8D, 0x7D1E},+    {0xBC8E, 0x7D1F},+    {0xBC8F, 0x7D21},+    {0xBC90, 0x7D23},+    {0xBC91, 0x7D24},+    {0xBC92, 0x7D25},+    {0xBC93, 0x7D26},+    {0xBC94, 0x7D28},+    {0xBC95, 0x7D29},+    {0xBC96, 0x7D2A},+    {0xBC97, 0x7D2C},+    {0xBC98, 0x7D2D},+    {0xBC99, 0x7D2E},+    {0xBC9A, 0x7D30},+    {0xBC9B, 0x7D31},+    {0xBC9C, 0x7D32},+    {0xBC9D, 0x7D33},+    {0xBC9E, 0x7D34},+    {0xBC9F, 0x7D35},+    {0xBCA0, 0x7D36},+    {0xBCA1, 0x808C},+    {0xBCA2, 0x9965},+    {0xBCA3, 0x8FF9},+    {0xBCA4, 0x6FC0},+    {0xBCA5, 0x8BA5},+    {0xBCA6, 0x9E21},+    {0xBCA7, 0x59EC},+    {0xBCA8, 0x7EE9},+    {0xBCA9, 0x7F09},+    {0xBCAA, 0x5409},+    {0xBCAB, 0x6781},+    {0xBCAC, 0x68D8},+    {0xBCAD, 0x8F91},+    {0xBCAE, 0x7C4D},+    {0xBCAF, 0x96C6},+    {0xBCB0, 0x53CA},+    {0xBCB1, 0x6025},+    {0xBCB2, 0x75BE},+    {0xBCB3, 0x6C72},+    {0xBCB4, 0x5373},+    {0xBCB5, 0x5AC9},+    {0xBCB6, 0x7EA7},+    {0xBCB7, 0x6324},+    {0xBCB8, 0x51E0},+    {0xBCB9, 0x810A},+    {0xBCBA, 0x5DF1},+    {0xBCBB, 0x84DF},+    {0xBCBC, 0x6280},+    {0xBCBD, 0x5180},+    {0xBCBE, 0x5B63},+    {0xBCBF, 0x4F0E},+    {0xBCC0, 0x796D},+    {0xBCC1, 0x5242},+    {0xBCC2, 0x60B8},+    {0xBCC3, 0x6D4E},+    {0xBCC4, 0x5BC4},+    {0xBCC5, 0x5BC2},+    {0xBCC6, 0x8BA1},+    {0xBCC7, 0x8BB0},+    {0xBCC8, 0x65E2},+    {0xBCC9, 0x5FCC},+    {0xBCCA, 0x9645},+    {0xBCCB, 0x5993},+    {0xBCCC, 0x7EE7},+    {0xBCCD, 0x7EAA},+    {0xBCCE, 0x5609},+    {0xBCCF, 0x67B7},+    {0xBCD0, 0x5939},+    {0xBCD1, 0x4F73},+    {0xBCD2, 0x5BB6},+    {0xBCD3, 0x52A0},+    {0xBCD4, 0x835A},+    {0xBCD5, 0x988A},+    {0xBCD6, 0x8D3E},+    {0xBCD7, 0x7532},+    {0xBCD8, 0x94BE},+    {0xBCD9, 0x5047},+    {0xBCDA, 0x7A3C},+    {0xBCDB, 0x4EF7},+    {0xBCDC, 0x67B6},+    {0xBCDD, 0x9A7E},+    {0xBCDE, 0x5AC1},+    {0xBCDF, 0x6B7C},+    {0xBCE0, 0x76D1},+    {0xBCE1, 0x575A},+    {0xBCE2, 0x5C16},+    {0xBCE3, 0x7B3A},+    {0xBCE4, 0x95F4},+    {0xBCE5, 0x714E},+    {0xBCE6, 0x517C},+    {0xBCE7, 0x80A9},+    {0xBCE8, 0x8270},+    {0xBCE9, 0x5978},+    {0xBCEA, 0x7F04},+    {0xBCEB, 0x8327},+    {0xBCEC, 0x68C0},+    {0xBCED, 0x67EC},+    {0xBCEE, 0x78B1},+    {0xBCEF, 0x7877},+    {0xBCF0, 0x62E3},+    {0xBCF1, 0x6361},+    {0xBCF2, 0x7B80},+    {0xBCF3, 0x4FED},+    {0xBCF4, 0x526A},+    {0xBCF5, 0x51CF},+    {0xBCF6, 0x8350},+    {0xBCF7, 0x69DB},+    {0xBCF8, 0x9274},+    {0xBCF9, 0x8DF5},+    {0xBCFA, 0x8D31},+    {0xBCFB, 0x89C1},+    {0xBCFC, 0x952E},+    {0xBCFD, 0x7BAD},+    {0xBCFE, 0x4EF6},+    {0xBD40, 0x7D37},+    {0xBD41, 0x7D38},+    {0xBD42, 0x7D39},+    {0xBD43, 0x7D3A},+    {0xBD44, 0x7D3B},+    {0xBD45, 0x7D3C},+    {0xBD46, 0x7D3D},+    {0xBD47, 0x7D3E},+    {0xBD48, 0x7D3F},+    {0xBD49, 0x7D40},+    {0xBD4A, 0x7D41},+    {0xBD4B, 0x7D42},+    {0xBD4C, 0x7D43},+    {0xBD4D, 0x7D44},+    {0xBD4E, 0x7D45},+    {0xBD4F, 0x7D46},+    {0xBD50, 0x7D47},+    {0xBD51, 0x7D48},+    {0xBD52, 0x7D49},+    {0xBD53, 0x7D4A},+    {0xBD54, 0x7D4B},+    {0xBD55, 0x7D4C},+    {0xBD56, 0x7D4D},+    {0xBD57, 0x7D4E},+    {0xBD58, 0x7D4F},+    {0xBD59, 0x7D50},+    {0xBD5A, 0x7D51},+    {0xBD5B, 0x7D52},+    {0xBD5C, 0x7D53},+    {0xBD5D, 0x7D54},+    {0xBD5E, 0x7D55},+    {0xBD5F, 0x7D56},+    {0xBD60, 0x7D57},+    {0xBD61, 0x7D58},+    {0xBD62, 0x7D59},+    {0xBD63, 0x7D5A},+    {0xBD64, 0x7D5B},+    {0xBD65, 0x7D5C},+    {0xBD66, 0x7D5D},+    {0xBD67, 0x7D5E},+    {0xBD68, 0x7D5F},+    {0xBD69, 0x7D60},+    {0xBD6A, 0x7D61},+    {0xBD6B, 0x7D62},+    {0xBD6C, 0x7D63},+    {0xBD6D, 0x7D64},+    {0xBD6E, 0x7D65},+    {0xBD6F, 0x7D66},+    {0xBD70, 0x7D67},+    {0xBD71, 0x7D68},+    {0xBD72, 0x7D69},+    {0xBD73, 0x7D6A},+    {0xBD74, 0x7D6B},+    {0xBD75, 0x7D6C},+    {0xBD76, 0x7D6D},+    {0xBD77, 0x7D6F},+    {0xBD78, 0x7D70},+    {0xBD79, 0x7D71},+    {0xBD7A, 0x7D72},+    {0xBD7B, 0x7D73},+    {0xBD7C, 0x7D74},+    {0xBD7D, 0x7D75},+    {0xBD7E, 0x7D76},+    {0xBD80, 0x7D78},+    {0xBD81, 0x7D79},+    {0xBD82, 0x7D7A},+    {0xBD83, 0x7D7B},+    {0xBD84, 0x7D7C},+    {0xBD85, 0x7D7D},+    {0xBD86, 0x7D7E},+    {0xBD87, 0x7D7F},+    {0xBD88, 0x7D80},+    {0xBD89, 0x7D81},+    {0xBD8A, 0x7D82},+    {0xBD8B, 0x7D83},+    {0xBD8C, 0x7D84},+    {0xBD8D, 0x7D85},+    {0xBD8E, 0x7D86},+    {0xBD8F, 0x7D87},+    {0xBD90, 0x7D88},+    {0xBD91, 0x7D89},+    {0xBD92, 0x7D8A},+    {0xBD93, 0x7D8B},+    {0xBD94, 0x7D8C},+    {0xBD95, 0x7D8D},+    {0xBD96, 0x7D8E},+    {0xBD97, 0x7D8F},+    {0xBD98, 0x7D90},+    {0xBD99, 0x7D91},+    {0xBD9A, 0x7D92},+    {0xBD9B, 0x7D93},+    {0xBD9C, 0x7D94},+    {0xBD9D, 0x7D95},+    {0xBD9E, 0x7D96},+    {0xBD9F, 0x7D97},+    {0xBDA0, 0x7D98},+    {0xBDA1, 0x5065},+    {0xBDA2, 0x8230},+    {0xBDA3, 0x5251},+    {0xBDA4, 0x996F},+    {0xBDA5, 0x6E10},+    {0xBDA6, 0x6E85},+    {0xBDA7, 0x6DA7},+    {0xBDA8, 0x5EFA},+    {0xBDA9, 0x50F5},+    {0xBDAA, 0x59DC},+    {0xBDAB, 0x5C06},+    {0xBDAC, 0x6D46},+    {0xBDAD, 0x6C5F},+    {0xBDAE, 0x7586},+    {0xBDAF, 0x848B},+    {0xBDB0, 0x6868},+    {0xBDB1, 0x5956},+    {0xBDB2, 0x8BB2},+    {0xBDB3, 0x5320},+    {0xBDB4, 0x9171},+    {0xBDB5, 0x964D},+    {0xBDB6, 0x8549},+    {0xBDB7, 0x6912},+    {0xBDB8, 0x7901},+    {0xBDB9, 0x7126},+    {0xBDBA, 0x80F6},+    {0xBDBB, 0x4EA4},+    {0xBDBC, 0x90CA},+    {0xBDBD, 0x6D47},+    {0xBDBE, 0x9A84},+    {0xBDBF, 0x5A07},+    {0xBDC0, 0x56BC},+    {0xBDC1, 0x6405},+    {0xBDC2, 0x94F0},+    {0xBDC3, 0x77EB},+    {0xBDC4, 0x4FA5},+    {0xBDC5, 0x811A},+    {0xBDC6, 0x72E1},+    {0xBDC7, 0x89D2},+    {0xBDC8, 0x997A},+    {0xBDC9, 0x7F34},+    {0xBDCA, 0x7EDE},+    {0xBDCB, 0x527F},+    {0xBDCC, 0x6559},+    {0xBDCD, 0x9175},+    {0xBDCE, 0x8F7F},+    {0xBDCF, 0x8F83},+    {0xBDD0, 0x53EB},+    {0xBDD1, 0x7A96},+    {0xBDD2, 0x63ED},+    {0xBDD3, 0x63A5},+    {0xBDD4, 0x7686},+    {0xBDD5, 0x79F8},+    {0xBDD6, 0x8857},+    {0xBDD7, 0x9636},+    {0xBDD8, 0x622A},+    {0xBDD9, 0x52AB},+    {0xBDDA, 0x8282},+    {0xBDDB, 0x6854},+    {0xBDDC, 0x6770},+    {0xBDDD, 0x6377},+    {0xBDDE, 0x776B},+    {0xBDDF, 0x7AED},+    {0xBDE0, 0x6D01},+    {0xBDE1, 0x7ED3},+    {0xBDE2, 0x89E3},+    {0xBDE3, 0x59D0},+    {0xBDE4, 0x6212},+    {0xBDE5, 0x85C9},+    {0xBDE6, 0x82A5},+    {0xBDE7, 0x754C},+    {0xBDE8, 0x501F},+    {0xBDE9, 0x4ECB},+    {0xBDEA, 0x75A5},+    {0xBDEB, 0x8BEB},+    {0xBDEC, 0x5C4A},+    {0xBDED, 0x5DFE},+    {0xBDEE, 0x7B4B},+    {0xBDEF, 0x65A4},+    {0xBDF0, 0x91D1},+    {0xBDF1, 0x4ECA},+    {0xBDF2, 0x6D25},+    {0xBDF3, 0x895F},+    {0xBDF4, 0x7D27},+    {0xBDF5, 0x9526},+    {0xBDF6, 0x4EC5},+    {0xBDF7, 0x8C28},+    {0xBDF8, 0x8FDB},+    {0xBDF9, 0x9773},+    {0xBDFA, 0x664B},+    {0xBDFB, 0x7981},+    {0xBDFC, 0x8FD1},+    {0xBDFD, 0x70EC},+    {0xBDFE, 0x6D78},+    {0xBE40, 0x7D99},+    {0xBE41, 0x7D9A},+    {0xBE42, 0x7D9B},+    {0xBE43, 0x7D9C},+    {0xBE44, 0x7D9D},+    {0xBE45, 0x7D9E},+    {0xBE46, 0x7D9F},+    {0xBE47, 0x7DA0},+    {0xBE48, 0x7DA1},+    {0xBE49, 0x7DA2},+    {0xBE4A, 0x7DA3},+    {0xBE4B, 0x7DA4},+    {0xBE4C, 0x7DA5},+    {0xBE4D, 0x7DA7},+    {0xBE4E, 0x7DA8},+    {0xBE4F, 0x7DA9},+    {0xBE50, 0x7DAA},+    {0xBE51, 0x7DAB},+    {0xBE52, 0x7DAC},+    {0xBE53, 0x7DAD},+    {0xBE54, 0x7DAF},+    {0xBE55, 0x7DB0},+    {0xBE56, 0x7DB1},+    {0xBE57, 0x7DB2},+    {0xBE58, 0x7DB3},+    {0xBE59, 0x7DB4},+    {0xBE5A, 0x7DB5},+    {0xBE5B, 0x7DB6},+    {0xBE5C, 0x7DB7},+    {0xBE5D, 0x7DB8},+    {0xBE5E, 0x7DB9},+    {0xBE5F, 0x7DBA},+    {0xBE60, 0x7DBB},+    {0xBE61, 0x7DBC},+    {0xBE62, 0x7DBD},+    {0xBE63, 0x7DBE},+    {0xBE64, 0x7DBF},+    {0xBE65, 0x7DC0},+    {0xBE66, 0x7DC1},+    {0xBE67, 0x7DC2},+    {0xBE68, 0x7DC3},+    {0xBE69, 0x7DC4},+    {0xBE6A, 0x7DC5},+    {0xBE6B, 0x7DC6},+    {0xBE6C, 0x7DC7},+    {0xBE6D, 0x7DC8},+    {0xBE6E, 0x7DC9},+    {0xBE6F, 0x7DCA},+    {0xBE70, 0x7DCB},+    {0xBE71, 0x7DCC},+    {0xBE72, 0x7DCD},+    {0xBE73, 0x7DCE},+    {0xBE74, 0x7DCF},+    {0xBE75, 0x7DD0},+    {0xBE76, 0x7DD1},+    {0xBE77, 0x7DD2},+    {0xBE78, 0x7DD3},+    {0xBE79, 0x7DD4},+    {0xBE7A, 0x7DD5},+    {0xBE7B, 0x7DD6},+    {0xBE7C, 0x7DD7},+    {0xBE7D, 0x7DD8},+    {0xBE7E, 0x7DD9},+    {0xBE80, 0x7DDA},+    {0xBE81, 0x7DDB},+    {0xBE82, 0x7DDC},+    {0xBE83, 0x7DDD},+    {0xBE84, 0x7DDE},+    {0xBE85, 0x7DDF},+    {0xBE86, 0x7DE0},+    {0xBE87, 0x7DE1},+    {0xBE88, 0x7DE2},+    {0xBE89, 0x7DE3},+    {0xBE8A, 0x7DE4},+    {0xBE8B, 0x7DE5},+    {0xBE8C, 0x7DE6},+    {0xBE8D, 0x7DE7},+    {0xBE8E, 0x7DE8},+    {0xBE8F, 0x7DE9},+    {0xBE90, 0x7DEA},+    {0xBE91, 0x7DEB},+    {0xBE92, 0x7DEC},+    {0xBE93, 0x7DED},+    {0xBE94, 0x7DEE},+    {0xBE95, 0x7DEF},+    {0xBE96, 0x7DF0},+    {0xBE97, 0x7DF1},+    {0xBE98, 0x7DF2},+    {0xBE99, 0x7DF3},+    {0xBE9A, 0x7DF4},+    {0xBE9B, 0x7DF5},+    {0xBE9C, 0x7DF6},+    {0xBE9D, 0x7DF7},+    {0xBE9E, 0x7DF8},+    {0xBE9F, 0x7DF9},+    {0xBEA0, 0x7DFA},+    {0xBEA1, 0x5C3D},+    {0xBEA2, 0x52B2},+    {0xBEA3, 0x8346},+    {0xBEA4, 0x5162},+    {0xBEA5, 0x830E},+    {0xBEA6, 0x775B},+    {0xBEA7, 0x6676},+    {0xBEA8, 0x9CB8},+    {0xBEA9, 0x4EAC},+    {0xBEAA, 0x60CA},+    {0xBEAB, 0x7CBE},+    {0xBEAC, 0x7CB3},+    {0xBEAD, 0x7ECF},+    {0xBEAE, 0x4E95},+    {0xBEAF, 0x8B66},+    {0xBEB0, 0x666F},+    {0xBEB1, 0x9888},+    {0xBEB2, 0x9759},+    {0xBEB3, 0x5883},+    {0xBEB4, 0x656C},+    {0xBEB5, 0x955C},+    {0xBEB6, 0x5F84},+    {0xBEB7, 0x75C9},+    {0xBEB8, 0x9756},+    {0xBEB9, 0x7ADF},+    {0xBEBA, 0x7ADE},+    {0xBEBB, 0x51C0},+    {0xBEBC, 0x70AF},+    {0xBEBD, 0x7A98},+    {0xBEBE, 0x63EA},+    {0xBEBF, 0x7A76},+    {0xBEC0, 0x7EA0},+    {0xBEC1, 0x7396},+    {0xBEC2, 0x97ED},+    {0xBEC3, 0x4E45},+    {0xBEC4, 0x7078},+    {0xBEC5, 0x4E5D},+    {0xBEC6, 0x9152},+    {0xBEC7, 0x53A9},+    {0xBEC8, 0x6551},+    {0xBEC9, 0x65E7},+    {0xBECA, 0x81FC},+    {0xBECB, 0x8205},+    {0xBECC, 0x548E},+    {0xBECD, 0x5C31},+    {0xBECE, 0x759A},+    {0xBECF, 0x97A0},+    {0xBED0, 0x62D8},+    {0xBED1, 0x72D9},+    {0xBED2, 0x75BD},+    {0xBED3, 0x5C45},+    {0xBED4, 0x9A79},+    {0xBED5, 0x83CA},+    {0xBED6, 0x5C40},+    {0xBED7, 0x5480},+    {0xBED8, 0x77E9},+    {0xBED9, 0x4E3E},+    {0xBEDA, 0x6CAE},+    {0xBEDB, 0x805A},+    {0xBEDC, 0x62D2},+    {0xBEDD, 0x636E},+    {0xBEDE, 0x5DE8},+    {0xBEDF, 0x5177},+    {0xBEE0, 0x8DDD},+    {0xBEE1, 0x8E1E},+    {0xBEE2, 0x952F},+    {0xBEE3, 0x4FF1},+    {0xBEE4, 0x53E5},+    {0xBEE5, 0x60E7},+    {0xBEE6, 0x70AC},+    {0xBEE7, 0x5267},+    {0xBEE8, 0x6350},+    {0xBEE9, 0x9E43},+    {0xBEEA, 0x5A1F},+    {0xBEEB, 0x5026},+    {0xBEEC, 0x7737},+    {0xBEED, 0x5377},+    {0xBEEE, 0x7EE2},+    {0xBEEF, 0x6485},+    {0xBEF0, 0x652B},+    {0xBEF1, 0x6289},+    {0xBEF2, 0x6398},+    {0xBEF3, 0x5014},+    {0xBEF4, 0x7235},+    {0xBEF5, 0x89C9},+    {0xBEF6, 0x51B3},+    {0xBEF7, 0x8BC0},+    {0xBEF8, 0x7EDD},+    {0xBEF9, 0x5747},+    {0xBEFA, 0x83CC},+    {0xBEFB, 0x94A7},+    {0xBEFC, 0x519B},+    {0xBEFD, 0x541B},+    {0xBEFE, 0x5CFB},+    {0xBF40, 0x7DFB},+    {0xBF41, 0x7DFC},+    {0xBF42, 0x7DFD},+    {0xBF43, 0x7DFE},+    {0xBF44, 0x7DFF},+    {0xBF45, 0x7E00},+    {0xBF46, 0x7E01},+    {0xBF47, 0x7E02},+    {0xBF48, 0x7E03},+    {0xBF49, 0x7E04},+    {0xBF4A, 0x7E05},+    {0xBF4B, 0x7E06},+    {0xBF4C, 0x7E07},+    {0xBF4D, 0x7E08},+    {0xBF4E, 0x7E09},+    {0xBF4F, 0x7E0A},+    {0xBF50, 0x7E0B},+    {0xBF51, 0x7E0C},+    {0xBF52, 0x7E0D},+    {0xBF53, 0x7E0E},+    {0xBF54, 0x7E0F},+    {0xBF55, 0x7E10},+    {0xBF56, 0x7E11},+    {0xBF57, 0x7E12},+    {0xBF58, 0x7E13},+    {0xBF59, 0x7E14},+    {0xBF5A, 0x7E15},+    {0xBF5B, 0x7E16},+    {0xBF5C, 0x7E17},+    {0xBF5D, 0x7E18},+    {0xBF5E, 0x7E19},+    {0xBF5F, 0x7E1A},+    {0xBF60, 0x7E1B},+    {0xBF61, 0x7E1C},+    {0xBF62, 0x7E1D},+    {0xBF63, 0x7E1E},+    {0xBF64, 0x7E1F},+    {0xBF65, 0x7E20},+    {0xBF66, 0x7E21},+    {0xBF67, 0x7E22},+    {0xBF68, 0x7E23},+    {0xBF69, 0x7E24},+    {0xBF6A, 0x7E25},+    {0xBF6B, 0x7E26},+    {0xBF6C, 0x7E27},+    {0xBF6D, 0x7E28},+    {0xBF6E, 0x7E29},+    {0xBF6F, 0x7E2A},+    {0xBF70, 0x7E2B},+    {0xBF71, 0x7E2C},+    {0xBF72, 0x7E2D},+    {0xBF73, 0x7E2E},+    {0xBF74, 0x7E2F},+    {0xBF75, 0x7E30},+    {0xBF76, 0x7E31},+    {0xBF77, 0x7E32},+    {0xBF78, 0x7E33},+    {0xBF79, 0x7E34},+    {0xBF7A, 0x7E35},+    {0xBF7B, 0x7E36},+    {0xBF7C, 0x7E37},+    {0xBF7D, 0x7E38},+    {0xBF7E, 0x7E39},+    {0xBF80, 0x7E3A},+    {0xBF81, 0x7E3C},+    {0xBF82, 0x7E3D},+    {0xBF83, 0x7E3E},+    {0xBF84, 0x7E3F},+    {0xBF85, 0x7E40},+    {0xBF86, 0x7E42},+    {0xBF87, 0x7E43},+    {0xBF88, 0x7E44},+    {0xBF89, 0x7E45},+    {0xBF8A, 0x7E46},+    {0xBF8B, 0x7E48},+    {0xBF8C, 0x7E49},+    {0xBF8D, 0x7E4A},+    {0xBF8E, 0x7E4B},+    {0xBF8F, 0x7E4C},+    {0xBF90, 0x7E4D},+    {0xBF91, 0x7E4E},+    {0xBF92, 0x7E4F},+    {0xBF93, 0x7E50},+    {0xBF94, 0x7E51},+    {0xBF95, 0x7E52},+    {0xBF96, 0x7E53},+    {0xBF97, 0x7E54},+    {0xBF98, 0x7E55},+    {0xBF99, 0x7E56},+    {0xBF9A, 0x7E57},+    {0xBF9B, 0x7E58},+    {0xBF9C, 0x7E59},+    {0xBF9D, 0x7E5A},+    {0xBF9E, 0x7E5B},+    {0xBF9F, 0x7E5C},+    {0xBFA0, 0x7E5D},+    {0xBFA1, 0x4FCA},+    {0xBFA2, 0x7AE3},+    {0xBFA3, 0x6D5A},+    {0xBFA4, 0x90E1},+    {0xBFA5, 0x9A8F},+    {0xBFA6, 0x5580},+    {0xBFA7, 0x5496},+    {0xBFA8, 0x5361},+    {0xBFA9, 0x54AF},+    {0xBFAA, 0x5F00},+    {0xBFAB, 0x63E9},+    {0xBFAC, 0x6977},+    {0xBFAD, 0x51EF},+    {0xBFAE, 0x6168},+    {0xBFAF, 0x520A},+    {0xBFB0, 0x582A},+    {0xBFB1, 0x52D8},+    {0xBFB2, 0x574E},+    {0xBFB3, 0x780D},+    {0xBFB4, 0x770B},+    {0xBFB5, 0x5EB7},+    {0xBFB6, 0x6177},+    {0xBFB7, 0x7CE0},+    {0xBFB8, 0x625B},+    {0xBFB9, 0x6297},+    {0xBFBA, 0x4EA2},+    {0xBFBB, 0x7095},+    {0xBFBC, 0x8003},+    {0xBFBD, 0x62F7},+    {0xBFBE, 0x70E4},+    {0xBFBF, 0x9760},+    {0xBFC0, 0x5777},+    {0xBFC1, 0x82DB},+    {0xBFC2, 0x67EF},+    {0xBFC3, 0x68F5},+    {0xBFC4, 0x78D5},+    {0xBFC5, 0x9897},+    {0xBFC6, 0x79D1},+    {0xBFC7, 0x58F3},+    {0xBFC8, 0x54B3},+    {0xBFC9, 0x53EF},+    {0xBFCA, 0x6E34},+    {0xBFCB, 0x514B},+    {0xBFCC, 0x523B},+    {0xBFCD, 0x5BA2},+    {0xBFCE, 0x8BFE},+    {0xBFCF, 0x80AF},+    {0xBFD0, 0x5543},+    {0xBFD1, 0x57A6},+    {0xBFD2, 0x6073},+    {0xBFD3, 0x5751},+    {0xBFD4, 0x542D},+    {0xBFD5, 0x7A7A},+    {0xBFD6, 0x6050},+    {0xBFD7, 0x5B54},+    {0xBFD8, 0x63A7},+    {0xBFD9, 0x62A0},+    {0xBFDA, 0x53E3},+    {0xBFDB, 0x6263},+    {0xBFDC, 0x5BC7},+    {0xBFDD, 0x67AF},+    {0xBFDE, 0x54ED},+    {0xBFDF, 0x7A9F},+    {0xBFE0, 0x82E6},+    {0xBFE1, 0x9177},+    {0xBFE2, 0x5E93},+    {0xBFE3, 0x88E4},+    {0xBFE4, 0x5938},+    {0xBFE5, 0x57AE},+    {0xBFE6, 0x630E},+    {0xBFE7, 0x8DE8},+    {0xBFE8, 0x80EF},+    {0xBFE9, 0x5757},+    {0xBFEA, 0x7B77},+    {0xBFEB, 0x4FA9},+    {0xBFEC, 0x5FEB},+    {0xBFED, 0x5BBD},+    {0xBFEE, 0x6B3E},+    {0xBFEF, 0x5321},+    {0xBFF0, 0x7B50},+    {0xBFF1, 0x72C2},+    {0xBFF2, 0x6846},+    {0xBFF3, 0x77FF},+    {0xBFF4, 0x7736},+    {0xBFF5, 0x65F7},+    {0xBFF6, 0x51B5},+    {0xBFF7, 0x4E8F},+    {0xBFF8, 0x76D4},+    {0xBFF9, 0x5CBF},+    {0xBFFA, 0x7AA5},+    {0xBFFB, 0x8475},+    {0xBFFC, 0x594E},+    {0xBFFD, 0x9B41},+    {0xBFFE, 0x5080},+    {0xC040, 0x7E5E},+    {0xC041, 0x7E5F},+    {0xC042, 0x7E60},+    {0xC043, 0x7E61},+    {0xC044, 0x7E62},+    {0xC045, 0x7E63},+    {0xC046, 0x7E64},+    {0xC047, 0x7E65},+    {0xC048, 0x7E66},+    {0xC049, 0x7E67},+    {0xC04A, 0x7E68},+    {0xC04B, 0x7E69},+    {0xC04C, 0x7E6A},+    {0xC04D, 0x7E6B},+    {0xC04E, 0x7E6C},+    {0xC04F, 0x7E6D},+    {0xC050, 0x7E6E},+    {0xC051, 0x7E6F},+    {0xC052, 0x7E70},+    {0xC053, 0x7E71},+    {0xC054, 0x7E72},+    {0xC055, 0x7E73},+    {0xC056, 0x7E74},+    {0xC057, 0x7E75},+    {0xC058, 0x7E76},+    {0xC059, 0x7E77},+    {0xC05A, 0x7E78},+    {0xC05B, 0x7E79},+    {0xC05C, 0x7E7A},+    {0xC05D, 0x7E7B},+    {0xC05E, 0x7E7C},+    {0xC05F, 0x7E7D},+    {0xC060, 0x7E7E},+    {0xC061, 0x7E7F},+    {0xC062, 0x7E80},+    {0xC063, 0x7E81},+    {0xC064, 0x7E83},+    {0xC065, 0x7E84},+    {0xC066, 0x7E85},+    {0xC067, 0x7E86},+    {0xC068, 0x7E87},+    {0xC069, 0x7E88},+    {0xC06A, 0x7E89},+    {0xC06B, 0x7E8A},+    {0xC06C, 0x7E8B},+    {0xC06D, 0x7E8C},+    {0xC06E, 0x7E8D},+    {0xC06F, 0x7E8E},+    {0xC070, 0x7E8F},+    {0xC071, 0x7E90},+    {0xC072, 0x7E91},+    {0xC073, 0x7E92},+    {0xC074, 0x7E93},+    {0xC075, 0x7E94},+    {0xC076, 0x7E95},+    {0xC077, 0x7E96},+    {0xC078, 0x7E97},+    {0xC079, 0x7E98},+    {0xC07A, 0x7E99},+    {0xC07B, 0x7E9A},+    {0xC07C, 0x7E9C},+    {0xC07D, 0x7E9D},+    {0xC07E, 0x7E9E},+    {0xC080, 0x7EAE},+    {0xC081, 0x7EB4},+    {0xC082, 0x7EBB},+    {0xC083, 0x7EBC},+    {0xC084, 0x7ED6},+    {0xC085, 0x7EE4},+    {0xC086, 0x7EEC},+    {0xC087, 0x7EF9},+    {0xC088, 0x7F0A},+    {0xC089, 0x7F10},+    {0xC08A, 0x7F1E},+    {0xC08B, 0x7F37},+    {0xC08C, 0x7F39},+    {0xC08D, 0x7F3B},+    {0xC08E, 0x7F3C},+    {0xC08F, 0x7F3D},+    {0xC090, 0x7F3E},+    {0xC091, 0x7F3F},+    {0xC092, 0x7F40},+    {0xC093, 0x7F41},+    {0xC094, 0x7F43},+    {0xC095, 0x7F46},+    {0xC096, 0x7F47},+    {0xC097, 0x7F48},+    {0xC098, 0x7F49},+    {0xC099, 0x7F4A},+    {0xC09A, 0x7F4B},+    {0xC09B, 0x7F4C},+    {0xC09C, 0x7F4D},+    {0xC09D, 0x7F4E},+    {0xC09E, 0x7F4F},+    {0xC09F, 0x7F52},+    {0xC0A0, 0x7F53},+    {0xC0A1, 0x9988},+    {0xC0A2, 0x6127},+    {0xC0A3, 0x6E83},+    {0xC0A4, 0x5764},+    {0xC0A5, 0x6606},+    {0xC0A6, 0x6346},+    {0xC0A7, 0x56F0},+    {0xC0A8, 0x62EC},+    {0xC0A9, 0x6269},+    {0xC0AA, 0x5ED3},+    {0xC0AB, 0x9614},+    {0xC0AC, 0x5783},+    {0xC0AD, 0x62C9},+    {0xC0AE, 0x5587},+    {0xC0AF, 0x8721},+    {0xC0B0, 0x814A},+    {0xC0B1, 0x8FA3},+    {0xC0B2, 0x5566},+    {0xC0B3, 0x83B1},+    {0xC0B4, 0x6765},+    {0xC0B5, 0x8D56},+    {0xC0B6, 0x84DD},+    {0xC0B7, 0x5A6A},+    {0xC0B8, 0x680F},+    {0xC0B9, 0x62E6},+    {0xC0BA, 0x7BEE},+    {0xC0BB, 0x9611},+    {0xC0BC, 0x5170},+    {0xC0BD, 0x6F9C},+    {0xC0BE, 0x8C30},+    {0xC0BF, 0x63FD},+    {0xC0C0, 0x89C8},+    {0xC0C1, 0x61D2},+    {0xC0C2, 0x7F06},+    {0xC0C3, 0x70C2},+    {0xC0C4, 0x6EE5},+    {0xC0C5, 0x7405},+    {0xC0C6, 0x6994},+    {0xC0C7, 0x72FC},+    {0xC0C8, 0x5ECA},+    {0xC0C9, 0x90CE},+    {0xC0CA, 0x6717},+    {0xC0CB, 0x6D6A},+    {0xC0CC, 0x635E},+    {0xC0CD, 0x52B3},+    {0xC0CE, 0x7262},+    {0xC0CF, 0x8001},+    {0xC0D0, 0x4F6C},+    {0xC0D1, 0x59E5},+    {0xC0D2, 0x916A},+    {0xC0D3, 0x70D9},+    {0xC0D4, 0x6D9D},+    {0xC0D5, 0x52D2},+    {0xC0D6, 0x4E50},+    {0xC0D7, 0x96F7},+    {0xC0D8, 0x956D},+    {0xC0D9, 0x857E},+    {0xC0DA, 0x78CA},+    {0xC0DB, 0x7D2F},+    {0xC0DC, 0x5121},+    {0xC0DD, 0x5792},+    {0xC0DE, 0x64C2},+    {0xC0DF, 0x808B},+    {0xC0E0, 0x7C7B},+    {0xC0E1, 0x6CEA},+    {0xC0E2, 0x68F1},+    {0xC0E3, 0x695E},+    {0xC0E4, 0x51B7},+    {0xC0E5, 0x5398},+    {0xC0E6, 0x68A8},+    {0xC0E7, 0x7281},+    {0xC0E8, 0x9ECE},+    {0xC0E9, 0x7BF1},+    {0xC0EA, 0x72F8},+    {0xC0EB, 0x79BB},+    {0xC0EC, 0x6F13},+    {0xC0ED, 0x7406},+    {0xC0EE, 0x674E},+    {0xC0EF, 0x91CC},+    {0xC0F0, 0x9CA4},+    {0xC0F1, 0x793C},+    {0xC0F2, 0x8389},+    {0xC0F3, 0x8354},+    {0xC0F4, 0x540F},+    {0xC0F5, 0x6817},+    {0xC0F6, 0x4E3D},+    {0xC0F7, 0x5389},+    {0xC0F8, 0x52B1},+    {0xC0F9, 0x783E},+    {0xC0FA, 0x5386},+    {0xC0FB, 0x5229},+    {0xC0FC, 0x5088},+    {0xC0FD, 0x4F8B},+    {0xC0FE, 0x4FD0},+    {0xC140, 0x7F56},+    {0xC141, 0x7F59},+    {0xC142, 0x7F5B},+    {0xC143, 0x7F5C},+    {0xC144, 0x7F5D},+    {0xC145, 0x7F5E},+    {0xC146, 0x7F60},+    {0xC147, 0x7F63},+    {0xC148, 0x7F64},+    {0xC149, 0x7F65},+    {0xC14A, 0x7F66},+    {0xC14B, 0x7F67},+    {0xC14C, 0x7F6B},+    {0xC14D, 0x7F6C},+    {0xC14E, 0x7F6D},+    {0xC14F, 0x7F6F},+    {0xC150, 0x7F70},+    {0xC151, 0x7F73},+    {0xC152, 0x7F75},+    {0xC153, 0x7F76},+    {0xC154, 0x7F77},+    {0xC155, 0x7F78},+    {0xC156, 0x7F7A},+    {0xC157, 0x7F7B},+    {0xC158, 0x7F7C},+    {0xC159, 0x7F7D},+    {0xC15A, 0x7F7F},+    {0xC15B, 0x7F80},+    {0xC15C, 0x7F82},+    {0xC15D, 0x7F83},+    {0xC15E, 0x7F84},+    {0xC15F, 0x7F85},+    {0xC160, 0x7F86},+    {0xC161, 0x7F87},+    {0xC162, 0x7F88},+    {0xC163, 0x7F89},+    {0xC164, 0x7F8B},+    {0xC165, 0x7F8D},+    {0xC166, 0x7F8F},+    {0xC167, 0x7F90},+    {0xC168, 0x7F91},+    {0xC169, 0x7F92},+    {0xC16A, 0x7F93},+    {0xC16B, 0x7F95},+    {0xC16C, 0x7F96},+    {0xC16D, 0x7F97},+    {0xC16E, 0x7F98},+    {0xC16F, 0x7F99},+    {0xC170, 0x7F9B},+    {0xC171, 0x7F9C},+    {0xC172, 0x7FA0},+    {0xC173, 0x7FA2},+    {0xC174, 0x7FA3},+    {0xC175, 0x7FA5},+    {0xC176, 0x7FA6},+    {0xC177, 0x7FA8},+    {0xC178, 0x7FA9},+    {0xC179, 0x7FAA},+    {0xC17A, 0x7FAB},+    {0xC17B, 0x7FAC},+    {0xC17C, 0x7FAD},+    {0xC17D, 0x7FAE},+    {0xC17E, 0x7FB1},+    {0xC180, 0x7FB3},+    {0xC181, 0x7FB4},+    {0xC182, 0x7FB5},+    {0xC183, 0x7FB6},+    {0xC184, 0x7FB7},+    {0xC185, 0x7FBA},+    {0xC186, 0x7FBB},+    {0xC187, 0x7FBE},+    {0xC188, 0x7FC0},+    {0xC189, 0x7FC2},+    {0xC18A, 0x7FC3},+    {0xC18B, 0x7FC4},+    {0xC18C, 0x7FC6},+    {0xC18D, 0x7FC7},+    {0xC18E, 0x7FC8},+    {0xC18F, 0x7FC9},+    {0xC190, 0x7FCB},+    {0xC191, 0x7FCD},+    {0xC192, 0x7FCF},+    {0xC193, 0x7FD0},+    {0xC194, 0x7FD1},+    {0xC195, 0x7FD2},+    {0xC196, 0x7FD3},+    {0xC197, 0x7FD6},+    {0xC198, 0x7FD7},+    {0xC199, 0x7FD9},+    {0xC19A, 0x7FDA},+    {0xC19B, 0x7FDB},+    {0xC19C, 0x7FDC},+    {0xC19D, 0x7FDD},+    {0xC19E, 0x7FDE},+    {0xC19F, 0x7FE2},+    {0xC1A0, 0x7FE3},+    {0xC1A1, 0x75E2},+    {0xC1A2, 0x7ACB},+    {0xC1A3, 0x7C92},+    {0xC1A4, 0x6CA5},+    {0xC1A5, 0x96B6},+    {0xC1A6, 0x529B},+    {0xC1A7, 0x7483},+    {0xC1A8, 0x54E9},+    {0xC1A9, 0x4FE9},+    {0xC1AA, 0x8054},+    {0xC1AB, 0x83B2},+    {0xC1AC, 0x8FDE},+    {0xC1AD, 0x9570},+    {0xC1AE, 0x5EC9},+    {0xC1AF, 0x601C},+    {0xC1B0, 0x6D9F},+    {0xC1B1, 0x5E18},+    {0xC1B2, 0x655B},+    {0xC1B3, 0x8138},+    {0xC1B4, 0x94FE},+    {0xC1B5, 0x604B},+    {0xC1B6, 0x70BC},+    {0xC1B7, 0x7EC3},+    {0xC1B8, 0x7CAE},+    {0xC1B9, 0x51C9},+    {0xC1BA, 0x6881},+    {0xC1BB, 0x7CB1},+    {0xC1BC, 0x826F},+    {0xC1BD, 0x4E24},+    {0xC1BE, 0x8F86},+    {0xC1BF, 0x91CF},+    {0xC1C0, 0x667E},+    {0xC1C1, 0x4EAE},+    {0xC1C2, 0x8C05},+    {0xC1C3, 0x64A9},+    {0xC1C4, 0x804A},+    {0xC1C5, 0x50DA},+    {0xC1C6, 0x7597},+    {0xC1C7, 0x71CE},+    {0xC1C8, 0x5BE5},+    {0xC1C9, 0x8FBD},+    {0xC1CA, 0x6F66},+    {0xC1CB, 0x4E86},+    {0xC1CC, 0x6482},+    {0xC1CD, 0x9563},+    {0xC1CE, 0x5ED6},+    {0xC1CF, 0x6599},+    {0xC1D0, 0x5217},+    {0xC1D1, 0x88C2},+    {0xC1D2, 0x70C8},+    {0xC1D3, 0x52A3},+    {0xC1D4, 0x730E},+    {0xC1D5, 0x7433},+    {0xC1D6, 0x6797},+    {0xC1D7, 0x78F7},+    {0xC1D8, 0x9716},+    {0xC1D9, 0x4E34},+    {0xC1DA, 0x90BB},+    {0xC1DB, 0x9CDE},+    {0xC1DC, 0x6DCB},+    {0xC1DD, 0x51DB},+    {0xC1DE, 0x8D41},+    {0xC1DF, 0x541D},+    {0xC1E0, 0x62CE},+    {0xC1E1, 0x73B2},+    {0xC1E2, 0x83F1},+    {0xC1E3, 0x96F6},+    {0xC1E4, 0x9F84},+    {0xC1E5, 0x94C3},+    {0xC1E6, 0x4F36},+    {0xC1E7, 0x7F9A},+    {0xC1E8, 0x51CC},+    {0xC1E9, 0x7075},+    {0xC1EA, 0x9675},+    {0xC1EB, 0x5CAD},+    {0xC1EC, 0x9886},+    {0xC1ED, 0x53E6},+    {0xC1EE, 0x4EE4},+    {0xC1EF, 0x6E9C},+    {0xC1F0, 0x7409},+    {0xC1F1, 0x69B4},+    {0xC1F2, 0x786B},+    {0xC1F3, 0x998F},+    {0xC1F4, 0x7559},+    {0xC1F5, 0x5218},+    {0xC1F6, 0x7624},+    {0xC1F7, 0x6D41},+    {0xC1F8, 0x67F3},+    {0xC1F9, 0x516D},+    {0xC1FA, 0x9F99},+    {0xC1FB, 0x804B},+    {0xC1FC, 0x5499},+    {0xC1FD, 0x7B3C},+    {0xC1FE, 0x7ABF},+    {0xC240, 0x7FE4},+    {0xC241, 0x7FE7},+    {0xC242, 0x7FE8},+    {0xC243, 0x7FEA},+    {0xC244, 0x7FEB},+    {0xC245, 0x7FEC},+    {0xC246, 0x7FED},+    {0xC247, 0x7FEF},+    {0xC248, 0x7FF2},+    {0xC249, 0x7FF4},+    {0xC24A, 0x7FF5},+    {0xC24B, 0x7FF6},+    {0xC24C, 0x7FF7},+    {0xC24D, 0x7FF8},+    {0xC24E, 0x7FF9},+    {0xC24F, 0x7FFA},+    {0xC250, 0x7FFD},+    {0xC251, 0x7FFE},+    {0xC252, 0x7FFF},+    {0xC253, 0x8002},+    {0xC254, 0x8007},+    {0xC255, 0x8008},+    {0xC256, 0x8009},+    {0xC257, 0x800A},+    {0xC258, 0x800E},+    {0xC259, 0x800F},+    {0xC25A, 0x8011},+    {0xC25B, 0x8013},+    {0xC25C, 0x801A},+    {0xC25D, 0x801B},+    {0xC25E, 0x801D},+    {0xC25F, 0x801E},+    {0xC260, 0x801F},+    {0xC261, 0x8021},+    {0xC262, 0x8023},+    {0xC263, 0x8024},+    {0xC264, 0x802B},+    {0xC265, 0x802C},+    {0xC266, 0x802D},+    {0xC267, 0x802E},+    {0xC268, 0x802F},+    {0xC269, 0x8030},+    {0xC26A, 0x8032},+    {0xC26B, 0x8034},+    {0xC26C, 0x8039},+    {0xC26D, 0x803A},+    {0xC26E, 0x803C},+    {0xC26F, 0x803E},+    {0xC270, 0x8040},+    {0xC271, 0x8041},+    {0xC272, 0x8044},+    {0xC273, 0x8045},+    {0xC274, 0x8047},+    {0xC275, 0x8048},+    {0xC276, 0x8049},+    {0xC277, 0x804E},+    {0xC278, 0x804F},+    {0xC279, 0x8050},+    {0xC27A, 0x8051},+    {0xC27B, 0x8053},+    {0xC27C, 0x8055},+    {0xC27D, 0x8056},+    {0xC27E, 0x8057},+    {0xC280, 0x8059},+    {0xC281, 0x805B},+    {0xC282, 0x805C},+    {0xC283, 0x805D},+    {0xC284, 0x805E},+    {0xC285, 0x805F},+    {0xC286, 0x8060},+    {0xC287, 0x8061},+    {0xC288, 0x8062},+    {0xC289, 0x8063},+    {0xC28A, 0x8064},+    {0xC28B, 0x8065},+    {0xC28C, 0x8066},+    {0xC28D, 0x8067},+    {0xC28E, 0x8068},+    {0xC28F, 0x806B},+    {0xC290, 0x806C},+    {0xC291, 0x806D},+    {0xC292, 0x806E},+    {0xC293, 0x806F},+    {0xC294, 0x8070},+    {0xC295, 0x8072},+    {0xC296, 0x8073},+    {0xC297, 0x8074},+    {0xC298, 0x8075},+    {0xC299, 0x8076},+    {0xC29A, 0x8077},+    {0xC29B, 0x8078},+    {0xC29C, 0x8079},+    {0xC29D, 0x807A},+    {0xC29E, 0x807B},+    {0xC29F, 0x807C},+    {0xC2A0, 0x807D},+    {0xC2A1, 0x9686},+    {0xC2A2, 0x5784},+    {0xC2A3, 0x62E2},+    {0xC2A4, 0x9647},+    {0xC2A5, 0x697C},+    {0xC2A6, 0x5A04},+    {0xC2A7, 0x6402},+    {0xC2A8, 0x7BD3},+    {0xC2A9, 0x6F0F},+    {0xC2AA, 0x964B},+    {0xC2AB, 0x82A6},+    {0xC2AC, 0x5362},+    {0xC2AD, 0x9885},+    {0xC2AE, 0x5E90},+    {0xC2AF, 0x7089},+    {0xC2B0, 0x63B3},+    {0xC2B1, 0x5364},+    {0xC2B2, 0x864F},+    {0xC2B3, 0x9C81},+    {0xC2B4, 0x9E93},+    {0xC2B5, 0x788C},+    {0xC2B6, 0x9732},+    {0xC2B7, 0x8DEF},+    {0xC2B8, 0x8D42},+    {0xC2B9, 0x9E7F},+    {0xC2BA, 0x6F5E},+    {0xC2BB, 0x7984},+    {0xC2BC, 0x5F55},+    {0xC2BD, 0x9646},+    {0xC2BE, 0x622E},+    {0xC2BF, 0x9A74},+    {0xC2C0, 0x5415},+    {0xC2C1, 0x94DD},+    {0xC2C2, 0x4FA3},+    {0xC2C3, 0x65C5},+    {0xC2C4, 0x5C65},+    {0xC2C5, 0x5C61},+    {0xC2C6, 0x7F15},+    {0xC2C7, 0x8651},+    {0xC2C8, 0x6C2F},+    {0xC2C9, 0x5F8B},+    {0xC2CA, 0x7387},+    {0xC2CB, 0x6EE4},+    {0xC2CC, 0x7EFF},+    {0xC2CD, 0x5CE6},+    {0xC2CE, 0x631B},+    {0xC2CF, 0x5B6A},+    {0xC2D0, 0x6EE6},+    {0xC2D1, 0x5375},+    {0xC2D2, 0x4E71},+    {0xC2D3, 0x63A0},+    {0xC2D4, 0x7565},+    {0xC2D5, 0x62A1},+    {0xC2D6, 0x8F6E},+    {0xC2D7, 0x4F26},+    {0xC2D8, 0x4ED1},+    {0xC2D9, 0x6CA6},+    {0xC2DA, 0x7EB6},+    {0xC2DB, 0x8BBA},+    {0xC2DC, 0x841D},+    {0xC2DD, 0x87BA},+    {0xC2DE, 0x7F57},+    {0xC2DF, 0x903B},+    {0xC2E0, 0x9523},+    {0xC2E1, 0x7BA9},+    {0xC2E2, 0x9AA1},+    {0xC2E3, 0x88F8},+    {0xC2E4, 0x843D},+    {0xC2E5, 0x6D1B},+    {0xC2E6, 0x9A86},+    {0xC2E7, 0x7EDC},+    {0xC2E8, 0x5988},+    {0xC2E9, 0x9EBB},+    {0xC2EA, 0x739B},+    {0xC2EB, 0x7801},+    {0xC2EC, 0x8682},+    {0xC2ED, 0x9A6C},+    {0xC2EE, 0x9A82},+    {0xC2EF, 0x561B},+    {0xC2F0, 0x5417},+    {0xC2F1, 0x57CB},+    {0xC2F2, 0x4E70},+    {0xC2F3, 0x9EA6},+    {0xC2F4, 0x5356},+    {0xC2F5, 0x8FC8},+    {0xC2F6, 0x8109},+    {0xC2F7, 0x7792},+    {0xC2F8, 0x9992},+    {0xC2F9, 0x86EE},+    {0xC2FA, 0x6EE1},+    {0xC2FB, 0x8513},+    {0xC2FC, 0x66FC},+    {0xC2FD, 0x6162},+    {0xC2FE, 0x6F2B},+    {0xC340, 0x807E},+    {0xC341, 0x8081},+    {0xC342, 0x8082},+    {0xC343, 0x8085},+    {0xC344, 0x8088},+    {0xC345, 0x808A},+    {0xC346, 0x808D},+    {0xC347, 0x808E},+    {0xC348, 0x808F},+    {0xC349, 0x8090},+    {0xC34A, 0x8091},+    {0xC34B, 0x8092},+    {0xC34C, 0x8094},+    {0xC34D, 0x8095},+    {0xC34E, 0x8097},+    {0xC34F, 0x8099},+    {0xC350, 0x809E},+    {0xC351, 0x80A3},+    {0xC352, 0x80A6},+    {0xC353, 0x80A7},+    {0xC354, 0x80A8},+    {0xC355, 0x80AC},+    {0xC356, 0x80B0},+    {0xC357, 0x80B3},+    {0xC358, 0x80B5},+    {0xC359, 0x80B6},+    {0xC35A, 0x80B8},+    {0xC35B, 0x80B9},+    {0xC35C, 0x80BB},+    {0xC35D, 0x80C5},+    {0xC35E, 0x80C7},+    {0xC35F, 0x80C8},+    {0xC360, 0x80C9},+    {0xC361, 0x80CA},+    {0xC362, 0x80CB},+    {0xC363, 0x80CF},+    {0xC364, 0x80D0},+    {0xC365, 0x80D1},+    {0xC366, 0x80D2},+    {0xC367, 0x80D3},+    {0xC368, 0x80D4},+    {0xC369, 0x80D5},+    {0xC36A, 0x80D8},+    {0xC36B, 0x80DF},+    {0xC36C, 0x80E0},+    {0xC36D, 0x80E2},+    {0xC36E, 0x80E3},+    {0xC36F, 0x80E6},+    {0xC370, 0x80EE},+    {0xC371, 0x80F5},+    {0xC372, 0x80F7},+    {0xC373, 0x80F9},+    {0xC374, 0x80FB},+    {0xC375, 0x80FE},+    {0xC376, 0x80FF},+    {0xC377, 0x8100},+    {0xC378, 0x8101},+    {0xC379, 0x8103},+    {0xC37A, 0x8104},+    {0xC37B, 0x8105},+    {0xC37C, 0x8107},+    {0xC37D, 0x8108},+    {0xC37E, 0x810B},+    {0xC380, 0x810C},+    {0xC381, 0x8115},+    {0xC382, 0x8117},+    {0xC383, 0x8119},+    {0xC384, 0x811B},+    {0xC385, 0x811C},+    {0xC386, 0x811D},+    {0xC387, 0x811F},+    {0xC388, 0x8120},+    {0xC389, 0x8121},+    {0xC38A, 0x8122},+    {0xC38B, 0x8123},+    {0xC38C, 0x8124},+    {0xC38D, 0x8125},+    {0xC38E, 0x8126},+    {0xC38F, 0x8127},+    {0xC390, 0x8128},+    {0xC391, 0x8129},+    {0xC392, 0x812A},+    {0xC393, 0x812B},+    {0xC394, 0x812D},+    {0xC395, 0x812E},+    {0xC396, 0x8130},+    {0xC397, 0x8133},+    {0xC398, 0x8134},+    {0xC399, 0x8135},+    {0xC39A, 0x8137},+    {0xC39B, 0x8139},+    {0xC39C, 0x813A},+    {0xC39D, 0x813B},+    {0xC39E, 0x813C},+    {0xC39F, 0x813D},+    {0xC3A0, 0x813F},+    {0xC3A1, 0x8C29},+    {0xC3A2, 0x8292},+    {0xC3A3, 0x832B},+    {0xC3A4, 0x76F2},+    {0xC3A5, 0x6C13},+    {0xC3A6, 0x5FD9},+    {0xC3A7, 0x83BD},+    {0xC3A8, 0x732B},+    {0xC3A9, 0x8305},+    {0xC3AA, 0x951A},+    {0xC3AB, 0x6BDB},+    {0xC3AC, 0x77DB},+    {0xC3AD, 0x94C6},+    {0xC3AE, 0x536F},+    {0xC3AF, 0x8302},+    {0xC3B0, 0x5192},+    {0xC3B1, 0x5E3D},+    {0xC3B2, 0x8C8C},+    {0xC3B3, 0x8D38},+    {0xC3B4, 0x4E48},+    {0xC3B5, 0x73AB},+    {0xC3B6, 0x679A},+    {0xC3B7, 0x6885},+    {0xC3B8, 0x9176},+    {0xC3B9, 0x9709},+    {0xC3BA, 0x7164},+    {0xC3BB, 0x6CA1},+    {0xC3BC, 0x7709},+    {0xC3BD, 0x5A92},+    {0xC3BE, 0x9541},+    {0xC3BF, 0x6BCF},+    {0xC3C0, 0x7F8E},+    {0xC3C1, 0x6627},+    {0xC3C2, 0x5BD0},+    {0xC3C3, 0x59B9},+    {0xC3C4, 0x5A9A},+    {0xC3C5, 0x95E8},+    {0xC3C6, 0x95F7},+    {0xC3C7, 0x4EEC},+    {0xC3C8, 0x840C},+    {0xC3C9, 0x8499},+    {0xC3CA, 0x6AAC},+    {0xC3CB, 0x76DF},+    {0xC3CC, 0x9530},+    {0xC3CD, 0x731B},+    {0xC3CE, 0x68A6},+    {0xC3CF, 0x5B5F},+    {0xC3D0, 0x772F},+    {0xC3D1, 0x919A},+    {0xC3D2, 0x9761},+    {0xC3D3, 0x7CDC},+    {0xC3D4, 0x8FF7},+    {0xC3D5, 0x8C1C},+    {0xC3D6, 0x5F25},+    {0xC3D7, 0x7C73},+    {0xC3D8, 0x79D8},+    {0xC3D9, 0x89C5},+    {0xC3DA, 0x6CCC},+    {0xC3DB, 0x871C},+    {0xC3DC, 0x5BC6},+    {0xC3DD, 0x5E42},+    {0xC3DE, 0x68C9},+    {0xC3DF, 0x7720},+    {0xC3E0, 0x7EF5},+    {0xC3E1, 0x5195},+    {0xC3E2, 0x514D},+    {0xC3E3, 0x52C9},+    {0xC3E4, 0x5A29},+    {0xC3E5, 0x7F05},+    {0xC3E6, 0x9762},+    {0xC3E7, 0x82D7},+    {0xC3E8, 0x63CF},+    {0xC3E9, 0x7784},+    {0xC3EA, 0x85D0},+    {0xC3EB, 0x79D2},+    {0xC3EC, 0x6E3A},+    {0xC3ED, 0x5E99},+    {0xC3EE, 0x5999},+    {0xC3EF, 0x8511},+    {0xC3F0, 0x706D},+    {0xC3F1, 0x6C11},+    {0xC3F2, 0x62BF},+    {0xC3F3, 0x76BF},+    {0xC3F4, 0x654F},+    {0xC3F5, 0x60AF},+    {0xC3F6, 0x95FD},+    {0xC3F7, 0x660E},+    {0xC3F8, 0x879F},+    {0xC3F9, 0x9E23},+    {0xC3FA, 0x94ED},+    {0xC3FB, 0x540D},+    {0xC3FC, 0x547D},+    {0xC3FD, 0x8C2C},+    {0xC3FE, 0x6478},+    {0xC440, 0x8140},+    {0xC441, 0x8141},+    {0xC442, 0x8142},+    {0xC443, 0x8143},+    {0xC444, 0x8144},+    {0xC445, 0x8145},+    {0xC446, 0x8147},+    {0xC447, 0x8149},+    {0xC448, 0x814D},+    {0xC449, 0x814E},+    {0xC44A, 0x814F},+    {0xC44B, 0x8152},+    {0xC44C, 0x8156},+    {0xC44D, 0x8157},+    {0xC44E, 0x8158},+    {0xC44F, 0x815B},+    {0xC450, 0x815C},+    {0xC451, 0x815D},+    {0xC452, 0x815E},+    {0xC453, 0x815F},+    {0xC454, 0x8161},+    {0xC455, 0x8162},+    {0xC456, 0x8163},+    {0xC457, 0x8164},+    {0xC458, 0x8166},+    {0xC459, 0x8168},+    {0xC45A, 0x816A},+    {0xC45B, 0x816B},+    {0xC45C, 0x816C},+    {0xC45D, 0x816F},+    {0xC45E, 0x8172},+    {0xC45F, 0x8173},+    {0xC460, 0x8175},+    {0xC461, 0x8176},+    {0xC462, 0x8177},+    {0xC463, 0x8178},+    {0xC464, 0x8181},+    {0xC465, 0x8183},+    {0xC466, 0x8184},+    {0xC467, 0x8185},+    {0xC468, 0x8186},+    {0xC469, 0x8187},+    {0xC46A, 0x8189},+    {0xC46B, 0x818B},+    {0xC46C, 0x818C},+    {0xC46D, 0x818D},+    {0xC46E, 0x818E},+    {0xC46F, 0x8190},+    {0xC470, 0x8192},+    {0xC471, 0x8193},+    {0xC472, 0x8194},+    {0xC473, 0x8195},+    {0xC474, 0x8196},+    {0xC475, 0x8197},+    {0xC476, 0x8199},+    {0xC477, 0x819A},+    {0xC478, 0x819E},+    {0xC479, 0x819F},+    {0xC47A, 0x81A0},+    {0xC47B, 0x81A1},+    {0xC47C, 0x81A2},+    {0xC47D, 0x81A4},+    {0xC47E, 0x81A5},+    {0xC480, 0x81A7},+    {0xC481, 0x81A9},+    {0xC482, 0x81AB},+    {0xC483, 0x81AC},+    {0xC484, 0x81AD},+    {0xC485, 0x81AE},+    {0xC486, 0x81AF},+    {0xC487, 0x81B0},+    {0xC488, 0x81B1},+    {0xC489, 0x81B2},+    {0xC48A, 0x81B4},+    {0xC48B, 0x81B5},+    {0xC48C, 0x81B6},+    {0xC48D, 0x81B7},+    {0xC48E, 0x81B8},+    {0xC48F, 0x81B9},+    {0xC490, 0x81BC},+    {0xC491, 0x81BD},+    {0xC492, 0x81BE},+    {0xC493, 0x81BF},+    {0xC494, 0x81C4},+    {0xC495, 0x81C5},+    {0xC496, 0x81C7},+    {0xC497, 0x81C8},+    {0xC498, 0x81C9},+    {0xC499, 0x81CB},+    {0xC49A, 0x81CD},+    {0xC49B, 0x81CE},+    {0xC49C, 0x81CF},+    {0xC49D, 0x81D0},+    {0xC49E, 0x81D1},+    {0xC49F, 0x81D2},+    {0xC4A0, 0x81D3},+    {0xC4A1, 0x6479},+    {0xC4A2, 0x8611},+    {0xC4A3, 0x6A21},+    {0xC4A4, 0x819C},+    {0xC4A5, 0x78E8},+    {0xC4A6, 0x6469},+    {0xC4A7, 0x9B54},+    {0xC4A8, 0x62B9},+    {0xC4A9, 0x672B},+    {0xC4AA, 0x83AB},+    {0xC4AB, 0x58A8},+    {0xC4AC, 0x9ED8},+    {0xC4AD, 0x6CAB},+    {0xC4AE, 0x6F20},+    {0xC4AF, 0x5BDE},+    {0xC4B0, 0x964C},+    {0xC4B1, 0x8C0B},+    {0xC4B2, 0x725F},+    {0xC4B3, 0x67D0},+    {0xC4B4, 0x62C7},+    {0xC4B5, 0x7261},+    {0xC4B6, 0x4EA9},+    {0xC4B7, 0x59C6},+    {0xC4B8, 0x6BCD},+    {0xC4B9, 0x5893},+    {0xC4BA, 0x66AE},+    {0xC4BB, 0x5E55},+    {0xC4BC, 0x52DF},+    {0xC4BD, 0x6155},+    {0xC4BE, 0x6728},+    {0xC4BF, 0x76EE},+    {0xC4C0, 0x7766},+    {0xC4C1, 0x7267},+    {0xC4C2, 0x7A46},+    {0xC4C3, 0x62FF},+    {0xC4C4, 0x54EA},+    {0xC4C5, 0x5450},+    {0xC4C6, 0x94A0},+    {0xC4C7, 0x90A3},+    {0xC4C8, 0x5A1C},+    {0xC4C9, 0x7EB3},+    {0xC4CA, 0x6C16},+    {0xC4CB, 0x4E43},+    {0xC4CC, 0x5976},+    {0xC4CD, 0x8010},+    {0xC4CE, 0x5948},+    {0xC4CF, 0x5357},+    {0xC4D0, 0x7537},+    {0xC4D1, 0x96BE},+    {0xC4D2, 0x56CA},+    {0xC4D3, 0x6320},+    {0xC4D4, 0x8111},+    {0xC4D5, 0x607C},+    {0xC4D6, 0x95F9},+    {0xC4D7, 0x6DD6},+    {0xC4D8, 0x5462},+    {0xC4D9, 0x9981},+    {0xC4DA, 0x5185},+    {0xC4DB, 0x5AE9},+    {0xC4DC, 0x80FD},+    {0xC4DD, 0x59AE},+    {0xC4DE, 0x9713},+    {0xC4DF, 0x502A},+    {0xC4E0, 0x6CE5},+    {0xC4E1, 0x5C3C},+    {0xC4E2, 0x62DF},+    {0xC4E3, 0x4F60},+    {0xC4E4, 0x533F},+    {0xC4E5, 0x817B},+    {0xC4E6, 0x9006},+    {0xC4E7, 0x6EBA},+    {0xC4E8, 0x852B},+    {0xC4E9, 0x62C8},+    {0xC4EA, 0x5E74},+    {0xC4EB, 0x78BE},+    {0xC4EC, 0x64B5},+    {0xC4ED, 0x637B},+    {0xC4EE, 0x5FF5},+    {0xC4EF, 0x5A18},+    {0xC4F0, 0x917F},+    {0xC4F1, 0x9E1F},+    {0xC4F2, 0x5C3F},+    {0xC4F3, 0x634F},+    {0xC4F4, 0x8042},+    {0xC4F5, 0x5B7D},+    {0xC4F6, 0x556E},+    {0xC4F7, 0x954A},+    {0xC4F8, 0x954D},+    {0xC4F9, 0x6D85},+    {0xC4FA, 0x60A8},+    {0xC4FB, 0x67E0},+    {0xC4FC, 0x72DE},+    {0xC4FD, 0x51DD},+    {0xC4FE, 0x5B81},+    {0xC540, 0x81D4},+    {0xC541, 0x81D5},+    {0xC542, 0x81D6},+    {0xC543, 0x81D7},+    {0xC544, 0x81D8},+    {0xC545, 0x81D9},+    {0xC546, 0x81DA},+    {0xC547, 0x81DB},+    {0xC548, 0x81DC},+    {0xC549, 0x81DD},+    {0xC54A, 0x81DE},+    {0xC54B, 0x81DF},+    {0xC54C, 0x81E0},+    {0xC54D, 0x81E1},+    {0xC54E, 0x81E2},+    {0xC54F, 0x81E4},+    {0xC550, 0x81E5},+    {0xC551, 0x81E6},+    {0xC552, 0x81E8},+    {0xC553, 0x81E9},+    {0xC554, 0x81EB},+    {0xC555, 0x81EE},+    {0xC556, 0x81EF},+    {0xC557, 0x81F0},+    {0xC558, 0x81F1},+    {0xC559, 0x81F2},+    {0xC55A, 0x81F5},+    {0xC55B, 0x81F6},+    {0xC55C, 0x81F7},+    {0xC55D, 0x81F8},+    {0xC55E, 0x81F9},+    {0xC55F, 0x81FA},+    {0xC560, 0x81FD},+    {0xC561, 0x81FF},+    {0xC562, 0x8203},+    {0xC563, 0x8207},+    {0xC564, 0x8208},+    {0xC565, 0x8209},+    {0xC566, 0x820A},+    {0xC567, 0x820B},+    {0xC568, 0x820E},+    {0xC569, 0x820F},+    {0xC56A, 0x8211},+    {0xC56B, 0x8213},+    {0xC56C, 0x8215},+    {0xC56D, 0x8216},+    {0xC56E, 0x8217},+    {0xC56F, 0x8218},+    {0xC570, 0x8219},+    {0xC571, 0x821A},+    {0xC572, 0x821D},+    {0xC573, 0x8220},+    {0xC574, 0x8224},+    {0xC575, 0x8225},+    {0xC576, 0x8226},+    {0xC577, 0x8227},+    {0xC578, 0x8229},+    {0xC579, 0x822E},+    {0xC57A, 0x8232},+    {0xC57B, 0x823A},+    {0xC57C, 0x823C},+    {0xC57D, 0x823D},+    {0xC57E, 0x823F},+    {0xC580, 0x8240},+    {0xC581, 0x8241},+    {0xC582, 0x8242},+    {0xC583, 0x8243},+    {0xC584, 0x8245},+    {0xC585, 0x8246},+    {0xC586, 0x8248},+    {0xC587, 0x824A},+    {0xC588, 0x824C},+    {0xC589, 0x824D},+    {0xC58A, 0x824E},+    {0xC58B, 0x8250},+    {0xC58C, 0x8251},+    {0xC58D, 0x8252},+    {0xC58E, 0x8253},+    {0xC58F, 0x8254},+    {0xC590, 0x8255},+    {0xC591, 0x8256},+    {0xC592, 0x8257},+    {0xC593, 0x8259},+    {0xC594, 0x825B},+    {0xC595, 0x825C},+    {0xC596, 0x825D},+    {0xC597, 0x825E},+    {0xC598, 0x8260},+    {0xC599, 0x8261},+    {0xC59A, 0x8262},+    {0xC59B, 0x8263},+    {0xC59C, 0x8264},+    {0xC59D, 0x8265},+    {0xC59E, 0x8266},+    {0xC59F, 0x8267},+    {0xC5A0, 0x8269},+    {0xC5A1, 0x62E7},+    {0xC5A2, 0x6CDE},+    {0xC5A3, 0x725B},+    {0xC5A4, 0x626D},+    {0xC5A5, 0x94AE},+    {0xC5A6, 0x7EBD},+    {0xC5A7, 0x8113},+    {0xC5A8, 0x6D53},+    {0xC5A9, 0x519C},+    {0xC5AA, 0x5F04},+    {0xC5AB, 0x5974},+    {0xC5AC, 0x52AA},+    {0xC5AD, 0x6012},+    {0xC5AE, 0x5973},+    {0xC5AF, 0x6696},+    {0xC5B0, 0x8650},+    {0xC5B1, 0x759F},+    {0xC5B2, 0x632A},+    {0xC5B3, 0x61E6},+    {0xC5B4, 0x7CEF},+    {0xC5B5, 0x8BFA},+    {0xC5B6, 0x54E6},+    {0xC5B7, 0x6B27},+    {0xC5B8, 0x9E25},+    {0xC5B9, 0x6BB4},+    {0xC5BA, 0x85D5},+    {0xC5BB, 0x5455},+    {0xC5BC, 0x5076},+    {0xC5BD, 0x6CA4},+    {0xC5BE, 0x556A},+    {0xC5BF, 0x8DB4},+    {0xC5C0, 0x722C},+    {0xC5C1, 0x5E15},+    {0xC5C2, 0x6015},+    {0xC5C3, 0x7436},+    {0xC5C4, 0x62CD},+    {0xC5C5, 0x6392},+    {0xC5C6, 0x724C},+    {0xC5C7, 0x5F98},+    {0xC5C8, 0x6E43},+    {0xC5C9, 0x6D3E},+    {0xC5CA, 0x6500},+    {0xC5CB, 0x6F58},+    {0xC5CC, 0x76D8},+    {0xC5CD, 0x78D0},+    {0xC5CE, 0x76FC},+    {0xC5CF, 0x7554},+    {0xC5D0, 0x5224},+    {0xC5D1, 0x53DB},+    {0xC5D2, 0x4E53},+    {0xC5D3, 0x5E9E},+    {0xC5D4, 0x65C1},+    {0xC5D5, 0x802A},+    {0xC5D6, 0x80D6},+    {0xC5D7, 0x629B},+    {0xC5D8, 0x5486},+    {0xC5D9, 0x5228},+    {0xC5DA, 0x70AE},+    {0xC5DB, 0x888D},+    {0xC5DC, 0x8DD1},+    {0xC5DD, 0x6CE1},+    {0xC5DE, 0x5478},+    {0xC5DF, 0x80DA},+    {0xC5E0, 0x57F9},+    {0xC5E1, 0x88F4},+    {0xC5E2, 0x8D54},+    {0xC5E3, 0x966A},+    {0xC5E4, 0x914D},+    {0xC5E5, 0x4F69},+    {0xC5E6, 0x6C9B},+    {0xC5E7, 0x55B7},+    {0xC5E8, 0x76C6},+    {0xC5E9, 0x7830},+    {0xC5EA, 0x62A8},+    {0xC5EB, 0x70F9},+    {0xC5EC, 0x6F8E},+    {0xC5ED, 0x5F6D},+    {0xC5EE, 0x84EC},+    {0xC5EF, 0x68DA},+    {0xC5F0, 0x787C},+    {0xC5F1, 0x7BF7},+    {0xC5F2, 0x81A8},+    {0xC5F3, 0x670B},+    {0xC5F4, 0x9E4F},+    {0xC5F5, 0x6367},+    {0xC5F6, 0x78B0},+    {0xC5F7, 0x576F},+    {0xC5F8, 0x7812},+    {0xC5F9, 0x9739},+    {0xC5FA, 0x6279},+    {0xC5FB, 0x62AB},+    {0xC5FC, 0x5288},+    {0xC5FD, 0x7435},+    {0xC5FE, 0x6BD7},+    {0xC640, 0x826A},+    {0xC641, 0x826B},+    {0xC642, 0x826C},+    {0xC643, 0x826D},+    {0xC644, 0x8271},+    {0xC645, 0x8275},+    {0xC646, 0x8276},+    {0xC647, 0x8277},+    {0xC648, 0x8278},+    {0xC649, 0x827B},+    {0xC64A, 0x827C},+    {0xC64B, 0x8280},+    {0xC64C, 0x8281},+    {0xC64D, 0x8283},+    {0xC64E, 0x8285},+    {0xC64F, 0x8286},+    {0xC650, 0x8287},+    {0xC651, 0x8289},+    {0xC652, 0x828C},+    {0xC653, 0x8290},+    {0xC654, 0x8293},+    {0xC655, 0x8294},+    {0xC656, 0x8295},+    {0xC657, 0x8296},+    {0xC658, 0x829A},+    {0xC659, 0x829B},+    {0xC65A, 0x829E},+    {0xC65B, 0x82A0},+    {0xC65C, 0x82A2},+    {0xC65D, 0x82A3},+    {0xC65E, 0x82A7},+    {0xC65F, 0x82B2},+    {0xC660, 0x82B5},+    {0xC661, 0x82B6},+    {0xC662, 0x82BA},+    {0xC663, 0x82BB},+    {0xC664, 0x82BC},+    {0xC665, 0x82BF},+    {0xC666, 0x82C0},+    {0xC667, 0x82C2},+    {0xC668, 0x82C3},+    {0xC669, 0x82C5},+    {0xC66A, 0x82C6},+    {0xC66B, 0x82C9},+    {0xC66C, 0x82D0},+    {0xC66D, 0x82D6},+    {0xC66E, 0x82D9},+    {0xC66F, 0x82DA},+    {0xC670, 0x82DD},+    {0xC671, 0x82E2},+    {0xC672, 0x82E7},+    {0xC673, 0x82E8},+    {0xC674, 0x82E9},+    {0xC675, 0x82EA},+    {0xC676, 0x82EC},+    {0xC677, 0x82ED},+    {0xC678, 0x82EE},+    {0xC679, 0x82F0},+    {0xC67A, 0x82F2},+    {0xC67B, 0x82F3},+    {0xC67C, 0x82F5},+    {0xC67D, 0x82F6},+    {0xC67E, 0x82F8},+    {0xC680, 0x82FA},+    {0xC681, 0x82FC},+    {0xC682, 0x82FD},+    {0xC683, 0x82FE},+    {0xC684, 0x82FF},+    {0xC685, 0x8300},+    {0xC686, 0x830A},+    {0xC687, 0x830B},+    {0xC688, 0x830D},+    {0xC689, 0x8310},+    {0xC68A, 0x8312},+    {0xC68B, 0x8313},+    {0xC68C, 0x8316},+    {0xC68D, 0x8318},+    {0xC68E, 0x8319},+    {0xC68F, 0x831D},+    {0xC690, 0x831E},+    {0xC691, 0x831F},+    {0xC692, 0x8320},+    {0xC693, 0x8321},+    {0xC694, 0x8322},+    {0xC695, 0x8323},+    {0xC696, 0x8324},+    {0xC697, 0x8325},+    {0xC698, 0x8326},+    {0xC699, 0x8329},+    {0xC69A, 0x832A},+    {0xC69B, 0x832E},+    {0xC69C, 0x8330},+    {0xC69D, 0x8332},+    {0xC69E, 0x8337},+    {0xC69F, 0x833B},+    {0xC6A0, 0x833D},+    {0xC6A1, 0x5564},+    {0xC6A2, 0x813E},+    {0xC6A3, 0x75B2},+    {0xC6A4, 0x76AE},+    {0xC6A5, 0x5339},+    {0xC6A6, 0x75DE},+    {0xC6A7, 0x50FB},+    {0xC6A8, 0x5C41},+    {0xC6A9, 0x8B6C},+    {0xC6AA, 0x7BC7},+    {0xC6AB, 0x504F},+    {0xC6AC, 0x7247},+    {0xC6AD, 0x9A97},+    {0xC6AE, 0x98D8},+    {0xC6AF, 0x6F02},+    {0xC6B0, 0x74E2},+    {0xC6B1, 0x7968},+    {0xC6B2, 0x6487},+    {0xC6B3, 0x77A5},+    {0xC6B4, 0x62FC},+    {0xC6B5, 0x9891},+    {0xC6B6, 0x8D2B},+    {0xC6B7, 0x54C1},+    {0xC6B8, 0x8058},+    {0xC6B9, 0x4E52},+    {0xC6BA, 0x576A},+    {0xC6BB, 0x82F9},+    {0xC6BC, 0x840D},+    {0xC6BD, 0x5E73},+    {0xC6BE, 0x51ED},+    {0xC6BF, 0x74F6},+    {0xC6C0, 0x8BC4},+    {0xC6C1, 0x5C4F},+    {0xC6C2, 0x5761},+    {0xC6C3, 0x6CFC},+    {0xC6C4, 0x9887},+    {0xC6C5, 0x5A46},+    {0xC6C6, 0x7834},+    {0xC6C7, 0x9B44},+    {0xC6C8, 0x8FEB},+    {0xC6C9, 0x7C95},+    {0xC6CA, 0x5256},+    {0xC6CB, 0x6251},+    {0xC6CC, 0x94FA},+    {0xC6CD, 0x4EC6},+    {0xC6CE, 0x8386},+    {0xC6CF, 0x8461},+    {0xC6D0, 0x83E9},+    {0xC6D1, 0x84B2},+    {0xC6D2, 0x57D4},+    {0xC6D3, 0x6734},+    {0xC6D4, 0x5703},+    {0xC6D5, 0x666E},+    {0xC6D6, 0x6D66},+    {0xC6D7, 0x8C31},+    {0xC6D8, 0x66DD},+    {0xC6D9, 0x7011},+    {0xC6DA, 0x671F},+    {0xC6DB, 0x6B3A},+    {0xC6DC, 0x6816},+    {0xC6DD, 0x621A},+    {0xC6DE, 0x59BB},+    {0xC6DF, 0x4E03},+    {0xC6E0, 0x51C4},+    {0xC6E1, 0x6F06},+    {0xC6E2, 0x67D2},+    {0xC6E3, 0x6C8F},+    {0xC6E4, 0x5176},+    {0xC6E5, 0x68CB},+    {0xC6E6, 0x5947},+    {0xC6E7, 0x6B67},+    {0xC6E8, 0x7566},+    {0xC6E9, 0x5D0E},+    {0xC6EA, 0x8110},+    {0xC6EB, 0x9F50},+    {0xC6EC, 0x65D7},+    {0xC6ED, 0x7948},+    {0xC6EE, 0x7941},+    {0xC6EF, 0x9A91},+    {0xC6F0, 0x8D77},+    {0xC6F1, 0x5C82},+    {0xC6F2, 0x4E5E},+    {0xC6F3, 0x4F01},+    {0xC6F4, 0x542F},+    {0xC6F5, 0x5951},+    {0xC6F6, 0x780C},+    {0xC6F7, 0x5668},+    {0xC6F8, 0x6C14},+    {0xC6F9, 0x8FC4},+    {0xC6FA, 0x5F03},+    {0xC6FB, 0x6C7D},+    {0xC6FC, 0x6CE3},+    {0xC6FD, 0x8BAB},+    {0xC6FE, 0x6390},+    {0xC740, 0x833E},+    {0xC741, 0x833F},+    {0xC742, 0x8341},+    {0xC743, 0x8342},+    {0xC744, 0x8344},+    {0xC745, 0x8345},+    {0xC746, 0x8348},+    {0xC747, 0x834A},+    {0xC748, 0x834B},+    {0xC749, 0x834C},+    {0xC74A, 0x834D},+    {0xC74B, 0x834E},+    {0xC74C, 0x8353},+    {0xC74D, 0x8355},+    {0xC74E, 0x8356},+    {0xC74F, 0x8357},+    {0xC750, 0x8358},+    {0xC751, 0x8359},+    {0xC752, 0x835D},+    {0xC753, 0x8362},+    {0xC754, 0x8370},+    {0xC755, 0x8371},+    {0xC756, 0x8372},+    {0xC757, 0x8373},+    {0xC758, 0x8374},+    {0xC759, 0x8375},+    {0xC75A, 0x8376},+    {0xC75B, 0x8379},+    {0xC75C, 0x837A},+    {0xC75D, 0x837E},+    {0xC75E, 0x837F},+    {0xC75F, 0x8380},+    {0xC760, 0x8381},+    {0xC761, 0x8382},+    {0xC762, 0x8383},+    {0xC763, 0x8384},+    {0xC764, 0x8387},+    {0xC765, 0x8388},+    {0xC766, 0x838A},+    {0xC767, 0x838B},+    {0xC768, 0x838C},+    {0xC769, 0x838D},+    {0xC76A, 0x838F},+    {0xC76B, 0x8390},+    {0xC76C, 0x8391},+    {0xC76D, 0x8394},+    {0xC76E, 0x8395},+    {0xC76F, 0x8396},+    {0xC770, 0x8397},+    {0xC771, 0x8399},+    {0xC772, 0x839A},+    {0xC773, 0x839D},+    {0xC774, 0x839F},+    {0xC775, 0x83A1},+    {0xC776, 0x83A2},+    {0xC777, 0x83A3},+    {0xC778, 0x83A4},+    {0xC779, 0x83A5},+    {0xC77A, 0x83A6},+    {0xC77B, 0x83A7},+    {0xC77C, 0x83AC},+    {0xC77D, 0x83AD},+    {0xC77E, 0x83AE},+    {0xC780, 0x83AF},+    {0xC781, 0x83B5},+    {0xC782, 0x83BB},+    {0xC783, 0x83BE},+    {0xC784, 0x83BF},+    {0xC785, 0x83C2},+    {0xC786, 0x83C3},+    {0xC787, 0x83C4},+    {0xC788, 0x83C6},+    {0xC789, 0x83C8},+    {0xC78A, 0x83C9},+    {0xC78B, 0x83CB},+    {0xC78C, 0x83CD},+    {0xC78D, 0x83CE},+    {0xC78E, 0x83D0},+    {0xC78F, 0x83D1},+    {0xC790, 0x83D2},+    {0xC791, 0x83D3},+    {0xC792, 0x83D5},+    {0xC793, 0x83D7},+    {0xC794, 0x83D9},+    {0xC795, 0x83DA},+    {0xC796, 0x83DB},+    {0xC797, 0x83DE},+    {0xC798, 0x83E2},+    {0xC799, 0x83E3},+    {0xC79A, 0x83E4},+    {0xC79B, 0x83E6},+    {0xC79C, 0x83E7},+    {0xC79D, 0x83E8},+    {0xC79E, 0x83EB},+    {0xC79F, 0x83EC},+    {0xC7A0, 0x83ED},+    {0xC7A1, 0x6070},+    {0xC7A2, 0x6D3D},+    {0xC7A3, 0x7275},+    {0xC7A4, 0x6266},+    {0xC7A5, 0x948E},+    {0xC7A6, 0x94C5},+    {0xC7A7, 0x5343},+    {0xC7A8, 0x8FC1},+    {0xC7A9, 0x7B7E},+    {0xC7AA, 0x4EDF},+    {0xC7AB, 0x8C26},+    {0xC7AC, 0x4E7E},+    {0xC7AD, 0x9ED4},+    {0xC7AE, 0x94B1},+    {0xC7AF, 0x94B3},+    {0xC7B0, 0x524D},+    {0xC7B1, 0x6F5C},+    {0xC7B2, 0x9063},+    {0xC7B3, 0x6D45},+    {0xC7B4, 0x8C34},+    {0xC7B5, 0x5811},+    {0xC7B6, 0x5D4C},+    {0xC7B7, 0x6B20},+    {0xC7B8, 0x6B49},+    {0xC7B9, 0x67AA},+    {0xC7BA, 0x545B},+    {0xC7BB, 0x8154},+    {0xC7BC, 0x7F8C},+    {0xC7BD, 0x5899},+    {0xC7BE, 0x8537},+    {0xC7BF, 0x5F3A},+    {0xC7C0, 0x62A2},+    {0xC7C1, 0x6A47},+    {0xC7C2, 0x9539},+    {0xC7C3, 0x6572},+    {0xC7C4, 0x6084},+    {0xC7C5, 0x6865},+    {0xC7C6, 0x77A7},+    {0xC7C7, 0x4E54},+    {0xC7C8, 0x4FA8},+    {0xC7C9, 0x5DE7},+    {0xC7CA, 0x9798},+    {0xC7CB, 0x64AC},+    {0xC7CC, 0x7FD8},+    {0xC7CD, 0x5CED},+    {0xC7CE, 0x4FCF},+    {0xC7CF, 0x7A8D},+    {0xC7D0, 0x5207},+    {0xC7D1, 0x8304},+    {0xC7D2, 0x4E14},+    {0xC7D3, 0x602F},+    {0xC7D4, 0x7A83},+    {0xC7D5, 0x94A6},+    {0xC7D6, 0x4FB5},+    {0xC7D7, 0x4EB2},+    {0xC7D8, 0x79E6},+    {0xC7D9, 0x7434},+    {0xC7DA, 0x52E4},+    {0xC7DB, 0x82B9},+    {0xC7DC, 0x64D2},+    {0xC7DD, 0x79BD},+    {0xC7DE, 0x5BDD},+    {0xC7DF, 0x6C81},+    {0xC7E0, 0x9752},+    {0xC7E1, 0x8F7B},+    {0xC7E2, 0x6C22},+    {0xC7E3, 0x503E},+    {0xC7E4, 0x537F},+    {0xC7E5, 0x6E05},+    {0xC7E6, 0x64CE},+    {0xC7E7, 0x6674},+    {0xC7E8, 0x6C30},+    {0xC7E9, 0x60C5},+    {0xC7EA, 0x9877},+    {0xC7EB, 0x8BF7},+    {0xC7EC, 0x5E86},+    {0xC7ED, 0x743C},+    {0xC7EE, 0x7A77},+    {0xC7EF, 0x79CB},+    {0xC7F0, 0x4E18},+    {0xC7F1, 0x90B1},+    {0xC7F2, 0x7403},+    {0xC7F3, 0x6C42},+    {0xC7F4, 0x56DA},+    {0xC7F5, 0x914B},+    {0xC7F6, 0x6CC5},+    {0xC7F7, 0x8D8B},+    {0xC7F8, 0x533A},+    {0xC7F9, 0x86C6},+    {0xC7FA, 0x66F2},+    {0xC7FB, 0x8EAF},+    {0xC7FC, 0x5C48},+    {0xC7FD, 0x9A71},+    {0xC7FE, 0x6E20},+    {0xC840, 0x83EE},+    {0xC841, 0x83EF},+    {0xC842, 0x83F3},+    {0xC843, 0x83F4},+    {0xC844, 0x83F5},+    {0xC845, 0x83F6},+    {0xC846, 0x83F7},+    {0xC847, 0x83FA},+    {0xC848, 0x83FB},+    {0xC849, 0x83FC},+    {0xC84A, 0x83FE},+    {0xC84B, 0x83FF},+    {0xC84C, 0x8400},+    {0xC84D, 0x8402},+    {0xC84E, 0x8405},+    {0xC84F, 0x8407},+    {0xC850, 0x8408},+    {0xC851, 0x8409},+    {0xC852, 0x840A},+    {0xC853, 0x8410},+    {0xC854, 0x8412},+    {0xC855, 0x8413},+    {0xC856, 0x8414},+    {0xC857, 0x8415},+    {0xC858, 0x8416},+    {0xC859, 0x8417},+    {0xC85A, 0x8419},+    {0xC85B, 0x841A},+    {0xC85C, 0x841B},+    {0xC85D, 0x841E},+    {0xC85E, 0x841F},+    {0xC85F, 0x8420},+    {0xC860, 0x8421},+    {0xC861, 0x8422},+    {0xC862, 0x8423},+    {0xC863, 0x8429},+    {0xC864, 0x842A},+    {0xC865, 0x842B},+    {0xC866, 0x842C},+    {0xC867, 0x842D},+    {0xC868, 0x842E},+    {0xC869, 0x842F},+    {0xC86A, 0x8430},+    {0xC86B, 0x8432},+    {0xC86C, 0x8433},+    {0xC86D, 0x8434},+    {0xC86E, 0x8435},+    {0xC86F, 0x8436},+    {0xC870, 0x8437},+    {0xC871, 0x8439},+    {0xC872, 0x843A},+    {0xC873, 0x843B},+    {0xC874, 0x843E},+    {0xC875, 0x843F},+    {0xC876, 0x8440},+    {0xC877, 0x8441},+    {0xC878, 0x8442},+    {0xC879, 0x8443},+    {0xC87A, 0x8444},+    {0xC87B, 0x8445},+    {0xC87C, 0x8447},+    {0xC87D, 0x8448},+    {0xC87E, 0x8449},+    {0xC880, 0x844A},+    {0xC881, 0x844B},+    {0xC882, 0x844C},+    {0xC883, 0x844D},+    {0xC884, 0x844E},+    {0xC885, 0x844F},+    {0xC886, 0x8450},+    {0xC887, 0x8452},+    {0xC888, 0x8453},+    {0xC889, 0x8454},+    {0xC88A, 0x8455},+    {0xC88B, 0x8456},+    {0xC88C, 0x8458},+    {0xC88D, 0x845D},+    {0xC88E, 0x845E},+    {0xC88F, 0x845F},+    {0xC890, 0x8460},+    {0xC891, 0x8462},+    {0xC892, 0x8464},+    {0xC893, 0x8465},+    {0xC894, 0x8466},+    {0xC895, 0x8467},+    {0xC896, 0x8468},+    {0xC897, 0x846A},+    {0xC898, 0x846E},+    {0xC899, 0x846F},+    {0xC89A, 0x8470},+    {0xC89B, 0x8472},+    {0xC89C, 0x8474},+    {0xC89D, 0x8477},+    {0xC89E, 0x8479},+    {0xC89F, 0x847B},+    {0xC8A0, 0x847C},+    {0xC8A1, 0x53D6},+    {0xC8A2, 0x5A36},+    {0xC8A3, 0x9F8B},+    {0xC8A4, 0x8DA3},+    {0xC8A5, 0x53BB},+    {0xC8A6, 0x5708},+    {0xC8A7, 0x98A7},+    {0xC8A8, 0x6743},+    {0xC8A9, 0x919B},+    {0xC8AA, 0x6CC9},+    {0xC8AB, 0x5168},+    {0xC8AC, 0x75CA},+    {0xC8AD, 0x62F3},+    {0xC8AE, 0x72AC},+    {0xC8AF, 0x5238},+    {0xC8B0, 0x529D},+    {0xC8B1, 0x7F3A},+    {0xC8B2, 0x7094},+    {0xC8B3, 0x7638},+    {0xC8B4, 0x5374},+    {0xC8B5, 0x9E4A},+    {0xC8B6, 0x69B7},+    {0xC8B7, 0x786E},+    {0xC8B8, 0x96C0},+    {0xC8B9, 0x88D9},+    {0xC8BA, 0x7FA4},+    {0xC8BB, 0x7136},+    {0xC8BC, 0x71C3},+    {0xC8BD, 0x5189},+    {0xC8BE, 0x67D3},+    {0xC8BF, 0x74E4},+    {0xC8C0, 0x58E4},+    {0xC8C1, 0x6518},+    {0xC8C2, 0x56B7},+    {0xC8C3, 0x8BA9},+    {0xC8C4, 0x9976},+    {0xC8C5, 0x6270},+    {0xC8C6, 0x7ED5},+    {0xC8C7, 0x60F9},+    {0xC8C8, 0x70ED},+    {0xC8C9, 0x58EC},+    {0xC8CA, 0x4EC1},+    {0xC8CB, 0x4EBA},+    {0xC8CC, 0x5FCD},+    {0xC8CD, 0x97E7},+    {0xC8CE, 0x4EFB},+    {0xC8CF, 0x8BA4},+    {0xC8D0, 0x5203},+    {0xC8D1, 0x598A},+    {0xC8D2, 0x7EAB},+    {0xC8D3, 0x6254},+    {0xC8D4, 0x4ECD},+    {0xC8D5, 0x65E5},+    {0xC8D6, 0x620E},+    {0xC8D7, 0x8338},+    {0xC8D8, 0x84C9},+    {0xC8D9, 0x8363},+    {0xC8DA, 0x878D},+    {0xC8DB, 0x7194},+    {0xC8DC, 0x6EB6},+    {0xC8DD, 0x5BB9},+    {0xC8DE, 0x7ED2},+    {0xC8DF, 0x5197},+    {0xC8E0, 0x63C9},+    {0xC8E1, 0x67D4},+    {0xC8E2, 0x8089},+    {0xC8E3, 0x8339},+    {0xC8E4, 0x8815},+    {0xC8E5, 0x5112},+    {0xC8E6, 0x5B7A},+    {0xC8E7, 0x5982},+    {0xC8E8, 0x8FB1},+    {0xC8E9, 0x4E73},+    {0xC8EA, 0x6C5D},+    {0xC8EB, 0x5165},+    {0xC8EC, 0x8925},+    {0xC8ED, 0x8F6F},+    {0xC8EE, 0x962E},+    {0xC8EF, 0x854A},+    {0xC8F0, 0x745E},+    {0xC8F1, 0x9510},+    {0xC8F2, 0x95F0},+    {0xC8F3, 0x6DA6},+    {0xC8F4, 0x82E5},+    {0xC8F5, 0x5F31},+    {0xC8F6, 0x6492},+    {0xC8F7, 0x6D12},+    {0xC8F8, 0x8428},+    {0xC8F9, 0x816E},+    {0xC8FA, 0x9CC3},+    {0xC8FB, 0x585E},+    {0xC8FC, 0x8D5B},+    {0xC8FD, 0x4E09},+    {0xC8FE, 0x53C1},+    {0xC940, 0x847D},+    {0xC941, 0x847E},+    {0xC942, 0x847F},+    {0xC943, 0x8480},+    {0xC944, 0x8481},+    {0xC945, 0x8483},+    {0xC946, 0x8484},+    {0xC947, 0x8485},+    {0xC948, 0x8486},+    {0xC949, 0x848A},+    {0xC94A, 0x848D},+    {0xC94B, 0x848F},+    {0xC94C, 0x8490},+    {0xC94D, 0x8491},+    {0xC94E, 0x8492},+    {0xC94F, 0x8493},+    {0xC950, 0x8494},+    {0xC951, 0x8495},+    {0xC952, 0x8496},+    {0xC953, 0x8498},+    {0xC954, 0x849A},+    {0xC955, 0x849B},+    {0xC956, 0x849D},+    {0xC957, 0x849E},+    {0xC958, 0x849F},+    {0xC959, 0x84A0},+    {0xC95A, 0x84A2},+    {0xC95B, 0x84A3},+    {0xC95C, 0x84A4},+    {0xC95D, 0x84A5},+    {0xC95E, 0x84A6},+    {0xC95F, 0x84A7},+    {0xC960, 0x84A8},+    {0xC961, 0x84A9},+    {0xC962, 0x84AA},+    {0xC963, 0x84AB},+    {0xC964, 0x84AC},+    {0xC965, 0x84AD},+    {0xC966, 0x84AE},+    {0xC967, 0x84B0},+    {0xC968, 0x84B1},+    {0xC969, 0x84B3},+    {0xC96A, 0x84B5},+    {0xC96B, 0x84B6},+    {0xC96C, 0x84B7},+    {0xC96D, 0x84BB},+    {0xC96E, 0x84BC},+    {0xC96F, 0x84BE},+    {0xC970, 0x84C0},+    {0xC971, 0x84C2},+    {0xC972, 0x84C3},+    {0xC973, 0x84C5},+    {0xC974, 0x84C6},+    {0xC975, 0x84C7},+    {0xC976, 0x84C8},+    {0xC977, 0x84CB},+    {0xC978, 0x84CC},+    {0xC979, 0x84CE},+    {0xC97A, 0x84CF},+    {0xC97B, 0x84D2},+    {0xC97C, 0x84D4},+    {0xC97D, 0x84D5},+    {0xC97E, 0x84D7},+    {0xC980, 0x84D8},+    {0xC981, 0x84D9},+    {0xC982, 0x84DA},+    {0xC983, 0x84DB},+    {0xC984, 0x84DC},+    {0xC985, 0x84DE},+    {0xC986, 0x84E1},+    {0xC987, 0x84E2},+    {0xC988, 0x84E4},+    {0xC989, 0x84E7},+    {0xC98A, 0x84E8},+    {0xC98B, 0x84E9},+    {0xC98C, 0x84EA},+    {0xC98D, 0x84EB},+    {0xC98E, 0x84ED},+    {0xC98F, 0x84EE},+    {0xC990, 0x84EF},+    {0xC991, 0x84F1},+    {0xC992, 0x84F2},+    {0xC993, 0x84F3},+    {0xC994, 0x84F4},+    {0xC995, 0x84F5},+    {0xC996, 0x84F6},+    {0xC997, 0x84F7},+    {0xC998, 0x84F8},+    {0xC999, 0x84F9},+    {0xC99A, 0x84FA},+    {0xC99B, 0x84FB},+    {0xC99C, 0x84FD},+    {0xC99D, 0x84FE},+    {0xC99E, 0x8500},+    {0xC99F, 0x8501},+    {0xC9A0, 0x8502},+    {0xC9A1, 0x4F1E},+    {0xC9A2, 0x6563},+    {0xC9A3, 0x6851},+    {0xC9A4, 0x55D3},+    {0xC9A5, 0x4E27},+    {0xC9A6, 0x6414},+    {0xC9A7, 0x9A9A},+    {0xC9A8, 0x626B},+    {0xC9A9, 0x5AC2},+    {0xC9AA, 0x745F},+    {0xC9AB, 0x8272},+    {0xC9AC, 0x6DA9},+    {0xC9AD, 0x68EE},+    {0xC9AE, 0x50E7},+    {0xC9AF, 0x838E},+    {0xC9B0, 0x7802},+    {0xC9B1, 0x6740},+    {0xC9B2, 0x5239},+    {0xC9B3, 0x6C99},+    {0xC9B4, 0x7EB1},+    {0xC9B5, 0x50BB},+    {0xC9B6, 0x5565},+    {0xC9B7, 0x715E},+    {0xC9B8, 0x7B5B},+    {0xC9B9, 0x6652},+    {0xC9BA, 0x73CA},+    {0xC9BB, 0x82EB},+    {0xC9BC, 0x6749},+    {0xC9BD, 0x5C71},+    {0xC9BE, 0x5220},+    {0xC9BF, 0x717D},+    {0xC9C0, 0x886B},+    {0xC9C1, 0x95EA},+    {0xC9C2, 0x9655},+    {0xC9C3, 0x64C5},+    {0xC9C4, 0x8D61},+    {0xC9C5, 0x81B3},+    {0xC9C6, 0x5584},+    {0xC9C7, 0x6C55},+    {0xC9C8, 0x6247},+    {0xC9C9, 0x7F2E},+    {0xC9CA, 0x5892},+    {0xC9CB, 0x4F24},+    {0xC9CC, 0x5546},+    {0xC9CD, 0x8D4F},+    {0xC9CE, 0x664C},+    {0xC9CF, 0x4E0A},+    {0xC9D0, 0x5C1A},+    {0xC9D1, 0x88F3},+    {0xC9D2, 0x68A2},+    {0xC9D3, 0x634E},+    {0xC9D4, 0x7A0D},+    {0xC9D5, 0x70E7},+    {0xC9D6, 0x828D},+    {0xC9D7, 0x52FA},+    {0xC9D8, 0x97F6},+    {0xC9D9, 0x5C11},+    {0xC9DA, 0x54E8},+    {0xC9DB, 0x90B5},+    {0xC9DC, 0x7ECD},+    {0xC9DD, 0x5962},+    {0xC9DE, 0x8D4A},+    {0xC9DF, 0x86C7},+    {0xC9E0, 0x820C},+    {0xC9E1, 0x820D},+    {0xC9E2, 0x8D66},+    {0xC9E3, 0x6444},+    {0xC9E4, 0x5C04},+    {0xC9E5, 0x6151},+    {0xC9E6, 0x6D89},+    {0xC9E7, 0x793E},+    {0xC9E8, 0x8BBE},+    {0xC9E9, 0x7837},+    {0xC9EA, 0x7533},+    {0xC9EB, 0x547B},+    {0xC9EC, 0x4F38},+    {0xC9ED, 0x8EAB},+    {0xC9EE, 0x6DF1},+    {0xC9EF, 0x5A20},+    {0xC9F0, 0x7EC5},+    {0xC9F1, 0x795E},+    {0xC9F2, 0x6C88},+    {0xC9F3, 0x5BA1},+    {0xC9F4, 0x5A76},+    {0xC9F5, 0x751A},+    {0xC9F6, 0x80BE},+    {0xC9F7, 0x614E},+    {0xC9F8, 0x6E17},+    {0xC9F9, 0x58F0},+    {0xC9FA, 0x751F},+    {0xC9FB, 0x7525},+    {0xC9FC, 0x7272},+    {0xC9FD, 0x5347},+    {0xC9FE, 0x7EF3},+    {0xCA40, 0x8503},+    {0xCA41, 0x8504},+    {0xCA42, 0x8505},+    {0xCA43, 0x8506},+    {0xCA44, 0x8507},+    {0xCA45, 0x8508},+    {0xCA46, 0x8509},+    {0xCA47, 0x850A},+    {0xCA48, 0x850B},+    {0xCA49, 0x850D},+    {0xCA4A, 0x850E},+    {0xCA4B, 0x850F},+    {0xCA4C, 0x8510},+    {0xCA4D, 0x8512},+    {0xCA4E, 0x8514},+    {0xCA4F, 0x8515},+    {0xCA50, 0x8516},+    {0xCA51, 0x8518},+    {0xCA52, 0x8519},+    {0xCA53, 0x851B},+    {0xCA54, 0x851C},+    {0xCA55, 0x851D},+    {0xCA56, 0x851E},+    {0xCA57, 0x8520},+    {0xCA58, 0x8522},+    {0xCA59, 0x8523},+    {0xCA5A, 0x8524},+    {0xCA5B, 0x8525},+    {0xCA5C, 0x8526},+    {0xCA5D, 0x8527},+    {0xCA5E, 0x8528},+    {0xCA5F, 0x8529},+    {0xCA60, 0x852A},+    {0xCA61, 0x852D},+    {0xCA62, 0x852E},+    {0xCA63, 0x852F},+    {0xCA64, 0x8530},+    {0xCA65, 0x8531},+    {0xCA66, 0x8532},+    {0xCA67, 0x8533},+    {0xCA68, 0x8534},+    {0xCA69, 0x8535},+    {0xCA6A, 0x8536},+    {0xCA6B, 0x853E},+    {0xCA6C, 0x853F},+    {0xCA6D, 0x8540},+    {0xCA6E, 0x8541},+    {0xCA6F, 0x8542},+    {0xCA70, 0x8544},+    {0xCA71, 0x8545},+    {0xCA72, 0x8546},+    {0xCA73, 0x8547},+    {0xCA74, 0x854B},+    {0xCA75, 0x854C},+    {0xCA76, 0x854D},+    {0xCA77, 0x854E},+    {0xCA78, 0x854F},+    {0xCA79, 0x8550},+    {0xCA7A, 0x8551},+    {0xCA7B, 0x8552},+    {0xCA7C, 0x8553},+    {0xCA7D, 0x8554},+    {0xCA7E, 0x8555},+    {0xCA80, 0x8557},+    {0xCA81, 0x8558},+    {0xCA82, 0x855A},+    {0xCA83, 0x855B},+    {0xCA84, 0x855C},+    {0xCA85, 0x855D},+    {0xCA86, 0x855F},+    {0xCA87, 0x8560},+    {0xCA88, 0x8561},+    {0xCA89, 0x8562},+    {0xCA8A, 0x8563},+    {0xCA8B, 0x8565},+    {0xCA8C, 0x8566},+    {0xCA8D, 0x8567},+    {0xCA8E, 0x8569},+    {0xCA8F, 0x856A},+    {0xCA90, 0x856B},+    {0xCA91, 0x856C},+    {0xCA92, 0x856D},+    {0xCA93, 0x856E},+    {0xCA94, 0x856F},+    {0xCA95, 0x8570},+    {0xCA96, 0x8571},+    {0xCA97, 0x8573},+    {0xCA98, 0x8575},+    {0xCA99, 0x8576},+    {0xCA9A, 0x8577},+    {0xCA9B, 0x8578},+    {0xCA9C, 0x857C},+    {0xCA9D, 0x857D},+    {0xCA9E, 0x857F},+    {0xCA9F, 0x8580},+    {0xCAA0, 0x8581},+    {0xCAA1, 0x7701},+    {0xCAA2, 0x76DB},+    {0xCAA3, 0x5269},+    {0xCAA4, 0x80DC},+    {0xCAA5, 0x5723},+    {0xCAA6, 0x5E08},+    {0xCAA7, 0x5931},+    {0xCAA8, 0x72EE},+    {0xCAA9, 0x65BD},+    {0xCAAA, 0x6E7F},+    {0xCAAB, 0x8BD7},+    {0xCAAC, 0x5C38},+    {0xCAAD, 0x8671},+    {0xCAAE, 0x5341},+    {0xCAAF, 0x77F3},+    {0xCAB0, 0x62FE},+    {0xCAB1, 0x65F6},+    {0xCAB2, 0x4EC0},+    {0xCAB3, 0x98DF},+    {0xCAB4, 0x8680},+    {0xCAB5, 0x5B9E},+    {0xCAB6, 0x8BC6},+    {0xCAB7, 0x53F2},+    {0xCAB8, 0x77E2},+    {0xCAB9, 0x4F7F},+    {0xCABA, 0x5C4E},+    {0xCABB, 0x9A76},+    {0xCABC, 0x59CB},+    {0xCABD, 0x5F0F},+    {0xCABE, 0x793A},+    {0xCABF, 0x58EB},+    {0xCAC0, 0x4E16},+    {0xCAC1, 0x67FF},+    {0xCAC2, 0x4E8B},+    {0xCAC3, 0x62ED},+    {0xCAC4, 0x8A93},+    {0xCAC5, 0x901D},+    {0xCAC6, 0x52BF},+    {0xCAC7, 0x662F},+    {0xCAC8, 0x55DC},+    {0xCAC9, 0x566C},+    {0xCACA, 0x9002},+    {0xCACB, 0x4ED5},+    {0xCACC, 0x4F8D},+    {0xCACD, 0x91CA},+    {0xCACE, 0x9970},+    {0xCACF, 0x6C0F},+    {0xCAD0, 0x5E02},+    {0xCAD1, 0x6043},+    {0xCAD2, 0x5BA4},+    {0xCAD3, 0x89C6},+    {0xCAD4, 0x8BD5},+    {0xCAD5, 0x6536},+    {0xCAD6, 0x624B},+    {0xCAD7, 0x9996},+    {0xCAD8, 0x5B88},+    {0xCAD9, 0x5BFF},+    {0xCADA, 0x6388},+    {0xCADB, 0x552E},+    {0xCADC, 0x53D7},+    {0xCADD, 0x7626},+    {0xCADE, 0x517D},+    {0xCADF, 0x852C},+    {0xCAE0, 0x67A2},+    {0xCAE1, 0x68B3},+    {0xCAE2, 0x6B8A},+    {0xCAE3, 0x6292},+    {0xCAE4, 0x8F93},+    {0xCAE5, 0x53D4},+    {0xCAE6, 0x8212},+    {0xCAE7, 0x6DD1},+    {0xCAE8, 0x758F},+    {0xCAE9, 0x4E66},+    {0xCAEA, 0x8D4E},+    {0xCAEB, 0x5B70},+    {0xCAEC, 0x719F},+    {0xCAED, 0x85AF},+    {0xCAEE, 0x6691},+    {0xCAEF, 0x66D9},+    {0xCAF0, 0x7F72},+    {0xCAF1, 0x8700},+    {0xCAF2, 0x9ECD},+    {0xCAF3, 0x9F20},+    {0xCAF4, 0x5C5E},+    {0xCAF5, 0x672F},+    {0xCAF6, 0x8FF0},+    {0xCAF7, 0x6811},+    {0xCAF8, 0x675F},+    {0xCAF9, 0x620D},+    {0xCAFA, 0x7AD6},+    {0xCAFB, 0x5885},+    {0xCAFC, 0x5EB6},+    {0xCAFD, 0x6570},+    {0xCAFE, 0x6F31},+    {0xCB40, 0x8582},+    {0xCB41, 0x8583},+    {0xCB42, 0x8586},+    {0xCB43, 0x8588},+    {0xCB44, 0x8589},+    {0xCB45, 0x858A},+    {0xCB46, 0x858B},+    {0xCB47, 0x858C},+    {0xCB48, 0x858D},+    {0xCB49, 0x858E},+    {0xCB4A, 0x8590},+    {0xCB4B, 0x8591},+    {0xCB4C, 0x8592},+    {0xCB4D, 0x8593},+    {0xCB4E, 0x8594},+    {0xCB4F, 0x8595},+    {0xCB50, 0x8596},+    {0xCB51, 0x8597},+    {0xCB52, 0x8598},+    {0xCB53, 0x8599},+    {0xCB54, 0x859A},+    {0xCB55, 0x859D},+    {0xCB56, 0x859E},+    {0xCB57, 0x859F},+    {0xCB58, 0x85A0},+    {0xCB59, 0x85A1},+    {0xCB5A, 0x85A2},+    {0xCB5B, 0x85A3},+    {0xCB5C, 0x85A5},+    {0xCB5D, 0x85A6},+    {0xCB5E, 0x85A7},+    {0xCB5F, 0x85A9},+    {0xCB60, 0x85AB},+    {0xCB61, 0x85AC},+    {0xCB62, 0x85AD},+    {0xCB63, 0x85B1},+    {0xCB64, 0x85B2},+    {0xCB65, 0x85B3},+    {0xCB66, 0x85B4},+    {0xCB67, 0x85B5},+    {0xCB68, 0x85B6},+    {0xCB69, 0x85B8},+    {0xCB6A, 0x85BA},+    {0xCB6B, 0x85BB},+    {0xCB6C, 0x85BC},+    {0xCB6D, 0x85BD},+    {0xCB6E, 0x85BE},+    {0xCB6F, 0x85BF},+    {0xCB70, 0x85C0},+    {0xCB71, 0x85C2},+    {0xCB72, 0x85C3},+    {0xCB73, 0x85C4},+    {0xCB74, 0x85C5},+    {0xCB75, 0x85C6},+    {0xCB76, 0x85C7},+    {0xCB77, 0x85C8},+    {0xCB78, 0x85CA},+    {0xCB79, 0x85CB},+    {0xCB7A, 0x85CC},+    {0xCB7B, 0x85CD},+    {0xCB7C, 0x85CE},+    {0xCB7D, 0x85D1},+    {0xCB7E, 0x85D2},+    {0xCB80, 0x85D4},+    {0xCB81, 0x85D6},+    {0xCB82, 0x85D7},+    {0xCB83, 0x85D8},+    {0xCB84, 0x85D9},+    {0xCB85, 0x85DA},+    {0xCB86, 0x85DB},+    {0xCB87, 0x85DD},+    {0xCB88, 0x85DE},+    {0xCB89, 0x85DF},+    {0xCB8A, 0x85E0},+    {0xCB8B, 0x85E1},+    {0xCB8C, 0x85E2},+    {0xCB8D, 0x85E3},+    {0xCB8E, 0x85E5},+    {0xCB8F, 0x85E6},+    {0xCB90, 0x85E7},+    {0xCB91, 0x85E8},+    {0xCB92, 0x85EA},+    {0xCB93, 0x85EB},+    {0xCB94, 0x85EC},+    {0xCB95, 0x85ED},+    {0xCB96, 0x85EE},+    {0xCB97, 0x85EF},+    {0xCB98, 0x85F0},+    {0xCB99, 0x85F1},+    {0xCB9A, 0x85F2},+    {0xCB9B, 0x85F3},+    {0xCB9C, 0x85F4},+    {0xCB9D, 0x85F5},+    {0xCB9E, 0x85F6},+    {0xCB9F, 0x85F7},+    {0xCBA0, 0x85F8},+    {0xCBA1, 0x6055},+    {0xCBA2, 0x5237},+    {0xCBA3, 0x800D},+    {0xCBA4, 0x6454},+    {0xCBA5, 0x8870},+    {0xCBA6, 0x7529},+    {0xCBA7, 0x5E05},+    {0xCBA8, 0x6813},+    {0xCBA9, 0x62F4},+    {0xCBAA, 0x971C},+    {0xCBAB, 0x53CC},+    {0xCBAC, 0x723D},+    {0xCBAD, 0x8C01},+    {0xCBAE, 0x6C34},+    {0xCBAF, 0x7761},+    {0xCBB0, 0x7A0E},+    {0xCBB1, 0x542E},+    {0xCBB2, 0x77AC},+    {0xCBB3, 0x987A},+    {0xCBB4, 0x821C},+    {0xCBB5, 0x8BF4},+    {0xCBB6, 0x7855},+    {0xCBB7, 0x6714},+    {0xCBB8, 0x70C1},+    {0xCBB9, 0x65AF},+    {0xCBBA, 0x6495},+    {0xCBBB, 0x5636},+    {0xCBBC, 0x601D},+    {0xCBBD, 0x79C1},+    {0xCBBE, 0x53F8},+    {0xCBBF, 0x4E1D},+    {0xCBC0, 0x6B7B},+    {0xCBC1, 0x8086},+    {0xCBC2, 0x5BFA},+    {0xCBC3, 0x55E3},+    {0xCBC4, 0x56DB},+    {0xCBC5, 0x4F3A},+    {0xCBC6, 0x4F3C},+    {0xCBC7, 0x9972},+    {0xCBC8, 0x5DF3},+    {0xCBC9, 0x677E},+    {0xCBCA, 0x8038},+    {0xCBCB, 0x6002},+    {0xCBCC, 0x9882},+    {0xCBCD, 0x9001},+    {0xCBCE, 0x5B8B},+    {0xCBCF, 0x8BBC},+    {0xCBD0, 0x8BF5},+    {0xCBD1, 0x641C},+    {0xCBD2, 0x8258},+    {0xCBD3, 0x64DE},+    {0xCBD4, 0x55FD},+    {0xCBD5, 0x82CF},+    {0xCBD6, 0x9165},+    {0xCBD7, 0x4FD7},+    {0xCBD8, 0x7D20},+    {0xCBD9, 0x901F},+    {0xCBDA, 0x7C9F},+    {0xCBDB, 0x50F3},+    {0xCBDC, 0x5851},+    {0xCBDD, 0x6EAF},+    {0xCBDE, 0x5BBF},+    {0xCBDF, 0x8BC9},+    {0xCBE0, 0x8083},+    {0xCBE1, 0x9178},+    {0xCBE2, 0x849C},+    {0xCBE3, 0x7B97},+    {0xCBE4, 0x867D},+    {0xCBE5, 0x968B},+    {0xCBE6, 0x968F},+    {0xCBE7, 0x7EE5},+    {0xCBE8, 0x9AD3},+    {0xCBE9, 0x788E},+    {0xCBEA, 0x5C81},+    {0xCBEB, 0x7A57},+    {0xCBEC, 0x9042},+    {0xCBED, 0x96A7},+    {0xCBEE, 0x795F},+    {0xCBEF, 0x5B59},+    {0xCBF0, 0x635F},+    {0xCBF1, 0x7B0B},+    {0xCBF2, 0x84D1},+    {0xCBF3, 0x68AD},+    {0xCBF4, 0x5506},+    {0xCBF5, 0x7F29},+    {0xCBF6, 0x7410},+    {0xCBF7, 0x7D22},+    {0xCBF8, 0x9501},+    {0xCBF9, 0x6240},+    {0xCBFA, 0x584C},+    {0xCBFB, 0x4ED6},+    {0xCBFC, 0x5B83},+    {0xCBFD, 0x5979},+    {0xCBFE, 0x5854},+    {0xCC40, 0x85F9},+    {0xCC41, 0x85FA},+    {0xCC42, 0x85FC},+    {0xCC43, 0x85FD},+    {0xCC44, 0x85FE},+    {0xCC45, 0x8600},+    {0xCC46, 0x8601},+    {0xCC47, 0x8602},+    {0xCC48, 0x8603},+    {0xCC49, 0x8604},+    {0xCC4A, 0x8606},+    {0xCC4B, 0x8607},+    {0xCC4C, 0x8608},+    {0xCC4D, 0x8609},+    {0xCC4E, 0x860A},+    {0xCC4F, 0x860B},+    {0xCC50, 0x860C},+    {0xCC51, 0x860D},+    {0xCC52, 0x860E},+    {0xCC53, 0x860F},+    {0xCC54, 0x8610},+    {0xCC55, 0x8612},+    {0xCC56, 0x8613},+    {0xCC57, 0x8614},+    {0xCC58, 0x8615},+    {0xCC59, 0x8617},+    {0xCC5A, 0x8618},+    {0xCC5B, 0x8619},+    {0xCC5C, 0x861A},+    {0xCC5D, 0x861B},+    {0xCC5E, 0x861C},+    {0xCC5F, 0x861D},+    {0xCC60, 0x861E},+    {0xCC61, 0x861F},+    {0xCC62, 0x8620},+    {0xCC63, 0x8621},+    {0xCC64, 0x8622},+    {0xCC65, 0x8623},+    {0xCC66, 0x8624},+    {0xCC67, 0x8625},+    {0xCC68, 0x8626},+    {0xCC69, 0x8628},+    {0xCC6A, 0x862A},+    {0xCC6B, 0x862B},+    {0xCC6C, 0x862C},+    {0xCC6D, 0x862D},+    {0xCC6E, 0x862E},+    {0xCC6F, 0x862F},+    {0xCC70, 0x8630},+    {0xCC71, 0x8631},+    {0xCC72, 0x8632},+    {0xCC73, 0x8633},+    {0xCC74, 0x8634},+    {0xCC75, 0x8635},+    {0xCC76, 0x8636},+    {0xCC77, 0x8637},+    {0xCC78, 0x8639},+    {0xCC79, 0x863A},+    {0xCC7A, 0x863B},+    {0xCC7B, 0x863D},+    {0xCC7C, 0x863E},+    {0xCC7D, 0x863F},+    {0xCC7E, 0x8640},+    {0xCC80, 0x8641},+    {0xCC81, 0x8642},+    {0xCC82, 0x8643},+    {0xCC83, 0x8644},+    {0xCC84, 0x8645},+    {0xCC85, 0x8646},+    {0xCC86, 0x8647},+    {0xCC87, 0x8648},+    {0xCC88, 0x8649},+    {0xCC89, 0x864A},+    {0xCC8A, 0x864B},+    {0xCC8B, 0x864C},+    {0xCC8C, 0x8652},+    {0xCC8D, 0x8653},+    {0xCC8E, 0x8655},+    {0xCC8F, 0x8656},+    {0xCC90, 0x8657},+    {0xCC91, 0x8658},+    {0xCC92, 0x8659},+    {0xCC93, 0x865B},+    {0xCC94, 0x865C},+    {0xCC95, 0x865D},+    {0xCC96, 0x865F},+    {0xCC97, 0x8660},+    {0xCC98, 0x8661},+    {0xCC99, 0x8663},+    {0xCC9A, 0x8664},+    {0xCC9B, 0x8665},+    {0xCC9C, 0x8666},+    {0xCC9D, 0x8667},+    {0xCC9E, 0x8668},+    {0xCC9F, 0x8669},+    {0xCCA0, 0x866A},+    {0xCCA1, 0x736D},+    {0xCCA2, 0x631E},+    {0xCCA3, 0x8E4B},+    {0xCCA4, 0x8E0F},+    {0xCCA5, 0x80CE},+    {0xCCA6, 0x82D4},+    {0xCCA7, 0x62AC},+    {0xCCA8, 0x53F0},+    {0xCCA9, 0x6CF0},+    {0xCCAA, 0x915E},+    {0xCCAB, 0x592A},+    {0xCCAC, 0x6001},+    {0xCCAD, 0x6C70},+    {0xCCAE, 0x574D},+    {0xCCAF, 0x644A},+    {0xCCB0, 0x8D2A},+    {0xCCB1, 0x762B},+    {0xCCB2, 0x6EE9},+    {0xCCB3, 0x575B},+    {0xCCB4, 0x6A80},+    {0xCCB5, 0x75F0},+    {0xCCB6, 0x6F6D},+    {0xCCB7, 0x8C2D},+    {0xCCB8, 0x8C08},+    {0xCCB9, 0x5766},+    {0xCCBA, 0x6BEF},+    {0xCCBB, 0x8892},+    {0xCCBC, 0x78B3},+    {0xCCBD, 0x63A2},+    {0xCCBE, 0x53F9},+    {0xCCBF, 0x70AD},+    {0xCCC0, 0x6C64},+    {0xCCC1, 0x5858},+    {0xCCC2, 0x642A},+    {0xCCC3, 0x5802},+    {0xCCC4, 0x68E0},+    {0xCCC5, 0x819B},+    {0xCCC6, 0x5510},+    {0xCCC7, 0x7CD6},+    {0xCCC8, 0x5018},+    {0xCCC9, 0x8EBA},+    {0xCCCA, 0x6DCC},+    {0xCCCB, 0x8D9F},+    {0xCCCC, 0x70EB},+    {0xCCCD, 0x638F},+    {0xCCCE, 0x6D9B},+    {0xCCCF, 0x6ED4},+    {0xCCD0, 0x7EE6},+    {0xCCD1, 0x8404},+    {0xCCD2, 0x6843},+    {0xCCD3, 0x9003},+    {0xCCD4, 0x6DD8},+    {0xCCD5, 0x9676},+    {0xCCD6, 0x8BA8},+    {0xCCD7, 0x5957},+    {0xCCD8, 0x7279},+    {0xCCD9, 0x85E4},+    {0xCCDA, 0x817E},+    {0xCCDB, 0x75BC},+    {0xCCDC, 0x8A8A},+    {0xCCDD, 0x68AF},+    {0xCCDE, 0x5254},+    {0xCCDF, 0x8E22},+    {0xCCE0, 0x9511},+    {0xCCE1, 0x63D0},+    {0xCCE2, 0x9898},+    {0xCCE3, 0x8E44},+    {0xCCE4, 0x557C},+    {0xCCE5, 0x4F53},+    {0xCCE6, 0x66FF},+    {0xCCE7, 0x568F},+    {0xCCE8, 0x60D5},+    {0xCCE9, 0x6D95},+    {0xCCEA, 0x5243},+    {0xCCEB, 0x5C49},+    {0xCCEC, 0x5929},+    {0xCCED, 0x6DFB},+    {0xCCEE, 0x586B},+    {0xCCEF, 0x7530},+    {0xCCF0, 0x751C},+    {0xCCF1, 0x606C},+    {0xCCF2, 0x8214},+    {0xCCF3, 0x8146},+    {0xCCF4, 0x6311},+    {0xCCF5, 0x6761},+    {0xCCF6, 0x8FE2},+    {0xCCF7, 0x773A},+    {0xCCF8, 0x8DF3},+    {0xCCF9, 0x8D34},+    {0xCCFA, 0x94C1},+    {0xCCFB, 0x5E16},+    {0xCCFC, 0x5385},+    {0xCCFD, 0x542C},+    {0xCCFE, 0x70C3},+    {0xCD40, 0x866D},+    {0xCD41, 0x866F},+    {0xCD42, 0x8670},+    {0xCD43, 0x8672},+    {0xCD44, 0x8673},+    {0xCD45, 0x8674},+    {0xCD46, 0x8675},+    {0xCD47, 0x8676},+    {0xCD48, 0x8677},+    {0xCD49, 0x8678},+    {0xCD4A, 0x8683},+    {0xCD4B, 0x8684},+    {0xCD4C, 0x8685},+    {0xCD4D, 0x8686},+    {0xCD4E, 0x8687},+    {0xCD4F, 0x8688},+    {0xCD50, 0x8689},+    {0xCD51, 0x868E},+    {0xCD52, 0x868F},+    {0xCD53, 0x8690},+    {0xCD54, 0x8691},+    {0xCD55, 0x8692},+    {0xCD56, 0x8694},+    {0xCD57, 0x8696},+    {0xCD58, 0x8697},+    {0xCD59, 0x8698},+    {0xCD5A, 0x8699},+    {0xCD5B, 0x869A},+    {0xCD5C, 0x869B},+    {0xCD5D, 0x869E},+    {0xCD5E, 0x869F},+    {0xCD5F, 0x86A0},+    {0xCD60, 0x86A1},+    {0xCD61, 0x86A2},+    {0xCD62, 0x86A5},+    {0xCD63, 0x86A6},+    {0xCD64, 0x86AB},+    {0xCD65, 0x86AD},+    {0xCD66, 0x86AE},+    {0xCD67, 0x86B2},+    {0xCD68, 0x86B3},+    {0xCD69, 0x86B7},+    {0xCD6A, 0x86B8},+    {0xCD6B, 0x86B9},+    {0xCD6C, 0x86BB},+    {0xCD6D, 0x86BC},+    {0xCD6E, 0x86BD},+    {0xCD6F, 0x86BE},+    {0xCD70, 0x86BF},+    {0xCD71, 0x86C1},+    {0xCD72, 0x86C2},+    {0xCD73, 0x86C3},+    {0xCD74, 0x86C5},+    {0xCD75, 0x86C8},+    {0xCD76, 0x86CC},+    {0xCD77, 0x86CD},+    {0xCD78, 0x86D2},+    {0xCD79, 0x86D3},+    {0xCD7A, 0x86D5},+    {0xCD7B, 0x86D6},+    {0xCD7C, 0x86D7},+    {0xCD7D, 0x86DA},+    {0xCD7E, 0x86DC},+    {0xCD80, 0x86DD},+    {0xCD81, 0x86E0},+    {0xCD82, 0x86E1},+    {0xCD83, 0x86E2},+    {0xCD84, 0x86E3},+    {0xCD85, 0x86E5},+    {0xCD86, 0x86E6},+    {0xCD87, 0x86E7},+    {0xCD88, 0x86E8},+    {0xCD89, 0x86EA},+    {0xCD8A, 0x86EB},+    {0xCD8B, 0x86EC},+    {0xCD8C, 0x86EF},+    {0xCD8D, 0x86F5},+    {0xCD8E, 0x86F6},+    {0xCD8F, 0x86F7},+    {0xCD90, 0x86FA},+    {0xCD91, 0x86FB},+    {0xCD92, 0x86FC},+    {0xCD93, 0x86FD},+    {0xCD94, 0x86FF},+    {0xCD95, 0x8701},+    {0xCD96, 0x8704},+    {0xCD97, 0x8705},+    {0xCD98, 0x8706},+    {0xCD99, 0x870B},+    {0xCD9A, 0x870C},+    {0xCD9B, 0x870E},+    {0xCD9C, 0x870F},+    {0xCD9D, 0x8710},+    {0xCD9E, 0x8711},+    {0xCD9F, 0x8714},+    {0xCDA0, 0x8716},+    {0xCDA1, 0x6C40},+    {0xCDA2, 0x5EF7},+    {0xCDA3, 0x505C},+    {0xCDA4, 0x4EAD},+    {0xCDA5, 0x5EAD},+    {0xCDA6, 0x633A},+    {0xCDA7, 0x8247},+    {0xCDA8, 0x901A},+    {0xCDA9, 0x6850},+    {0xCDAA, 0x916E},+    {0xCDAB, 0x77B3},+    {0xCDAC, 0x540C},+    {0xCDAD, 0x94DC},+    {0xCDAE, 0x5F64},+    {0xCDAF, 0x7AE5},+    {0xCDB0, 0x6876},+    {0xCDB1, 0x6345},+    {0xCDB2, 0x7B52},+    {0xCDB3, 0x7EDF},+    {0xCDB4, 0x75DB},+    {0xCDB5, 0x5077},+    {0xCDB6, 0x6295},+    {0xCDB7, 0x5934},+    {0xCDB8, 0x900F},+    {0xCDB9, 0x51F8},+    {0xCDBA, 0x79C3},+    {0xCDBB, 0x7A81},+    {0xCDBC, 0x56FE},+    {0xCDBD, 0x5F92},+    {0xCDBE, 0x9014},+    {0xCDBF, 0x6D82},+    {0xCDC0, 0x5C60},+    {0xCDC1, 0x571F},+    {0xCDC2, 0x5410},+    {0xCDC3, 0x5154},+    {0xCDC4, 0x6E4D},+    {0xCDC5, 0x56E2},+    {0xCDC6, 0x63A8},+    {0xCDC7, 0x9893},+    {0xCDC8, 0x817F},+    {0xCDC9, 0x8715},+    {0xCDCA, 0x892A},+    {0xCDCB, 0x9000},+    {0xCDCC, 0x541E},+    {0xCDCD, 0x5C6F},+    {0xCDCE, 0x81C0},+    {0xCDCF, 0x62D6},+    {0xCDD0, 0x6258},+    {0xCDD1, 0x8131},+    {0xCDD2, 0x9E35},+    {0xCDD3, 0x9640},+    {0xCDD4, 0x9A6E},+    {0xCDD5, 0x9A7C},+    {0xCDD6, 0x692D},+    {0xCDD7, 0x59A5},+    {0xCDD8, 0x62D3},+    {0xCDD9, 0x553E},+    {0xCDDA, 0x6316},+    {0xCDDB, 0x54C7},+    {0xCDDC, 0x86D9},+    {0xCDDD, 0x6D3C},+    {0xCDDE, 0x5A03},+    {0xCDDF, 0x74E6},+    {0xCDE0, 0x889C},+    {0xCDE1, 0x6B6A},+    {0xCDE2, 0x5916},+    {0xCDE3, 0x8C4C},+    {0xCDE4, 0x5F2F},+    {0xCDE5, 0x6E7E},+    {0xCDE6, 0x73A9},+    {0xCDE7, 0x987D},+    {0xCDE8, 0x4E38},+    {0xCDE9, 0x70F7},+    {0xCDEA, 0x5B8C},+    {0xCDEB, 0x7897},+    {0xCDEC, 0x633D},+    {0xCDED, 0x665A},+    {0xCDEE, 0x7696},+    {0xCDEF, 0x60CB},+    {0xCDF0, 0x5B9B},+    {0xCDF1, 0x5A49},+    {0xCDF2, 0x4E07},+    {0xCDF3, 0x8155},+    {0xCDF4, 0x6C6A},+    {0xCDF5, 0x738B},+    {0xCDF6, 0x4EA1},+    {0xCDF7, 0x6789},+    {0xCDF8, 0x7F51},+    {0xCDF9, 0x5F80},+    {0xCDFA, 0x65FA},+    {0xCDFB, 0x671B},+    {0xCDFC, 0x5FD8},+    {0xCDFD, 0x5984},+    {0xCDFE, 0x5A01},+    {0xCE40, 0x8719},+    {0xCE41, 0x871B},+    {0xCE42, 0x871D},+    {0xCE43, 0x871F},+    {0xCE44, 0x8720},+    {0xCE45, 0x8724},+    {0xCE46, 0x8726},+    {0xCE47, 0x8727},+    {0xCE48, 0x8728},+    {0xCE49, 0x872A},+    {0xCE4A, 0x872B},+    {0xCE4B, 0x872C},+    {0xCE4C, 0x872D},+    {0xCE4D, 0x872F},+    {0xCE4E, 0x8730},+    {0xCE4F, 0x8732},+    {0xCE50, 0x8733},+    {0xCE51, 0x8735},+    {0xCE52, 0x8736},+    {0xCE53, 0x8738},+    {0xCE54, 0x8739},+    {0xCE55, 0x873A},+    {0xCE56, 0x873C},+    {0xCE57, 0x873D},+    {0xCE58, 0x8740},+    {0xCE59, 0x8741},+    {0xCE5A, 0x8742},+    {0xCE5B, 0x8743},+    {0xCE5C, 0x8744},+    {0xCE5D, 0x8745},+    {0xCE5E, 0x8746},+    {0xCE5F, 0x874A},+    {0xCE60, 0x874B},+    {0xCE61, 0x874D},+    {0xCE62, 0x874F},+    {0xCE63, 0x8750},+    {0xCE64, 0x8751},+    {0xCE65, 0x8752},+    {0xCE66, 0x8754},+    {0xCE67, 0x8755},+    {0xCE68, 0x8756},+    {0xCE69, 0x8758},+    {0xCE6A, 0x875A},+    {0xCE6B, 0x875B},+    {0xCE6C, 0x875C},+    {0xCE6D, 0x875D},+    {0xCE6E, 0x875E},+    {0xCE6F, 0x875F},+    {0xCE70, 0x8761},+    {0xCE71, 0x8762},+    {0xCE72, 0x8766},+    {0xCE73, 0x8767},+    {0xCE74, 0x8768},+    {0xCE75, 0x8769},+    {0xCE76, 0x876A},+    {0xCE77, 0x876B},+    {0xCE78, 0x876C},+    {0xCE79, 0x876D},+    {0xCE7A, 0x876F},+    {0xCE7B, 0x8771},+    {0xCE7C, 0x8772},+    {0xCE7D, 0x8773},+    {0xCE7E, 0x8775},+    {0xCE80, 0x8777},+    {0xCE81, 0x8778},+    {0xCE82, 0x8779},+    {0xCE83, 0x877A},+    {0xCE84, 0x877F},+    {0xCE85, 0x8780},+    {0xCE86, 0x8781},+    {0xCE87, 0x8784},+    {0xCE88, 0x8786},+    {0xCE89, 0x8787},+    {0xCE8A, 0x8789},+    {0xCE8B, 0x878A},+    {0xCE8C, 0x878C},+    {0xCE8D, 0x878E},+    {0xCE8E, 0x878F},+    {0xCE8F, 0x8790},+    {0xCE90, 0x8791},+    {0xCE91, 0x8792},+    {0xCE92, 0x8794},+    {0xCE93, 0x8795},+    {0xCE94, 0x8796},+    {0xCE95, 0x8798},+    {0xCE96, 0x8799},+    {0xCE97, 0x879A},+    {0xCE98, 0x879B},+    {0xCE99, 0x879C},+    {0xCE9A, 0x879D},+    {0xCE9B, 0x879E},+    {0xCE9C, 0x87A0},+    {0xCE9D, 0x87A1},+    {0xCE9E, 0x87A2},+    {0xCE9F, 0x87A3},+    {0xCEA0, 0x87A4},+    {0xCEA1, 0x5DCD},+    {0xCEA2, 0x5FAE},+    {0xCEA3, 0x5371},+    {0xCEA4, 0x97E6},+    {0xCEA5, 0x8FDD},+    {0xCEA6, 0x6845},+    {0xCEA7, 0x56F4},+    {0xCEA8, 0x552F},+    {0xCEA9, 0x60DF},+    {0xCEAA, 0x4E3A},+    {0xCEAB, 0x6F4D},+    {0xCEAC, 0x7EF4},+    {0xCEAD, 0x82C7},+    {0xCEAE, 0x840E},+    {0xCEAF, 0x59D4},+    {0xCEB0, 0x4F1F},+    {0xCEB1, 0x4F2A},+    {0xCEB2, 0x5C3E},+    {0xCEB3, 0x7EAC},+    {0xCEB4, 0x672A},+    {0xCEB5, 0x851A},+    {0xCEB6, 0x5473},+    {0xCEB7, 0x754F},+    {0xCEB8, 0x80C3},+    {0xCEB9, 0x5582},+    {0xCEBA, 0x9B4F},+    {0xCEBB, 0x4F4D},+    {0xCEBC, 0x6E2D},+    {0xCEBD, 0x8C13},+    {0xCEBE, 0x5C09},+    {0xCEBF, 0x6170},+    {0xCEC0, 0x536B},+    {0xCEC1, 0x761F},+    {0xCEC2, 0x6E29},+    {0xCEC3, 0x868A},+    {0xCEC4, 0x6587},+    {0xCEC5, 0x95FB},+    {0xCEC6, 0x7EB9},+    {0xCEC7, 0x543B},+    {0xCEC8, 0x7A33},+    {0xCEC9, 0x7D0A},+    {0xCECA, 0x95EE},+    {0xCECB, 0x55E1},+    {0xCECC, 0x7FC1},+    {0xCECD, 0x74EE},+    {0xCECE, 0x631D},+    {0xCECF, 0x8717},+    {0xCED0, 0x6DA1},+    {0xCED1, 0x7A9D},+    {0xCED2, 0x6211},+    {0xCED3, 0x65A1},+    {0xCED4, 0x5367},+    {0xCED5, 0x63E1},+    {0xCED6, 0x6C83},+    {0xCED7, 0x5DEB},+    {0xCED8, 0x545C},+    {0xCED9, 0x94A8},+    {0xCEDA, 0x4E4C},+    {0xCEDB, 0x6C61},+    {0xCEDC, 0x8BEC},+    {0xCEDD, 0x5C4B},+    {0xCEDE, 0x65E0},+    {0xCEDF, 0x829C},+    {0xCEE0, 0x68A7},+    {0xCEE1, 0x543E},+    {0xCEE2, 0x5434},+    {0xCEE3, 0x6BCB},+    {0xCEE4, 0x6B66},+    {0xCEE5, 0x4E94},+    {0xCEE6, 0x6342},+    {0xCEE7, 0x5348},+    {0xCEE8, 0x821E},+    {0xCEE9, 0x4F0D},+    {0xCEEA, 0x4FAE},+    {0xCEEB, 0x575E},+    {0xCEEC, 0x620A},+    {0xCEED, 0x96FE},+    {0xCEEE, 0x6664},+    {0xCEEF, 0x7269},+    {0xCEF0, 0x52FF},+    {0xCEF1, 0x52A1},+    {0xCEF2, 0x609F},+    {0xCEF3, 0x8BEF},+    {0xCEF4, 0x6614},+    {0xCEF5, 0x7199},+    {0xCEF6, 0x6790},+    {0xCEF7, 0x897F},+    {0xCEF8, 0x7852},+    {0xCEF9, 0x77FD},+    {0xCEFA, 0x6670},+    {0xCEFB, 0x563B},+    {0xCEFC, 0x5438},+    {0xCEFD, 0x9521},+    {0xCEFE, 0x727A},+    {0xCF40, 0x87A5},+    {0xCF41, 0x87A6},+    {0xCF42, 0x87A7},+    {0xCF43, 0x87A9},+    {0xCF44, 0x87AA},+    {0xCF45, 0x87AE},+    {0xCF46, 0x87B0},+    {0xCF47, 0x87B1},+    {0xCF48, 0x87B2},+    {0xCF49, 0x87B4},+    {0xCF4A, 0x87B6},+    {0xCF4B, 0x87B7},+    {0xCF4C, 0x87B8},+    {0xCF4D, 0x87B9},+    {0xCF4E, 0x87BB},+    {0xCF4F, 0x87BC},+    {0xCF50, 0x87BE},+    {0xCF51, 0x87BF},+    {0xCF52, 0x87C1},+    {0xCF53, 0x87C2},+    {0xCF54, 0x87C3},+    {0xCF55, 0x87C4},+    {0xCF56, 0x87C5},+    {0xCF57, 0x87C7},+    {0xCF58, 0x87C8},+    {0xCF59, 0x87C9},+    {0xCF5A, 0x87CC},+    {0xCF5B, 0x87CD},+    {0xCF5C, 0x87CE},+    {0xCF5D, 0x87CF},+    {0xCF5E, 0x87D0},+    {0xCF5F, 0x87D4},+    {0xCF60, 0x87D5},+    {0xCF61, 0x87D6},+    {0xCF62, 0x87D7},+    {0xCF63, 0x87D8},+    {0xCF64, 0x87D9},+    {0xCF65, 0x87DA},+    {0xCF66, 0x87DC},+    {0xCF67, 0x87DD},+    {0xCF68, 0x87DE},+    {0xCF69, 0x87DF},+    {0xCF6A, 0x87E1},+    {0xCF6B, 0x87E2},+    {0xCF6C, 0x87E3},+    {0xCF6D, 0x87E4},+    {0xCF6E, 0x87E6},+    {0xCF6F, 0x87E7},+    {0xCF70, 0x87E8},+    {0xCF71, 0x87E9},+    {0xCF72, 0x87EB},+    {0xCF73, 0x87EC},+    {0xCF74, 0x87ED},+    {0xCF75, 0x87EF},+    {0xCF76, 0x87F0},+    {0xCF77, 0x87F1},+    {0xCF78, 0x87F2},+    {0xCF79, 0x87F3},+    {0xCF7A, 0x87F4},+    {0xCF7B, 0x87F5},+    {0xCF7C, 0x87F6},+    {0xCF7D, 0x87F7},+    {0xCF7E, 0x87F8},+    {0xCF80, 0x87FA},+    {0xCF81, 0x87FB},+    {0xCF82, 0x87FC},+    {0xCF83, 0x87FD},+    {0xCF84, 0x87FF},+    {0xCF85, 0x8800},+    {0xCF86, 0x8801},+    {0xCF87, 0x8802},+    {0xCF88, 0x8804},+    {0xCF89, 0x8805},+    {0xCF8A, 0x8806},+    {0xCF8B, 0x8807},+    {0xCF8C, 0x8808},+    {0xCF8D, 0x8809},+    {0xCF8E, 0x880B},+    {0xCF8F, 0x880C},+    {0xCF90, 0x880D},+    {0xCF91, 0x880E},+    {0xCF92, 0x880F},+    {0xCF93, 0x8810},+    {0xCF94, 0x8811},+    {0xCF95, 0x8812},+    {0xCF96, 0x8814},+    {0xCF97, 0x8817},+    {0xCF98, 0x8818},+    {0xCF99, 0x8819},+    {0xCF9A, 0x881A},+    {0xCF9B, 0x881C},+    {0xCF9C, 0x881D},+    {0xCF9D, 0x881E},+    {0xCF9E, 0x881F},+    {0xCF9F, 0x8820},+    {0xCFA0, 0x8823},+    {0xCFA1, 0x7A00},+    {0xCFA2, 0x606F},+    {0xCFA3, 0x5E0C},+    {0xCFA4, 0x6089},+    {0xCFA5, 0x819D},+    {0xCFA6, 0x5915},+    {0xCFA7, 0x60DC},+    {0xCFA8, 0x7184},+    {0xCFA9, 0x70EF},+    {0xCFAA, 0x6EAA},+    {0xCFAB, 0x6C50},+    {0xCFAC, 0x7280},+    {0xCFAD, 0x6A84},+    {0xCFAE, 0x88AD},+    {0xCFAF, 0x5E2D},+    {0xCFB0, 0x4E60},+    {0xCFB1, 0x5AB3},+    {0xCFB2, 0x559C},+    {0xCFB3, 0x94E3},+    {0xCFB4, 0x6D17},+    {0xCFB5, 0x7CFB},+    {0xCFB6, 0x9699},+    {0xCFB7, 0x620F},+    {0xCFB8, 0x7EC6},+    {0xCFB9, 0x778E},+    {0xCFBA, 0x867E},+    {0xCFBB, 0x5323},+    {0xCFBC, 0x971E},+    {0xCFBD, 0x8F96},+    {0xCFBE, 0x6687},+    {0xCFBF, 0x5CE1},+    {0xCFC0, 0x4FA0},+    {0xCFC1, 0x72ED},+    {0xCFC2, 0x4E0B},+    {0xCFC3, 0x53A6},+    {0xCFC4, 0x590F},+    {0xCFC5, 0x5413},+    {0xCFC6, 0x6380},+    {0xCFC7, 0x9528},+    {0xCFC8, 0x5148},+    {0xCFC9, 0x4ED9},+    {0xCFCA, 0x9C9C},+    {0xCFCB, 0x7EA4},+    {0xCFCC, 0x54B8},+    {0xCFCD, 0x8D24},+    {0xCFCE, 0x8854},+    {0xCFCF, 0x8237},+    {0xCFD0, 0x95F2},+    {0xCFD1, 0x6D8E},+    {0xCFD2, 0x5F26},+    {0xCFD3, 0x5ACC},+    {0xCFD4, 0x663E},+    {0xCFD5, 0x9669},+    {0xCFD6, 0x73B0},+    {0xCFD7, 0x732E},+    {0xCFD8, 0x53BF},+    {0xCFD9, 0x817A},+    {0xCFDA, 0x9985},+    {0xCFDB, 0x7FA1},+    {0xCFDC, 0x5BAA},+    {0xCFDD, 0x9677},+    {0xCFDE, 0x9650},+    {0xCFDF, 0x7EBF},+    {0xCFE0, 0x76F8},+    {0xCFE1, 0x53A2},+    {0xCFE2, 0x9576},+    {0xCFE3, 0x9999},+    {0xCFE4, 0x7BB1},+    {0xCFE5, 0x8944},+    {0xCFE6, 0x6E58},+    {0xCFE7, 0x4E61},+    {0xCFE8, 0x7FD4},+    {0xCFE9, 0x7965},+    {0xCFEA, 0x8BE6},+    {0xCFEB, 0x60F3},+    {0xCFEC, 0x54CD},+    {0xCFED, 0x4EAB},+    {0xCFEE, 0x9879},+    {0xCFEF, 0x5DF7},+    {0xCFF0, 0x6A61},+    {0xCFF1, 0x50CF},+    {0xCFF2, 0x5411},+    {0xCFF3, 0x8C61},+    {0xCFF4, 0x8427},+    {0xCFF5, 0x785D},+    {0xCFF6, 0x9704},+    {0xCFF7, 0x524A},+    {0xCFF8, 0x54EE},+    {0xCFF9, 0x56A3},+    {0xCFFA, 0x9500},+    {0xCFFB, 0x6D88},+    {0xCFFC, 0x5BB5},+    {0xCFFD, 0x6DC6},+    {0xCFFE, 0x6653},+    {0xD040, 0x8824},+    {0xD041, 0x8825},+    {0xD042, 0x8826},+    {0xD043, 0x8827},+    {0xD044, 0x8828},+    {0xD045, 0x8829},+    {0xD046, 0x882A},+    {0xD047, 0x882B},+    {0xD048, 0x882C},+    {0xD049, 0x882D},+    {0xD04A, 0x882E},+    {0xD04B, 0x882F},+    {0xD04C, 0x8830},+    {0xD04D, 0x8831},+    {0xD04E, 0x8833},+    {0xD04F, 0x8834},+    {0xD050, 0x8835},+    {0xD051, 0x8836},+    {0xD052, 0x8837},+    {0xD053, 0x8838},+    {0xD054, 0x883A},+    {0xD055, 0x883B},+    {0xD056, 0x883D},+    {0xD057, 0x883E},+    {0xD058, 0x883F},+    {0xD059, 0x8841},+    {0xD05A, 0x8842},+    {0xD05B, 0x8843},+    {0xD05C, 0x8846},+    {0xD05D, 0x8847},+    {0xD05E, 0x8848},+    {0xD05F, 0x8849},+    {0xD060, 0x884A},+    {0xD061, 0x884B},+    {0xD062, 0x884E},+    {0xD063, 0x884F},+    {0xD064, 0x8850},+    {0xD065, 0x8851},+    {0xD066, 0x8852},+    {0xD067, 0x8853},+    {0xD068, 0x8855},+    {0xD069, 0x8856},+    {0xD06A, 0x8858},+    {0xD06B, 0x885A},+    {0xD06C, 0x885B},+    {0xD06D, 0x885C},+    {0xD06E, 0x885D},+    {0xD06F, 0x885E},+    {0xD070, 0x885F},+    {0xD071, 0x8860},+    {0xD072, 0x8866},+    {0xD073, 0x8867},+    {0xD074, 0x886A},+    {0xD075, 0x886D},+    {0xD076, 0x886F},+    {0xD077, 0x8871},+    {0xD078, 0x8873},+    {0xD079, 0x8874},+    {0xD07A, 0x8875},+    {0xD07B, 0x8876},+    {0xD07C, 0x8878},+    {0xD07D, 0x8879},+    {0xD07E, 0x887A},+    {0xD080, 0x887B},+    {0xD081, 0x887C},+    {0xD082, 0x8880},+    {0xD083, 0x8883},+    {0xD084, 0x8886},+    {0xD085, 0x8887},+    {0xD086, 0x8889},+    {0xD087, 0x888A},+    {0xD088, 0x888C},+    {0xD089, 0x888E},+    {0xD08A, 0x888F},+    {0xD08B, 0x8890},+    {0xD08C, 0x8891},+    {0xD08D, 0x8893},+    {0xD08E, 0x8894},+    {0xD08F, 0x8895},+    {0xD090, 0x8897},+    {0xD091, 0x8898},+    {0xD092, 0x8899},+    {0xD093, 0x889A},+    {0xD094, 0x889B},+    {0xD095, 0x889D},+    {0xD096, 0x889E},+    {0xD097, 0x889F},+    {0xD098, 0x88A0},+    {0xD099, 0x88A1},+    {0xD09A, 0x88A3},+    {0xD09B, 0x88A5},+    {0xD09C, 0x88A6},+    {0xD09D, 0x88A7},+    {0xD09E, 0x88A8},+    {0xD09F, 0x88A9},+    {0xD0A0, 0x88AA},+    {0xD0A1, 0x5C0F},+    {0xD0A2, 0x5B5D},+    {0xD0A3, 0x6821},+    {0xD0A4, 0x8096},+    {0xD0A5, 0x5578},+    {0xD0A6, 0x7B11},+    {0xD0A7, 0x6548},+    {0xD0A8, 0x6954},+    {0xD0A9, 0x4E9B},+    {0xD0AA, 0x6B47},+    {0xD0AB, 0x874E},+    {0xD0AC, 0x978B},+    {0xD0AD, 0x534F},+    {0xD0AE, 0x631F},+    {0xD0AF, 0x643A},+    {0xD0B0, 0x90AA},+    {0xD0B1, 0x659C},+    {0xD0B2, 0x80C1},+    {0xD0B3, 0x8C10},+    {0xD0B4, 0x5199},+    {0xD0B5, 0x68B0},+    {0xD0B6, 0x5378},+    {0xD0B7, 0x87F9},+    {0xD0B8, 0x61C8},+    {0xD0B9, 0x6CC4},+    {0xD0BA, 0x6CFB},+    {0xD0BB, 0x8C22},+    {0xD0BC, 0x5C51},+    {0xD0BD, 0x85AA},+    {0xD0BE, 0x82AF},+    {0xD0BF, 0x950C},+    {0xD0C0, 0x6B23},+    {0xD0C1, 0x8F9B},+    {0xD0C2, 0x65B0},+    {0xD0C3, 0x5FFB},+    {0xD0C4, 0x5FC3},+    {0xD0C5, 0x4FE1},+    {0xD0C6, 0x8845},+    {0xD0C7, 0x661F},+    {0xD0C8, 0x8165},+    {0xD0C9, 0x7329},+    {0xD0CA, 0x60FA},+    {0xD0CB, 0x5174},+    {0xD0CC, 0x5211},+    {0xD0CD, 0x578B},+    {0xD0CE, 0x5F62},+    {0xD0CF, 0x90A2},+    {0xD0D0, 0x884C},+    {0xD0D1, 0x9192},+    {0xD0D2, 0x5E78},+    {0xD0D3, 0x674F},+    {0xD0D4, 0x6027},+    {0xD0D5, 0x59D3},+    {0xD0D6, 0x5144},+    {0xD0D7, 0x51F6},+    {0xD0D8, 0x80F8},+    {0xD0D9, 0x5308},+    {0xD0DA, 0x6C79},+    {0xD0DB, 0x96C4},+    {0xD0DC, 0x718A},+    {0xD0DD, 0x4F11},+    {0xD0DE, 0x4FEE},+    {0xD0DF, 0x7F9E},+    {0xD0E0, 0x673D},+    {0xD0E1, 0x55C5},+    {0xD0E2, 0x9508},+    {0xD0E3, 0x79C0},+    {0xD0E4, 0x8896},+    {0xD0E5, 0x7EE3},+    {0xD0E6, 0x589F},+    {0xD0E7, 0x620C},+    {0xD0E8, 0x9700},+    {0xD0E9, 0x865A},+    {0xD0EA, 0x5618},+    {0xD0EB, 0x987B},+    {0xD0EC, 0x5F90},+    {0xD0ED, 0x8BB8},+    {0xD0EE, 0x84C4},+    {0xD0EF, 0x9157},+    {0xD0F0, 0x53D9},+    {0xD0F1, 0x65ED},+    {0xD0F2, 0x5E8F},+    {0xD0F3, 0x755C},+    {0xD0F4, 0x6064},+    {0xD0F5, 0x7D6E},+    {0xD0F6, 0x5A7F},+    {0xD0F7, 0x7EEA},+    {0xD0F8, 0x7EED},+    {0xD0F9, 0x8F69},+    {0xD0FA, 0x55A7},+    {0xD0FB, 0x5BA3},+    {0xD0FC, 0x60AC},+    {0xD0FD, 0x65CB},+    {0xD0FE, 0x7384},+    {0xD140, 0x88AC},+    {0xD141, 0x88AE},+    {0xD142, 0x88AF},+    {0xD143, 0x88B0},+    {0xD144, 0x88B2},+    {0xD145, 0x88B3},+    {0xD146, 0x88B4},+    {0xD147, 0x88B5},+    {0xD148, 0x88B6},+    {0xD149, 0x88B8},+    {0xD14A, 0x88B9},+    {0xD14B, 0x88BA},+    {0xD14C, 0x88BB},+    {0xD14D, 0x88BD},+    {0xD14E, 0x88BE},+    {0xD14F, 0x88BF},+    {0xD150, 0x88C0},+    {0xD151, 0x88C3},+    {0xD152, 0x88C4},+    {0xD153, 0x88C7},+    {0xD154, 0x88C8},+    {0xD155, 0x88CA},+    {0xD156, 0x88CB},+    {0xD157, 0x88CC},+    {0xD158, 0x88CD},+    {0xD159, 0x88CF},+    {0xD15A, 0x88D0},+    {0xD15B, 0x88D1},+    {0xD15C, 0x88D3},+    {0xD15D, 0x88D6},+    {0xD15E, 0x88D7},+    {0xD15F, 0x88DA},+    {0xD160, 0x88DB},+    {0xD161, 0x88DC},+    {0xD162, 0x88DD},+    {0xD163, 0x88DE},+    {0xD164, 0x88E0},+    {0xD165, 0x88E1},+    {0xD166, 0x88E6},+    {0xD167, 0x88E7},+    {0xD168, 0x88E9},+    {0xD169, 0x88EA},+    {0xD16A, 0x88EB},+    {0xD16B, 0x88EC},+    {0xD16C, 0x88ED},+    {0xD16D, 0x88EE},+    {0xD16E, 0x88EF},+    {0xD16F, 0x88F2},+    {0xD170, 0x88F5},+    {0xD171, 0x88F6},+    {0xD172, 0x88F7},+    {0xD173, 0x88FA},+    {0xD174, 0x88FB},+    {0xD175, 0x88FD},+    {0xD176, 0x88FF},+    {0xD177, 0x8900},+    {0xD178, 0x8901},+    {0xD179, 0x8903},+    {0xD17A, 0x8904},+    {0xD17B, 0x8905},+    {0xD17C, 0x8906},+    {0xD17D, 0x8907},+    {0xD17E, 0x8908},+    {0xD180, 0x8909},+    {0xD181, 0x890B},+    {0xD182, 0x890C},+    {0xD183, 0x890D},+    {0xD184, 0x890E},+    {0xD185, 0x890F},+    {0xD186, 0x8911},+    {0xD187, 0x8914},+    {0xD188, 0x8915},+    {0xD189, 0x8916},+    {0xD18A, 0x8917},+    {0xD18B, 0x8918},+    {0xD18C, 0x891C},+    {0xD18D, 0x891D},+    {0xD18E, 0x891E},+    {0xD18F, 0x891F},+    {0xD190, 0x8920},+    {0xD191, 0x8922},+    {0xD192, 0x8923},+    {0xD193, 0x8924},+    {0xD194, 0x8926},+    {0xD195, 0x8927},+    {0xD196, 0x8928},+    {0xD197, 0x8929},+    {0xD198, 0x892C},+    {0xD199, 0x892D},+    {0xD19A, 0x892E},+    {0xD19B, 0x892F},+    {0xD19C, 0x8931},+    {0xD19D, 0x8932},+    {0xD19E, 0x8933},+    {0xD19F, 0x8935},+    {0xD1A0, 0x8937},+    {0xD1A1, 0x9009},+    {0xD1A2, 0x7663},+    {0xD1A3, 0x7729},+    {0xD1A4, 0x7EDA},+    {0xD1A5, 0x9774},+    {0xD1A6, 0x859B},+    {0xD1A7, 0x5B66},+    {0xD1A8, 0x7A74},+    {0xD1A9, 0x96EA},+    {0xD1AA, 0x8840},+    {0xD1AB, 0x52CB},+    {0xD1AC, 0x718F},+    {0xD1AD, 0x5FAA},+    {0xD1AE, 0x65EC},+    {0xD1AF, 0x8BE2},+    {0xD1B0, 0x5BFB},+    {0xD1B1, 0x9A6F},+    {0xD1B2, 0x5DE1},+    {0xD1B3, 0x6B89},+    {0xD1B4, 0x6C5B},+    {0xD1B5, 0x8BAD},+    {0xD1B6, 0x8BAF},+    {0xD1B7, 0x900A},+    {0xD1B8, 0x8FC5},+    {0xD1B9, 0x538B},+    {0xD1BA, 0x62BC},+    {0xD1BB, 0x9E26},+    {0xD1BC, 0x9E2D},+    {0xD1BD, 0x5440},+    {0xD1BE, 0x4E2B},+    {0xD1BF, 0x82BD},+    {0xD1C0, 0x7259},+    {0xD1C1, 0x869C},+    {0xD1C2, 0x5D16},+    {0xD1C3, 0x8859},+    {0xD1C4, 0x6DAF},+    {0xD1C5, 0x96C5},+    {0xD1C6, 0x54D1},+    {0xD1C7, 0x4E9A},+    {0xD1C8, 0x8BB6},+    {0xD1C9, 0x7109},+    {0xD1CA, 0x54BD},+    {0xD1CB, 0x9609},+    {0xD1CC, 0x70DF},+    {0xD1CD, 0x6DF9},+    {0xD1CE, 0x76D0},+    {0xD1CF, 0x4E25},+    {0xD1D0, 0x7814},+    {0xD1D1, 0x8712},+    {0xD1D2, 0x5CA9},+    {0xD1D3, 0x5EF6},+    {0xD1D4, 0x8A00},+    {0xD1D5, 0x989C},+    {0xD1D6, 0x960E},+    {0xD1D7, 0x708E},+    {0xD1D8, 0x6CBF},+    {0xD1D9, 0x5944},+    {0xD1DA, 0x63A9},+    {0xD1DB, 0x773C},+    {0xD1DC, 0x884D},+    {0xD1DD, 0x6F14},+    {0xD1DE, 0x8273},+    {0xD1DF, 0x5830},+    {0xD1E0, 0x71D5},+    {0xD1E1, 0x538C},+    {0xD1E2, 0x781A},+    {0xD1E3, 0x96C1},+    {0xD1E4, 0x5501},+    {0xD1E5, 0x5F66},+    {0xD1E6, 0x7130},+    {0xD1E7, 0x5BB4},+    {0xD1E8, 0x8C1A},+    {0xD1E9, 0x9A8C},+    {0xD1EA, 0x6B83},+    {0xD1EB, 0x592E},+    {0xD1EC, 0x9E2F},+    {0xD1ED, 0x79E7},+    {0xD1EE, 0x6768},+    {0xD1EF, 0x626C},+    {0xD1F0, 0x4F6F},+    {0xD1F1, 0x75A1},+    {0xD1F2, 0x7F8A},+    {0xD1F3, 0x6D0B},+    {0xD1F4, 0x9633},+    {0xD1F5, 0x6C27},+    {0xD1F6, 0x4EF0},+    {0xD1F7, 0x75D2},+    {0xD1F8, 0x517B},+    {0xD1F9, 0x6837},+    {0xD1FA, 0x6F3E},+    {0xD1FB, 0x9080},+    {0xD1FC, 0x8170},+    {0xD1FD, 0x5996},+    {0xD1FE, 0x7476},+    {0xD240, 0x8938},+    {0xD241, 0x8939},+    {0xD242, 0x893A},+    {0xD243, 0x893B},+    {0xD244, 0x893C},+    {0xD245, 0x893D},+    {0xD246, 0x893E},+    {0xD247, 0x893F},+    {0xD248, 0x8940},+    {0xD249, 0x8942},+    {0xD24A, 0x8943},+    {0xD24B, 0x8945},+    {0xD24C, 0x8946},+    {0xD24D, 0x8947},+    {0xD24E, 0x8948},+    {0xD24F, 0x8949},+    {0xD250, 0x894A},+    {0xD251, 0x894B},+    {0xD252, 0x894C},+    {0xD253, 0x894D},+    {0xD254, 0x894E},+    {0xD255, 0x894F},+    {0xD256, 0x8950},+    {0xD257, 0x8951},+    {0xD258, 0x8952},+    {0xD259, 0x8953},+    {0xD25A, 0x8954},+    {0xD25B, 0x8955},+    {0xD25C, 0x8956},+    {0xD25D, 0x8957},+    {0xD25E, 0x8958},+    {0xD25F, 0x8959},+    {0xD260, 0x895A},+    {0xD261, 0x895B},+    {0xD262, 0x895C},+    {0xD263, 0x895D},+    {0xD264, 0x8960},+    {0xD265, 0x8961},+    {0xD266, 0x8962},+    {0xD267, 0x8963},+    {0xD268, 0x8964},+    {0xD269, 0x8965},+    {0xD26A, 0x8967},+    {0xD26B, 0x8968},+    {0xD26C, 0x8969},+    {0xD26D, 0x896A},+    {0xD26E, 0x896B},+    {0xD26F, 0x896C},+    {0xD270, 0x896D},+    {0xD271, 0x896E},+    {0xD272, 0x896F},+    {0xD273, 0x8970},+    {0xD274, 0x8971},+    {0xD275, 0x8972},+    {0xD276, 0x8973},+    {0xD277, 0x8974},+    {0xD278, 0x8975},+    {0xD279, 0x8976},+    {0xD27A, 0x8977},+    {0xD27B, 0x8978},+    {0xD27C, 0x8979},+    {0xD27D, 0x897A},+    {0xD27E, 0x897C},+    {0xD280, 0x897D},+    {0xD281, 0x897E},+    {0xD282, 0x8980},+    {0xD283, 0x8982},+    {0xD284, 0x8984},+    {0xD285, 0x8985},+    {0xD286, 0x8987},+    {0xD287, 0x8988},+    {0xD288, 0x8989},+    {0xD289, 0x898A},+    {0xD28A, 0x898B},+    {0xD28B, 0x898C},+    {0xD28C, 0x898D},+    {0xD28D, 0x898E},+    {0xD28E, 0x898F},+    {0xD28F, 0x8990},+    {0xD290, 0x8991},+    {0xD291, 0x8992},+    {0xD292, 0x8993},+    {0xD293, 0x8994},+    {0xD294, 0x8995},+    {0xD295, 0x8996},+    {0xD296, 0x8997},+    {0xD297, 0x8998},+    {0xD298, 0x8999},+    {0xD299, 0x899A},+    {0xD29A, 0x899B},+    {0xD29B, 0x899C},+    {0xD29C, 0x899D},+    {0xD29D, 0x899E},+    {0xD29E, 0x899F},+    {0xD29F, 0x89A0},+    {0xD2A0, 0x89A1},+    {0xD2A1, 0x6447},+    {0xD2A2, 0x5C27},+    {0xD2A3, 0x9065},+    {0xD2A4, 0x7A91},+    {0xD2A5, 0x8C23},+    {0xD2A6, 0x59DA},+    {0xD2A7, 0x54AC},+    {0xD2A8, 0x8200},+    {0xD2A9, 0x836F},+    {0xD2AA, 0x8981},+    {0xD2AB, 0x8000},+    {0xD2AC, 0x6930},+    {0xD2AD, 0x564E},+    {0xD2AE, 0x8036},+    {0xD2AF, 0x7237},+    {0xD2B0, 0x91CE},+    {0xD2B1, 0x51B6},+    {0xD2B2, 0x4E5F},+    {0xD2B3, 0x9875},+    {0xD2B4, 0x6396},+    {0xD2B5, 0x4E1A},+    {0xD2B6, 0x53F6},+    {0xD2B7, 0x66F3},+    {0xD2B8, 0x814B},+    {0xD2B9, 0x591C},+    {0xD2BA, 0x6DB2},+    {0xD2BB, 0x4E00},+    {0xD2BC, 0x58F9},+    {0xD2BD, 0x533B},+    {0xD2BE, 0x63D6},+    {0xD2BF, 0x94F1},+    {0xD2C0, 0x4F9D},+    {0xD2C1, 0x4F0A},+    {0xD2C2, 0x8863},+    {0xD2C3, 0x9890},+    {0xD2C4, 0x5937},+    {0xD2C5, 0x9057},+    {0xD2C6, 0x79FB},+    {0xD2C7, 0x4EEA},+    {0xD2C8, 0x80F0},+    {0xD2C9, 0x7591},+    {0xD2CA, 0x6C82},+    {0xD2CB, 0x5B9C},+    {0xD2CC, 0x59E8},+    {0xD2CD, 0x5F5D},+    {0xD2CE, 0x6905},+    {0xD2CF, 0x8681},+    {0xD2D0, 0x501A},+    {0xD2D1, 0x5DF2},+    {0xD2D2, 0x4E59},+    {0xD2D3, 0x77E3},+    {0xD2D4, 0x4EE5},+    {0xD2D5, 0x827A},+    {0xD2D6, 0x6291},+    {0xD2D7, 0x6613},+    {0xD2D8, 0x9091},+    {0xD2D9, 0x5C79},+    {0xD2DA, 0x4EBF},+    {0xD2DB, 0x5F79},+    {0xD2DC, 0x81C6},+    {0xD2DD, 0x9038},+    {0xD2DE, 0x8084},+    {0xD2DF, 0x75AB},+    {0xD2E0, 0x4EA6},+    {0xD2E1, 0x88D4},+    {0xD2E2, 0x610F},+    {0xD2E3, 0x6BC5},+    {0xD2E4, 0x5FC6},+    {0xD2E5, 0x4E49},+    {0xD2E6, 0x76CA},+    {0xD2E7, 0x6EA2},+    {0xD2E8, 0x8BE3},+    {0xD2E9, 0x8BAE},+    {0xD2EA, 0x8C0A},+    {0xD2EB, 0x8BD1},+    {0xD2EC, 0x5F02},+    {0xD2ED, 0x7FFC},+    {0xD2EE, 0x7FCC},+    {0xD2EF, 0x7ECE},+    {0xD2F0, 0x8335},+    {0xD2F1, 0x836B},+    {0xD2F2, 0x56E0},+    {0xD2F3, 0x6BB7},+    {0xD2F4, 0x97F3},+    {0xD2F5, 0x9634},+    {0xD2F6, 0x59FB},+    {0xD2F7, 0x541F},+    {0xD2F8, 0x94F6},+    {0xD2F9, 0x6DEB},+    {0xD2FA, 0x5BC5},+    {0xD2FB, 0x996E},+    {0xD2FC, 0x5C39},+    {0xD2FD, 0x5F15},+    {0xD2FE, 0x9690},+    {0xD340, 0x89A2},+    {0xD341, 0x89A3},+    {0xD342, 0x89A4},+    {0xD343, 0x89A5},+    {0xD344, 0x89A6},+    {0xD345, 0x89A7},+    {0xD346, 0x89A8},+    {0xD347, 0x89A9},+    {0xD348, 0x89AA},+    {0xD349, 0x89AB},+    {0xD34A, 0x89AC},+    {0xD34B, 0x89AD},+    {0xD34C, 0x89AE},+    {0xD34D, 0x89AF},+    {0xD34E, 0x89B0},+    {0xD34F, 0x89B1},+    {0xD350, 0x89B2},+    {0xD351, 0x89B3},+    {0xD352, 0x89B4},+    {0xD353, 0x89B5},+    {0xD354, 0x89B6},+    {0xD355, 0x89B7},+    {0xD356, 0x89B8},+    {0xD357, 0x89B9},+    {0xD358, 0x89BA},+    {0xD359, 0x89BB},+    {0xD35A, 0x89BC},+    {0xD35B, 0x89BD},+    {0xD35C, 0x89BE},+    {0xD35D, 0x89BF},+    {0xD35E, 0x89C0},+    {0xD35F, 0x89C3},+    {0xD360, 0x89CD},+    {0xD361, 0x89D3},+    {0xD362, 0x89D4},+    {0xD363, 0x89D5},+    {0xD364, 0x89D7},+    {0xD365, 0x89D8},+    {0xD366, 0x89D9},+    {0xD367, 0x89DB},+    {0xD368, 0x89DD},+    {0xD369, 0x89DF},+    {0xD36A, 0x89E0},+    {0xD36B, 0x89E1},+    {0xD36C, 0x89E2},+    {0xD36D, 0x89E4},+    {0xD36E, 0x89E7},+    {0xD36F, 0x89E8},+    {0xD370, 0x89E9},+    {0xD371, 0x89EA},+    {0xD372, 0x89EC},+    {0xD373, 0x89ED},+    {0xD374, 0x89EE},+    {0xD375, 0x89F0},+    {0xD376, 0x89F1},+    {0xD377, 0x89F2},+    {0xD378, 0x89F4},+    {0xD379, 0x89F5},+    {0xD37A, 0x89F6},+    {0xD37B, 0x89F7},+    {0xD37C, 0x89F8},+    {0xD37D, 0x89F9},+    {0xD37E, 0x89FA},+    {0xD380, 0x89FB},+    {0xD381, 0x89FC},+    {0xD382, 0x89FD},+    {0xD383, 0x89FE},+    {0xD384, 0x89FF},+    {0xD385, 0x8A01},+    {0xD386, 0x8A02},+    {0xD387, 0x8A03},+    {0xD388, 0x8A04},+    {0xD389, 0x8A05},+    {0xD38A, 0x8A06},+    {0xD38B, 0x8A08},+    {0xD38C, 0x8A09},+    {0xD38D, 0x8A0A},+    {0xD38E, 0x8A0B},+    {0xD38F, 0x8A0C},+    {0xD390, 0x8A0D},+    {0xD391, 0x8A0E},+    {0xD392, 0x8A0F},+    {0xD393, 0x8A10},+    {0xD394, 0x8A11},+    {0xD395, 0x8A12},+    {0xD396, 0x8A13},+    {0xD397, 0x8A14},+    {0xD398, 0x8A15},+    {0xD399, 0x8A16},+    {0xD39A, 0x8A17},+    {0xD39B, 0x8A18},+    {0xD39C, 0x8A19},+    {0xD39D, 0x8A1A},+    {0xD39E, 0x8A1B},+    {0xD39F, 0x8A1C},+    {0xD3A0, 0x8A1D},+    {0xD3A1, 0x5370},+    {0xD3A2, 0x82F1},+    {0xD3A3, 0x6A31},+    {0xD3A4, 0x5A74},+    {0xD3A5, 0x9E70},+    {0xD3A6, 0x5E94},+    {0xD3A7, 0x7F28},+    {0xD3A8, 0x83B9},+    {0xD3A9, 0x8424},+    {0xD3AA, 0x8425},+    {0xD3AB, 0x8367},+    {0xD3AC, 0x8747},+    {0xD3AD, 0x8FCE},+    {0xD3AE, 0x8D62},+    {0xD3AF, 0x76C8},+    {0xD3B0, 0x5F71},+    {0xD3B1, 0x9896},+    {0xD3B2, 0x786C},+    {0xD3B3, 0x6620},+    {0xD3B4, 0x54DF},+    {0xD3B5, 0x62E5},+    {0xD3B6, 0x4F63},+    {0xD3B7, 0x81C3},+    {0xD3B8, 0x75C8},+    {0xD3B9, 0x5EB8},+    {0xD3BA, 0x96CD},+    {0xD3BB, 0x8E0A},+    {0xD3BC, 0x86F9},+    {0xD3BD, 0x548F},+    {0xD3BE, 0x6CF3},+    {0xD3BF, 0x6D8C},+    {0xD3C0, 0x6C38},+    {0xD3C1, 0x607F},+    {0xD3C2, 0x52C7},+    {0xD3C3, 0x7528},+    {0xD3C4, 0x5E7D},+    {0xD3C5, 0x4F18},+    {0xD3C6, 0x60A0},+    {0xD3C7, 0x5FE7},+    {0xD3C8, 0x5C24},+    {0xD3C9, 0x7531},+    {0xD3CA, 0x90AE},+    {0xD3CB, 0x94C0},+    {0xD3CC, 0x72B9},+    {0xD3CD, 0x6CB9},+    {0xD3CE, 0x6E38},+    {0xD3CF, 0x9149},+    {0xD3D0, 0x6709},+    {0xD3D1, 0x53CB},+    {0xD3D2, 0x53F3},+    {0xD3D3, 0x4F51},+    {0xD3D4, 0x91C9},+    {0xD3D5, 0x8BF1},+    {0xD3D6, 0x53C8},+    {0xD3D7, 0x5E7C},+    {0xD3D8, 0x8FC2},+    {0xD3D9, 0x6DE4},+    {0xD3DA, 0x4E8E},+    {0xD3DB, 0x76C2},+    {0xD3DC, 0x6986},+    {0xD3DD, 0x865E},+    {0xD3DE, 0x611A},+    {0xD3DF, 0x8206},+    {0xD3E0, 0x4F59},+    {0xD3E1, 0x4FDE},+    {0xD3E2, 0x903E},+    {0xD3E3, 0x9C7C},+    {0xD3E4, 0x6109},+    {0xD3E5, 0x6E1D},+    {0xD3E6, 0x6E14},+    {0xD3E7, 0x9685},+    {0xD3E8, 0x4E88},+    {0xD3E9, 0x5A31},+    {0xD3EA, 0x96E8},+    {0xD3EB, 0x4E0E},+    {0xD3EC, 0x5C7F},+    {0xD3ED, 0x79B9},+    {0xD3EE, 0x5B87},+    {0xD3EF, 0x8BED},+    {0xD3F0, 0x7FBD},+    {0xD3F1, 0x7389},+    {0xD3F2, 0x57DF},+    {0xD3F3, 0x828B},+    {0xD3F4, 0x90C1},+    {0xD3F5, 0x5401},+    {0xD3F6, 0x9047},+    {0xD3F7, 0x55BB},+    {0xD3F8, 0x5CEA},+    {0xD3F9, 0x5FA1},+    {0xD3FA, 0x6108},+    {0xD3FB, 0x6B32},+    {0xD3FC, 0x72F1},+    {0xD3FD, 0x80B2},+    {0xD3FE, 0x8A89},+    {0xD440, 0x8A1E},+    {0xD441, 0x8A1F},+    {0xD442, 0x8A20},+    {0xD443, 0x8A21},+    {0xD444, 0x8A22},+    {0xD445, 0x8A23},+    {0xD446, 0x8A24},+    {0xD447, 0x8A25},+    {0xD448, 0x8A26},+    {0xD449, 0x8A27},+    {0xD44A, 0x8A28},+    {0xD44B, 0x8A29},+    {0xD44C, 0x8A2A},+    {0xD44D, 0x8A2B},+    {0xD44E, 0x8A2C},+    {0xD44F, 0x8A2D},+    {0xD450, 0x8A2E},+    {0xD451, 0x8A2F},+    {0xD452, 0x8A30},+    {0xD453, 0x8A31},+    {0xD454, 0x8A32},+    {0xD455, 0x8A33},+    {0xD456, 0x8A34},+    {0xD457, 0x8A35},+    {0xD458, 0x8A36},+    {0xD459, 0x8A37},+    {0xD45A, 0x8A38},+    {0xD45B, 0x8A39},+    {0xD45C, 0x8A3A},+    {0xD45D, 0x8A3B},+    {0xD45E, 0x8A3C},+    {0xD45F, 0x8A3D},+    {0xD460, 0x8A3F},+    {0xD461, 0x8A40},+    {0xD462, 0x8A41},+    {0xD463, 0x8A42},+    {0xD464, 0x8A43},+    {0xD465, 0x8A44},+    {0xD466, 0x8A45},+    {0xD467, 0x8A46},+    {0xD468, 0x8A47},+    {0xD469, 0x8A49},+    {0xD46A, 0x8A4A},+    {0xD46B, 0x8A4B},+    {0xD46C, 0x8A4C},+    {0xD46D, 0x8A4D},+    {0xD46E, 0x8A4E},+    {0xD46F, 0x8A4F},+    {0xD470, 0x8A50},+    {0xD471, 0x8A51},+    {0xD472, 0x8A52},+    {0xD473, 0x8A53},+    {0xD474, 0x8A54},+    {0xD475, 0x8A55},+    {0xD476, 0x8A56},+    {0xD477, 0x8A57},+    {0xD478, 0x8A58},+    {0xD479, 0x8A59},+    {0xD47A, 0x8A5A},+    {0xD47B, 0x8A5B},+    {0xD47C, 0x8A5C},+    {0xD47D, 0x8A5D},+    {0xD47E, 0x8A5E},+    {0xD480, 0x8A5F},+    {0xD481, 0x8A60},+    {0xD482, 0x8A61},+    {0xD483, 0x8A62},+    {0xD484, 0x8A63},+    {0xD485, 0x8A64},+    {0xD486, 0x8A65},+    {0xD487, 0x8A66},+    {0xD488, 0x8A67},+    {0xD489, 0x8A68},+    {0xD48A, 0x8A69},+    {0xD48B, 0x8A6A},+    {0xD48C, 0x8A6B},+    {0xD48D, 0x8A6C},+    {0xD48E, 0x8A6D},+    {0xD48F, 0x8A6E},+    {0xD490, 0x8A6F},+    {0xD491, 0x8A70},+    {0xD492, 0x8A71},+    {0xD493, 0x8A72},+    {0xD494, 0x8A73},+    {0xD495, 0x8A74},+    {0xD496, 0x8A75},+    {0xD497, 0x8A76},+    {0xD498, 0x8A77},+    {0xD499, 0x8A78},+    {0xD49A, 0x8A7A},+    {0xD49B, 0x8A7B},+    {0xD49C, 0x8A7C},+    {0xD49D, 0x8A7D},+    {0xD49E, 0x8A7E},+    {0xD49F, 0x8A7F},+    {0xD4A0, 0x8A80},+    {0xD4A1, 0x6D74},+    {0xD4A2, 0x5BD3},+    {0xD4A3, 0x88D5},+    {0xD4A4, 0x9884},+    {0xD4A5, 0x8C6B},+    {0xD4A6, 0x9A6D},+    {0xD4A7, 0x9E33},+    {0xD4A8, 0x6E0A},+    {0xD4A9, 0x51A4},+    {0xD4AA, 0x5143},+    {0xD4AB, 0x57A3},+    {0xD4AC, 0x8881},+    {0xD4AD, 0x539F},+    {0xD4AE, 0x63F4},+    {0xD4AF, 0x8F95},+    {0xD4B0, 0x56ED},+    {0xD4B1, 0x5458},+    {0xD4B2, 0x5706},+    {0xD4B3, 0x733F},+    {0xD4B4, 0x6E90},+    {0xD4B5, 0x7F18},+    {0xD4B6, 0x8FDC},+    {0xD4B7, 0x82D1},+    {0xD4B8, 0x613F},+    {0xD4B9, 0x6028},+    {0xD4BA, 0x9662},+    {0xD4BB, 0x66F0},+    {0xD4BC, 0x7EA6},+    {0xD4BD, 0x8D8A},+    {0xD4BE, 0x8DC3},+    {0xD4BF, 0x94A5},+    {0xD4C0, 0x5CB3},+    {0xD4C1, 0x7CA4},+    {0xD4C2, 0x6708},+    {0xD4C3, 0x60A6},+    {0xD4C4, 0x9605},+    {0xD4C5, 0x8018},+    {0xD4C6, 0x4E91},+    {0xD4C7, 0x90E7},+    {0xD4C8, 0x5300},+    {0xD4C9, 0x9668},+    {0xD4CA, 0x5141},+    {0xD4CB, 0x8FD0},+    {0xD4CC, 0x8574},+    {0xD4CD, 0x915D},+    {0xD4CE, 0x6655},+    {0xD4CF, 0x97F5},+    {0xD4D0, 0x5B55},+    {0xD4D1, 0x531D},+    {0xD4D2, 0x7838},+    {0xD4D3, 0x6742},+    {0xD4D4, 0x683D},+    {0xD4D5, 0x54C9},+    {0xD4D6, 0x707E},+    {0xD4D7, 0x5BB0},+    {0xD4D8, 0x8F7D},+    {0xD4D9, 0x518D},+    {0xD4DA, 0x5728},+    {0xD4DB, 0x54B1},+    {0xD4DC, 0x6512},+    {0xD4DD, 0x6682},+    {0xD4DE, 0x8D5E},+    {0xD4DF, 0x8D43},+    {0xD4E0, 0x810F},+    {0xD4E1, 0x846C},+    {0xD4E2, 0x906D},+    {0xD4E3, 0x7CDF},+    {0xD4E4, 0x51FF},+    {0xD4E5, 0x85FB},+    {0xD4E6, 0x67A3},+    {0xD4E7, 0x65E9},+    {0xD4E8, 0x6FA1},+    {0xD4E9, 0x86A4},+    {0xD4EA, 0x8E81},+    {0xD4EB, 0x566A},+    {0xD4EC, 0x9020},+    {0xD4ED, 0x7682},+    {0xD4EE, 0x7076},+    {0xD4EF, 0x71E5},+    {0xD4F0, 0x8D23},+    {0xD4F1, 0x62E9},+    {0xD4F2, 0x5219},+    {0xD4F3, 0x6CFD},+    {0xD4F4, 0x8D3C},+    {0xD4F5, 0x600E},+    {0xD4F6, 0x589E},+    {0xD4F7, 0x618E},+    {0xD4F8, 0x66FE},+    {0xD4F9, 0x8D60},+    {0xD4FA, 0x624E},+    {0xD4FB, 0x55B3},+    {0xD4FC, 0x6E23},+    {0xD4FD, 0x672D},+    {0xD4FE, 0x8F67},+    {0xD540, 0x8A81},+    {0xD541, 0x8A82},+    {0xD542, 0x8A83},+    {0xD543, 0x8A84},+    {0xD544, 0x8A85},+    {0xD545, 0x8A86},+    {0xD546, 0x8A87},+    {0xD547, 0x8A88},+    {0xD548, 0x8A8B},+    {0xD549, 0x8A8C},+    {0xD54A, 0x8A8D},+    {0xD54B, 0x8A8E},+    {0xD54C, 0x8A8F},+    {0xD54D, 0x8A90},+    {0xD54E, 0x8A91},+    {0xD54F, 0x8A92},+    {0xD550, 0x8A94},+    {0xD551, 0x8A95},+    {0xD552, 0x8A96},+    {0xD553, 0x8A97},+    {0xD554, 0x8A98},+    {0xD555, 0x8A99},+    {0xD556, 0x8A9A},+    {0xD557, 0x8A9B},+    {0xD558, 0x8A9C},+    {0xD559, 0x8A9D},+    {0xD55A, 0x8A9E},+    {0xD55B, 0x8A9F},+    {0xD55C, 0x8AA0},+    {0xD55D, 0x8AA1},+    {0xD55E, 0x8AA2},+    {0xD55F, 0x8AA3},+    {0xD560, 0x8AA4},+    {0xD561, 0x8AA5},+    {0xD562, 0x8AA6},+    {0xD563, 0x8AA7},+    {0xD564, 0x8AA8},+    {0xD565, 0x8AA9},+    {0xD566, 0x8AAA},+    {0xD567, 0x8AAB},+    {0xD568, 0x8AAC},+    {0xD569, 0x8AAD},+    {0xD56A, 0x8AAE},+    {0xD56B, 0x8AAF},+    {0xD56C, 0x8AB0},+    {0xD56D, 0x8AB1},+    {0xD56E, 0x8AB2},+    {0xD56F, 0x8AB3},+    {0xD570, 0x8AB4},+    {0xD571, 0x8AB5},+    {0xD572, 0x8AB6},+    {0xD573, 0x8AB7},+    {0xD574, 0x8AB8},+    {0xD575, 0x8AB9},+    {0xD576, 0x8ABA},+    {0xD577, 0x8ABB},+    {0xD578, 0x8ABC},+    {0xD579, 0x8ABD},+    {0xD57A, 0x8ABE},+    {0xD57B, 0x8ABF},+    {0xD57C, 0x8AC0},+    {0xD57D, 0x8AC1},+    {0xD57E, 0x8AC2},+    {0xD580, 0x8AC3},+    {0xD581, 0x8AC4},+    {0xD582, 0x8AC5},+    {0xD583, 0x8AC6},+    {0xD584, 0x8AC7},+    {0xD585, 0x8AC8},+    {0xD586, 0x8AC9},+    {0xD587, 0x8ACA},+    {0xD588, 0x8ACB},+    {0xD589, 0x8ACC},+    {0xD58A, 0x8ACD},+    {0xD58B, 0x8ACE},+    {0xD58C, 0x8ACF},+    {0xD58D, 0x8AD0},+    {0xD58E, 0x8AD1},+    {0xD58F, 0x8AD2},+    {0xD590, 0x8AD3},+    {0xD591, 0x8AD4},+    {0xD592, 0x8AD5},+    {0xD593, 0x8AD6},+    {0xD594, 0x8AD7},+    {0xD595, 0x8AD8},+    {0xD596, 0x8AD9},+    {0xD597, 0x8ADA},+    {0xD598, 0x8ADB},+    {0xD599, 0x8ADC},+    {0xD59A, 0x8ADD},+    {0xD59B, 0x8ADE},+    {0xD59C, 0x8ADF},+    {0xD59D, 0x8AE0},+    {0xD59E, 0x8AE1},+    {0xD59F, 0x8AE2},+    {0xD5A0, 0x8AE3},+    {0xD5A1, 0x94E1},+    {0xD5A2, 0x95F8},+    {0xD5A3, 0x7728},+    {0xD5A4, 0x6805},+    {0xD5A5, 0x69A8},+    {0xD5A6, 0x548B},+    {0xD5A7, 0x4E4D},+    {0xD5A8, 0x70B8},+    {0xD5A9, 0x8BC8},+    {0xD5AA, 0x6458},+    {0xD5AB, 0x658B},+    {0xD5AC, 0x5B85},+    {0xD5AD, 0x7A84},+    {0xD5AE, 0x503A},+    {0xD5AF, 0x5BE8},+    {0xD5B0, 0x77BB},+    {0xD5B1, 0x6BE1},+    {0xD5B2, 0x8A79},+    {0xD5B3, 0x7C98},+    {0xD5B4, 0x6CBE},+    {0xD5B5, 0x76CF},+    {0xD5B6, 0x65A9},+    {0xD5B7, 0x8F97},+    {0xD5B8, 0x5D2D},+    {0xD5B9, 0x5C55},+    {0xD5BA, 0x8638},+    {0xD5BB, 0x6808},+    {0xD5BC, 0x5360},+    {0xD5BD, 0x6218},+    {0xD5BE, 0x7AD9},+    {0xD5BF, 0x6E5B},+    {0xD5C0, 0x7EFD},+    {0xD5C1, 0x6A1F},+    {0xD5C2, 0x7AE0},+    {0xD5C3, 0x5F70},+    {0xD5C4, 0x6F33},+    {0xD5C5, 0x5F20},+    {0xD5C6, 0x638C},+    {0xD5C7, 0x6DA8},+    {0xD5C8, 0x6756},+    {0xD5C9, 0x4E08},+    {0xD5CA, 0x5E10},+    {0xD5CB, 0x8D26},+    {0xD5CC, 0x4ED7},+    {0xD5CD, 0x80C0},+    {0xD5CE, 0x7634},+    {0xD5CF, 0x969C},+    {0xD5D0, 0x62DB},+    {0xD5D1, 0x662D},+    {0xD5D2, 0x627E},+    {0xD5D3, 0x6CBC},+    {0xD5D4, 0x8D75},+    {0xD5D5, 0x7167},+    {0xD5D6, 0x7F69},+    {0xD5D7, 0x5146},+    {0xD5D8, 0x8087},+    {0xD5D9, 0x53EC},+    {0xD5DA, 0x906E},+    {0xD5DB, 0x6298},+    {0xD5DC, 0x54F2},+    {0xD5DD, 0x86F0},+    {0xD5DE, 0x8F99},+    {0xD5DF, 0x8005},+    {0xD5E0, 0x9517},+    {0xD5E1, 0x8517},+    {0xD5E2, 0x8FD9},+    {0xD5E3, 0x6D59},+    {0xD5E4, 0x73CD},+    {0xD5E5, 0x659F},+    {0xD5E6, 0x771F},+    {0xD5E7, 0x7504},+    {0xD5E8, 0x7827},+    {0xD5E9, 0x81FB},+    {0xD5EA, 0x8D1E},+    {0xD5EB, 0x9488},+    {0xD5EC, 0x4FA6},+    {0xD5ED, 0x6795},+    {0xD5EE, 0x75B9},+    {0xD5EF, 0x8BCA},+    {0xD5F0, 0x9707},+    {0xD5F1, 0x632F},+    {0xD5F2, 0x9547},+    {0xD5F3, 0x9635},+    {0xD5F4, 0x84B8},+    {0xD5F5, 0x6323},+    {0xD5F6, 0x7741},+    {0xD5F7, 0x5F81},+    {0xD5F8, 0x72F0},+    {0xD5F9, 0x4E89},+    {0xD5FA, 0x6014},+    {0xD5FB, 0x6574},+    {0xD5FC, 0x62EF},+    {0xD5FD, 0x6B63},+    {0xD5FE, 0x653F},+    {0xD640, 0x8AE4},+    {0xD641, 0x8AE5},+    {0xD642, 0x8AE6},+    {0xD643, 0x8AE7},+    {0xD644, 0x8AE8},+    {0xD645, 0x8AE9},+    {0xD646, 0x8AEA},+    {0xD647, 0x8AEB},+    {0xD648, 0x8AEC},+    {0xD649, 0x8AED},+    {0xD64A, 0x8AEE},+    {0xD64B, 0x8AEF},+    {0xD64C, 0x8AF0},+    {0xD64D, 0x8AF1},+    {0xD64E, 0x8AF2},+    {0xD64F, 0x8AF3},+    {0xD650, 0x8AF4},+    {0xD651, 0x8AF5},+    {0xD652, 0x8AF6},+    {0xD653, 0x8AF7},+    {0xD654, 0x8AF8},+    {0xD655, 0x8AF9},+    {0xD656, 0x8AFA},+    {0xD657, 0x8AFB},+    {0xD658, 0x8AFC},+    {0xD659, 0x8AFD},+    {0xD65A, 0x8AFE},+    {0xD65B, 0x8AFF},+    {0xD65C, 0x8B00},+    {0xD65D, 0x8B01},+    {0xD65E, 0x8B02},+    {0xD65F, 0x8B03},+    {0xD660, 0x8B04},+    {0xD661, 0x8B05},+    {0xD662, 0x8B06},+    {0xD663, 0x8B08},+    {0xD664, 0x8B09},+    {0xD665, 0x8B0A},+    {0xD666, 0x8B0B},+    {0xD667, 0x8B0C},+    {0xD668, 0x8B0D},+    {0xD669, 0x8B0E},+    {0xD66A, 0x8B0F},+    {0xD66B, 0x8B10},+    {0xD66C, 0x8B11},+    {0xD66D, 0x8B12},+    {0xD66E, 0x8B13},+    {0xD66F, 0x8B14},+    {0xD670, 0x8B15},+    {0xD671, 0x8B16},+    {0xD672, 0x8B17},+    {0xD673, 0x8B18},+    {0xD674, 0x8B19},+    {0xD675, 0x8B1A},+    {0xD676, 0x8B1B},+    {0xD677, 0x8B1C},+    {0xD678, 0x8B1D},+    {0xD679, 0x8B1E},+    {0xD67A, 0x8B1F},+    {0xD67B, 0x8B20},+    {0xD67C, 0x8B21},+    {0xD67D, 0x8B22},+    {0xD67E, 0x8B23},+    {0xD680, 0x8B24},+    {0xD681, 0x8B25},+    {0xD682, 0x8B27},+    {0xD683, 0x8B28},+    {0xD684, 0x8B29},+    {0xD685, 0x8B2A},+    {0xD686, 0x8B2B},+    {0xD687, 0x8B2C},+    {0xD688, 0x8B2D},+    {0xD689, 0x8B2E},+    {0xD68A, 0x8B2F},+    {0xD68B, 0x8B30},+    {0xD68C, 0x8B31},+    {0xD68D, 0x8B32},+    {0xD68E, 0x8B33},+    {0xD68F, 0x8B34},+    {0xD690, 0x8B35},+    {0xD691, 0x8B36},+    {0xD692, 0x8B37},+    {0xD693, 0x8B38},+    {0xD694, 0x8B39},+    {0xD695, 0x8B3A},+    {0xD696, 0x8B3B},+    {0xD697, 0x8B3C},+    {0xD698, 0x8B3D},+    {0xD699, 0x8B3E},+    {0xD69A, 0x8B3F},+    {0xD69B, 0x8B40},+    {0xD69C, 0x8B41},+    {0xD69D, 0x8B42},+    {0xD69E, 0x8B43},+    {0xD69F, 0x8B44},+    {0xD6A0, 0x8B45},+    {0xD6A1, 0x5E27},+    {0xD6A2, 0x75C7},+    {0xD6A3, 0x90D1},+    {0xD6A4, 0x8BC1},+    {0xD6A5, 0x829D},+    {0xD6A6, 0x679D},+    {0xD6A7, 0x652F},+    {0xD6A8, 0x5431},+    {0xD6A9, 0x8718},+    {0xD6AA, 0x77E5},+    {0xD6AB, 0x80A2},+    {0xD6AC, 0x8102},+    {0xD6AD, 0x6C41},+    {0xD6AE, 0x4E4B},+    {0xD6AF, 0x7EC7},+    {0xD6B0, 0x804C},+    {0xD6B1, 0x76F4},+    {0xD6B2, 0x690D},+    {0xD6B3, 0x6B96},+    {0xD6B4, 0x6267},+    {0xD6B5, 0x503C},+    {0xD6B6, 0x4F84},+    {0xD6B7, 0x5740},+    {0xD6B8, 0x6307},+    {0xD6B9, 0x6B62},+    {0xD6BA, 0x8DBE},+    {0xD6BB, 0x53EA},+    {0xD6BC, 0x65E8},+    {0xD6BD, 0x7EB8},+    {0xD6BE, 0x5FD7},+    {0xD6BF, 0x631A},+    {0xD6C0, 0x63B7},+    {0xD6C1, 0x81F3},+    {0xD6C2, 0x81F4},+    {0xD6C3, 0x7F6E},+    {0xD6C4, 0x5E1C},+    {0xD6C5, 0x5CD9},+    {0xD6C6, 0x5236},+    {0xD6C7, 0x667A},+    {0xD6C8, 0x79E9},+    {0xD6C9, 0x7A1A},+    {0xD6CA, 0x8D28},+    {0xD6CB, 0x7099},+    {0xD6CC, 0x75D4},+    {0xD6CD, 0x6EDE},+    {0xD6CE, 0x6CBB},+    {0xD6CF, 0x7A92},+    {0xD6D0, 0x4E2D},+    {0xD6D1, 0x76C5},+    {0xD6D2, 0x5FE0},+    {0xD6D3, 0x949F},+    {0xD6D4, 0x8877},+    {0xD6D5, 0x7EC8},+    {0xD6D6, 0x79CD},+    {0xD6D7, 0x80BF},+    {0xD6D8, 0x91CD},+    {0xD6D9, 0x4EF2},+    {0xD6DA, 0x4F17},+    {0xD6DB, 0x821F},+    {0xD6DC, 0x5468},+    {0xD6DD, 0x5DDE},+    {0xD6DE, 0x6D32},+    {0xD6DF, 0x8BCC},+    {0xD6E0, 0x7CA5},+    {0xD6E1, 0x8F74},+    {0xD6E2, 0x8098},+    {0xD6E3, 0x5E1A},+    {0xD6E4, 0x5492},+    {0xD6E5, 0x76B1},+    {0xD6E6, 0x5B99},+    {0xD6E7, 0x663C},+    {0xD6E8, 0x9AA4},+    {0xD6E9, 0x73E0},+    {0xD6EA, 0x682A},+    {0xD6EB, 0x86DB},+    {0xD6EC, 0x6731},+    {0xD6ED, 0x732A},+    {0xD6EE, 0x8BF8},+    {0xD6EF, 0x8BDB},+    {0xD6F0, 0x9010},+    {0xD6F1, 0x7AF9},+    {0xD6F2, 0x70DB},+    {0xD6F3, 0x716E},+    {0xD6F4, 0x62C4},+    {0xD6F5, 0x77A9},+    {0xD6F6, 0x5631},+    {0xD6F7, 0x4E3B},+    {0xD6F8, 0x8457},+    {0xD6F9, 0x67F1},+    {0xD6FA, 0x52A9},+    {0xD6FB, 0x86C0},+    {0xD6FC, 0x8D2E},+    {0xD6FD, 0x94F8},+    {0xD6FE, 0x7B51},+    {0xD740, 0x8B46},+    {0xD741, 0x8B47},+    {0xD742, 0x8B48},+    {0xD743, 0x8B49},+    {0xD744, 0x8B4A},+    {0xD745, 0x8B4B},+    {0xD746, 0x8B4C},+    {0xD747, 0x8B4D},+    {0xD748, 0x8B4E},+    {0xD749, 0x8B4F},+    {0xD74A, 0x8B50},+    {0xD74B, 0x8B51},+    {0xD74C, 0x8B52},+    {0xD74D, 0x8B53},+    {0xD74E, 0x8B54},+    {0xD74F, 0x8B55},+    {0xD750, 0x8B56},+    {0xD751, 0x8B57},+    {0xD752, 0x8B58},+    {0xD753, 0x8B59},+    {0xD754, 0x8B5A},+    {0xD755, 0x8B5B},+    {0xD756, 0x8B5C},+    {0xD757, 0x8B5D},+    {0xD758, 0x8B5E},+    {0xD759, 0x8B5F},+    {0xD75A, 0x8B60},+    {0xD75B, 0x8B61},+    {0xD75C, 0x8B62},+    {0xD75D, 0x8B63},+    {0xD75E, 0x8B64},+    {0xD75F, 0x8B65},+    {0xD760, 0x8B67},+    {0xD761, 0x8B68},+    {0xD762, 0x8B69},+    {0xD763, 0x8B6A},+    {0xD764, 0x8B6B},+    {0xD765, 0x8B6D},+    {0xD766, 0x8B6E},+    {0xD767, 0x8B6F},+    {0xD768, 0x8B70},+    {0xD769, 0x8B71},+    {0xD76A, 0x8B72},+    {0xD76B, 0x8B73},+    {0xD76C, 0x8B74},+    {0xD76D, 0x8B75},+    {0xD76E, 0x8B76},+    {0xD76F, 0x8B77},+    {0xD770, 0x8B78},+    {0xD771, 0x8B79},+    {0xD772, 0x8B7A},+    {0xD773, 0x8B7B},+    {0xD774, 0x8B7C},+    {0xD775, 0x8B7D},+    {0xD776, 0x8B7E},+    {0xD777, 0x8B7F},+    {0xD778, 0x8B80},+    {0xD779, 0x8B81},+    {0xD77A, 0x8B82},+    {0xD77B, 0x8B83},+    {0xD77C, 0x8B84},+    {0xD77D, 0x8B85},+    {0xD77E, 0x8B86},+    {0xD780, 0x8B87},+    {0xD781, 0x8B88},+    {0xD782, 0x8B89},+    {0xD783, 0x8B8A},+    {0xD784, 0x8B8B},+    {0xD785, 0x8B8C},+    {0xD786, 0x8B8D},+    {0xD787, 0x8B8E},+    {0xD788, 0x8B8F},+    {0xD789, 0x8B90},+    {0xD78A, 0x8B91},+    {0xD78B, 0x8B92},+    {0xD78C, 0x8B93},+    {0xD78D, 0x8B94},+    {0xD78E, 0x8B95},+    {0xD78F, 0x8B96},+    {0xD790, 0x8B97},+    {0xD791, 0x8B98},+    {0xD792, 0x8B99},+    {0xD793, 0x8B9A},+    {0xD794, 0x8B9B},+    {0xD795, 0x8B9C},+    {0xD796, 0x8B9D},+    {0xD797, 0x8B9E},+    {0xD798, 0x8B9F},+    {0xD799, 0x8BAC},+    {0xD79A, 0x8BB1},+    {0xD79B, 0x8BBB},+    {0xD79C, 0x8BC7},+    {0xD79D, 0x8BD0},+    {0xD79E, 0x8BEA},+    {0xD79F, 0x8C09},+    {0xD7A0, 0x8C1E},+    {0xD7A1, 0x4F4F},+    {0xD7A2, 0x6CE8},+    {0xD7A3, 0x795D},+    {0xD7A4, 0x9A7B},+    {0xD7A5, 0x6293},+    {0xD7A6, 0x722A},+    {0xD7A7, 0x62FD},+    {0xD7A8, 0x4E13},+    {0xD7A9, 0x7816},+    {0xD7AA, 0x8F6C},+    {0xD7AB, 0x64B0},+    {0xD7AC, 0x8D5A},+    {0xD7AD, 0x7BC6},+    {0xD7AE, 0x6869},+    {0xD7AF, 0x5E84},+    {0xD7B0, 0x88C5},+    {0xD7B1, 0x5986},+    {0xD7B2, 0x649E},+    {0xD7B3, 0x58EE},+    {0xD7B4, 0x72B6},+    {0xD7B5, 0x690E},+    {0xD7B6, 0x9525},+    {0xD7B7, 0x8FFD},+    {0xD7B8, 0x8D58},+    {0xD7B9, 0x5760},+    {0xD7BA, 0x7F00},+    {0xD7BB, 0x8C06},+    {0xD7BC, 0x51C6},+    {0xD7BD, 0x6349},+    {0xD7BE, 0x62D9},+    {0xD7BF, 0x5353},+    {0xD7C0, 0x684C},+    {0xD7C1, 0x7422},+    {0xD7C2, 0x8301},+    {0xD7C3, 0x914C},+    {0xD7C4, 0x5544},+    {0xD7C5, 0x7740},+    {0xD7C6, 0x707C},+    {0xD7C7, 0x6D4A},+    {0xD7C8, 0x5179},+    {0xD7C9, 0x54A8},+    {0xD7CA, 0x8D44},+    {0xD7CB, 0x59FF},+    {0xD7CC, 0x6ECB},+    {0xD7CD, 0x6DC4},+    {0xD7CE, 0x5B5C},+    {0xD7CF, 0x7D2B},+    {0xD7D0, 0x4ED4},+    {0xD7D1, 0x7C7D},+    {0xD7D2, 0x6ED3},+    {0xD7D3, 0x5B50},+    {0xD7D4, 0x81EA},+    {0xD7D5, 0x6E0D},+    {0xD7D6, 0x5B57},+    {0xD7D7, 0x9B03},+    {0xD7D8, 0x68D5},+    {0xD7D9, 0x8E2A},+    {0xD7DA, 0x5B97},+    {0xD7DB, 0x7EFC},+    {0xD7DC, 0x603B},+    {0xD7DD, 0x7EB5},+    {0xD7DE, 0x90B9},+    {0xD7DF, 0x8D70},+    {0xD7E0, 0x594F},+    {0xD7E1, 0x63CD},+    {0xD7E2, 0x79DF},+    {0xD7E3, 0x8DB3},+    {0xD7E4, 0x5352},+    {0xD7E5, 0x65CF},+    {0xD7E6, 0x7956},+    {0xD7E7, 0x8BC5},+    {0xD7E8, 0x963B},+    {0xD7E9, 0x7EC4},+    {0xD7EA, 0x94BB},+    {0xD7EB, 0x7E82},+    {0xD7EC, 0x5634},+    {0xD7ED, 0x9189},+    {0xD7EE, 0x6700},+    {0xD7EF, 0x7F6A},+    {0xD7F0, 0x5C0A},+    {0xD7F1, 0x9075},+    {0xD7F2, 0x6628},+    {0xD7F3, 0x5DE6},+    {0xD7F4, 0x4F50},+    {0xD7F5, 0x67DE},+    {0xD7F6, 0x505A},+    {0xD7F7, 0x4F5C},+    {0xD7F8, 0x5750},+    {0xD7F9, 0x5EA7},+    {0xD7FA, 0xE810},+    {0xD7FB, 0xE811},+    {0xD7FC, 0xE812},+    {0xD7FD, 0xE813},+    {0xD7FE, 0xE814},+    {0xD840, 0x8C38},+    {0xD841, 0x8C39},+    {0xD842, 0x8C3A},+    {0xD843, 0x8C3B},+    {0xD844, 0x8C3C},+    {0xD845, 0x8C3D},+    {0xD846, 0x8C3E},+    {0xD847, 0x8C3F},+    {0xD848, 0x8C40},+    {0xD849, 0x8C42},+    {0xD84A, 0x8C43},+    {0xD84B, 0x8C44},+    {0xD84C, 0x8C45},+    {0xD84D, 0x8C48},+    {0xD84E, 0x8C4A},+    {0xD84F, 0x8C4B},+    {0xD850, 0x8C4D},+    {0xD851, 0x8C4E},+    {0xD852, 0x8C4F},+    {0xD853, 0x8C50},+    {0xD854, 0x8C51},+    {0xD855, 0x8C52},+    {0xD856, 0x8C53},+    {0xD857, 0x8C54},+    {0xD858, 0x8C56},+    {0xD859, 0x8C57},+    {0xD85A, 0x8C58},+    {0xD85B, 0x8C59},+    {0xD85C, 0x8C5B},+    {0xD85D, 0x8C5C},+    {0xD85E, 0x8C5D},+    {0xD85F, 0x8C5E},+    {0xD860, 0x8C5F},+    {0xD861, 0x8C60},+    {0xD862, 0x8C63},+    {0xD863, 0x8C64},+    {0xD864, 0x8C65},+    {0xD865, 0x8C66},+    {0xD866, 0x8C67},+    {0xD867, 0x8C68},+    {0xD868, 0x8C69},+    {0xD869, 0x8C6C},+    {0xD86A, 0x8C6D},+    {0xD86B, 0x8C6E},+    {0xD86C, 0x8C6F},+    {0xD86D, 0x8C70},+    {0xD86E, 0x8C71},+    {0xD86F, 0x8C72},+    {0xD870, 0x8C74},+    {0xD871, 0x8C75},+    {0xD872, 0x8C76},+    {0xD873, 0x8C77},+    {0xD874, 0x8C7B},+    {0xD875, 0x8C7C},+    {0xD876, 0x8C7D},+    {0xD877, 0x8C7E},+    {0xD878, 0x8C7F},+    {0xD879, 0x8C80},+    {0xD87A, 0x8C81},+    {0xD87B, 0x8C83},+    {0xD87C, 0x8C84},+    {0xD87D, 0x8C86},+    {0xD87E, 0x8C87},+    {0xD880, 0x8C88},+    {0xD881, 0x8C8B},+    {0xD882, 0x8C8D},+    {0xD883, 0x8C8E},+    {0xD884, 0x8C8F},+    {0xD885, 0x8C90},+    {0xD886, 0x8C91},+    {0xD887, 0x8C92},+    {0xD888, 0x8C93},+    {0xD889, 0x8C95},+    {0xD88A, 0x8C96},+    {0xD88B, 0x8C97},+    {0xD88C, 0x8C99},+    {0xD88D, 0x8C9A},+    {0xD88E, 0x8C9B},+    {0xD88F, 0x8C9C},+    {0xD890, 0x8C9D},+    {0xD891, 0x8C9E},+    {0xD892, 0x8C9F},+    {0xD893, 0x8CA0},+    {0xD894, 0x8CA1},+    {0xD895, 0x8CA2},+    {0xD896, 0x8CA3},+    {0xD897, 0x8CA4},+    {0xD898, 0x8CA5},+    {0xD899, 0x8CA6},+    {0xD89A, 0x8CA7},+    {0xD89B, 0x8CA8},+    {0xD89C, 0x8CA9},+    {0xD89D, 0x8CAA},+    {0xD89E, 0x8CAB},+    {0xD89F, 0x8CAC},+    {0xD8A0, 0x8CAD},+    {0xD8A1, 0x4E8D},+    {0xD8A2, 0x4E0C},+    {0xD8A3, 0x5140},+    {0xD8A4, 0x4E10},+    {0xD8A5, 0x5EFF},+    {0xD8A6, 0x5345},+    {0xD8A7, 0x4E15},+    {0xD8A8, 0x4E98},+    {0xD8A9, 0x4E1E},+    {0xD8AA, 0x9B32},+    {0xD8AB, 0x5B6C},+    {0xD8AC, 0x5669},+    {0xD8AD, 0x4E28},+    {0xD8AE, 0x79BA},+    {0xD8AF, 0x4E3F},+    {0xD8B0, 0x5315},+    {0xD8B1, 0x4E47},+    {0xD8B2, 0x592D},+    {0xD8B3, 0x723B},+    {0xD8B4, 0x536E},+    {0xD8B5, 0x6C10},+    {0xD8B6, 0x56DF},+    {0xD8B7, 0x80E4},+    {0xD8B8, 0x9997},+    {0xD8B9, 0x6BD3},+    {0xD8BA, 0x777E},+    {0xD8BB, 0x9F17},+    {0xD8BC, 0x4E36},+    {0xD8BD, 0x4E9F},+    {0xD8BE, 0x9F10},+    {0xD8BF, 0x4E5C},+    {0xD8C0, 0x4E69},+    {0xD8C1, 0x4E93},+    {0xD8C2, 0x8288},+    {0xD8C3, 0x5B5B},+    {0xD8C4, 0x556C},+    {0xD8C5, 0x560F},+    {0xD8C6, 0x4EC4},+    {0xD8C7, 0x538D},+    {0xD8C8, 0x539D},+    {0xD8C9, 0x53A3},+    {0xD8CA, 0x53A5},+    {0xD8CB, 0x53AE},+    {0xD8CC, 0x9765},+    {0xD8CD, 0x8D5D},+    {0xD8CE, 0x531A},+    {0xD8CF, 0x53F5},+    {0xD8D0, 0x5326},+    {0xD8D1, 0x532E},+    {0xD8D2, 0x533E},+    {0xD8D3, 0x8D5C},+    {0xD8D4, 0x5366},+    {0xD8D5, 0x5363},+    {0xD8D6, 0x5202},+    {0xD8D7, 0x5208},+    {0xD8D8, 0x520E},+    {0xD8D9, 0x522D},+    {0xD8DA, 0x5233},+    {0xD8DB, 0x523F},+    {0xD8DC, 0x5240},+    {0xD8DD, 0x524C},+    {0xD8DE, 0x525E},+    {0xD8DF, 0x5261},+    {0xD8E0, 0x525C},+    {0xD8E1, 0x84AF},+    {0xD8E2, 0x527D},+    {0xD8E3, 0x5282},+    {0xD8E4, 0x5281},+    {0xD8E5, 0x5290},+    {0xD8E6, 0x5293},+    {0xD8E7, 0x5182},+    {0xD8E8, 0x7F54},+    {0xD8E9, 0x4EBB},+    {0xD8EA, 0x4EC3},+    {0xD8EB, 0x4EC9},+    {0xD8EC, 0x4EC2},+    {0xD8ED, 0x4EE8},+    {0xD8EE, 0x4EE1},+    {0xD8EF, 0x4EEB},+    {0xD8F0, 0x4EDE},+    {0xD8F1, 0x4F1B},+    {0xD8F2, 0x4EF3},+    {0xD8F3, 0x4F22},+    {0xD8F4, 0x4F64},+    {0xD8F5, 0x4EF5},+    {0xD8F6, 0x4F25},+    {0xD8F7, 0x4F27},+    {0xD8F8, 0x4F09},+    {0xD8F9, 0x4F2B},+    {0xD8FA, 0x4F5E},+    {0xD8FB, 0x4F67},+    {0xD8FC, 0x6538},+    {0xD8FD, 0x4F5A},+    {0xD8FE, 0x4F5D},+    {0xD940, 0x8CAE},+    {0xD941, 0x8CAF},+    {0xD942, 0x8CB0},+    {0xD943, 0x8CB1},+    {0xD944, 0x8CB2},+    {0xD945, 0x8CB3},+    {0xD946, 0x8CB4},+    {0xD947, 0x8CB5},+    {0xD948, 0x8CB6},+    {0xD949, 0x8CB7},+    {0xD94A, 0x8CB8},+    {0xD94B, 0x8CB9},+    {0xD94C, 0x8CBA},+    {0xD94D, 0x8CBB},+    {0xD94E, 0x8CBC},+    {0xD94F, 0x8CBD},+    {0xD950, 0x8CBE},+    {0xD951, 0x8CBF},+    {0xD952, 0x8CC0},+    {0xD953, 0x8CC1},+    {0xD954, 0x8CC2},+    {0xD955, 0x8CC3},+    {0xD956, 0x8CC4},+    {0xD957, 0x8CC5},+    {0xD958, 0x8CC6},+    {0xD959, 0x8CC7},+    {0xD95A, 0x8CC8},+    {0xD95B, 0x8CC9},+    {0xD95C, 0x8CCA},+    {0xD95D, 0x8CCB},+    {0xD95E, 0x8CCC},+    {0xD95F, 0x8CCD},+    {0xD960, 0x8CCE},+    {0xD961, 0x8CCF},+    {0xD962, 0x8CD0},+    {0xD963, 0x8CD1},+    {0xD964, 0x8CD2},+    {0xD965, 0x8CD3},+    {0xD966, 0x8CD4},+    {0xD967, 0x8CD5},+    {0xD968, 0x8CD6},+    {0xD969, 0x8CD7},+    {0xD96A, 0x8CD8},+    {0xD96B, 0x8CD9},+    {0xD96C, 0x8CDA},+    {0xD96D, 0x8CDB},+    {0xD96E, 0x8CDC},+    {0xD96F, 0x8CDD},+    {0xD970, 0x8CDE},+    {0xD971, 0x8CDF},+    {0xD972, 0x8CE0},+    {0xD973, 0x8CE1},+    {0xD974, 0x8CE2},+    {0xD975, 0x8CE3},+    {0xD976, 0x8CE4},+    {0xD977, 0x8CE5},+    {0xD978, 0x8CE6},+    {0xD979, 0x8CE7},+    {0xD97A, 0x8CE8},+    {0xD97B, 0x8CE9},+    {0xD97C, 0x8CEA},+    {0xD97D, 0x8CEB},+    {0xD97E, 0x8CEC},+    {0xD980, 0x8CED},+    {0xD981, 0x8CEE},+    {0xD982, 0x8CEF},+    {0xD983, 0x8CF0},+    {0xD984, 0x8CF1},+    {0xD985, 0x8CF2},+    {0xD986, 0x8CF3},+    {0xD987, 0x8CF4},+    {0xD988, 0x8CF5},+    {0xD989, 0x8CF6},+    {0xD98A, 0x8CF7},+    {0xD98B, 0x8CF8},+    {0xD98C, 0x8CF9},+    {0xD98D, 0x8CFA},+    {0xD98E, 0x8CFB},+    {0xD98F, 0x8CFC},+    {0xD990, 0x8CFD},+    {0xD991, 0x8CFE},+    {0xD992, 0x8CFF},+    {0xD993, 0x8D00},+    {0xD994, 0x8D01},+    {0xD995, 0x8D02},+    {0xD996, 0x8D03},+    {0xD997, 0x8D04},+    {0xD998, 0x8D05},+    {0xD999, 0x8D06},+    {0xD99A, 0x8D07},+    {0xD99B, 0x8D08},+    {0xD99C, 0x8D09},+    {0xD99D, 0x8D0A},+    {0xD99E, 0x8D0B},+    {0xD99F, 0x8D0C},+    {0xD9A0, 0x8D0D},+    {0xD9A1, 0x4F5F},+    {0xD9A2, 0x4F57},+    {0xD9A3, 0x4F32},+    {0xD9A4, 0x4F3D},+    {0xD9A5, 0x4F76},+    {0xD9A6, 0x4F74},+    {0xD9A7, 0x4F91},+    {0xD9A8, 0x4F89},+    {0xD9A9, 0x4F83},+    {0xD9AA, 0x4F8F},+    {0xD9AB, 0x4F7E},+    {0xD9AC, 0x4F7B},+    {0xD9AD, 0x4FAA},+    {0xD9AE, 0x4F7C},+    {0xD9AF, 0x4FAC},+    {0xD9B0, 0x4F94},+    {0xD9B1, 0x4FE6},+    {0xD9B2, 0x4FE8},+    {0xD9B3, 0x4FEA},+    {0xD9B4, 0x4FC5},+    {0xD9B5, 0x4FDA},+    {0xD9B6, 0x4FE3},+    {0xD9B7, 0x4FDC},+    {0xD9B8, 0x4FD1},+    {0xD9B9, 0x4FDF},+    {0xD9BA, 0x4FF8},+    {0xD9BB, 0x5029},+    {0xD9BC, 0x504C},+    {0xD9BD, 0x4FF3},+    {0xD9BE, 0x502C},+    {0xD9BF, 0x500F},+    {0xD9C0, 0x502E},+    {0xD9C1, 0x502D},+    {0xD9C2, 0x4FFE},+    {0xD9C3, 0x501C},+    {0xD9C4, 0x500C},+    {0xD9C5, 0x5025},+    {0xD9C6, 0x5028},+    {0xD9C7, 0x507E},+    {0xD9C8, 0x5043},+    {0xD9C9, 0x5055},+    {0xD9CA, 0x5048},+    {0xD9CB, 0x504E},+    {0xD9CC, 0x506C},+    {0xD9CD, 0x507B},+    {0xD9CE, 0x50A5},+    {0xD9CF, 0x50A7},+    {0xD9D0, 0x50A9},+    {0xD9D1, 0x50BA},+    {0xD9D2, 0x50D6},+    {0xD9D3, 0x5106},+    {0xD9D4, 0x50ED},+    {0xD9D5, 0x50EC},+    {0xD9D6, 0x50E6},+    {0xD9D7, 0x50EE},+    {0xD9D8, 0x5107},+    {0xD9D9, 0x510B},+    {0xD9DA, 0x4EDD},+    {0xD9DB, 0x6C3D},+    {0xD9DC, 0x4F58},+    {0xD9DD, 0x4F65},+    {0xD9DE, 0x4FCE},+    {0xD9DF, 0x9FA0},+    {0xD9E0, 0x6C46},+    {0xD9E1, 0x7C74},+    {0xD9E2, 0x516E},+    {0xD9E3, 0x5DFD},+    {0xD9E4, 0x9EC9},+    {0xD9E5, 0x9998},+    {0xD9E6, 0x5181},+    {0xD9E7, 0x5914},+    {0xD9E8, 0x52F9},+    {0xD9E9, 0x530D},+    {0xD9EA, 0x8A07},+    {0xD9EB, 0x5310},+    {0xD9EC, 0x51EB},+    {0xD9ED, 0x5919},+    {0xD9EE, 0x5155},+    {0xD9EF, 0x4EA0},+    {0xD9F0, 0x5156},+    {0xD9F1, 0x4EB3},+    {0xD9F2, 0x886E},+    {0xD9F3, 0x88A4},+    {0xD9F4, 0x4EB5},+    {0xD9F5, 0x8114},+    {0xD9F6, 0x88D2},+    {0xD9F7, 0x7980},+    {0xD9F8, 0x5B34},+    {0xD9F9, 0x8803},+    {0xD9FA, 0x7FB8},+    {0xD9FB, 0x51AB},+    {0xD9FC, 0x51B1},+    {0xD9FD, 0x51BD},+    {0xD9FE, 0x51BC},+    {0xDA40, 0x8D0E},+    {0xDA41, 0x8D0F},+    {0xDA42, 0x8D10},+    {0xDA43, 0x8D11},+    {0xDA44, 0x8D12},+    {0xDA45, 0x8D13},+    {0xDA46, 0x8D14},+    {0xDA47, 0x8D15},+    {0xDA48, 0x8D16},+    {0xDA49, 0x8D17},+    {0xDA4A, 0x8D18},+    {0xDA4B, 0x8D19},+    {0xDA4C, 0x8D1A},+    {0xDA4D, 0x8D1B},+    {0xDA4E, 0x8D1C},+    {0xDA4F, 0x8D20},+    {0xDA50, 0x8D51},+    {0xDA51, 0x8D52},+    {0xDA52, 0x8D57},+    {0xDA53, 0x8D5F},+    {0xDA54, 0x8D65},+    {0xDA55, 0x8D68},+    {0xDA56, 0x8D69},+    {0xDA57, 0x8D6A},+    {0xDA58, 0x8D6C},+    {0xDA59, 0x8D6E},+    {0xDA5A, 0x8D6F},+    {0xDA5B, 0x8D71},+    {0xDA5C, 0x8D72},+    {0xDA5D, 0x8D78},+    {0xDA5E, 0x8D79},+    {0xDA5F, 0x8D7A},+    {0xDA60, 0x8D7B},+    {0xDA61, 0x8D7C},+    {0xDA62, 0x8D7D},+    {0xDA63, 0x8D7E},+    {0xDA64, 0x8D7F},+    {0xDA65, 0x8D80},+    {0xDA66, 0x8D82},+    {0xDA67, 0x8D83},+    {0xDA68, 0x8D86},+    {0xDA69, 0x8D87},+    {0xDA6A, 0x8D88},+    {0xDA6B, 0x8D89},+    {0xDA6C, 0x8D8C},+    {0xDA6D, 0x8D8D},+    {0xDA6E, 0x8D8E},+    {0xDA6F, 0x8D8F},+    {0xDA70, 0x8D90},+    {0xDA71, 0x8D92},+    {0xDA72, 0x8D93},+    {0xDA73, 0x8D95},+    {0xDA74, 0x8D96},+    {0xDA75, 0x8D97},+    {0xDA76, 0x8D98},+    {0xDA77, 0x8D99},+    {0xDA78, 0x8D9A},+    {0xDA79, 0x8D9B},+    {0xDA7A, 0x8D9C},+    {0xDA7B, 0x8D9D},+    {0xDA7C, 0x8D9E},+    {0xDA7D, 0x8DA0},+    {0xDA7E, 0x8DA1},+    {0xDA80, 0x8DA2},+    {0xDA81, 0x8DA4},+    {0xDA82, 0x8DA5},+    {0xDA83, 0x8DA6},+    {0xDA84, 0x8DA7},+    {0xDA85, 0x8DA8},+    {0xDA86, 0x8DA9},+    {0xDA87, 0x8DAA},+    {0xDA88, 0x8DAB},+    {0xDA89, 0x8DAC},+    {0xDA8A, 0x8DAD},+    {0xDA8B, 0x8DAE},+    {0xDA8C, 0x8DAF},+    {0xDA8D, 0x8DB0},+    {0xDA8E, 0x8DB2},+    {0xDA8F, 0x8DB6},+    {0xDA90, 0x8DB7},+    {0xDA91, 0x8DB9},+    {0xDA92, 0x8DBB},+    {0xDA93, 0x8DBD},+    {0xDA94, 0x8DC0},+    {0xDA95, 0x8DC1},+    {0xDA96, 0x8DC2},+    {0xDA97, 0x8DC5},+    {0xDA98, 0x8DC7},+    {0xDA99, 0x8DC8},+    {0xDA9A, 0x8DC9},+    {0xDA9B, 0x8DCA},+    {0xDA9C, 0x8DCD},+    {0xDA9D, 0x8DD0},+    {0xDA9E, 0x8DD2},+    {0xDA9F, 0x8DD3},+    {0xDAA0, 0x8DD4},+    {0xDAA1, 0x51C7},+    {0xDAA2, 0x5196},+    {0xDAA3, 0x51A2},+    {0xDAA4, 0x51A5},+    {0xDAA5, 0x8BA0},+    {0xDAA6, 0x8BA6},+    {0xDAA7, 0x8BA7},+    {0xDAA8, 0x8BAA},+    {0xDAA9, 0x8BB4},+    {0xDAAA, 0x8BB5},+    {0xDAAB, 0x8BB7},+    {0xDAAC, 0x8BC2},+    {0xDAAD, 0x8BC3},+    {0xDAAE, 0x8BCB},+    {0xDAAF, 0x8BCF},+    {0xDAB0, 0x8BCE},+    {0xDAB1, 0x8BD2},+    {0xDAB2, 0x8BD3},+    {0xDAB3, 0x8BD4},+    {0xDAB4, 0x8BD6},+    {0xDAB5, 0x8BD8},+    {0xDAB6, 0x8BD9},+    {0xDAB7, 0x8BDC},+    {0xDAB8, 0x8BDF},+    {0xDAB9, 0x8BE0},+    {0xDABA, 0x8BE4},+    {0xDABB, 0x8BE8},+    {0xDABC, 0x8BE9},+    {0xDABD, 0x8BEE},+    {0xDABE, 0x8BF0},+    {0xDABF, 0x8BF3},+    {0xDAC0, 0x8BF6},+    {0xDAC1, 0x8BF9},+    {0xDAC2, 0x8BFC},+    {0xDAC3, 0x8BFF},+    {0xDAC4, 0x8C00},+    {0xDAC5, 0x8C02},+    {0xDAC6, 0x8C04},+    {0xDAC7, 0x8C07},+    {0xDAC8, 0x8C0C},+    {0xDAC9, 0x8C0F},+    {0xDACA, 0x8C11},+    {0xDACB, 0x8C12},+    {0xDACC, 0x8C14},+    {0xDACD, 0x8C15},+    {0xDACE, 0x8C16},+    {0xDACF, 0x8C19},+    {0xDAD0, 0x8C1B},+    {0xDAD1, 0x8C18},+    {0xDAD2, 0x8C1D},+    {0xDAD3, 0x8C1F},+    {0xDAD4, 0x8C20},+    {0xDAD5, 0x8C21},+    {0xDAD6, 0x8C25},+    {0xDAD7, 0x8C27},+    {0xDAD8, 0x8C2A},+    {0xDAD9, 0x8C2B},+    {0xDADA, 0x8C2E},+    {0xDADB, 0x8C2F},+    {0xDADC, 0x8C32},+    {0xDADD, 0x8C33},+    {0xDADE, 0x8C35},+    {0xDADF, 0x8C36},+    {0xDAE0, 0x5369},+    {0xDAE1, 0x537A},+    {0xDAE2, 0x961D},+    {0xDAE3, 0x9622},+    {0xDAE4, 0x9621},+    {0xDAE5, 0x9631},+    {0xDAE6, 0x962A},+    {0xDAE7, 0x963D},+    {0xDAE8, 0x963C},+    {0xDAE9, 0x9642},+    {0xDAEA, 0x9649},+    {0xDAEB, 0x9654},+    {0xDAEC, 0x965F},+    {0xDAED, 0x9667},+    {0xDAEE, 0x966C},+    {0xDAEF, 0x9672},+    {0xDAF0, 0x9674},+    {0xDAF1, 0x9688},+    {0xDAF2, 0x968D},+    {0xDAF3, 0x9697},+    {0xDAF4, 0x96B0},+    {0xDAF5, 0x9097},+    {0xDAF6, 0x909B},+    {0xDAF7, 0x909D},+    {0xDAF8, 0x9099},+    {0xDAF9, 0x90AC},+    {0xDAFA, 0x90A1},+    {0xDAFB, 0x90B4},+    {0xDAFC, 0x90B3},+    {0xDAFD, 0x90B6},+    {0xDAFE, 0x90BA},+    {0xDB40, 0x8DD5},+    {0xDB41, 0x8DD8},+    {0xDB42, 0x8DD9},+    {0xDB43, 0x8DDC},+    {0xDB44, 0x8DE0},+    {0xDB45, 0x8DE1},+    {0xDB46, 0x8DE2},+    {0xDB47, 0x8DE5},+    {0xDB48, 0x8DE6},+    {0xDB49, 0x8DE7},+    {0xDB4A, 0x8DE9},+    {0xDB4B, 0x8DED},+    {0xDB4C, 0x8DEE},+    {0xDB4D, 0x8DF0},+    {0xDB4E, 0x8DF1},+    {0xDB4F, 0x8DF2},+    {0xDB50, 0x8DF4},+    {0xDB51, 0x8DF6},+    {0xDB52, 0x8DFC},+    {0xDB53, 0x8DFE},+    {0xDB54, 0x8DFF},+    {0xDB55, 0x8E00},+    {0xDB56, 0x8E01},+    {0xDB57, 0x8E02},+    {0xDB58, 0x8E03},+    {0xDB59, 0x8E04},+    {0xDB5A, 0x8E06},+    {0xDB5B, 0x8E07},+    {0xDB5C, 0x8E08},+    {0xDB5D, 0x8E0B},+    {0xDB5E, 0x8E0D},+    {0xDB5F, 0x8E0E},+    {0xDB60, 0x8E10},+    {0xDB61, 0x8E11},+    {0xDB62, 0x8E12},+    {0xDB63, 0x8E13},+    {0xDB64, 0x8E15},+    {0xDB65, 0x8E16},+    {0xDB66, 0x8E17},+    {0xDB67, 0x8E18},+    {0xDB68, 0x8E19},+    {0xDB69, 0x8E1A},+    {0xDB6A, 0x8E1B},+    {0xDB6B, 0x8E1C},+    {0xDB6C, 0x8E20},+    {0xDB6D, 0x8E21},+    {0xDB6E, 0x8E24},+    {0xDB6F, 0x8E25},+    {0xDB70, 0x8E26},+    {0xDB71, 0x8E27},+    {0xDB72, 0x8E28},+    {0xDB73, 0x8E2B},+    {0xDB74, 0x8E2D},+    {0xDB75, 0x8E30},+    {0xDB76, 0x8E32},+    {0xDB77, 0x8E33},+    {0xDB78, 0x8E34},+    {0xDB79, 0x8E36},+    {0xDB7A, 0x8E37},+    {0xDB7B, 0x8E38},+    {0xDB7C, 0x8E3B},+    {0xDB7D, 0x8E3C},+    {0xDB7E, 0x8E3E},+    {0xDB80, 0x8E3F},+    {0xDB81, 0x8E43},+    {0xDB82, 0x8E45},+    {0xDB83, 0x8E46},+    {0xDB84, 0x8E4C},+    {0xDB85, 0x8E4D},+    {0xDB86, 0x8E4E},+    {0xDB87, 0x8E4F},+    {0xDB88, 0x8E50},+    {0xDB89, 0x8E53},+    {0xDB8A, 0x8E54},+    {0xDB8B, 0x8E55},+    {0xDB8C, 0x8E56},+    {0xDB8D, 0x8E57},+    {0xDB8E, 0x8E58},+    {0xDB8F, 0x8E5A},+    {0xDB90, 0x8E5B},+    {0xDB91, 0x8E5C},+    {0xDB92, 0x8E5D},+    {0xDB93, 0x8E5E},+    {0xDB94, 0x8E5F},+    {0xDB95, 0x8E60},+    {0xDB96, 0x8E61},+    {0xDB97, 0x8E62},+    {0xDB98, 0x8E63},+    {0xDB99, 0x8E64},+    {0xDB9A, 0x8E65},+    {0xDB9B, 0x8E67},+    {0xDB9C, 0x8E68},+    {0xDB9D, 0x8E6A},+    {0xDB9E, 0x8E6B},+    {0xDB9F, 0x8E6E},+    {0xDBA0, 0x8E71},+    {0xDBA1, 0x90B8},+    {0xDBA2, 0x90B0},+    {0xDBA3, 0x90CF},+    {0xDBA4, 0x90C5},+    {0xDBA5, 0x90BE},+    {0xDBA6, 0x90D0},+    {0xDBA7, 0x90C4},+    {0xDBA8, 0x90C7},+    {0xDBA9, 0x90D3},+    {0xDBAA, 0x90E6},+    {0xDBAB, 0x90E2},+    {0xDBAC, 0x90DC},+    {0xDBAD, 0x90D7},+    {0xDBAE, 0x90DB},+    {0xDBAF, 0x90EB},+    {0xDBB0, 0x90EF},+    {0xDBB1, 0x90FE},+    {0xDBB2, 0x9104},+    {0xDBB3, 0x9122},+    {0xDBB4, 0x911E},+    {0xDBB5, 0x9123},+    {0xDBB6, 0x9131},+    {0xDBB7, 0x912F},+    {0xDBB8, 0x9139},+    {0xDBB9, 0x9143},+    {0xDBBA, 0x9146},+    {0xDBBB, 0x520D},+    {0xDBBC, 0x5942},+    {0xDBBD, 0x52A2},+    {0xDBBE, 0x52AC},+    {0xDBBF, 0x52AD},+    {0xDBC0, 0x52BE},+    {0xDBC1, 0x54FF},+    {0xDBC2, 0x52D0},+    {0xDBC3, 0x52D6},+    {0xDBC4, 0x52F0},+    {0xDBC5, 0x53DF},+    {0xDBC6, 0x71EE},+    {0xDBC7, 0x77CD},+    {0xDBC8, 0x5EF4},+    {0xDBC9, 0x51F5},+    {0xDBCA, 0x51FC},+    {0xDBCB, 0x9B2F},+    {0xDBCC, 0x53B6},+    {0xDBCD, 0x5F01},+    {0xDBCE, 0x755A},+    {0xDBCF, 0x5DEF},+    {0xDBD0, 0x574C},+    {0xDBD1, 0x57A9},+    {0xDBD2, 0x57A1},+    {0xDBD3, 0x587E},+    {0xDBD4, 0x58BC},+    {0xDBD5, 0x58C5},+    {0xDBD6, 0x58D1},+    {0xDBD7, 0x5729},+    {0xDBD8, 0x572C},+    {0xDBD9, 0x572A},+    {0xDBDA, 0x5733},+    {0xDBDB, 0x5739},+    {0xDBDC, 0x572E},+    {0xDBDD, 0x572F},+    {0xDBDE, 0x575C},+    {0xDBDF, 0x573B},+    {0xDBE0, 0x5742},+    {0xDBE1, 0x5769},+    {0xDBE2, 0x5785},+    {0xDBE3, 0x576B},+    {0xDBE4, 0x5786},+    {0xDBE5, 0x577C},+    {0xDBE6, 0x577B},+    {0xDBE7, 0x5768},+    {0xDBE8, 0x576D},+    {0xDBE9, 0x5776},+    {0xDBEA, 0x5773},+    {0xDBEB, 0x57AD},+    {0xDBEC, 0x57A4},+    {0xDBED, 0x578C},+    {0xDBEE, 0x57B2},+    {0xDBEF, 0x57CF},+    {0xDBF0, 0x57A7},+    {0xDBF1, 0x57B4},+    {0xDBF2, 0x5793},+    {0xDBF3, 0x57A0},+    {0xDBF4, 0x57D5},+    {0xDBF5, 0x57D8},+    {0xDBF6, 0x57DA},+    {0xDBF7, 0x57D9},+    {0xDBF8, 0x57D2},+    {0xDBF9, 0x57B8},+    {0xDBFA, 0x57F4},+    {0xDBFB, 0x57EF},+    {0xDBFC, 0x57F8},+    {0xDBFD, 0x57E4},+    {0xDBFE, 0x57DD},+    {0xDC40, 0x8E73},+    {0xDC41, 0x8E75},+    {0xDC42, 0x8E77},+    {0xDC43, 0x8E78},+    {0xDC44, 0x8E79},+    {0xDC45, 0x8E7A},+    {0xDC46, 0x8E7B},+    {0xDC47, 0x8E7D},+    {0xDC48, 0x8E7E},+    {0xDC49, 0x8E80},+    {0xDC4A, 0x8E82},+    {0xDC4B, 0x8E83},+    {0xDC4C, 0x8E84},+    {0xDC4D, 0x8E86},+    {0xDC4E, 0x8E88},+    {0xDC4F, 0x8E89},+    {0xDC50, 0x8E8A},+    {0xDC51, 0x8E8B},+    {0xDC52, 0x8E8C},+    {0xDC53, 0x8E8D},+    {0xDC54, 0x8E8E},+    {0xDC55, 0x8E91},+    {0xDC56, 0x8E92},+    {0xDC57, 0x8E93},+    {0xDC58, 0x8E95},+    {0xDC59, 0x8E96},+    {0xDC5A, 0x8E97},+    {0xDC5B, 0x8E98},+    {0xDC5C, 0x8E99},+    {0xDC5D, 0x8E9A},+    {0xDC5E, 0x8E9B},+    {0xDC5F, 0x8E9D},+    {0xDC60, 0x8E9F},+    {0xDC61, 0x8EA0},+    {0xDC62, 0x8EA1},+    {0xDC63, 0x8EA2},+    {0xDC64, 0x8EA3},+    {0xDC65, 0x8EA4},+    {0xDC66, 0x8EA5},+    {0xDC67, 0x8EA6},+    {0xDC68, 0x8EA7},+    {0xDC69, 0x8EA8},+    {0xDC6A, 0x8EA9},+    {0xDC6B, 0x8EAA},+    {0xDC6C, 0x8EAD},+    {0xDC6D, 0x8EAE},+    {0xDC6E, 0x8EB0},+    {0xDC6F, 0x8EB1},+    {0xDC70, 0x8EB3},+    {0xDC71, 0x8EB4},+    {0xDC72, 0x8EB5},+    {0xDC73, 0x8EB6},+    {0xDC74, 0x8EB7},+    {0xDC75, 0x8EB8},+    {0xDC76, 0x8EB9},+    {0xDC77, 0x8EBB},+    {0xDC78, 0x8EBC},+    {0xDC79, 0x8EBD},+    {0xDC7A, 0x8EBE},+    {0xDC7B, 0x8EBF},+    {0xDC7C, 0x8EC0},+    {0xDC7D, 0x8EC1},+    {0xDC7E, 0x8EC2},+    {0xDC80, 0x8EC3},+    {0xDC81, 0x8EC4},+    {0xDC82, 0x8EC5},+    {0xDC83, 0x8EC6},+    {0xDC84, 0x8EC7},+    {0xDC85, 0x8EC8},+    {0xDC86, 0x8EC9},+    {0xDC87, 0x8ECA},+    {0xDC88, 0x8ECB},+    {0xDC89, 0x8ECC},+    {0xDC8A, 0x8ECD},+    {0xDC8B, 0x8ECF},+    {0xDC8C, 0x8ED0},+    {0xDC8D, 0x8ED1},+    {0xDC8E, 0x8ED2},+    {0xDC8F, 0x8ED3},+    {0xDC90, 0x8ED4},+    {0xDC91, 0x8ED5},+    {0xDC92, 0x8ED6},+    {0xDC93, 0x8ED7},+    {0xDC94, 0x8ED8},+    {0xDC95, 0x8ED9},+    {0xDC96, 0x8EDA},+    {0xDC97, 0x8EDB},+    {0xDC98, 0x8EDC},+    {0xDC99, 0x8EDD},+    {0xDC9A, 0x8EDE},+    {0xDC9B, 0x8EDF},+    {0xDC9C, 0x8EE0},+    {0xDC9D, 0x8EE1},+    {0xDC9E, 0x8EE2},+    {0xDC9F, 0x8EE3},+    {0xDCA0, 0x8EE4},+    {0xDCA1, 0x580B},+    {0xDCA2, 0x580D},+    {0xDCA3, 0x57FD},+    {0xDCA4, 0x57ED},+    {0xDCA5, 0x5800},+    {0xDCA6, 0x581E},+    {0xDCA7, 0x5819},+    {0xDCA8, 0x5844},+    {0xDCA9, 0x5820},+    {0xDCAA, 0x5865},+    {0xDCAB, 0x586C},+    {0xDCAC, 0x5881},+    {0xDCAD, 0x5889},+    {0xDCAE, 0x589A},+    {0xDCAF, 0x5880},+    {0xDCB0, 0x99A8},+    {0xDCB1, 0x9F19},+    {0xDCB2, 0x61FF},+    {0xDCB3, 0x8279},+    {0xDCB4, 0x827D},+    {0xDCB5, 0x827F},+    {0xDCB6, 0x828F},+    {0xDCB7, 0x828A},+    {0xDCB8, 0x82A8},+    {0xDCB9, 0x8284},+    {0xDCBA, 0x828E},+    {0xDCBB, 0x8291},+    {0xDCBC, 0x8297},+    {0xDCBD, 0x8299},+    {0xDCBE, 0x82AB},+    {0xDCBF, 0x82B8},+    {0xDCC0, 0x82BE},+    {0xDCC1, 0x82B0},+    {0xDCC2, 0x82C8},+    {0xDCC3, 0x82CA},+    {0xDCC4, 0x82E3},+    {0xDCC5, 0x8298},+    {0xDCC6, 0x82B7},+    {0xDCC7, 0x82AE},+    {0xDCC8, 0x82CB},+    {0xDCC9, 0x82CC},+    {0xDCCA, 0x82C1},+    {0xDCCB, 0x82A9},+    {0xDCCC, 0x82B4},+    {0xDCCD, 0x82A1},+    {0xDCCE, 0x82AA},+    {0xDCCF, 0x829F},+    {0xDCD0, 0x82C4},+    {0xDCD1, 0x82CE},+    {0xDCD2, 0x82A4},+    {0xDCD3, 0x82E1},+    {0xDCD4, 0x8309},+    {0xDCD5, 0x82F7},+    {0xDCD6, 0x82E4},+    {0xDCD7, 0x830F},+    {0xDCD8, 0x8307},+    {0xDCD9, 0x82DC},+    {0xDCDA, 0x82F4},+    {0xDCDB, 0x82D2},+    {0xDCDC, 0x82D8},+    {0xDCDD, 0x830C},+    {0xDCDE, 0x82FB},+    {0xDCDF, 0x82D3},+    {0xDCE0, 0x8311},+    {0xDCE1, 0x831A},+    {0xDCE2, 0x8306},+    {0xDCE3, 0x8314},+    {0xDCE4, 0x8315},+    {0xDCE5, 0x82E0},+    {0xDCE6, 0x82D5},+    {0xDCE7, 0x831C},+    {0xDCE8, 0x8351},+    {0xDCE9, 0x835B},+    {0xDCEA, 0x835C},+    {0xDCEB, 0x8308},+    {0xDCEC, 0x8392},+    {0xDCED, 0x833C},+    {0xDCEE, 0x8334},+    {0xDCEF, 0x8331},+    {0xDCF0, 0x839B},+    {0xDCF1, 0x835E},+    {0xDCF2, 0x832F},+    {0xDCF3, 0x834F},+    {0xDCF4, 0x8347},+    {0xDCF5, 0x8343},+    {0xDCF6, 0x835F},+    {0xDCF7, 0x8340},+    {0xDCF8, 0x8317},+    {0xDCF9, 0x8360},+    {0xDCFA, 0x832D},+    {0xDCFB, 0x833A},+    {0xDCFC, 0x8333},+    {0xDCFD, 0x8366},+    {0xDCFE, 0x8365},+    {0xDD40, 0x8EE5},+    {0xDD41, 0x8EE6},+    {0xDD42, 0x8EE7},+    {0xDD43, 0x8EE8},+    {0xDD44, 0x8EE9},+    {0xDD45, 0x8EEA},+    {0xDD46, 0x8EEB},+    {0xDD47, 0x8EEC},+    {0xDD48, 0x8EED},+    {0xDD49, 0x8EEE},+    {0xDD4A, 0x8EEF},+    {0xDD4B, 0x8EF0},+    {0xDD4C, 0x8EF1},+    {0xDD4D, 0x8EF2},+    {0xDD4E, 0x8EF3},+    {0xDD4F, 0x8EF4},+    {0xDD50, 0x8EF5},+    {0xDD51, 0x8EF6},+    {0xDD52, 0x8EF7},+    {0xDD53, 0x8EF8},+    {0xDD54, 0x8EF9},+    {0xDD55, 0x8EFA},+    {0xDD56, 0x8EFB},+    {0xDD57, 0x8EFC},+    {0xDD58, 0x8EFD},+    {0xDD59, 0x8EFE},+    {0xDD5A, 0x8EFF},+    {0xDD5B, 0x8F00},+    {0xDD5C, 0x8F01},+    {0xDD5D, 0x8F02},+    {0xDD5E, 0x8F03},+    {0xDD5F, 0x8F04},+    {0xDD60, 0x8F05},+    {0xDD61, 0x8F06},+    {0xDD62, 0x8F07},+    {0xDD63, 0x8F08},+    {0xDD64, 0x8F09},+    {0xDD65, 0x8F0A},+    {0xDD66, 0x8F0B},+    {0xDD67, 0x8F0C},+    {0xDD68, 0x8F0D},+    {0xDD69, 0x8F0E},+    {0xDD6A, 0x8F0F},+    {0xDD6B, 0x8F10},+    {0xDD6C, 0x8F11},+    {0xDD6D, 0x8F12},+    {0xDD6E, 0x8F13},+    {0xDD6F, 0x8F14},+    {0xDD70, 0x8F15},+    {0xDD71, 0x8F16},+    {0xDD72, 0x8F17},+    {0xDD73, 0x8F18},+    {0xDD74, 0x8F19},+    {0xDD75, 0x8F1A},+    {0xDD76, 0x8F1B},+    {0xDD77, 0x8F1C},+    {0xDD78, 0x8F1D},+    {0xDD79, 0x8F1E},+    {0xDD7A, 0x8F1F},+    {0xDD7B, 0x8F20},+    {0xDD7C, 0x8F21},+    {0xDD7D, 0x8F22},+    {0xDD7E, 0x8F23},+    {0xDD80, 0x8F24},+    {0xDD81, 0x8F25},+    {0xDD82, 0x8F26},+    {0xDD83, 0x8F27},+    {0xDD84, 0x8F28},+    {0xDD85, 0x8F29},+    {0xDD86, 0x8F2A},+    {0xDD87, 0x8F2B},+    {0xDD88, 0x8F2C},+    {0xDD89, 0x8F2D},+    {0xDD8A, 0x8F2E},+    {0xDD8B, 0x8F2F},+    {0xDD8C, 0x8F30},+    {0xDD8D, 0x8F31},+    {0xDD8E, 0x8F32},+    {0xDD8F, 0x8F33},+    {0xDD90, 0x8F34},+    {0xDD91, 0x8F35},+    {0xDD92, 0x8F36},+    {0xDD93, 0x8F37},+    {0xDD94, 0x8F38},+    {0xDD95, 0x8F39},+    {0xDD96, 0x8F3A},+    {0xDD97, 0x8F3B},+    {0xDD98, 0x8F3C},+    {0xDD99, 0x8F3D},+    {0xDD9A, 0x8F3E},+    {0xDD9B, 0x8F3F},+    {0xDD9C, 0x8F40},+    {0xDD9D, 0x8F41},+    {0xDD9E, 0x8F42},+    {0xDD9F, 0x8F43},+    {0xDDA0, 0x8F44},+    {0xDDA1, 0x8368},+    {0xDDA2, 0x831B},+    {0xDDA3, 0x8369},+    {0xDDA4, 0x836C},+    {0xDDA5, 0x836A},+    {0xDDA6, 0x836D},+    {0xDDA7, 0x836E},+    {0xDDA8, 0x83B0},+    {0xDDA9, 0x8378},+    {0xDDAA, 0x83B3},+    {0xDDAB, 0x83B4},+    {0xDDAC, 0x83A0},+    {0xDDAD, 0x83AA},+    {0xDDAE, 0x8393},+    {0xDDAF, 0x839C},+    {0xDDB0, 0x8385},+    {0xDDB1, 0x837C},+    {0xDDB2, 0x83B6},+    {0xDDB3, 0x83A9},+    {0xDDB4, 0x837D},+    {0xDDB5, 0x83B8},+    {0xDDB6, 0x837B},+    {0xDDB7, 0x8398},+    {0xDDB8, 0x839E},+    {0xDDB9, 0x83A8},+    {0xDDBA, 0x83BA},+    {0xDDBB, 0x83BC},+    {0xDDBC, 0x83C1},+    {0xDDBD, 0x8401},+    {0xDDBE, 0x83E5},+    {0xDDBF, 0x83D8},+    {0xDDC0, 0x5807},+    {0xDDC1, 0x8418},+    {0xDDC2, 0x840B},+    {0xDDC3, 0x83DD},+    {0xDDC4, 0x83FD},+    {0xDDC5, 0x83D6},+    {0xDDC6, 0x841C},+    {0xDDC7, 0x8438},+    {0xDDC8, 0x8411},+    {0xDDC9, 0x8406},+    {0xDDCA, 0x83D4},+    {0xDDCB, 0x83DF},+    {0xDDCC, 0x840F},+    {0xDDCD, 0x8403},+    {0xDDCE, 0x83F8},+    {0xDDCF, 0x83F9},+    {0xDDD0, 0x83EA},+    {0xDDD1, 0x83C5},+    {0xDDD2, 0x83C0},+    {0xDDD3, 0x8426},+    {0xDDD4, 0x83F0},+    {0xDDD5, 0x83E1},+    {0xDDD6, 0x845C},+    {0xDDD7, 0x8451},+    {0xDDD8, 0x845A},+    {0xDDD9, 0x8459},+    {0xDDDA, 0x8473},+    {0xDDDB, 0x8487},+    {0xDDDC, 0x8488},+    {0xDDDD, 0x847A},+    {0xDDDE, 0x8489},+    {0xDDDF, 0x8478},+    {0xDDE0, 0x843C},+    {0xDDE1, 0x8446},+    {0xDDE2, 0x8469},+    {0xDDE3, 0x8476},+    {0xDDE4, 0x848C},+    {0xDDE5, 0x848E},+    {0xDDE6, 0x8431},+    {0xDDE7, 0x846D},+    {0xDDE8, 0x84C1},+    {0xDDE9, 0x84CD},+    {0xDDEA, 0x84D0},+    {0xDDEB, 0x84E6},+    {0xDDEC, 0x84BD},+    {0xDDED, 0x84D3},+    {0xDDEE, 0x84CA},+    {0xDDEF, 0x84BF},+    {0xDDF0, 0x84BA},+    {0xDDF1, 0x84E0},+    {0xDDF2, 0x84A1},+    {0xDDF3, 0x84B9},+    {0xDDF4, 0x84B4},+    {0xDDF5, 0x8497},+    {0xDDF6, 0x84E5},+    {0xDDF7, 0x84E3},+    {0xDDF8, 0x850C},+    {0xDDF9, 0x750D},+    {0xDDFA, 0x8538},+    {0xDDFB, 0x84F0},+    {0xDDFC, 0x8539},+    {0xDDFD, 0x851F},+    {0xDDFE, 0x853A},+    {0xDE40, 0x8F45},+    {0xDE41, 0x8F46},+    {0xDE42, 0x8F47},+    {0xDE43, 0x8F48},+    {0xDE44, 0x8F49},+    {0xDE45, 0x8F4A},+    {0xDE46, 0x8F4B},+    {0xDE47, 0x8F4C},+    {0xDE48, 0x8F4D},+    {0xDE49, 0x8F4E},+    {0xDE4A, 0x8F4F},+    {0xDE4B, 0x8F50},+    {0xDE4C, 0x8F51},+    {0xDE4D, 0x8F52},+    {0xDE4E, 0x8F53},+    {0xDE4F, 0x8F54},+    {0xDE50, 0x8F55},+    {0xDE51, 0x8F56},+    {0xDE52, 0x8F57},+    {0xDE53, 0x8F58},+    {0xDE54, 0x8F59},+    {0xDE55, 0x8F5A},+    {0xDE56, 0x8F5B},+    {0xDE57, 0x8F5C},+    {0xDE58, 0x8F5D},+    {0xDE59, 0x8F5E},+    {0xDE5A, 0x8F5F},+    {0xDE5B, 0x8F60},+    {0xDE5C, 0x8F61},+    {0xDE5D, 0x8F62},+    {0xDE5E, 0x8F63},+    {0xDE5F, 0x8F64},+    {0xDE60, 0x8F65},+    {0xDE61, 0x8F6A},+    {0xDE62, 0x8F80},+    {0xDE63, 0x8F8C},+    {0xDE64, 0x8F92},+    {0xDE65, 0x8F9D},+    {0xDE66, 0x8FA0},+    {0xDE67, 0x8FA1},+    {0xDE68, 0x8FA2},+    {0xDE69, 0x8FA4},+    {0xDE6A, 0x8FA5},+    {0xDE6B, 0x8FA6},+    {0xDE6C, 0x8FA7},+    {0xDE6D, 0x8FAA},+    {0xDE6E, 0x8FAC},+    {0xDE6F, 0x8FAD},+    {0xDE70, 0x8FAE},+    {0xDE71, 0x8FAF},+    {0xDE72, 0x8FB2},+    {0xDE73, 0x8FB3},+    {0xDE74, 0x8FB4},+    {0xDE75, 0x8FB5},+    {0xDE76, 0x8FB7},+    {0xDE77, 0x8FB8},+    {0xDE78, 0x8FBA},+    {0xDE79, 0x8FBB},+    {0xDE7A, 0x8FBC},+    {0xDE7B, 0x8FBF},+    {0xDE7C, 0x8FC0},+    {0xDE7D, 0x8FC3},+    {0xDE7E, 0x8FC6},+    {0xDE80, 0x8FC9},+    {0xDE81, 0x8FCA},+    {0xDE82, 0x8FCB},+    {0xDE83, 0x8FCC},+    {0xDE84, 0x8FCD},+    {0xDE85, 0x8FCF},+    {0xDE86, 0x8FD2},+    {0xDE87, 0x8FD6},+    {0xDE88, 0x8FD7},+    {0xDE89, 0x8FDA},+    {0xDE8A, 0x8FE0},+    {0xDE8B, 0x8FE1},+    {0xDE8C, 0x8FE3},+    {0xDE8D, 0x8FE7},+    {0xDE8E, 0x8FEC},+    {0xDE8F, 0x8FEF},+    {0xDE90, 0x8FF1},+    {0xDE91, 0x8FF2},+    {0xDE92, 0x8FF4},+    {0xDE93, 0x8FF5},+    {0xDE94, 0x8FF6},+    {0xDE95, 0x8FFA},+    {0xDE96, 0x8FFB},+    {0xDE97, 0x8FFC},+    {0xDE98, 0x8FFE},+    {0xDE99, 0x8FFF},+    {0xDE9A, 0x9007},+    {0xDE9B, 0x9008},+    {0xDE9C, 0x900C},+    {0xDE9D, 0x900E},+    {0xDE9E, 0x9013},+    {0xDE9F, 0x9015},+    {0xDEA0, 0x9018},+    {0xDEA1, 0x8556},+    {0xDEA2, 0x853B},+    {0xDEA3, 0x84FF},+    {0xDEA4, 0x84FC},+    {0xDEA5, 0x8559},+    {0xDEA6, 0x8548},+    {0xDEA7, 0x8568},+    {0xDEA8, 0x8564},+    {0xDEA9, 0x855E},+    {0xDEAA, 0x857A},+    {0xDEAB, 0x77A2},+    {0xDEAC, 0x8543},+    {0xDEAD, 0x8572},+    {0xDEAE, 0x857B},+    {0xDEAF, 0x85A4},+    {0xDEB0, 0x85A8},+    {0xDEB1, 0x8587},+    {0xDEB2, 0x858F},+    {0xDEB3, 0x8579},+    {0xDEB4, 0x85AE},+    {0xDEB5, 0x859C},+    {0xDEB6, 0x8585},+    {0xDEB7, 0x85B9},+    {0xDEB8, 0x85B7},+    {0xDEB9, 0x85B0},+    {0xDEBA, 0x85D3},+    {0xDEBB, 0x85C1},+    {0xDEBC, 0x85DC},+    {0xDEBD, 0x85FF},+    {0xDEBE, 0x8627},+    {0xDEBF, 0x8605},+    {0xDEC0, 0x8629},+    {0xDEC1, 0x8616},+    {0xDEC2, 0x863C},+    {0xDEC3, 0x5EFE},+    {0xDEC4, 0x5F08},+    {0xDEC5, 0x593C},+    {0xDEC6, 0x5941},+    {0xDEC7, 0x8037},+    {0xDEC8, 0x5955},+    {0xDEC9, 0x595A},+    {0xDECA, 0x5958},+    {0xDECB, 0x530F},+    {0xDECC, 0x5C22},+    {0xDECD, 0x5C25},+    {0xDECE, 0x5C2C},+    {0xDECF, 0x5C34},+    {0xDED0, 0x624C},+    {0xDED1, 0x626A},+    {0xDED2, 0x629F},+    {0xDED3, 0x62BB},+    {0xDED4, 0x62CA},+    {0xDED5, 0x62DA},+    {0xDED6, 0x62D7},+    {0xDED7, 0x62EE},+    {0xDED8, 0x6322},+    {0xDED9, 0x62F6},+    {0xDEDA, 0x6339},+    {0xDEDB, 0x634B},+    {0xDEDC, 0x6343},+    {0xDEDD, 0x63AD},+    {0xDEDE, 0x63F6},+    {0xDEDF, 0x6371},+    {0xDEE0, 0x637A},+    {0xDEE1, 0x638E},+    {0xDEE2, 0x63B4},+    {0xDEE3, 0x636D},+    {0xDEE4, 0x63AC},+    {0xDEE5, 0x638A},+    {0xDEE6, 0x6369},+    {0xDEE7, 0x63AE},+    {0xDEE8, 0x63BC},+    {0xDEE9, 0x63F2},+    {0xDEEA, 0x63F8},+    {0xDEEB, 0x63E0},+    {0xDEEC, 0x63FF},+    {0xDEED, 0x63C4},+    {0xDEEE, 0x63DE},+    {0xDEEF, 0x63CE},+    {0xDEF0, 0x6452},+    {0xDEF1, 0x63C6},+    {0xDEF2, 0x63BE},+    {0xDEF3, 0x6445},+    {0xDEF4, 0x6441},+    {0xDEF5, 0x640B},+    {0xDEF6, 0x641B},+    {0xDEF7, 0x6420},+    {0xDEF8, 0x640C},+    {0xDEF9, 0x6426},+    {0xDEFA, 0x6421},+    {0xDEFB, 0x645E},+    {0xDEFC, 0x6484},+    {0xDEFD, 0x646D},+    {0xDEFE, 0x6496},+    {0xDF40, 0x9019},+    {0xDF41, 0x901C},+    {0xDF42, 0x9023},+    {0xDF43, 0x9024},+    {0xDF44, 0x9025},+    {0xDF45, 0x9027},+    {0xDF46, 0x9028},+    {0xDF47, 0x9029},+    {0xDF48, 0x902A},+    {0xDF49, 0x902B},+    {0xDF4A, 0x902C},+    {0xDF4B, 0x9030},+    {0xDF4C, 0x9031},+    {0xDF4D, 0x9032},+    {0xDF4E, 0x9033},+    {0xDF4F, 0x9034},+    {0xDF50, 0x9037},+    {0xDF51, 0x9039},+    {0xDF52, 0x903A},+    {0xDF53, 0x903D},+    {0xDF54, 0x903F},+    {0xDF55, 0x9040},+    {0xDF56, 0x9043},+    {0xDF57, 0x9045},+    {0xDF58, 0x9046},+    {0xDF59, 0x9048},+    {0xDF5A, 0x9049},+    {0xDF5B, 0x904A},+    {0xDF5C, 0x904B},+    {0xDF5D, 0x904C},+    {0xDF5E, 0x904E},+    {0xDF5F, 0x9054},+    {0xDF60, 0x9055},+    {0xDF61, 0x9056},+    {0xDF62, 0x9059},+    {0xDF63, 0x905A},+    {0xDF64, 0x905C},+    {0xDF65, 0x905D},+    {0xDF66, 0x905E},+    {0xDF67, 0x905F},+    {0xDF68, 0x9060},+    {0xDF69, 0x9061},+    {0xDF6A, 0x9064},+    {0xDF6B, 0x9066},+    {0xDF6C, 0x9067},+    {0xDF6D, 0x9069},+    {0xDF6E, 0x906A},+    {0xDF6F, 0x906B},+    {0xDF70, 0x906C},+    {0xDF71, 0x906F},+    {0xDF72, 0x9070},+    {0xDF73, 0x9071},+    {0xDF74, 0x9072},+    {0xDF75, 0x9073},+    {0xDF76, 0x9076},+    {0xDF77, 0x9077},+    {0xDF78, 0x9078},+    {0xDF79, 0x9079},+    {0xDF7A, 0x907A},+    {0xDF7B, 0x907B},+    {0xDF7C, 0x907C},+    {0xDF7D, 0x907E},+    {0xDF7E, 0x9081},+    {0xDF80, 0x9084},+    {0xDF81, 0x9085},+    {0xDF82, 0x9086},+    {0xDF83, 0x9087},+    {0xDF84, 0x9089},+    {0xDF85, 0x908A},+    {0xDF86, 0x908C},+    {0xDF87, 0x908D},+    {0xDF88, 0x908E},+    {0xDF89, 0x908F},+    {0xDF8A, 0x9090},+    {0xDF8B, 0x9092},+    {0xDF8C, 0x9094},+    {0xDF8D, 0x9096},+    {0xDF8E, 0x9098},+    {0xDF8F, 0x909A},+    {0xDF90, 0x909C},+    {0xDF91, 0x909E},+    {0xDF92, 0x909F},+    {0xDF93, 0x90A0},+    {0xDF94, 0x90A4},+    {0xDF95, 0x90A5},+    {0xDF96, 0x90A7},+    {0xDF97, 0x90A8},+    {0xDF98, 0x90A9},+    {0xDF99, 0x90AB},+    {0xDF9A, 0x90AD},+    {0xDF9B, 0x90B2},+    {0xDF9C, 0x90B7},+    {0xDF9D, 0x90BC},+    {0xDF9E, 0x90BD},+    {0xDF9F, 0x90BF},+    {0xDFA0, 0x90C0},+    {0xDFA1, 0x647A},+    {0xDFA2, 0x64B7},+    {0xDFA3, 0x64B8},+    {0xDFA4, 0x6499},+    {0xDFA5, 0x64BA},+    {0xDFA6, 0x64C0},+    {0xDFA7, 0x64D0},+    {0xDFA8, 0x64D7},+    {0xDFA9, 0x64E4},+    {0xDFAA, 0x64E2},+    {0xDFAB, 0x6509},+    {0xDFAC, 0x6525},+    {0xDFAD, 0x652E},+    {0xDFAE, 0x5F0B},+    {0xDFAF, 0x5FD2},+    {0xDFB0, 0x7519},+    {0xDFB1, 0x5F11},+    {0xDFB2, 0x535F},+    {0xDFB3, 0x53F1},+    {0xDFB4, 0x53FD},+    {0xDFB5, 0x53E9},+    {0xDFB6, 0x53E8},+    {0xDFB7, 0x53FB},+    {0xDFB8, 0x5412},+    {0xDFB9, 0x5416},+    {0xDFBA, 0x5406},+    {0xDFBB, 0x544B},+    {0xDFBC, 0x5452},+    {0xDFBD, 0x5453},+    {0xDFBE, 0x5454},+    {0xDFBF, 0x5456},+    {0xDFC0, 0x5443},+    {0xDFC1, 0x5421},+    {0xDFC2, 0x5457},+    {0xDFC3, 0x5459},+    {0xDFC4, 0x5423},+    {0xDFC5, 0x5432},+    {0xDFC6, 0x5482},+    {0xDFC7, 0x5494},+    {0xDFC8, 0x5477},+    {0xDFC9, 0x5471},+    {0xDFCA, 0x5464},+    {0xDFCB, 0x549A},+    {0xDFCC, 0x549B},+    {0xDFCD, 0x5484},+    {0xDFCE, 0x5476},+    {0xDFCF, 0x5466},+    {0xDFD0, 0x549D},+    {0xDFD1, 0x54D0},+    {0xDFD2, 0x54AD},+    {0xDFD3, 0x54C2},+    {0xDFD4, 0x54B4},+    {0xDFD5, 0x54D2},+    {0xDFD6, 0x54A7},+    {0xDFD7, 0x54A6},+    {0xDFD8, 0x54D3},+    {0xDFD9, 0x54D4},+    {0xDFDA, 0x5472},+    {0xDFDB, 0x54A3},+    {0xDFDC, 0x54D5},+    {0xDFDD, 0x54BB},+    {0xDFDE, 0x54BF},+    {0xDFDF, 0x54CC},+    {0xDFE0, 0x54D9},+    {0xDFE1, 0x54DA},+    {0xDFE2, 0x54DC},+    {0xDFE3, 0x54A9},+    {0xDFE4, 0x54AA},+    {0xDFE5, 0x54A4},+    {0xDFE6, 0x54DD},+    {0xDFE7, 0x54CF},+    {0xDFE8, 0x54DE},+    {0xDFE9, 0x551B},+    {0xDFEA, 0x54E7},+    {0xDFEB, 0x5520},+    {0xDFEC, 0x54FD},+    {0xDFED, 0x5514},+    {0xDFEE, 0x54F3},+    {0xDFEF, 0x5522},+    {0xDFF0, 0x5523},+    {0xDFF1, 0x550F},+    {0xDFF2, 0x5511},+    {0xDFF3, 0x5527},+    {0xDFF4, 0x552A},+    {0xDFF5, 0x5567},+    {0xDFF6, 0x558F},+    {0xDFF7, 0x55B5},+    {0xDFF8, 0x5549},+    {0xDFF9, 0x556D},+    {0xDFFA, 0x5541},+    {0xDFFB, 0x5555},+    {0xDFFC, 0x553F},+    {0xDFFD, 0x5550},+    {0xDFFE, 0x553C},+    {0xE040, 0x90C2},+    {0xE041, 0x90C3},+    {0xE042, 0x90C6},+    {0xE043, 0x90C8},+    {0xE044, 0x90C9},+    {0xE045, 0x90CB},+    {0xE046, 0x90CC},+    {0xE047, 0x90CD},+    {0xE048, 0x90D2},+    {0xE049, 0x90D4},+    {0xE04A, 0x90D5},+    {0xE04B, 0x90D6},+    {0xE04C, 0x90D8},+    {0xE04D, 0x90D9},+    {0xE04E, 0x90DA},+    {0xE04F, 0x90DE},+    {0xE050, 0x90DF},+    {0xE051, 0x90E0},+    {0xE052, 0x90E3},+    {0xE053, 0x90E4},+    {0xE054, 0x90E5},+    {0xE055, 0x90E9},+    {0xE056, 0x90EA},+    {0xE057, 0x90EC},+    {0xE058, 0x90EE},+    {0xE059, 0x90F0},+    {0xE05A, 0x90F1},+    {0xE05B, 0x90F2},+    {0xE05C, 0x90F3},+    {0xE05D, 0x90F5},+    {0xE05E, 0x90F6},+    {0xE05F, 0x90F7},+    {0xE060, 0x90F9},+    {0xE061, 0x90FA},+    {0xE062, 0x90FB},+    {0xE063, 0x90FC},+    {0xE064, 0x90FF},+    {0xE065, 0x9100},+    {0xE066, 0x9101},+    {0xE067, 0x9103},+    {0xE068, 0x9105},+    {0xE069, 0x9106},+    {0xE06A, 0x9107},+    {0xE06B, 0x9108},+    {0xE06C, 0x9109},+    {0xE06D, 0x910A},+    {0xE06E, 0x910B},+    {0xE06F, 0x910C},+    {0xE070, 0x910D},+    {0xE071, 0x910E},+    {0xE072, 0x910F},+    {0xE073, 0x9110},+    {0xE074, 0x9111},+    {0xE075, 0x9112},+    {0xE076, 0x9113},+    {0xE077, 0x9114},+    {0xE078, 0x9115},+    {0xE079, 0x9116},+    {0xE07A, 0x9117},+    {0xE07B, 0x9118},+    {0xE07C, 0x911A},+    {0xE07D, 0x911B},+    {0xE07E, 0x911C},+    {0xE080, 0x911D},+    {0xE081, 0x911F},+    {0xE082, 0x9120},+    {0xE083, 0x9121},+    {0xE084, 0x9124},+    {0xE085, 0x9125},+    {0xE086, 0x9126},+    {0xE087, 0x9127},+    {0xE088, 0x9128},+    {0xE089, 0x9129},+    {0xE08A, 0x912A},+    {0xE08B, 0x912B},+    {0xE08C, 0x912C},+    {0xE08D, 0x912D},+    {0xE08E, 0x912E},+    {0xE08F, 0x9130},+    {0xE090, 0x9132},+    {0xE091, 0x9133},+    {0xE092, 0x9134},+    {0xE093, 0x9135},+    {0xE094, 0x9136},+    {0xE095, 0x9137},+    {0xE096, 0x9138},+    {0xE097, 0x913A},+    {0xE098, 0x913B},+    {0xE099, 0x913C},+    {0xE09A, 0x913D},+    {0xE09B, 0x913E},+    {0xE09C, 0x913F},+    {0xE09D, 0x9140},+    {0xE09E, 0x9141},+    {0xE09F, 0x9142},+    {0xE0A0, 0x9144},+    {0xE0A1, 0x5537},+    {0xE0A2, 0x5556},+    {0xE0A3, 0x5575},+    {0xE0A4, 0x5576},+    {0xE0A5, 0x5577},+    {0xE0A6, 0x5533},+    {0xE0A7, 0x5530},+    {0xE0A8, 0x555C},+    {0xE0A9, 0x558B},+    {0xE0AA, 0x55D2},+    {0xE0AB, 0x5583},+    {0xE0AC, 0x55B1},+    {0xE0AD, 0x55B9},+    {0xE0AE, 0x5588},+    {0xE0AF, 0x5581},+    {0xE0B0, 0x559F},+    {0xE0B1, 0x557E},+    {0xE0B2, 0x55D6},+    {0xE0B3, 0x5591},+    {0xE0B4, 0x557B},+    {0xE0B5, 0x55DF},+    {0xE0B6, 0x55BD},+    {0xE0B7, 0x55BE},+    {0xE0B8, 0x5594},+    {0xE0B9, 0x5599},+    {0xE0BA, 0x55EA},+    {0xE0BB, 0x55F7},+    {0xE0BC, 0x55C9},+    {0xE0BD, 0x561F},+    {0xE0BE, 0x55D1},+    {0xE0BF, 0x55EB},+    {0xE0C0, 0x55EC},+    {0xE0C1, 0x55D4},+    {0xE0C2, 0x55E6},+    {0xE0C3, 0x55DD},+    {0xE0C4, 0x55C4},+    {0xE0C5, 0x55EF},+    {0xE0C6, 0x55E5},+    {0xE0C7, 0x55F2},+    {0xE0C8, 0x55F3},+    {0xE0C9, 0x55CC},+    {0xE0CA, 0x55CD},+    {0xE0CB, 0x55E8},+    {0xE0CC, 0x55F5},+    {0xE0CD, 0x55E4},+    {0xE0CE, 0x8F94},+    {0xE0CF, 0x561E},+    {0xE0D0, 0x5608},+    {0xE0D1, 0x560C},+    {0xE0D2, 0x5601},+    {0xE0D3, 0x5624},+    {0xE0D4, 0x5623},+    {0xE0D5, 0x55FE},+    {0xE0D6, 0x5600},+    {0xE0D7, 0x5627},+    {0xE0D8, 0x562D},+    {0xE0D9, 0x5658},+    {0xE0DA, 0x5639},+    {0xE0DB, 0x5657},+    {0xE0DC, 0x562C},+    {0xE0DD, 0x564D},+    {0xE0DE, 0x5662},+    {0xE0DF, 0x5659},+    {0xE0E0, 0x565C},+    {0xE0E1, 0x564C},+    {0xE0E2, 0x5654},+    {0xE0E3, 0x5686},+    {0xE0E4, 0x5664},+    {0xE0E5, 0x5671},+    {0xE0E6, 0x566B},+    {0xE0E7, 0x567B},+    {0xE0E8, 0x567C},+    {0xE0E9, 0x5685},+    {0xE0EA, 0x5693},+    {0xE0EB, 0x56AF},+    {0xE0EC, 0x56D4},+    {0xE0ED, 0x56D7},+    {0xE0EE, 0x56DD},+    {0xE0EF, 0x56E1},+    {0xE0F0, 0x56F5},+    {0xE0F1, 0x56EB},+    {0xE0F2, 0x56F9},+    {0xE0F3, 0x56FF},+    {0xE0F4, 0x5704},+    {0xE0F5, 0x570A},+    {0xE0F6, 0x5709},+    {0xE0F7, 0x571C},+    {0xE0F8, 0x5E0F},+    {0xE0F9, 0x5E19},+    {0xE0FA, 0x5E14},+    {0xE0FB, 0x5E11},+    {0xE0FC, 0x5E31},+    {0xE0FD, 0x5E3B},+    {0xE0FE, 0x5E3C},+    {0xE140, 0x9145},+    {0xE141, 0x9147},+    {0xE142, 0x9148},+    {0xE143, 0x9151},+    {0xE144, 0x9153},+    {0xE145, 0x9154},+    {0xE146, 0x9155},+    {0xE147, 0x9156},+    {0xE148, 0x9158},+    {0xE149, 0x9159},+    {0xE14A, 0x915B},+    {0xE14B, 0x915C},+    {0xE14C, 0x915F},+    {0xE14D, 0x9160},+    {0xE14E, 0x9166},+    {0xE14F, 0x9167},+    {0xE150, 0x9168},+    {0xE151, 0x916B},+    {0xE152, 0x916D},+    {0xE153, 0x9173},+    {0xE154, 0x917A},+    {0xE155, 0x917B},+    {0xE156, 0x917C},+    {0xE157, 0x9180},+    {0xE158, 0x9181},+    {0xE159, 0x9182},+    {0xE15A, 0x9183},+    {0xE15B, 0x9184},+    {0xE15C, 0x9186},+    {0xE15D, 0x9188},+    {0xE15E, 0x918A},+    {0xE15F, 0x918E},+    {0xE160, 0x918F},+    {0xE161, 0x9193},+    {0xE162, 0x9194},+    {0xE163, 0x9195},+    {0xE164, 0x9196},+    {0xE165, 0x9197},+    {0xE166, 0x9198},+    {0xE167, 0x9199},+    {0xE168, 0x919C},+    {0xE169, 0x919D},+    {0xE16A, 0x919E},+    {0xE16B, 0x919F},+    {0xE16C, 0x91A0},+    {0xE16D, 0x91A1},+    {0xE16E, 0x91A4},+    {0xE16F, 0x91A5},+    {0xE170, 0x91A6},+    {0xE171, 0x91A7},+    {0xE172, 0x91A8},+    {0xE173, 0x91A9},+    {0xE174, 0x91AB},+    {0xE175, 0x91AC},+    {0xE176, 0x91B0},+    {0xE177, 0x91B1},+    {0xE178, 0x91B2},+    {0xE179, 0x91B3},+    {0xE17A, 0x91B6},+    {0xE17B, 0x91B7},+    {0xE17C, 0x91B8},+    {0xE17D, 0x91B9},+    {0xE17E, 0x91BB},+    {0xE180, 0x91BC},+    {0xE181, 0x91BD},+    {0xE182, 0x91BE},+    {0xE183, 0x91BF},+    {0xE184, 0x91C0},+    {0xE185, 0x91C1},+    {0xE186, 0x91C2},+    {0xE187, 0x91C3},+    {0xE188, 0x91C4},+    {0xE189, 0x91C5},+    {0xE18A, 0x91C6},+    {0xE18B, 0x91C8},+    {0xE18C, 0x91CB},+    {0xE18D, 0x91D0},+    {0xE18E, 0x91D2},+    {0xE18F, 0x91D3},+    {0xE190, 0x91D4},+    {0xE191, 0x91D5},+    {0xE192, 0x91D6},+    {0xE193, 0x91D7},+    {0xE194, 0x91D8},+    {0xE195, 0x91D9},+    {0xE196, 0x91DA},+    {0xE197, 0x91DB},+    {0xE198, 0x91DD},+    {0xE199, 0x91DE},+    {0xE19A, 0x91DF},+    {0xE19B, 0x91E0},+    {0xE19C, 0x91E1},+    {0xE19D, 0x91E2},+    {0xE19E, 0x91E3},+    {0xE19F, 0x91E4},+    {0xE1A0, 0x91E5},+    {0xE1A1, 0x5E37},+    {0xE1A2, 0x5E44},+    {0xE1A3, 0x5E54},+    {0xE1A4, 0x5E5B},+    {0xE1A5, 0x5E5E},+    {0xE1A6, 0x5E61},+    {0xE1A7, 0x5C8C},+    {0xE1A8, 0x5C7A},+    {0xE1A9, 0x5C8D},+    {0xE1AA, 0x5C90},+    {0xE1AB, 0x5C96},+    {0xE1AC, 0x5C88},+    {0xE1AD, 0x5C98},+    {0xE1AE, 0x5C99},+    {0xE1AF, 0x5C91},+    {0xE1B0, 0x5C9A},+    {0xE1B1, 0x5C9C},+    {0xE1B2, 0x5CB5},+    {0xE1B3, 0x5CA2},+    {0xE1B4, 0x5CBD},+    {0xE1B5, 0x5CAC},+    {0xE1B6, 0x5CAB},+    {0xE1B7, 0x5CB1},+    {0xE1B8, 0x5CA3},+    {0xE1B9, 0x5CC1},+    {0xE1BA, 0x5CB7},+    {0xE1BB, 0x5CC4},+    {0xE1BC, 0x5CD2},+    {0xE1BD, 0x5CE4},+    {0xE1BE, 0x5CCB},+    {0xE1BF, 0x5CE5},+    {0xE1C0, 0x5D02},+    {0xE1C1, 0x5D03},+    {0xE1C2, 0x5D27},+    {0xE1C3, 0x5D26},+    {0xE1C4, 0x5D2E},+    {0xE1C5, 0x5D24},+    {0xE1C6, 0x5D1E},+    {0xE1C7, 0x5D06},+    {0xE1C8, 0x5D1B},+    {0xE1C9, 0x5D58},+    {0xE1CA, 0x5D3E},+    {0xE1CB, 0x5D34},+    {0xE1CC, 0x5D3D},+    {0xE1CD, 0x5D6C},+    {0xE1CE, 0x5D5B},+    {0xE1CF, 0x5D6F},+    {0xE1D0, 0x5D5D},+    {0xE1D1, 0x5D6B},+    {0xE1D2, 0x5D4B},+    {0xE1D3, 0x5D4A},+    {0xE1D4, 0x5D69},+    {0xE1D5, 0x5D74},+    {0xE1D6, 0x5D82},+    {0xE1D7, 0x5D99},+    {0xE1D8, 0x5D9D},+    {0xE1D9, 0x8C73},+    {0xE1DA, 0x5DB7},+    {0xE1DB, 0x5DC5},+    {0xE1DC, 0x5F73},+    {0xE1DD, 0x5F77},+    {0xE1DE, 0x5F82},+    {0xE1DF, 0x5F87},+    {0xE1E0, 0x5F89},+    {0xE1E1, 0x5F8C},+    {0xE1E2, 0x5F95},+    {0xE1E3, 0x5F99},+    {0xE1E4, 0x5F9C},+    {0xE1E5, 0x5FA8},+    {0xE1E6, 0x5FAD},+    {0xE1E7, 0x5FB5},+    {0xE1E8, 0x5FBC},+    {0xE1E9, 0x8862},+    {0xE1EA, 0x5F61},+    {0xE1EB, 0x72AD},+    {0xE1EC, 0x72B0},+    {0xE1ED, 0x72B4},+    {0xE1EE, 0x72B7},+    {0xE1EF, 0x72B8},+    {0xE1F0, 0x72C3},+    {0xE1F1, 0x72C1},+    {0xE1F2, 0x72CE},+    {0xE1F3, 0x72CD},+    {0xE1F4, 0x72D2},+    {0xE1F5, 0x72E8},+    {0xE1F6, 0x72EF},+    {0xE1F7, 0x72E9},+    {0xE1F8, 0x72F2},+    {0xE1F9, 0x72F4},+    {0xE1FA, 0x72F7},+    {0xE1FB, 0x7301},+    {0xE1FC, 0x72F3},+    {0xE1FD, 0x7303},+    {0xE1FE, 0x72FA},+    {0xE240, 0x91E6},+    {0xE241, 0x91E7},+    {0xE242, 0x91E8},+    {0xE243, 0x91E9},+    {0xE244, 0x91EA},+    {0xE245, 0x91EB},+    {0xE246, 0x91EC},+    {0xE247, 0x91ED},+    {0xE248, 0x91EE},+    {0xE249, 0x91EF},+    {0xE24A, 0x91F0},+    {0xE24B, 0x91F1},+    {0xE24C, 0x91F2},+    {0xE24D, 0x91F3},+    {0xE24E, 0x91F4},+    {0xE24F, 0x91F5},+    {0xE250, 0x91F6},+    {0xE251, 0x91F7},+    {0xE252, 0x91F8},+    {0xE253, 0x91F9},+    {0xE254, 0x91FA},+    {0xE255, 0x91FB},+    {0xE256, 0x91FC},+    {0xE257, 0x91FD},+    {0xE258, 0x91FE},+    {0xE259, 0x91FF},+    {0xE25A, 0x9200},+    {0xE25B, 0x9201},+    {0xE25C, 0x9202},+    {0xE25D, 0x9203},+    {0xE25E, 0x9204},+    {0xE25F, 0x9205},+    {0xE260, 0x9206},+    {0xE261, 0x9207},+    {0xE262, 0x9208},+    {0xE263, 0x9209},+    {0xE264, 0x920A},+    {0xE265, 0x920B},+    {0xE266, 0x920C},+    {0xE267, 0x920D},+    {0xE268, 0x920E},+    {0xE269, 0x920F},+    {0xE26A, 0x9210},+    {0xE26B, 0x9211},+    {0xE26C, 0x9212},+    {0xE26D, 0x9213},+    {0xE26E, 0x9214},+    {0xE26F, 0x9215},+    {0xE270, 0x9216},+    {0xE271, 0x9217},+    {0xE272, 0x9218},+    {0xE273, 0x9219},+    {0xE274, 0x921A},+    {0xE275, 0x921B},+    {0xE276, 0x921C},+    {0xE277, 0x921D},+    {0xE278, 0x921E},+    {0xE279, 0x921F},+    {0xE27A, 0x9220},+    {0xE27B, 0x9221},+    {0xE27C, 0x9222},+    {0xE27D, 0x9223},+    {0xE27E, 0x9224},+    {0xE280, 0x9225},+    {0xE281, 0x9226},+    {0xE282, 0x9227},+    {0xE283, 0x9228},+    {0xE284, 0x9229},+    {0xE285, 0x922A},+    {0xE286, 0x922B},+    {0xE287, 0x922C},+    {0xE288, 0x922D},+    {0xE289, 0x922E},+    {0xE28A, 0x922F},+    {0xE28B, 0x9230},+    {0xE28C, 0x9231},+    {0xE28D, 0x9232},+    {0xE28E, 0x9233},+    {0xE28F, 0x9234},+    {0xE290, 0x9235},+    {0xE291, 0x9236},+    {0xE292, 0x9237},+    {0xE293, 0x9238},+    {0xE294, 0x9239},+    {0xE295, 0x923A},+    {0xE296, 0x923B},+    {0xE297, 0x923C},+    {0xE298, 0x923D},+    {0xE299, 0x923E},+    {0xE29A, 0x923F},+    {0xE29B, 0x9240},+    {0xE29C, 0x9241},+    {0xE29D, 0x9242},+    {0xE29E, 0x9243},+    {0xE29F, 0x9244},+    {0xE2A0, 0x9245},+    {0xE2A1, 0x72FB},+    {0xE2A2, 0x7317},+    {0xE2A3, 0x7313},+    {0xE2A4, 0x7321},+    {0xE2A5, 0x730A},+    {0xE2A6, 0x731E},+    {0xE2A7, 0x731D},+    {0xE2A8, 0x7315},+    {0xE2A9, 0x7322},+    {0xE2AA, 0x7339},+    {0xE2AB, 0x7325},+    {0xE2AC, 0x732C},+    {0xE2AD, 0x7338},+    {0xE2AE, 0x7331},+    {0xE2AF, 0x7350},+    {0xE2B0, 0x734D},+    {0xE2B1, 0x7357},+    {0xE2B2, 0x7360},+    {0xE2B3, 0x736C},+    {0xE2B4, 0x736F},+    {0xE2B5, 0x737E},+    {0xE2B6, 0x821B},+    {0xE2B7, 0x5925},+    {0xE2B8, 0x98E7},+    {0xE2B9, 0x5924},+    {0xE2BA, 0x5902},+    {0xE2BB, 0x9963},+    {0xE2BC, 0x9967},+    {0xE2BD, 0x9968},+    {0xE2BE, 0x9969},+    {0xE2BF, 0x996A},+    {0xE2C0, 0x996B},+    {0xE2C1, 0x996C},+    {0xE2C2, 0x9974},+    {0xE2C3, 0x9977},+    {0xE2C4, 0x997D},+    {0xE2C5, 0x9980},+    {0xE2C6, 0x9984},+    {0xE2C7, 0x9987},+    {0xE2C8, 0x998A},+    {0xE2C9, 0x998D},+    {0xE2CA, 0x9990},+    {0xE2CB, 0x9991},+    {0xE2CC, 0x9993},+    {0xE2CD, 0x9994},+    {0xE2CE, 0x9995},+    {0xE2CF, 0x5E80},+    {0xE2D0, 0x5E91},+    {0xE2D1, 0x5E8B},+    {0xE2D2, 0x5E96},+    {0xE2D3, 0x5EA5},+    {0xE2D4, 0x5EA0},+    {0xE2D5, 0x5EB9},+    {0xE2D6, 0x5EB5},+    {0xE2D7, 0x5EBE},+    {0xE2D8, 0x5EB3},+    {0xE2D9, 0x8D53},+    {0xE2DA, 0x5ED2},+    {0xE2DB, 0x5ED1},+    {0xE2DC, 0x5EDB},+    {0xE2DD, 0x5EE8},+    {0xE2DE, 0x5EEA},+    {0xE2DF, 0x81BA},+    {0xE2E0, 0x5FC4},+    {0xE2E1, 0x5FC9},+    {0xE2E2, 0x5FD6},+    {0xE2E3, 0x5FCF},+    {0xE2E4, 0x6003},+    {0xE2E5, 0x5FEE},+    {0xE2E6, 0x6004},+    {0xE2E7, 0x5FE1},+    {0xE2E8, 0x5FE4},+    {0xE2E9, 0x5FFE},+    {0xE2EA, 0x6005},+    {0xE2EB, 0x6006},+    {0xE2EC, 0x5FEA},+    {0xE2ED, 0x5FED},+    {0xE2EE, 0x5FF8},+    {0xE2EF, 0x6019},+    {0xE2F0, 0x6035},+    {0xE2F1, 0x6026},+    {0xE2F2, 0x601B},+    {0xE2F3, 0x600F},+    {0xE2F4, 0x600D},+    {0xE2F5, 0x6029},+    {0xE2F6, 0x602B},+    {0xE2F7, 0x600A},+    {0xE2F8, 0x603F},+    {0xE2F9, 0x6021},+    {0xE2FA, 0x6078},+    {0xE2FB, 0x6079},+    {0xE2FC, 0x607B},+    {0xE2FD, 0x607A},+    {0xE2FE, 0x6042},+    {0xE340, 0x9246},+    {0xE341, 0x9247},+    {0xE342, 0x9248},+    {0xE343, 0x9249},+    {0xE344, 0x924A},+    {0xE345, 0x924B},+    {0xE346, 0x924C},+    {0xE347, 0x924D},+    {0xE348, 0x924E},+    {0xE349, 0x924F},+    {0xE34A, 0x9250},+    {0xE34B, 0x9251},+    {0xE34C, 0x9252},+    {0xE34D, 0x9253},+    {0xE34E, 0x9254},+    {0xE34F, 0x9255},+    {0xE350, 0x9256},+    {0xE351, 0x9257},+    {0xE352, 0x9258},+    {0xE353, 0x9259},+    {0xE354, 0x925A},+    {0xE355, 0x925B},+    {0xE356, 0x925C},+    {0xE357, 0x925D},+    {0xE358, 0x925E},+    {0xE359, 0x925F},+    {0xE35A, 0x9260},+    {0xE35B, 0x9261},+    {0xE35C, 0x9262},+    {0xE35D, 0x9263},+    {0xE35E, 0x9264},+    {0xE35F, 0x9265},+    {0xE360, 0x9266},+    {0xE361, 0x9267},+    {0xE362, 0x9268},+    {0xE363, 0x9269},+    {0xE364, 0x926A},+    {0xE365, 0x926B},+    {0xE366, 0x926C},+    {0xE367, 0x926D},+    {0xE368, 0x926E},+    {0xE369, 0x926F},+    {0xE36A, 0x9270},+    {0xE36B, 0x9271},+    {0xE36C, 0x9272},+    {0xE36D, 0x9273},+    {0xE36E, 0x9275},+    {0xE36F, 0x9276},+    {0xE370, 0x9277},+    {0xE371, 0x9278},+    {0xE372, 0x9279},+    {0xE373, 0x927A},+    {0xE374, 0x927B},+    {0xE375, 0x927C},+    {0xE376, 0x927D},+    {0xE377, 0x927E},+    {0xE378, 0x927F},+    {0xE379, 0x9280},+    {0xE37A, 0x9281},+    {0xE37B, 0x9282},+    {0xE37C, 0x9283},+    {0xE37D, 0x9284},+    {0xE37E, 0x9285},+    {0xE380, 0x9286},+    {0xE381, 0x9287},+    {0xE382, 0x9288},+    {0xE383, 0x9289},+    {0xE384, 0x928A},+    {0xE385, 0x928B},+    {0xE386, 0x928C},+    {0xE387, 0x928D},+    {0xE388, 0x928F},+    {0xE389, 0x9290},+    {0xE38A, 0x9291},+    {0xE38B, 0x9292},+    {0xE38C, 0x9293},+    {0xE38D, 0x9294},+    {0xE38E, 0x9295},+    {0xE38F, 0x9296},+    {0xE390, 0x9297},+    {0xE391, 0x9298},+    {0xE392, 0x9299},+    {0xE393, 0x929A},+    {0xE394, 0x929B},+    {0xE395, 0x929C},+    {0xE396, 0x929D},+    {0xE397, 0x929E},+    {0xE398, 0x929F},+    {0xE399, 0x92A0},+    {0xE39A, 0x92A1},+    {0xE39B, 0x92A2},+    {0xE39C, 0x92A3},+    {0xE39D, 0x92A4},+    {0xE39E, 0x92A5},+    {0xE39F, 0x92A6},+    {0xE3A0, 0x92A7},+    {0xE3A1, 0x606A},+    {0xE3A2, 0x607D},+    {0xE3A3, 0x6096},+    {0xE3A4, 0x609A},+    {0xE3A5, 0x60AD},+    {0xE3A6, 0x609D},+    {0xE3A7, 0x6083},+    {0xE3A8, 0x6092},+    {0xE3A9, 0x608C},+    {0xE3AA, 0x609B},+    {0xE3AB, 0x60EC},+    {0xE3AC, 0x60BB},+    {0xE3AD, 0x60B1},+    {0xE3AE, 0x60DD},+    {0xE3AF, 0x60D8},+    {0xE3B0, 0x60C6},+    {0xE3B1, 0x60DA},+    {0xE3B2, 0x60B4},+    {0xE3B3, 0x6120},+    {0xE3B4, 0x6126},+    {0xE3B5, 0x6115},+    {0xE3B6, 0x6123},+    {0xE3B7, 0x60F4},+    {0xE3B8, 0x6100},+    {0xE3B9, 0x610E},+    {0xE3BA, 0x612B},+    {0xE3BB, 0x614A},+    {0xE3BC, 0x6175},+    {0xE3BD, 0x61AC},+    {0xE3BE, 0x6194},+    {0xE3BF, 0x61A7},+    {0xE3C0, 0x61B7},+    {0xE3C1, 0x61D4},+    {0xE3C2, 0x61F5},+    {0xE3C3, 0x5FDD},+    {0xE3C4, 0x96B3},+    {0xE3C5, 0x95E9},+    {0xE3C6, 0x95EB},+    {0xE3C7, 0x95F1},+    {0xE3C8, 0x95F3},+    {0xE3C9, 0x95F5},+    {0xE3CA, 0x95F6},+    {0xE3CB, 0x95FC},+    {0xE3CC, 0x95FE},+    {0xE3CD, 0x9603},+    {0xE3CE, 0x9604},+    {0xE3CF, 0x9606},+    {0xE3D0, 0x9608},+    {0xE3D1, 0x960A},+    {0xE3D2, 0x960B},+    {0xE3D3, 0x960C},+    {0xE3D4, 0x960D},+    {0xE3D5, 0x960F},+    {0xE3D6, 0x9612},+    {0xE3D7, 0x9615},+    {0xE3D8, 0x9616},+    {0xE3D9, 0x9617},+    {0xE3DA, 0x9619},+    {0xE3DB, 0x961A},+    {0xE3DC, 0x4E2C},+    {0xE3DD, 0x723F},+    {0xE3DE, 0x6215},+    {0xE3DF, 0x6C35},+    {0xE3E0, 0x6C54},+    {0xE3E1, 0x6C5C},+    {0xE3E2, 0x6C4A},+    {0xE3E3, 0x6CA3},+    {0xE3E4, 0x6C85},+    {0xE3E5, 0x6C90},+    {0xE3E6, 0x6C94},+    {0xE3E7, 0x6C8C},+    {0xE3E8, 0x6C68},+    {0xE3E9, 0x6C69},+    {0xE3EA, 0x6C74},+    {0xE3EB, 0x6C76},+    {0xE3EC, 0x6C86},+    {0xE3ED, 0x6CA9},+    {0xE3EE, 0x6CD0},+    {0xE3EF, 0x6CD4},+    {0xE3F0, 0x6CAD},+    {0xE3F1, 0x6CF7},+    {0xE3F2, 0x6CF8},+    {0xE3F3, 0x6CF1},+    {0xE3F4, 0x6CD7},+    {0xE3F5, 0x6CB2},+    {0xE3F6, 0x6CE0},+    {0xE3F7, 0x6CD6},+    {0xE3F8, 0x6CFA},+    {0xE3F9, 0x6CEB},+    {0xE3FA, 0x6CEE},+    {0xE3FB, 0x6CB1},+    {0xE3FC, 0x6CD3},+    {0xE3FD, 0x6CEF},+    {0xE3FE, 0x6CFE},+    {0xE440, 0x92A8},+    {0xE441, 0x92A9},+    {0xE442, 0x92AA},+    {0xE443, 0x92AB},+    {0xE444, 0x92AC},+    {0xE445, 0x92AD},+    {0xE446, 0x92AF},+    {0xE447, 0x92B0},+    {0xE448, 0x92B1},+    {0xE449, 0x92B2},+    {0xE44A, 0x92B3},+    {0xE44B, 0x92B4},+    {0xE44C, 0x92B5},+    {0xE44D, 0x92B6},+    {0xE44E, 0x92B7},+    {0xE44F, 0x92B8},+    {0xE450, 0x92B9},+    {0xE451, 0x92BA},+    {0xE452, 0x92BB},+    {0xE453, 0x92BC},+    {0xE454, 0x92BD},+    {0xE455, 0x92BE},+    {0xE456, 0x92BF},+    {0xE457, 0x92C0},+    {0xE458, 0x92C1},+    {0xE459, 0x92C2},+    {0xE45A, 0x92C3},+    {0xE45B, 0x92C4},+    {0xE45C, 0x92C5},+    {0xE45D, 0x92C6},+    {0xE45E, 0x92C7},+    {0xE45F, 0x92C9},+    {0xE460, 0x92CA},+    {0xE461, 0x92CB},+    {0xE462, 0x92CC},+    {0xE463, 0x92CD},+    {0xE464, 0x92CE},+    {0xE465, 0x92CF},+    {0xE466, 0x92D0},+    {0xE467, 0x92D1},+    {0xE468, 0x92D2},+    {0xE469, 0x92D3},+    {0xE46A, 0x92D4},+    {0xE46B, 0x92D5},+    {0xE46C, 0x92D6},+    {0xE46D, 0x92D7},+    {0xE46E, 0x92D8},+    {0xE46F, 0x92D9},+    {0xE470, 0x92DA},+    {0xE471, 0x92DB},+    {0xE472, 0x92DC},+    {0xE473, 0x92DD},+    {0xE474, 0x92DE},+    {0xE475, 0x92DF},+    {0xE476, 0x92E0},+    {0xE477, 0x92E1},+    {0xE478, 0x92E2},+    {0xE479, 0x92E3},+    {0xE47A, 0x92E4},+    {0xE47B, 0x92E5},+    {0xE47C, 0x92E6},+    {0xE47D, 0x92E7},+    {0xE47E, 0x92E8},+    {0xE480, 0x92E9},+    {0xE481, 0x92EA},+    {0xE482, 0x92EB},+    {0xE483, 0x92EC},+    {0xE484, 0x92ED},+    {0xE485, 0x92EE},+    {0xE486, 0x92EF},+    {0xE487, 0x92F0},+    {0xE488, 0x92F1},+    {0xE489, 0x92F2},+    {0xE48A, 0x92F3},+    {0xE48B, 0x92F4},+    {0xE48C, 0x92F5},+    {0xE48D, 0x92F6},+    {0xE48E, 0x92F7},+    {0xE48F, 0x92F8},+    {0xE490, 0x92F9},+    {0xE491, 0x92FA},+    {0xE492, 0x92FB},+    {0xE493, 0x92FC},+    {0xE494, 0x92FD},+    {0xE495, 0x92FE},+    {0xE496, 0x92FF},+    {0xE497, 0x9300},+    {0xE498, 0x9301},+    {0xE499, 0x9302},+    {0xE49A, 0x9303},+    {0xE49B, 0x9304},+    {0xE49C, 0x9305},+    {0xE49D, 0x9306},+    {0xE49E, 0x9307},+    {0xE49F, 0x9308},+    {0xE4A0, 0x9309},+    {0xE4A1, 0x6D39},+    {0xE4A2, 0x6D27},+    {0xE4A3, 0x6D0C},+    {0xE4A4, 0x6D43},+    {0xE4A5, 0x6D48},+    {0xE4A6, 0x6D07},+    {0xE4A7, 0x6D04},+    {0xE4A8, 0x6D19},+    {0xE4A9, 0x6D0E},+    {0xE4AA, 0x6D2B},+    {0xE4AB, 0x6D4D},+    {0xE4AC, 0x6D2E},+    {0xE4AD, 0x6D35},+    {0xE4AE, 0x6D1A},+    {0xE4AF, 0x6D4F},+    {0xE4B0, 0x6D52},+    {0xE4B1, 0x6D54},+    {0xE4B2, 0x6D33},+    {0xE4B3, 0x6D91},+    {0xE4B4, 0x6D6F},+    {0xE4B5, 0x6D9E},+    {0xE4B6, 0x6DA0},+    {0xE4B7, 0x6D5E},+    {0xE4B8, 0x6D93},+    {0xE4B9, 0x6D94},+    {0xE4BA, 0x6D5C},+    {0xE4BB, 0x6D60},+    {0xE4BC, 0x6D7C},+    {0xE4BD, 0x6D63},+    {0xE4BE, 0x6E1A},+    {0xE4BF, 0x6DC7},+    {0xE4C0, 0x6DC5},+    {0xE4C1, 0x6DDE},+    {0xE4C2, 0x6E0E},+    {0xE4C3, 0x6DBF},+    {0xE4C4, 0x6DE0},+    {0xE4C5, 0x6E11},+    {0xE4C6, 0x6DE6},+    {0xE4C7, 0x6DDD},+    {0xE4C8, 0x6DD9},+    {0xE4C9, 0x6E16},+    {0xE4CA, 0x6DAB},+    {0xE4CB, 0x6E0C},+    {0xE4CC, 0x6DAE},+    {0xE4CD, 0x6E2B},+    {0xE4CE, 0x6E6E},+    {0xE4CF, 0x6E4E},+    {0xE4D0, 0x6E6B},+    {0xE4D1, 0x6EB2},+    {0xE4D2, 0x6E5F},+    {0xE4D3, 0x6E86},+    {0xE4D4, 0x6E53},+    {0xE4D5, 0x6E54},+    {0xE4D6, 0x6E32},+    {0xE4D7, 0x6E25},+    {0xE4D8, 0x6E44},+    {0xE4D9, 0x6EDF},+    {0xE4DA, 0x6EB1},+    {0xE4DB, 0x6E98},+    {0xE4DC, 0x6EE0},+    {0xE4DD, 0x6F2D},+    {0xE4DE, 0x6EE2},+    {0xE4DF, 0x6EA5},+    {0xE4E0, 0x6EA7},+    {0xE4E1, 0x6EBD},+    {0xE4E2, 0x6EBB},+    {0xE4E3, 0x6EB7},+    {0xE4E4, 0x6ED7},+    {0xE4E5, 0x6EB4},+    {0xE4E6, 0x6ECF},+    {0xE4E7, 0x6E8F},+    {0xE4E8, 0x6EC2},+    {0xE4E9, 0x6E9F},+    {0xE4EA, 0x6F62},+    {0xE4EB, 0x6F46},+    {0xE4EC, 0x6F47},+    {0xE4ED, 0x6F24},+    {0xE4EE, 0x6F15},+    {0xE4EF, 0x6EF9},+    {0xE4F0, 0x6F2F},+    {0xE4F1, 0x6F36},+    {0xE4F2, 0x6F4B},+    {0xE4F3, 0x6F74},+    {0xE4F4, 0x6F2A},+    {0xE4F5, 0x6F09},+    {0xE4F6, 0x6F29},+    {0xE4F7, 0x6F89},+    {0xE4F8, 0x6F8D},+    {0xE4F9, 0x6F8C},+    {0xE4FA, 0x6F78},+    {0xE4FB, 0x6F72},+    {0xE4FC, 0x6F7C},+    {0xE4FD, 0x6F7A},+    {0xE4FE, 0x6FD1},+    {0xE540, 0x930A},+    {0xE541, 0x930B},+    {0xE542, 0x930C},+    {0xE543, 0x930D},+    {0xE544, 0x930E},+    {0xE545, 0x930F},+    {0xE546, 0x9310},+    {0xE547, 0x9311},+    {0xE548, 0x9312},+    {0xE549, 0x9313},+    {0xE54A, 0x9314},+    {0xE54B, 0x9315},+    {0xE54C, 0x9316},+    {0xE54D, 0x9317},+    {0xE54E, 0x9318},+    {0xE54F, 0x9319},+    {0xE550, 0x931A},+    {0xE551, 0x931B},+    {0xE552, 0x931C},+    {0xE553, 0x931D},+    {0xE554, 0x931E},+    {0xE555, 0x931F},+    {0xE556, 0x9320},+    {0xE557, 0x9321},+    {0xE558, 0x9322},+    {0xE559, 0x9323},+    {0xE55A, 0x9324},+    {0xE55B, 0x9325},+    {0xE55C, 0x9326},+    {0xE55D, 0x9327},+    {0xE55E, 0x9328},+    {0xE55F, 0x9329},+    {0xE560, 0x932A},+    {0xE561, 0x932B},+    {0xE562, 0x932C},+    {0xE563, 0x932D},+    {0xE564, 0x932E},+    {0xE565, 0x932F},+    {0xE566, 0x9330},+    {0xE567, 0x9331},+    {0xE568, 0x9332},+    {0xE569, 0x9333},+    {0xE56A, 0x9334},+    {0xE56B, 0x9335},+    {0xE56C, 0x9336},+    {0xE56D, 0x9337},+    {0xE56E, 0x9338},+    {0xE56F, 0x9339},+    {0xE570, 0x933A},+    {0xE571, 0x933B},+    {0xE572, 0x933C},+    {0xE573, 0x933D},+    {0xE574, 0x933F},+    {0xE575, 0x9340},+    {0xE576, 0x9341},+    {0xE577, 0x9342},+    {0xE578, 0x9343},+    {0xE579, 0x9344},+    {0xE57A, 0x9345},+    {0xE57B, 0x9346},+    {0xE57C, 0x9347},+    {0xE57D, 0x9348},+    {0xE57E, 0x9349},+    {0xE580, 0x934A},+    {0xE581, 0x934B},+    {0xE582, 0x934C},+    {0xE583, 0x934D},+    {0xE584, 0x934E},+    {0xE585, 0x934F},+    {0xE586, 0x9350},+    {0xE587, 0x9351},+    {0xE588, 0x9352},+    {0xE589, 0x9353},+    {0xE58A, 0x9354},+    {0xE58B, 0x9355},+    {0xE58C, 0x9356},+    {0xE58D, 0x9357},+    {0xE58E, 0x9358},+    {0xE58F, 0x9359},+    {0xE590, 0x935A},+    {0xE591, 0x935B},+    {0xE592, 0x935C},+    {0xE593, 0x935D},+    {0xE594, 0x935E},+    {0xE595, 0x935F},+    {0xE596, 0x9360},+    {0xE597, 0x9361},+    {0xE598, 0x9362},+    {0xE599, 0x9363},+    {0xE59A, 0x9364},+    {0xE59B, 0x9365},+    {0xE59C, 0x9366},+    {0xE59D, 0x9367},+    {0xE59E, 0x9368},+    {0xE59F, 0x9369},+    {0xE5A0, 0x936B},+    {0xE5A1, 0x6FC9},+    {0xE5A2, 0x6FA7},+    {0xE5A3, 0x6FB9},+    {0xE5A4, 0x6FB6},+    {0xE5A5, 0x6FC2},+    {0xE5A6, 0x6FE1},+    {0xE5A7, 0x6FEE},+    {0xE5A8, 0x6FDE},+    {0xE5A9, 0x6FE0},+    {0xE5AA, 0x6FEF},+    {0xE5AB, 0x701A},+    {0xE5AC, 0x7023},+    {0xE5AD, 0x701B},+    {0xE5AE, 0x7039},+    {0xE5AF, 0x7035},+    {0xE5B0, 0x704F},+    {0xE5B1, 0x705E},+    {0xE5B2, 0x5B80},+    {0xE5B3, 0x5B84},+    {0xE5B4, 0x5B95},+    {0xE5B5, 0x5B93},+    {0xE5B6, 0x5BA5},+    {0xE5B7, 0x5BB8},+    {0xE5B8, 0x752F},+    {0xE5B9, 0x9A9E},+    {0xE5BA, 0x6434},+    {0xE5BB, 0x5BE4},+    {0xE5BC, 0x5BEE},+    {0xE5BD, 0x8930},+    {0xE5BE, 0x5BF0},+    {0xE5BF, 0x8E47},+    {0xE5C0, 0x8B07},+    {0xE5C1, 0x8FB6},+    {0xE5C2, 0x8FD3},+    {0xE5C3, 0x8FD5},+    {0xE5C4, 0x8FE5},+    {0xE5C5, 0x8FEE},+    {0xE5C6, 0x8FE4},+    {0xE5C7, 0x8FE9},+    {0xE5C8, 0x8FE6},+    {0xE5C9, 0x8FF3},+    {0xE5CA, 0x8FE8},+    {0xE5CB, 0x9005},+    {0xE5CC, 0x9004},+    {0xE5CD, 0x900B},+    {0xE5CE, 0x9026},+    {0xE5CF, 0x9011},+    {0xE5D0, 0x900D},+    {0xE5D1, 0x9016},+    {0xE5D2, 0x9021},+    {0xE5D3, 0x9035},+    {0xE5D4, 0x9036},+    {0xE5D5, 0x902D},+    {0xE5D6, 0x902F},+    {0xE5D7, 0x9044},+    {0xE5D8, 0x9051},+    {0xE5D9, 0x9052},+    {0xE5DA, 0x9050},+    {0xE5DB, 0x9068},+    {0xE5DC, 0x9058},+    {0xE5DD, 0x9062},+    {0xE5DE, 0x905B},+    {0xE5DF, 0x66B9},+    {0xE5E0, 0x9074},+    {0xE5E1, 0x907D},+    {0xE5E2, 0x9082},+    {0xE5E3, 0x9088},+    {0xE5E4, 0x9083},+    {0xE5E5, 0x908B},+    {0xE5E6, 0x5F50},+    {0xE5E7, 0x5F57},+    {0xE5E8, 0x5F56},+    {0xE5E9, 0x5F58},+    {0xE5EA, 0x5C3B},+    {0xE5EB, 0x54AB},+    {0xE5EC, 0x5C50},+    {0xE5ED, 0x5C59},+    {0xE5EE, 0x5B71},+    {0xE5EF, 0x5C63},+    {0xE5F0, 0x5C66},+    {0xE5F1, 0x7FBC},+    {0xE5F2, 0x5F2A},+    {0xE5F3, 0x5F29},+    {0xE5F4, 0x5F2D},+    {0xE5F5, 0x8274},+    {0xE5F6, 0x5F3C},+    {0xE5F7, 0x9B3B},+    {0xE5F8, 0x5C6E},+    {0xE5F9, 0x5981},+    {0xE5FA, 0x5983},+    {0xE5FB, 0x598D},+    {0xE5FC, 0x59A9},+    {0xE5FD, 0x59AA},+    {0xE5FE, 0x59A3},+    {0xE640, 0x936C},+    {0xE641, 0x936D},+    {0xE642, 0x936E},+    {0xE643, 0x936F},+    {0xE644, 0x9370},+    {0xE645, 0x9371},+    {0xE646, 0x9372},+    {0xE647, 0x9373},+    {0xE648, 0x9374},+    {0xE649, 0x9375},+    {0xE64A, 0x9376},+    {0xE64B, 0x9377},+    {0xE64C, 0x9378},+    {0xE64D, 0x9379},+    {0xE64E, 0x937A},+    {0xE64F, 0x937B},+    {0xE650, 0x937C},+    {0xE651, 0x937D},+    {0xE652, 0x937E},+    {0xE653, 0x937F},+    {0xE654, 0x9380},+    {0xE655, 0x9381},+    {0xE656, 0x9382},+    {0xE657, 0x9383},+    {0xE658, 0x9384},+    {0xE659, 0x9385},+    {0xE65A, 0x9386},+    {0xE65B, 0x9387},+    {0xE65C, 0x9388},+    {0xE65D, 0x9389},+    {0xE65E, 0x938A},+    {0xE65F, 0x938B},+    {0xE660, 0x938C},+    {0xE661, 0x938D},+    {0xE662, 0x938E},+    {0xE663, 0x9390},+    {0xE664, 0x9391},+    {0xE665, 0x9392},+    {0xE666, 0x9393},+    {0xE667, 0x9394},+    {0xE668, 0x9395},+    {0xE669, 0x9396},+    {0xE66A, 0x9397},+    {0xE66B, 0x9398},+    {0xE66C, 0x9399},+    {0xE66D, 0x939A},+    {0xE66E, 0x939B},+    {0xE66F, 0x939C},+    {0xE670, 0x939D},+    {0xE671, 0x939E},+    {0xE672, 0x939F},+    {0xE673, 0x93A0},+    {0xE674, 0x93A1},+    {0xE675, 0x93A2},+    {0xE676, 0x93A3},+    {0xE677, 0x93A4},+    {0xE678, 0x93A5},+    {0xE679, 0x93A6},+    {0xE67A, 0x93A7},+    {0xE67B, 0x93A8},+    {0xE67C, 0x93A9},+    {0xE67D, 0x93AA},+    {0xE67E, 0x93AB},+    {0xE680, 0x93AC},+    {0xE681, 0x93AD},+    {0xE682, 0x93AE},+    {0xE683, 0x93AF},+    {0xE684, 0x93B0},+    {0xE685, 0x93B1},+    {0xE686, 0x93B2},+    {0xE687, 0x93B3},+    {0xE688, 0x93B4},+    {0xE689, 0x93B5},+    {0xE68A, 0x93B6},+    {0xE68B, 0x93B7},+    {0xE68C, 0x93B8},+    {0xE68D, 0x93B9},+    {0xE68E, 0x93BA},+    {0xE68F, 0x93BB},+    {0xE690, 0x93BC},+    {0xE691, 0x93BD},+    {0xE692, 0x93BE},+    {0xE693, 0x93BF},+    {0xE694, 0x93C0},+    {0xE695, 0x93C1},+    {0xE696, 0x93C2},+    {0xE697, 0x93C3},+    {0xE698, 0x93C4},+    {0xE699, 0x93C5},+    {0xE69A, 0x93C6},+    {0xE69B, 0x93C7},+    {0xE69C, 0x93C8},+    {0xE69D, 0x93C9},+    {0xE69E, 0x93CB},+    {0xE69F, 0x93CC},+    {0xE6A0, 0x93CD},+    {0xE6A1, 0x5997},+    {0xE6A2, 0x59CA},+    {0xE6A3, 0x59AB},+    {0xE6A4, 0x599E},+    {0xE6A5, 0x59A4},+    {0xE6A6, 0x59D2},+    {0xE6A7, 0x59B2},+    {0xE6A8, 0x59AF},+    {0xE6A9, 0x59D7},+    {0xE6AA, 0x59BE},+    {0xE6AB, 0x5A05},+    {0xE6AC, 0x5A06},+    {0xE6AD, 0x59DD},+    {0xE6AE, 0x5A08},+    {0xE6AF, 0x59E3},+    {0xE6B0, 0x59D8},+    {0xE6B1, 0x59F9},+    {0xE6B2, 0x5A0C},+    {0xE6B3, 0x5A09},+    {0xE6B4, 0x5A32},+    {0xE6B5, 0x5A34},+    {0xE6B6, 0x5A11},+    {0xE6B7, 0x5A23},+    {0xE6B8, 0x5A13},+    {0xE6B9, 0x5A40},+    {0xE6BA, 0x5A67},+    {0xE6BB, 0x5A4A},+    {0xE6BC, 0x5A55},+    {0xE6BD, 0x5A3C},+    {0xE6BE, 0x5A62},+    {0xE6BF, 0x5A75},+    {0xE6C0, 0x80EC},+    {0xE6C1, 0x5AAA},+    {0xE6C2, 0x5A9B},+    {0xE6C3, 0x5A77},+    {0xE6C4, 0x5A7A},+    {0xE6C5, 0x5ABE},+    {0xE6C6, 0x5AEB},+    {0xE6C7, 0x5AB2},+    {0xE6C8, 0x5AD2},+    {0xE6C9, 0x5AD4},+    {0xE6CA, 0x5AB8},+    {0xE6CB, 0x5AE0},+    {0xE6CC, 0x5AE3},+    {0xE6CD, 0x5AF1},+    {0xE6CE, 0x5AD6},+    {0xE6CF, 0x5AE6},+    {0xE6D0, 0x5AD8},+    {0xE6D1, 0x5ADC},+    {0xE6D2, 0x5B09},+    {0xE6D3, 0x5B17},+    {0xE6D4, 0x5B16},+    {0xE6D5, 0x5B32},+    {0xE6D6, 0x5B37},+    {0xE6D7, 0x5B40},+    {0xE6D8, 0x5C15},+    {0xE6D9, 0x5C1C},+    {0xE6DA, 0x5B5A},+    {0xE6DB, 0x5B65},+    {0xE6DC, 0x5B73},+    {0xE6DD, 0x5B51},+    {0xE6DE, 0x5B53},+    {0xE6DF, 0x5B62},+    {0xE6E0, 0x9A75},+    {0xE6E1, 0x9A77},+    {0xE6E2, 0x9A78},+    {0xE6E3, 0x9A7A},+    {0xE6E4, 0x9A7F},+    {0xE6E5, 0x9A7D},+    {0xE6E6, 0x9A80},+    {0xE6E7, 0x9A81},+    {0xE6E8, 0x9A85},+    {0xE6E9, 0x9A88},+    {0xE6EA, 0x9A8A},+    {0xE6EB, 0x9A90},+    {0xE6EC, 0x9A92},+    {0xE6ED, 0x9A93},+    {0xE6EE, 0x9A96},+    {0xE6EF, 0x9A98},+    {0xE6F0, 0x9A9B},+    {0xE6F1, 0x9A9C},+    {0xE6F2, 0x9A9D},+    {0xE6F3, 0x9A9F},+    {0xE6F4, 0x9AA0},+    {0xE6F5, 0x9AA2},+    {0xE6F6, 0x9AA3},+    {0xE6F7, 0x9AA5},+    {0xE6F8, 0x9AA7},+    {0xE6F9, 0x7E9F},+    {0xE6FA, 0x7EA1},+    {0xE6FB, 0x7EA3},+    {0xE6FC, 0x7EA5},+    {0xE6FD, 0x7EA8},+    {0xE6FE, 0x7EA9},+    {0xE740, 0x93CE},+    {0xE741, 0x93CF},+    {0xE742, 0x93D0},+    {0xE743, 0x93D1},+    {0xE744, 0x93D2},+    {0xE745, 0x93D3},+    {0xE746, 0x93D4},+    {0xE747, 0x93D5},+    {0xE748, 0x93D7},+    {0xE749, 0x93D8},+    {0xE74A, 0x93D9},+    {0xE74B, 0x93DA},+    {0xE74C, 0x93DB},+    {0xE74D, 0x93DC},+    {0xE74E, 0x93DD},+    {0xE74F, 0x93DE},+    {0xE750, 0x93DF},+    {0xE751, 0x93E0},+    {0xE752, 0x93E1},+    {0xE753, 0x93E2},+    {0xE754, 0x93E3},+    {0xE755, 0x93E4},+    {0xE756, 0x93E5},+    {0xE757, 0x93E6},+    {0xE758, 0x93E7},+    {0xE759, 0x93E8},+    {0xE75A, 0x93E9},+    {0xE75B, 0x93EA},+    {0xE75C, 0x93EB},+    {0xE75D, 0x93EC},+    {0xE75E, 0x93ED},+    {0xE75F, 0x93EE},+    {0xE760, 0x93EF},+    {0xE761, 0x93F0},+    {0xE762, 0x93F1},+    {0xE763, 0x93F2},+    {0xE764, 0x93F3},+    {0xE765, 0x93F4},+    {0xE766, 0x93F5},+    {0xE767, 0x93F6},+    {0xE768, 0x93F7},+    {0xE769, 0x93F8},+    {0xE76A, 0x93F9},+    {0xE76B, 0x93FA},+    {0xE76C, 0x93FB},+    {0xE76D, 0x93FC},+    {0xE76E, 0x93FD},+    {0xE76F, 0x93FE},+    {0xE770, 0x93FF},+    {0xE771, 0x9400},+    {0xE772, 0x9401},+    {0xE773, 0x9402},+    {0xE774, 0x9403},+    {0xE775, 0x9404},+    {0xE776, 0x9405},+    {0xE777, 0x9406},+    {0xE778, 0x9407},+    {0xE779, 0x9408},+    {0xE77A, 0x9409},+    {0xE77B, 0x940A},+    {0xE77C, 0x940B},+    {0xE77D, 0x940C},+    {0xE77E, 0x940D},+    {0xE780, 0x940E},+    {0xE781, 0x940F},+    {0xE782, 0x9410},+    {0xE783, 0x9411},+    {0xE784, 0x9412},+    {0xE785, 0x9413},+    {0xE786, 0x9414},+    {0xE787, 0x9415},+    {0xE788, 0x9416},+    {0xE789, 0x9417},+    {0xE78A, 0x9418},+    {0xE78B, 0x9419},+    {0xE78C, 0x941A},+    {0xE78D, 0x941B},+    {0xE78E, 0x941C},+    {0xE78F, 0x941D},+    {0xE790, 0x941E},+    {0xE791, 0x941F},+    {0xE792, 0x9420},+    {0xE793, 0x9421},+    {0xE794, 0x9422},+    {0xE795, 0x9423},+    {0xE796, 0x9424},+    {0xE797, 0x9425},+    {0xE798, 0x9426},+    {0xE799, 0x9427},+    {0xE79A, 0x9428},+    {0xE79B, 0x9429},+    {0xE79C, 0x942A},+    {0xE79D, 0x942B},+    {0xE79E, 0x942C},+    {0xE79F, 0x942D},+    {0xE7A0, 0x942E},+    {0xE7A1, 0x7EAD},+    {0xE7A2, 0x7EB0},+    {0xE7A3, 0x7EBE},+    {0xE7A4, 0x7EC0},+    {0xE7A5, 0x7EC1},+    {0xE7A6, 0x7EC2},+    {0xE7A7, 0x7EC9},+    {0xE7A8, 0x7ECB},+    {0xE7A9, 0x7ECC},+    {0xE7AA, 0x7ED0},+    {0xE7AB, 0x7ED4},+    {0xE7AC, 0x7ED7},+    {0xE7AD, 0x7EDB},+    {0xE7AE, 0x7EE0},+    {0xE7AF, 0x7EE1},+    {0xE7B0, 0x7EE8},+    {0xE7B1, 0x7EEB},+    {0xE7B2, 0x7EEE},+    {0xE7B3, 0x7EEF},+    {0xE7B4, 0x7EF1},+    {0xE7B5, 0x7EF2},+    {0xE7B6, 0x7F0D},+    {0xE7B7, 0x7EF6},+    {0xE7B8, 0x7EFA},+    {0xE7B9, 0x7EFB},+    {0xE7BA, 0x7EFE},+    {0xE7BB, 0x7F01},+    {0xE7BC, 0x7F02},+    {0xE7BD, 0x7F03},+    {0xE7BE, 0x7F07},+    {0xE7BF, 0x7F08},+    {0xE7C0, 0x7F0B},+    {0xE7C1, 0x7F0C},+    {0xE7C2, 0x7F0F},+    {0xE7C3, 0x7F11},+    {0xE7C4, 0x7F12},+    {0xE7C5, 0x7F17},+    {0xE7C6, 0x7F19},+    {0xE7C7, 0x7F1C},+    {0xE7C8, 0x7F1B},+    {0xE7C9, 0x7F1F},+    {0xE7CA, 0x7F21},+    {0xE7CB, 0x7F22},+    {0xE7CC, 0x7F23},+    {0xE7CD, 0x7F24},+    {0xE7CE, 0x7F25},+    {0xE7CF, 0x7F26},+    {0xE7D0, 0x7F27},+    {0xE7D1, 0x7F2A},+    {0xE7D2, 0x7F2B},+    {0xE7D3, 0x7F2C},+    {0xE7D4, 0x7F2D},+    {0xE7D5, 0x7F2F},+    {0xE7D6, 0x7F30},+    {0xE7D7, 0x7F31},+    {0xE7D8, 0x7F32},+    {0xE7D9, 0x7F33},+    {0xE7DA, 0x7F35},+    {0xE7DB, 0x5E7A},+    {0xE7DC, 0x757F},+    {0xE7DD, 0x5DDB},+    {0xE7DE, 0x753E},+    {0xE7DF, 0x9095},+    {0xE7E0, 0x738E},+    {0xE7E1, 0x7391},+    {0xE7E2, 0x73AE},+    {0xE7E3, 0x73A2},+    {0xE7E4, 0x739F},+    {0xE7E5, 0x73CF},+    {0xE7E6, 0x73C2},+    {0xE7E7, 0x73D1},+    {0xE7E8, 0x73B7},+    {0xE7E9, 0x73B3},+    {0xE7EA, 0x73C0},+    {0xE7EB, 0x73C9},+    {0xE7EC, 0x73C8},+    {0xE7ED, 0x73E5},+    {0xE7EE, 0x73D9},+    {0xE7EF, 0x987C},+    {0xE7F0, 0x740A},+    {0xE7F1, 0x73E9},+    {0xE7F2, 0x73E7},+    {0xE7F3, 0x73DE},+    {0xE7F4, 0x73BA},+    {0xE7F5, 0x73F2},+    {0xE7F6, 0x740F},+    {0xE7F7, 0x742A},+    {0xE7F8, 0x745B},+    {0xE7F9, 0x7426},+    {0xE7FA, 0x7425},+    {0xE7FB, 0x7428},+    {0xE7FC, 0x7430},+    {0xE7FD, 0x742E},+    {0xE7FE, 0x742C},+    {0xE840, 0x942F},+    {0xE841, 0x9430},+    {0xE842, 0x9431},+    {0xE843, 0x9432},+    {0xE844, 0x9433},+    {0xE845, 0x9434},+    {0xE846, 0x9435},+    {0xE847, 0x9436},+    {0xE848, 0x9437},+    {0xE849, 0x9438},+    {0xE84A, 0x9439},+    {0xE84B, 0x943A},+    {0xE84C, 0x943B},+    {0xE84D, 0x943C},+    {0xE84E, 0x943D},+    {0xE84F, 0x943F},+    {0xE850, 0x9440},+    {0xE851, 0x9441},+    {0xE852, 0x9442},+    {0xE853, 0x9443},+    {0xE854, 0x9444},+    {0xE855, 0x9445},+    {0xE856, 0x9446},+    {0xE857, 0x9447},+    {0xE858, 0x9448},+    {0xE859, 0x9449},+    {0xE85A, 0x944A},+    {0xE85B, 0x944B},+    {0xE85C, 0x944C},+    {0xE85D, 0x944D},+    {0xE85E, 0x944E},+    {0xE85F, 0x944F},+    {0xE860, 0x9450},+    {0xE861, 0x9451},+    {0xE862, 0x9452},+    {0xE863, 0x9453},+    {0xE864, 0x9454},+    {0xE865, 0x9455},+    {0xE866, 0x9456},+    {0xE867, 0x9457},+    {0xE868, 0x9458},+    {0xE869, 0x9459},+    {0xE86A, 0x945A},+    {0xE86B, 0x945B},+    {0xE86C, 0x945C},+    {0xE86D, 0x945D},+    {0xE86E, 0x945E},+    {0xE86F, 0x945F},+    {0xE870, 0x9460},+    {0xE871, 0x9461},+    {0xE872, 0x9462},+    {0xE873, 0x9463},+    {0xE874, 0x9464},+    {0xE875, 0x9465},+    {0xE876, 0x9466},+    {0xE877, 0x9467},+    {0xE878, 0x9468},+    {0xE879, 0x9469},+    {0xE87A, 0x946A},+    {0xE87B, 0x946C},+    {0xE87C, 0x946D},+    {0xE87D, 0x946E},+    {0xE87E, 0x946F},+    {0xE880, 0x9470},+    {0xE881, 0x9471},+    {0xE882, 0x9472},+    {0xE883, 0x9473},+    {0xE884, 0x9474},+    {0xE885, 0x9475},+    {0xE886, 0x9476},+    {0xE887, 0x9477},+    {0xE888, 0x9478},+    {0xE889, 0x9479},+    {0xE88A, 0x947A},+    {0xE88B, 0x947B},+    {0xE88C, 0x947C},+    {0xE88D, 0x947D},+    {0xE88E, 0x947E},+    {0xE88F, 0x947F},+    {0xE890, 0x9480},+    {0xE891, 0x9481},+    {0xE892, 0x9482},+    {0xE893, 0x9483},+    {0xE894, 0x9484},+    {0xE895, 0x9491},+    {0xE896, 0x9496},+    {0xE897, 0x9498},+    {0xE898, 0x94C7},+    {0xE899, 0x94CF},+    {0xE89A, 0x94D3},+    {0xE89B, 0x94D4},+    {0xE89C, 0x94DA},+    {0xE89D, 0x94E6},+    {0xE89E, 0x94FB},+    {0xE89F, 0x951C},+    {0xE8A0, 0x9520},+    {0xE8A1, 0x741B},+    {0xE8A2, 0x741A},+    {0xE8A3, 0x7441},+    {0xE8A4, 0x745C},+    {0xE8A5, 0x7457},+    {0xE8A6, 0x7455},+    {0xE8A7, 0x7459},+    {0xE8A8, 0x7477},+    {0xE8A9, 0x746D},+    {0xE8AA, 0x747E},+    {0xE8AB, 0x749C},+    {0xE8AC, 0x748E},+    {0xE8AD, 0x7480},+    {0xE8AE, 0x7481},+    {0xE8AF, 0x7487},+    {0xE8B0, 0x748B},+    {0xE8B1, 0x749E},+    {0xE8B2, 0x74A8},+    {0xE8B3, 0x74A9},+    {0xE8B4, 0x7490},+    {0xE8B5, 0x74A7},+    {0xE8B6, 0x74D2},+    {0xE8B7, 0x74BA},+    {0xE8B8, 0x97EA},+    {0xE8B9, 0x97EB},+    {0xE8BA, 0x97EC},+    {0xE8BB, 0x674C},+    {0xE8BC, 0x6753},+    {0xE8BD, 0x675E},+    {0xE8BE, 0x6748},+    {0xE8BF, 0x6769},+    {0xE8C0, 0x67A5},+    {0xE8C1, 0x6787},+    {0xE8C2, 0x676A},+    {0xE8C3, 0x6773},+    {0xE8C4, 0x6798},+    {0xE8C5, 0x67A7},+    {0xE8C6, 0x6775},+    {0xE8C7, 0x67A8},+    {0xE8C8, 0x679E},+    {0xE8C9, 0x67AD},+    {0xE8CA, 0x678B},+    {0xE8CB, 0x6777},+    {0xE8CC, 0x677C},+    {0xE8CD, 0x67F0},+    {0xE8CE, 0x6809},+    {0xE8CF, 0x67D8},+    {0xE8D0, 0x680A},+    {0xE8D1, 0x67E9},+    {0xE8D2, 0x67B0},+    {0xE8D3, 0x680C},+    {0xE8D4, 0x67D9},+    {0xE8D5, 0x67B5},+    {0xE8D6, 0x67DA},+    {0xE8D7, 0x67B3},+    {0xE8D8, 0x67DD},+    {0xE8D9, 0x6800},+    {0xE8DA, 0x67C3},+    {0xE8DB, 0x67B8},+    {0xE8DC, 0x67E2},+    {0xE8DD, 0x680E},+    {0xE8DE, 0x67C1},+    {0xE8DF, 0x67FD},+    {0xE8E0, 0x6832},+    {0xE8E1, 0x6833},+    {0xE8E2, 0x6860},+    {0xE8E3, 0x6861},+    {0xE8E4, 0x684E},+    {0xE8E5, 0x6862},+    {0xE8E6, 0x6844},+    {0xE8E7, 0x6864},+    {0xE8E8, 0x6883},+    {0xE8E9, 0x681D},+    {0xE8EA, 0x6855},+    {0xE8EB, 0x6866},+    {0xE8EC, 0x6841},+    {0xE8ED, 0x6867},+    {0xE8EE, 0x6840},+    {0xE8EF, 0x683E},+    {0xE8F0, 0x684A},+    {0xE8F1, 0x6849},+    {0xE8F2, 0x6829},+    {0xE8F3, 0x68B5},+    {0xE8F4, 0x688F},+    {0xE8F5, 0x6874},+    {0xE8F6, 0x6877},+    {0xE8F7, 0x6893},+    {0xE8F8, 0x686B},+    {0xE8F9, 0x68C2},+    {0xE8FA, 0x696E},+    {0xE8FB, 0x68FC},+    {0xE8FC, 0x691F},+    {0xE8FD, 0x6920},+    {0xE8FE, 0x68F9},+    {0xE940, 0x9527},+    {0xE941, 0x9533},+    {0xE942, 0x953D},+    {0xE943, 0x9543},+    {0xE944, 0x9548},+    {0xE945, 0x954B},+    {0xE946, 0x9555},+    {0xE947, 0x955A},+    {0xE948, 0x9560},+    {0xE949, 0x956E},+    {0xE94A, 0x9574},+    {0xE94B, 0x9575},+    {0xE94C, 0x9577},+    {0xE94D, 0x9578},+    {0xE94E, 0x9579},+    {0xE94F, 0x957A},+    {0xE950, 0x957B},+    {0xE951, 0x957C},+    {0xE952, 0x957D},+    {0xE953, 0x957E},+    {0xE954, 0x9580},+    {0xE955, 0x9581},+    {0xE956, 0x9582},+    {0xE957, 0x9583},+    {0xE958, 0x9584},+    {0xE959, 0x9585},+    {0xE95A, 0x9586},+    {0xE95B, 0x9587},+    {0xE95C, 0x9588},+    {0xE95D, 0x9589},+    {0xE95E, 0x958A},+    {0xE95F, 0x958B},+    {0xE960, 0x958C},+    {0xE961, 0x958D},+    {0xE962, 0x958E},+    {0xE963, 0x958F},+    {0xE964, 0x9590},+    {0xE965, 0x9591},+    {0xE966, 0x9592},+    {0xE967, 0x9593},+    {0xE968, 0x9594},+    {0xE969, 0x9595},+    {0xE96A, 0x9596},+    {0xE96B, 0x9597},+    {0xE96C, 0x9598},+    {0xE96D, 0x9599},+    {0xE96E, 0x959A},+    {0xE96F, 0x959B},+    {0xE970, 0x959C},+    {0xE971, 0x959D},+    {0xE972, 0x959E},+    {0xE973, 0x959F},+    {0xE974, 0x95A0},+    {0xE975, 0x95A1},+    {0xE976, 0x95A2},+    {0xE977, 0x95A3},+    {0xE978, 0x95A4},+    {0xE979, 0x95A5},+    {0xE97A, 0x95A6},+    {0xE97B, 0x95A7},+    {0xE97C, 0x95A8},+    {0xE97D, 0x95A9},+    {0xE97E, 0x95AA},+    {0xE980, 0x95AB},+    {0xE981, 0x95AC},+    {0xE982, 0x95AD},+    {0xE983, 0x95AE},+    {0xE984, 0x95AF},+    {0xE985, 0x95B0},+    {0xE986, 0x95B1},+    {0xE987, 0x95B2},+    {0xE988, 0x95B3},+    {0xE989, 0x95B4},+    {0xE98A, 0x95B5},+    {0xE98B, 0x95B6},+    {0xE98C, 0x95B7},+    {0xE98D, 0x95B8},+    {0xE98E, 0x95B9},+    {0xE98F, 0x95BA},+    {0xE990, 0x95BB},+    {0xE991, 0x95BC},+    {0xE992, 0x95BD},+    {0xE993, 0x95BE},+    {0xE994, 0x95BF},+    {0xE995, 0x95C0},+    {0xE996, 0x95C1},+    {0xE997, 0x95C2},+    {0xE998, 0x95C3},+    {0xE999, 0x95C4},+    {0xE99A, 0x95C5},+    {0xE99B, 0x95C6},+    {0xE99C, 0x95C7},+    {0xE99D, 0x95C8},+    {0xE99E, 0x95C9},+    {0xE99F, 0x95CA},+    {0xE9A0, 0x95CB},+    {0xE9A1, 0x6924},+    {0xE9A2, 0x68F0},+    {0xE9A3, 0x690B},+    {0xE9A4, 0x6901},+    {0xE9A5, 0x6957},+    {0xE9A6, 0x68E3},+    {0xE9A7, 0x6910},+    {0xE9A8, 0x6971},+    {0xE9A9, 0x6939},+    {0xE9AA, 0x6960},+    {0xE9AB, 0x6942},+    {0xE9AC, 0x695D},+    {0xE9AD, 0x6984},+    {0xE9AE, 0x696B},+    {0xE9AF, 0x6980},+    {0xE9B0, 0x6998},+    {0xE9B1, 0x6978},+    {0xE9B2, 0x6934},+    {0xE9B3, 0x69CC},+    {0xE9B4, 0x6987},+    {0xE9B5, 0x6988},+    {0xE9B6, 0x69CE},+    {0xE9B7, 0x6989},+    {0xE9B8, 0x6966},+    {0xE9B9, 0x6963},+    {0xE9BA, 0x6979},+    {0xE9BB, 0x699B},+    {0xE9BC, 0x69A7},+    {0xE9BD, 0x69BB},+    {0xE9BE, 0x69AB},+    {0xE9BF, 0x69AD},+    {0xE9C0, 0x69D4},+    {0xE9C1, 0x69B1},+    {0xE9C2, 0x69C1},+    {0xE9C3, 0x69CA},+    {0xE9C4, 0x69DF},+    {0xE9C5, 0x6995},+    {0xE9C6, 0x69E0},+    {0xE9C7, 0x698D},+    {0xE9C8, 0x69FF},+    {0xE9C9, 0x6A2F},+    {0xE9CA, 0x69ED},+    {0xE9CB, 0x6A17},+    {0xE9CC, 0x6A18},+    {0xE9CD, 0x6A65},+    {0xE9CE, 0x69F2},+    {0xE9CF, 0x6A44},+    {0xE9D0, 0x6A3E},+    {0xE9D1, 0x6AA0},+    {0xE9D2, 0x6A50},+    {0xE9D3, 0x6A5B},+    {0xE9D4, 0x6A35},+    {0xE9D5, 0x6A8E},+    {0xE9D6, 0x6A79},+    {0xE9D7, 0x6A3D},+    {0xE9D8, 0x6A28},+    {0xE9D9, 0x6A58},+    {0xE9DA, 0x6A7C},+    {0xE9DB, 0x6A91},+    {0xE9DC, 0x6A90},+    {0xE9DD, 0x6AA9},+    {0xE9DE, 0x6A97},+    {0xE9DF, 0x6AAB},+    {0xE9E0, 0x7337},+    {0xE9E1, 0x7352},+    {0xE9E2, 0x6B81},+    {0xE9E3, 0x6B82},+    {0xE9E4, 0x6B87},+    {0xE9E5, 0x6B84},+    {0xE9E6, 0x6B92},+    {0xE9E7, 0x6B93},+    {0xE9E8, 0x6B8D},+    {0xE9E9, 0x6B9A},+    {0xE9EA, 0x6B9B},+    {0xE9EB, 0x6BA1},+    {0xE9EC, 0x6BAA},+    {0xE9ED, 0x8F6B},+    {0xE9EE, 0x8F6D},+    {0xE9EF, 0x8F71},+    {0xE9F0, 0x8F72},+    {0xE9F1, 0x8F73},+    {0xE9F2, 0x8F75},+    {0xE9F3, 0x8F76},+    {0xE9F4, 0x8F78},+    {0xE9F5, 0x8F77},+    {0xE9F6, 0x8F79},+    {0xE9F7, 0x8F7A},+    {0xE9F8, 0x8F7C},+    {0xE9F9, 0x8F7E},+    {0xE9FA, 0x8F81},+    {0xE9FB, 0x8F82},+    {0xE9FC, 0x8F84},+    {0xE9FD, 0x8F87},+    {0xE9FE, 0x8F8B},+    {0xEA40, 0x95CC},+    {0xEA41, 0x95CD},+    {0xEA42, 0x95CE},+    {0xEA43, 0x95CF},+    {0xEA44, 0x95D0},+    {0xEA45, 0x95D1},+    {0xEA46, 0x95D2},+    {0xEA47, 0x95D3},+    {0xEA48, 0x95D4},+    {0xEA49, 0x95D5},+    {0xEA4A, 0x95D6},+    {0xEA4B, 0x95D7},+    {0xEA4C, 0x95D8},+    {0xEA4D, 0x95D9},+    {0xEA4E, 0x95DA},+    {0xEA4F, 0x95DB},+    {0xEA50, 0x95DC},+    {0xEA51, 0x95DD},+    {0xEA52, 0x95DE},+    {0xEA53, 0x95DF},+    {0xEA54, 0x95E0},+    {0xEA55, 0x95E1},+    {0xEA56, 0x95E2},+    {0xEA57, 0x95E3},+    {0xEA58, 0x95E4},+    {0xEA59, 0x95E5},+    {0xEA5A, 0x95E6},+    {0xEA5B, 0x95E7},+    {0xEA5C, 0x95EC},+    {0xEA5D, 0x95FF},+    {0xEA5E, 0x9607},+    {0xEA5F, 0x9613},+    {0xEA60, 0x9618},+    {0xEA61, 0x961B},+    {0xEA62, 0x961E},+    {0xEA63, 0x9620},+    {0xEA64, 0x9623},+    {0xEA65, 0x9624},+    {0xEA66, 0x9625},+    {0xEA67, 0x9626},+    {0xEA68, 0x9627},+    {0xEA69, 0x9628},+    {0xEA6A, 0x9629},+    {0xEA6B, 0x962B},+    {0xEA6C, 0x962C},+    {0xEA6D, 0x962D},+    {0xEA6E, 0x962F},+    {0xEA6F, 0x9630},+    {0xEA70, 0x9637},+    {0xEA71, 0x9638},+    {0xEA72, 0x9639},+    {0xEA73, 0x963A},+    {0xEA74, 0x963E},+    {0xEA75, 0x9641},+    {0xEA76, 0x9643},+    {0xEA77, 0x964A},+    {0xEA78, 0x964E},+    {0xEA79, 0x964F},+    {0xEA7A, 0x9651},+    {0xEA7B, 0x9652},+    {0xEA7C, 0x9653},+    {0xEA7D, 0x9656},+    {0xEA7E, 0x9657},+    {0xEA80, 0x9658},+    {0xEA81, 0x9659},+    {0xEA82, 0x965A},+    {0xEA83, 0x965C},+    {0xEA84, 0x965D},+    {0xEA85, 0x965E},+    {0xEA86, 0x9660},+    {0xEA87, 0x9663},+    {0xEA88, 0x9665},+    {0xEA89, 0x9666},+    {0xEA8A, 0x966B},+    {0xEA8B, 0x966D},+    {0xEA8C, 0x966E},+    {0xEA8D, 0x966F},+    {0xEA8E, 0x9670},+    {0xEA8F, 0x9671},+    {0xEA90, 0x9673},+    {0xEA91, 0x9678},+    {0xEA92, 0x9679},+    {0xEA93, 0x967A},+    {0xEA94, 0x967B},+    {0xEA95, 0x967C},+    {0xEA96, 0x967D},+    {0xEA97, 0x967E},+    {0xEA98, 0x967F},+    {0xEA99, 0x9680},+    {0xEA9A, 0x9681},+    {0xEA9B, 0x9682},+    {0xEA9C, 0x9683},+    {0xEA9D, 0x9684},+    {0xEA9E, 0x9687},+    {0xEA9F, 0x9689},+    {0xEAA0, 0x968A},+    {0xEAA1, 0x8F8D},+    {0xEAA2, 0x8F8E},+    {0xEAA3, 0x8F8F},+    {0xEAA4, 0x8F98},+    {0xEAA5, 0x8F9A},+    {0xEAA6, 0x8ECE},+    {0xEAA7, 0x620B},+    {0xEAA8, 0x6217},+    {0xEAA9, 0x621B},+    {0xEAAA, 0x621F},+    {0xEAAB, 0x6222},+    {0xEAAC, 0x6221},+    {0xEAAD, 0x6225},+    {0xEAAE, 0x6224},+    {0xEAAF, 0x622C},+    {0xEAB0, 0x81E7},+    {0xEAB1, 0x74EF},+    {0xEAB2, 0x74F4},+    {0xEAB3, 0x74FF},+    {0xEAB4, 0x750F},+    {0xEAB5, 0x7511},+    {0xEAB6, 0x7513},+    {0xEAB7, 0x6534},+    {0xEAB8, 0x65EE},+    {0xEAB9, 0x65EF},+    {0xEABA, 0x65F0},+    {0xEABB, 0x660A},+    {0xEABC, 0x6619},+    {0xEABD, 0x6772},+    {0xEABE, 0x6603},+    {0xEABF, 0x6615},+    {0xEAC0, 0x6600},+    {0xEAC1, 0x7085},+    {0xEAC2, 0x66F7},+    {0xEAC3, 0x661D},+    {0xEAC4, 0x6634},+    {0xEAC5, 0x6631},+    {0xEAC6, 0x6636},+    {0xEAC7, 0x6635},+    {0xEAC8, 0x8006},+    {0xEAC9, 0x665F},+    {0xEACA, 0x6654},+    {0xEACB, 0x6641},+    {0xEACC, 0x664F},+    {0xEACD, 0x6656},+    {0xEACE, 0x6661},+    {0xEACF, 0x6657},+    {0xEAD0, 0x6677},+    {0xEAD1, 0x6684},+    {0xEAD2, 0x668C},+    {0xEAD3, 0x66A7},+    {0xEAD4, 0x669D},+    {0xEAD5, 0x66BE},+    {0xEAD6, 0x66DB},+    {0xEAD7, 0x66DC},+    {0xEAD8, 0x66E6},+    {0xEAD9, 0x66E9},+    {0xEADA, 0x8D32},+    {0xEADB, 0x8D33},+    {0xEADC, 0x8D36},+    {0xEADD, 0x8D3B},+    {0xEADE, 0x8D3D},+    {0xEADF, 0x8D40},+    {0xEAE0, 0x8D45},+    {0xEAE1, 0x8D46},+    {0xEAE2, 0x8D48},+    {0xEAE3, 0x8D49},+    {0xEAE4, 0x8D47},+    {0xEAE5, 0x8D4D},+    {0xEAE6, 0x8D55},+    {0xEAE7, 0x8D59},+    {0xEAE8, 0x89C7},+    {0xEAE9, 0x89CA},+    {0xEAEA, 0x89CB},+    {0xEAEB, 0x89CC},+    {0xEAEC, 0x89CE},+    {0xEAED, 0x89CF},+    {0xEAEE, 0x89D0},+    {0xEAEF, 0x89D1},+    {0xEAF0, 0x726E},+    {0xEAF1, 0x729F},+    {0xEAF2, 0x725D},+    {0xEAF3, 0x7266},+    {0xEAF4, 0x726F},+    {0xEAF5, 0x727E},+    {0xEAF6, 0x727F},+    {0xEAF7, 0x7284},+    {0xEAF8, 0x728B},+    {0xEAF9, 0x728D},+    {0xEAFA, 0x728F},+    {0xEAFB, 0x7292},+    {0xEAFC, 0x6308},+    {0xEAFD, 0x6332},+    {0xEAFE, 0x63B0},+    {0xEB40, 0x968C},+    {0xEB41, 0x968E},+    {0xEB42, 0x9691},+    {0xEB43, 0x9692},+    {0xEB44, 0x9693},+    {0xEB45, 0x9695},+    {0xEB46, 0x9696},+    {0xEB47, 0x969A},+    {0xEB48, 0x969B},+    {0xEB49, 0x969D},+    {0xEB4A, 0x969E},+    {0xEB4B, 0x969F},+    {0xEB4C, 0x96A0},+    {0xEB4D, 0x96A1},+    {0xEB4E, 0x96A2},+    {0xEB4F, 0x96A3},+    {0xEB50, 0x96A4},+    {0xEB51, 0x96A5},+    {0xEB52, 0x96A6},+    {0xEB53, 0x96A8},+    {0xEB54, 0x96A9},+    {0xEB55, 0x96AA},+    {0xEB56, 0x96AB},+    {0xEB57, 0x96AC},+    {0xEB58, 0x96AD},+    {0xEB59, 0x96AE},+    {0xEB5A, 0x96AF},+    {0xEB5B, 0x96B1},+    {0xEB5C, 0x96B2},+    {0xEB5D, 0x96B4},+    {0xEB5E, 0x96B5},+    {0xEB5F, 0x96B7},+    {0xEB60, 0x96B8},+    {0xEB61, 0x96BA},+    {0xEB62, 0x96BB},+    {0xEB63, 0x96BF},+    {0xEB64, 0x96C2},+    {0xEB65, 0x96C3},+    {0xEB66, 0x96C8},+    {0xEB67, 0x96CA},+    {0xEB68, 0x96CB},+    {0xEB69, 0x96D0},+    {0xEB6A, 0x96D1},+    {0xEB6B, 0x96D3},+    {0xEB6C, 0x96D4},+    {0xEB6D, 0x96D6},+    {0xEB6E, 0x96D7},+    {0xEB6F, 0x96D8},+    {0xEB70, 0x96D9},+    {0xEB71, 0x96DA},+    {0xEB72, 0x96DB},+    {0xEB73, 0x96DC},+    {0xEB74, 0x96DD},+    {0xEB75, 0x96DE},+    {0xEB76, 0x96DF},+    {0xEB77, 0x96E1},+    {0xEB78, 0x96E2},+    {0xEB79, 0x96E3},+    {0xEB7A, 0x96E4},+    {0xEB7B, 0x96E5},+    {0xEB7C, 0x96E6},+    {0xEB7D, 0x96E7},+    {0xEB7E, 0x96EB},+    {0xEB80, 0x96EC},+    {0xEB81, 0x96ED},+    {0xEB82, 0x96EE},+    {0xEB83, 0x96F0},+    {0xEB84, 0x96F1},+    {0xEB85, 0x96F2},+    {0xEB86, 0x96F4},+    {0xEB87, 0x96F5},+    {0xEB88, 0x96F8},+    {0xEB89, 0x96FA},+    {0xEB8A, 0x96FB},+    {0xEB8B, 0x96FC},+    {0xEB8C, 0x96FD},+    {0xEB8D, 0x96FF},+    {0xEB8E, 0x9702},+    {0xEB8F, 0x9703},+    {0xEB90, 0x9705},+    {0xEB91, 0x970A},+    {0xEB92, 0x970B},+    {0xEB93, 0x970C},+    {0xEB94, 0x9710},+    {0xEB95, 0x9711},+    {0xEB96, 0x9712},+    {0xEB97, 0x9714},+    {0xEB98, 0x9715},+    {0xEB99, 0x9717},+    {0xEB9A, 0x9718},+    {0xEB9B, 0x9719},+    {0xEB9C, 0x971A},+    {0xEB9D, 0x971B},+    {0xEB9E, 0x971D},+    {0xEB9F, 0x971F},+    {0xEBA0, 0x9720},+    {0xEBA1, 0x643F},+    {0xEBA2, 0x64D8},+    {0xEBA3, 0x8004},+    {0xEBA4, 0x6BEA},+    {0xEBA5, 0x6BF3},+    {0xEBA6, 0x6BFD},+    {0xEBA7, 0x6BF5},+    {0xEBA8, 0x6BF9},+    {0xEBA9, 0x6C05},+    {0xEBAA, 0x6C07},+    {0xEBAB, 0x6C06},+    {0xEBAC, 0x6C0D},+    {0xEBAD, 0x6C15},+    {0xEBAE, 0x6C18},+    {0xEBAF, 0x6C19},+    {0xEBB0, 0x6C1A},+    {0xEBB1, 0x6C21},+    {0xEBB2, 0x6C29},+    {0xEBB3, 0x6C24},+    {0xEBB4, 0x6C2A},+    {0xEBB5, 0x6C32},+    {0xEBB6, 0x6535},+    {0xEBB7, 0x6555},+    {0xEBB8, 0x656B},+    {0xEBB9, 0x724D},+    {0xEBBA, 0x7252},+    {0xEBBB, 0x7256},+    {0xEBBC, 0x7230},+    {0xEBBD, 0x8662},+    {0xEBBE, 0x5216},+    {0xEBBF, 0x809F},+    {0xEBC0, 0x809C},+    {0xEBC1, 0x8093},+    {0xEBC2, 0x80BC},+    {0xEBC3, 0x670A},+    {0xEBC4, 0x80BD},+    {0xEBC5, 0x80B1},+    {0xEBC6, 0x80AB},+    {0xEBC7, 0x80AD},+    {0xEBC8, 0x80B4},+    {0xEBC9, 0x80B7},+    {0xEBCA, 0x80E7},+    {0xEBCB, 0x80E8},+    {0xEBCC, 0x80E9},+    {0xEBCD, 0x80EA},+    {0xEBCE, 0x80DB},+    {0xEBCF, 0x80C2},+    {0xEBD0, 0x80C4},+    {0xEBD1, 0x80D9},+    {0xEBD2, 0x80CD},+    {0xEBD3, 0x80D7},+    {0xEBD4, 0x6710},+    {0xEBD5, 0x80DD},+    {0xEBD6, 0x80EB},+    {0xEBD7, 0x80F1},+    {0xEBD8, 0x80F4},+    {0xEBD9, 0x80ED},+    {0xEBDA, 0x810D},+    {0xEBDB, 0x810E},+    {0xEBDC, 0x80F2},+    {0xEBDD, 0x80FC},+    {0xEBDE, 0x6715},+    {0xEBDF, 0x8112},+    {0xEBE0, 0x8C5A},+    {0xEBE1, 0x8136},+    {0xEBE2, 0x811E},+    {0xEBE3, 0x812C},+    {0xEBE4, 0x8118},+    {0xEBE5, 0x8132},+    {0xEBE6, 0x8148},+    {0xEBE7, 0x814C},+    {0xEBE8, 0x8153},+    {0xEBE9, 0x8174},+    {0xEBEA, 0x8159},+    {0xEBEB, 0x815A},+    {0xEBEC, 0x8171},+    {0xEBED, 0x8160},+    {0xEBEE, 0x8169},+    {0xEBEF, 0x817C},+    {0xEBF0, 0x817D},+    {0xEBF1, 0x816D},+    {0xEBF2, 0x8167},+    {0xEBF3, 0x584D},+    {0xEBF4, 0x5AB5},+    {0xEBF5, 0x8188},+    {0xEBF6, 0x8182},+    {0xEBF7, 0x8191},+    {0xEBF8, 0x6ED5},+    {0xEBF9, 0x81A3},+    {0xEBFA, 0x81AA},+    {0xEBFB, 0x81CC},+    {0xEBFC, 0x6726},+    {0xEBFD, 0x81CA},+    {0xEBFE, 0x81BB},+    {0xEC40, 0x9721},+    {0xEC41, 0x9722},+    {0xEC42, 0x9723},+    {0xEC43, 0x9724},+    {0xEC44, 0x9725},+    {0xEC45, 0x9726},+    {0xEC46, 0x9727},+    {0xEC47, 0x9728},+    {0xEC48, 0x9729},+    {0xEC49, 0x972B},+    {0xEC4A, 0x972C},+    {0xEC4B, 0x972E},+    {0xEC4C, 0x972F},+    {0xEC4D, 0x9731},+    {0xEC4E, 0x9733},+    {0xEC4F, 0x9734},+    {0xEC50, 0x9735},+    {0xEC51, 0x9736},+    {0xEC52, 0x9737},+    {0xEC53, 0x973A},+    {0xEC54, 0x973B},+    {0xEC55, 0x973C},+    {0xEC56, 0x973D},+    {0xEC57, 0x973F},+    {0xEC58, 0x9740},+    {0xEC59, 0x9741},+    {0xEC5A, 0x9742},+    {0xEC5B, 0x9743},+    {0xEC5C, 0x9744},+    {0xEC5D, 0x9745},+    {0xEC5E, 0x9746},+    {0xEC5F, 0x9747},+    {0xEC60, 0x9748},+    {0xEC61, 0x9749},+    {0xEC62, 0x974A},+    {0xEC63, 0x974B},+    {0xEC64, 0x974C},+    {0xEC65, 0x974D},+    {0xEC66, 0x974E},+    {0xEC67, 0x974F},+    {0xEC68, 0x9750},+    {0xEC69, 0x9751},+    {0xEC6A, 0x9754},+    {0xEC6B, 0x9755},+    {0xEC6C, 0x9757},+    {0xEC6D, 0x9758},+    {0xEC6E, 0x975A},+    {0xEC6F, 0x975C},+    {0xEC70, 0x975D},+    {0xEC71, 0x975F},+    {0xEC72, 0x9763},+    {0xEC73, 0x9764},+    {0xEC74, 0x9766},+    {0xEC75, 0x9767},+    {0xEC76, 0x9768},+    {0xEC77, 0x976A},+    {0xEC78, 0x976B},+    {0xEC79, 0x976C},+    {0xEC7A, 0x976D},+    {0xEC7B, 0x976E},+    {0xEC7C, 0x976F},+    {0xEC7D, 0x9770},+    {0xEC7E, 0x9771},+    {0xEC80, 0x9772},+    {0xEC81, 0x9775},+    {0xEC82, 0x9777},+    {0xEC83, 0x9778},+    {0xEC84, 0x9779},+    {0xEC85, 0x977A},+    {0xEC86, 0x977B},+    {0xEC87, 0x977D},+    {0xEC88, 0x977E},+    {0xEC89, 0x977F},+    {0xEC8A, 0x9780},+    {0xEC8B, 0x9781},+    {0xEC8C, 0x9782},+    {0xEC8D, 0x9783},+    {0xEC8E, 0x9784},+    {0xEC8F, 0x9786},+    {0xEC90, 0x9787},+    {0xEC91, 0x9788},+    {0xEC92, 0x9789},+    {0xEC93, 0x978A},+    {0xEC94, 0x978C},+    {0xEC95, 0x978E},+    {0xEC96, 0x978F},+    {0xEC97, 0x9790},+    {0xEC98, 0x9793},+    {0xEC99, 0x9795},+    {0xEC9A, 0x9796},+    {0xEC9B, 0x9797},+    {0xEC9C, 0x9799},+    {0xEC9D, 0x979A},+    {0xEC9E, 0x979B},+    {0xEC9F, 0x979C},+    {0xECA0, 0x979D},+    {0xECA1, 0x81C1},+    {0xECA2, 0x81A6},+    {0xECA3, 0x6B24},+    {0xECA4, 0x6B37},+    {0xECA5, 0x6B39},+    {0xECA6, 0x6B43},+    {0xECA7, 0x6B46},+    {0xECA8, 0x6B59},+    {0xECA9, 0x98D1},+    {0xECAA, 0x98D2},+    {0xECAB, 0x98D3},+    {0xECAC, 0x98D5},+    {0xECAD, 0x98D9},+    {0xECAE, 0x98DA},+    {0xECAF, 0x6BB3},+    {0xECB0, 0x5F40},+    {0xECB1, 0x6BC2},+    {0xECB2, 0x89F3},+    {0xECB3, 0x6590},+    {0xECB4, 0x9F51},+    {0xECB5, 0x6593},+    {0xECB6, 0x65BC},+    {0xECB7, 0x65C6},+    {0xECB8, 0x65C4},+    {0xECB9, 0x65C3},+    {0xECBA, 0x65CC},+    {0xECBB, 0x65CE},+    {0xECBC, 0x65D2},+    {0xECBD, 0x65D6},+    {0xECBE, 0x7080},+    {0xECBF, 0x709C},+    {0xECC0, 0x7096},+    {0xECC1, 0x709D},+    {0xECC2, 0x70BB},+    {0xECC3, 0x70C0},+    {0xECC4, 0x70B7},+    {0xECC5, 0x70AB},+    {0xECC6, 0x70B1},+    {0xECC7, 0x70E8},+    {0xECC8, 0x70CA},+    {0xECC9, 0x7110},+    {0xECCA, 0x7113},+    {0xECCB, 0x7116},+    {0xECCC, 0x712F},+    {0xECCD, 0x7131},+    {0xECCE, 0x7173},+    {0xECCF, 0x715C},+    {0xECD0, 0x7168},+    {0xECD1, 0x7145},+    {0xECD2, 0x7172},+    {0xECD3, 0x714A},+    {0xECD4, 0x7178},+    {0xECD5, 0x717A},+    {0xECD6, 0x7198},+    {0xECD7, 0x71B3},+    {0xECD8, 0x71B5},+    {0xECD9, 0x71A8},+    {0xECDA, 0x71A0},+    {0xECDB, 0x71E0},+    {0xECDC, 0x71D4},+    {0xECDD, 0x71E7},+    {0xECDE, 0x71F9},+    {0xECDF, 0x721D},+    {0xECE0, 0x7228},+    {0xECE1, 0x706C},+    {0xECE2, 0x7118},+    {0xECE3, 0x7166},+    {0xECE4, 0x71B9},+    {0xECE5, 0x623E},+    {0xECE6, 0x623D},+    {0xECE7, 0x6243},+    {0xECE8, 0x6248},+    {0xECE9, 0x6249},+    {0xECEA, 0x793B},+    {0xECEB, 0x7940},+    {0xECEC, 0x7946},+    {0xECED, 0x7949},+    {0xECEE, 0x795B},+    {0xECEF, 0x795C},+    {0xECF0, 0x7953},+    {0xECF1, 0x795A},+    {0xECF2, 0x7962},+    {0xECF3, 0x7957},+    {0xECF4, 0x7960},+    {0xECF5, 0x796F},+    {0xECF6, 0x7967},+    {0xECF7, 0x797A},+    {0xECF8, 0x7985},+    {0xECF9, 0x798A},+    {0xECFA, 0x799A},+    {0xECFB, 0x79A7},+    {0xECFC, 0x79B3},+    {0xECFD, 0x5FD1},+    {0xECFE, 0x5FD0},+    {0xED40, 0x979E},+    {0xED41, 0x979F},+    {0xED42, 0x97A1},+    {0xED43, 0x97A2},+    {0xED44, 0x97A4},+    {0xED45, 0x97A5},+    {0xED46, 0x97A6},+    {0xED47, 0x97A7},+    {0xED48, 0x97A8},+    {0xED49, 0x97A9},+    {0xED4A, 0x97AA},+    {0xED4B, 0x97AC},+    {0xED4C, 0x97AE},+    {0xED4D, 0x97B0},+    {0xED4E, 0x97B1},+    {0xED4F, 0x97B3},+    {0xED50, 0x97B5},+    {0xED51, 0x97B6},+    {0xED52, 0x97B7},+    {0xED53, 0x97B8},+    {0xED54, 0x97B9},+    {0xED55, 0x97BA},+    {0xED56, 0x97BB},+    {0xED57, 0x97BC},+    {0xED58, 0x97BD},+    {0xED59, 0x97BE},+    {0xED5A, 0x97BF},+    {0xED5B, 0x97C0},+    {0xED5C, 0x97C1},+    {0xED5D, 0x97C2},+    {0xED5E, 0x97C3},+    {0xED5F, 0x97C4},+    {0xED60, 0x97C5},+    {0xED61, 0x97C6},+    {0xED62, 0x97C7},+    {0xED63, 0x97C8},+    {0xED64, 0x97C9},+    {0xED65, 0x97CA},+    {0xED66, 0x97CB},+    {0xED67, 0x97CC},+    {0xED68, 0x97CD},+    {0xED69, 0x97CE},+    {0xED6A, 0x97CF},+    {0xED6B, 0x97D0},+    {0xED6C, 0x97D1},+    {0xED6D, 0x97D2},+    {0xED6E, 0x97D3},+    {0xED6F, 0x97D4},+    {0xED70, 0x97D5},+    {0xED71, 0x97D6},+    {0xED72, 0x97D7},+    {0xED73, 0x97D8},+    {0xED74, 0x97D9},+    {0xED75, 0x97DA},+    {0xED76, 0x97DB},+    {0xED77, 0x97DC},+    {0xED78, 0x97DD},+    {0xED79, 0x97DE},+    {0xED7A, 0x97DF},+    {0xED7B, 0x97E0},+    {0xED7C, 0x97E1},+    {0xED7D, 0x97E2},+    {0xED7E, 0x97E3},+    {0xED80, 0x97E4},+    {0xED81, 0x97E5},+    {0xED82, 0x97E8},+    {0xED83, 0x97EE},+    {0xED84, 0x97EF},+    {0xED85, 0x97F0},+    {0xED86, 0x97F1},+    {0xED87, 0x97F2},+    {0xED88, 0x97F4},+    {0xED89, 0x97F7},+    {0xED8A, 0x97F8},+    {0xED8B, 0x97F9},+    {0xED8C, 0x97FA},+    {0xED8D, 0x97FB},+    {0xED8E, 0x97FC},+    {0xED8F, 0x97FD},+    {0xED90, 0x97FE},+    {0xED91, 0x97FF},+    {0xED92, 0x9800},+    {0xED93, 0x9801},+    {0xED94, 0x9802},+    {0xED95, 0x9803},+    {0xED96, 0x9804},+    {0xED97, 0x9805},+    {0xED98, 0x9806},+    {0xED99, 0x9807},+    {0xED9A, 0x9808},+    {0xED9B, 0x9809},+    {0xED9C, 0x980A},+    {0xED9D, 0x980B},+    {0xED9E, 0x980C},+    {0xED9F, 0x980D},+    {0xEDA0, 0x980E},+    {0xEDA1, 0x603C},+    {0xEDA2, 0x605D},+    {0xEDA3, 0x605A},+    {0xEDA4, 0x6067},+    {0xEDA5, 0x6041},+    {0xEDA6, 0x6059},+    {0xEDA7, 0x6063},+    {0xEDA8, 0x60AB},+    {0xEDA9, 0x6106},+    {0xEDAA, 0x610D},+    {0xEDAB, 0x615D},+    {0xEDAC, 0x61A9},+    {0xEDAD, 0x619D},+    {0xEDAE, 0x61CB},+    {0xEDAF, 0x61D1},+    {0xEDB0, 0x6206},+    {0xEDB1, 0x8080},+    {0xEDB2, 0x807F},+    {0xEDB3, 0x6C93},+    {0xEDB4, 0x6CF6},+    {0xEDB5, 0x6DFC},+    {0xEDB6, 0x77F6},+    {0xEDB7, 0x77F8},+    {0xEDB8, 0x7800},+    {0xEDB9, 0x7809},+    {0xEDBA, 0x7817},+    {0xEDBB, 0x7818},+    {0xEDBC, 0x7811},+    {0xEDBD, 0x65AB},+    {0xEDBE, 0x782D},+    {0xEDBF, 0x781C},+    {0xEDC0, 0x781D},+    {0xEDC1, 0x7839},+    {0xEDC2, 0x783A},+    {0xEDC3, 0x783B},+    {0xEDC4, 0x781F},+    {0xEDC5, 0x783C},+    {0xEDC6, 0x7825},+    {0xEDC7, 0x782C},+    {0xEDC8, 0x7823},+    {0xEDC9, 0x7829},+    {0xEDCA, 0x784E},+    {0xEDCB, 0x786D},+    {0xEDCC, 0x7856},+    {0xEDCD, 0x7857},+    {0xEDCE, 0x7826},+    {0xEDCF, 0x7850},+    {0xEDD0, 0x7847},+    {0xEDD1, 0x784C},+    {0xEDD2, 0x786A},+    {0xEDD3, 0x789B},+    {0xEDD4, 0x7893},+    {0xEDD5, 0x789A},+    {0xEDD6, 0x7887},+    {0xEDD7, 0x789C},+    {0xEDD8, 0x78A1},+    {0xEDD9, 0x78A3},+    {0xEDDA, 0x78B2},+    {0xEDDB, 0x78B9},+    {0xEDDC, 0x78A5},+    {0xEDDD, 0x78D4},+    {0xEDDE, 0x78D9},+    {0xEDDF, 0x78C9},+    {0xEDE0, 0x78EC},+    {0xEDE1, 0x78F2},+    {0xEDE2, 0x7905},+    {0xEDE3, 0x78F4},+    {0xEDE4, 0x7913},+    {0xEDE5, 0x7924},+    {0xEDE6, 0x791E},+    {0xEDE7, 0x7934},+    {0xEDE8, 0x9F9B},+    {0xEDE9, 0x9EF9},+    {0xEDEA, 0x9EFB},+    {0xEDEB, 0x9EFC},+    {0xEDEC, 0x76F1},+    {0xEDED, 0x7704},+    {0xEDEE, 0x770D},+    {0xEDEF, 0x76F9},+    {0xEDF0, 0x7707},+    {0xEDF1, 0x7708},+    {0xEDF2, 0x771A},+    {0xEDF3, 0x7722},+    {0xEDF4, 0x7719},+    {0xEDF5, 0x772D},+    {0xEDF6, 0x7726},+    {0xEDF7, 0x7735},+    {0xEDF8, 0x7738},+    {0xEDF9, 0x7750},+    {0xEDFA, 0x7751},+    {0xEDFB, 0x7747},+    {0xEDFC, 0x7743},+    {0xEDFD, 0x775A},+    {0xEDFE, 0x7768},+    {0xEE40, 0x980F},+    {0xEE41, 0x9810},+    {0xEE42, 0x9811},+    {0xEE43, 0x9812},+    {0xEE44, 0x9813},+    {0xEE45, 0x9814},+    {0xEE46, 0x9815},+    {0xEE47, 0x9816},+    {0xEE48, 0x9817},+    {0xEE49, 0x9818},+    {0xEE4A, 0x9819},+    {0xEE4B, 0x981A},+    {0xEE4C, 0x981B},+    {0xEE4D, 0x981C},+    {0xEE4E, 0x981D},+    {0xEE4F, 0x981E},+    {0xEE50, 0x981F},+    {0xEE51, 0x9820},+    {0xEE52, 0x9821},+    {0xEE53, 0x9822},+    {0xEE54, 0x9823},+    {0xEE55, 0x9824},+    {0xEE56, 0x9825},+    {0xEE57, 0x9826},+    {0xEE58, 0x9827},+    {0xEE59, 0x9828},+    {0xEE5A, 0x9829},+    {0xEE5B, 0x982A},+    {0xEE5C, 0x982B},+    {0xEE5D, 0x982C},+    {0xEE5E, 0x982D},+    {0xEE5F, 0x982E},+    {0xEE60, 0x982F},+    {0xEE61, 0x9830},+    {0xEE62, 0x9831},+    {0xEE63, 0x9832},+    {0xEE64, 0x9833},+    {0xEE65, 0x9834},+    {0xEE66, 0x9835},+    {0xEE67, 0x9836},+    {0xEE68, 0x9837},+    {0xEE69, 0x9838},+    {0xEE6A, 0x9839},+    {0xEE6B, 0x983A},+    {0xEE6C, 0x983B},+    {0xEE6D, 0x983C},+    {0xEE6E, 0x983D},+    {0xEE6F, 0x983E},+    {0xEE70, 0x983F},+    {0xEE71, 0x9840},+    {0xEE72, 0x9841},+    {0xEE73, 0x9842},+    {0xEE74, 0x9843},+    {0xEE75, 0x9844},+    {0xEE76, 0x9845},+    {0xEE77, 0x9846},+    {0xEE78, 0x9847},+    {0xEE79, 0x9848},+    {0xEE7A, 0x9849},+    {0xEE7B, 0x984A},+    {0xEE7C, 0x984B},+    {0xEE7D, 0x984C},+    {0xEE7E, 0x984D},+    {0xEE80, 0x984E},+    {0xEE81, 0x984F},+    {0xEE82, 0x9850},+    {0xEE83, 0x9851},+    {0xEE84, 0x9852},+    {0xEE85, 0x9853},+    {0xEE86, 0x9854},+    {0xEE87, 0x9855},+    {0xEE88, 0x9856},+    {0xEE89, 0x9857},+    {0xEE8A, 0x9858},+    {0xEE8B, 0x9859},+    {0xEE8C, 0x985A},+    {0xEE8D, 0x985B},+    {0xEE8E, 0x985C},+    {0xEE8F, 0x985D},+    {0xEE90, 0x985E},+    {0xEE91, 0x985F},+    {0xEE92, 0x9860},+    {0xEE93, 0x9861},+    {0xEE94, 0x9862},+    {0xEE95, 0x9863},+    {0xEE96, 0x9864},+    {0xEE97, 0x9865},+    {0xEE98, 0x9866},+    {0xEE99, 0x9867},+    {0xEE9A, 0x9868},+    {0xEE9B, 0x9869},+    {0xEE9C, 0x986A},+    {0xEE9D, 0x986B},+    {0xEE9E, 0x986C},+    {0xEE9F, 0x986D},+    {0xEEA0, 0x986E},+    {0xEEA1, 0x7762},+    {0xEEA2, 0x7765},+    {0xEEA3, 0x777F},+    {0xEEA4, 0x778D},+    {0xEEA5, 0x777D},+    {0xEEA6, 0x7780},+    {0xEEA7, 0x778C},+    {0xEEA8, 0x7791},+    {0xEEA9, 0x779F},+    {0xEEAA, 0x77A0},+    {0xEEAB, 0x77B0},+    {0xEEAC, 0x77B5},+    {0xEEAD, 0x77BD},+    {0xEEAE, 0x753A},+    {0xEEAF, 0x7540},+    {0xEEB0, 0x754E},+    {0xEEB1, 0x754B},+    {0xEEB2, 0x7548},+    {0xEEB3, 0x755B},+    {0xEEB4, 0x7572},+    {0xEEB5, 0x7579},+    {0xEEB6, 0x7583},+    {0xEEB7, 0x7F58},+    {0xEEB8, 0x7F61},+    {0xEEB9, 0x7F5F},+    {0xEEBA, 0x8A48},+    {0xEEBB, 0x7F68},+    {0xEEBC, 0x7F74},+    {0xEEBD, 0x7F71},+    {0xEEBE, 0x7F79},+    {0xEEBF, 0x7F81},+    {0xEEC0, 0x7F7E},+    {0xEEC1, 0x76CD},+    {0xEEC2, 0x76E5},+    {0xEEC3, 0x8832},+    {0xEEC4, 0x9485},+    {0xEEC5, 0x9486},+    {0xEEC6, 0x9487},+    {0xEEC7, 0x948B},+    {0xEEC8, 0x948A},+    {0xEEC9, 0x948C},+    {0xEECA, 0x948D},+    {0xEECB, 0x948F},+    {0xEECC, 0x9490},+    {0xEECD, 0x9494},+    {0xEECE, 0x9497},+    {0xEECF, 0x9495},+    {0xEED0, 0x949A},+    {0xEED1, 0x949B},+    {0xEED2, 0x949C},+    {0xEED3, 0x94A3},+    {0xEED4, 0x94A4},+    {0xEED5, 0x94AB},+    {0xEED6, 0x94AA},+    {0xEED7, 0x94AD},+    {0xEED8, 0x94AC},+    {0xEED9, 0x94AF},+    {0xEEDA, 0x94B0},+    {0xEEDB, 0x94B2},+    {0xEEDC, 0x94B4},+    {0xEEDD, 0x94B6},+    {0xEEDE, 0x94B7},+    {0xEEDF, 0x94B8},+    {0xEEE0, 0x94B9},+    {0xEEE1, 0x94BA},+    {0xEEE2, 0x94BC},+    {0xEEE3, 0x94BD},+    {0xEEE4, 0x94BF},+    {0xEEE5, 0x94C4},+    {0xEEE6, 0x94C8},+    {0xEEE7, 0x94C9},+    {0xEEE8, 0x94CA},+    {0xEEE9, 0x94CB},+    {0xEEEA, 0x94CC},+    {0xEEEB, 0x94CD},+    {0xEEEC, 0x94CE},+    {0xEEED, 0x94D0},+    {0xEEEE, 0x94D1},+    {0xEEEF, 0x94D2},+    {0xEEF0, 0x94D5},+    {0xEEF1, 0x94D6},+    {0xEEF2, 0x94D7},+    {0xEEF3, 0x94D9},+    {0xEEF4, 0x94D8},+    {0xEEF5, 0x94DB},+    {0xEEF6, 0x94DE},+    {0xEEF7, 0x94DF},+    {0xEEF8, 0x94E0},+    {0xEEF9, 0x94E2},+    {0xEEFA, 0x94E4},+    {0xEEFB, 0x94E5},+    {0xEEFC, 0x94E7},+    {0xEEFD, 0x94E8},+    {0xEEFE, 0x94EA},+    {0xEF40, 0x986F},+    {0xEF41, 0x9870},+    {0xEF42, 0x9871},+    {0xEF43, 0x9872},+    {0xEF44, 0x9873},+    {0xEF45, 0x9874},+    {0xEF46, 0x988B},+    {0xEF47, 0x988E},+    {0xEF48, 0x9892},+    {0xEF49, 0x9895},+    {0xEF4A, 0x9899},+    {0xEF4B, 0x98A3},+    {0xEF4C, 0x98A8},+    {0xEF4D, 0x98A9},+    {0xEF4E, 0x98AA},+    {0xEF4F, 0x98AB},+    {0xEF50, 0x98AC},+    {0xEF51, 0x98AD},+    {0xEF52, 0x98AE},+    {0xEF53, 0x98AF},+    {0xEF54, 0x98B0},+    {0xEF55, 0x98B1},+    {0xEF56, 0x98B2},+    {0xEF57, 0x98B3},+    {0xEF58, 0x98B4},+    {0xEF59, 0x98B5},+    {0xEF5A, 0x98B6},+    {0xEF5B, 0x98B7},+    {0xEF5C, 0x98B8},+    {0xEF5D, 0x98B9},+    {0xEF5E, 0x98BA},+    {0xEF5F, 0x98BB},+    {0xEF60, 0x98BC},+    {0xEF61, 0x98BD},+    {0xEF62, 0x98BE},+    {0xEF63, 0x98BF},+    {0xEF64, 0x98C0},+    {0xEF65, 0x98C1},+    {0xEF66, 0x98C2},+    {0xEF67, 0x98C3},+    {0xEF68, 0x98C4},+    {0xEF69, 0x98C5},+    {0xEF6A, 0x98C6},+    {0xEF6B, 0x98C7},+    {0xEF6C, 0x98C8},+    {0xEF6D, 0x98C9},+    {0xEF6E, 0x98CA},+    {0xEF6F, 0x98CB},+    {0xEF70, 0x98CC},+    {0xEF71, 0x98CD},+    {0xEF72, 0x98CF},+    {0xEF73, 0x98D0},+    {0xEF74, 0x98D4},+    {0xEF75, 0x98D6},+    {0xEF76, 0x98D7},+    {0xEF77, 0x98DB},+    {0xEF78, 0x98DC},+    {0xEF79, 0x98DD},+    {0xEF7A, 0x98E0},+    {0xEF7B, 0x98E1},+    {0xEF7C, 0x98E2},+    {0xEF7D, 0x98E3},+    {0xEF7E, 0x98E4},+    {0xEF80, 0x98E5},+    {0xEF81, 0x98E6},+    {0xEF82, 0x98E9},+    {0xEF83, 0x98EA},+    {0xEF84, 0x98EB},+    {0xEF85, 0x98EC},+    {0xEF86, 0x98ED},+    {0xEF87, 0x98EE},+    {0xEF88, 0x98EF},+    {0xEF89, 0x98F0},+    {0xEF8A, 0x98F1},+    {0xEF8B, 0x98F2},+    {0xEF8C, 0x98F3},+    {0xEF8D, 0x98F4},+    {0xEF8E, 0x98F5},+    {0xEF8F, 0x98F6},+    {0xEF90, 0x98F7},+    {0xEF91, 0x98F8},+    {0xEF92, 0x98F9},+    {0xEF93, 0x98FA},+    {0xEF94, 0x98FB},+    {0xEF95, 0x98FC},+    {0xEF96, 0x98FD},+    {0xEF97, 0x98FE},+    {0xEF98, 0x98FF},+    {0xEF99, 0x9900},+    {0xEF9A, 0x9901},+    {0xEF9B, 0x9902},+    {0xEF9C, 0x9903},+    {0xEF9D, 0x9904},+    {0xEF9E, 0x9905},+    {0xEF9F, 0x9906},+    {0xEFA0, 0x9907},+    {0xEFA1, 0x94E9},+    {0xEFA2, 0x94EB},+    {0xEFA3, 0x94EE},+    {0xEFA4, 0x94EF},+    {0xEFA5, 0x94F3},+    {0xEFA6, 0x94F4},+    {0xEFA7, 0x94F5},+    {0xEFA8, 0x94F7},+    {0xEFA9, 0x94F9},+    {0xEFAA, 0x94FC},+    {0xEFAB, 0x94FD},+    {0xEFAC, 0x94FF},+    {0xEFAD, 0x9503},+    {0xEFAE, 0x9502},+    {0xEFAF, 0x9506},+    {0xEFB0, 0x9507},+    {0xEFB1, 0x9509},+    {0xEFB2, 0x950A},+    {0xEFB3, 0x950D},+    {0xEFB4, 0x950E},+    {0xEFB5, 0x950F},+    {0xEFB6, 0x9512},+    {0xEFB7, 0x9513},+    {0xEFB8, 0x9514},+    {0xEFB9, 0x9515},+    {0xEFBA, 0x9516},+    {0xEFBB, 0x9518},+    {0xEFBC, 0x951B},+    {0xEFBD, 0x951D},+    {0xEFBE, 0x951E},+    {0xEFBF, 0x951F},+    {0xEFC0, 0x9522},+    {0xEFC1, 0x952A},+    {0xEFC2, 0x952B},+    {0xEFC3, 0x9529},+    {0xEFC4, 0x952C},+    {0xEFC5, 0x9531},+    {0xEFC6, 0x9532},+    {0xEFC7, 0x9534},+    {0xEFC8, 0x9536},+    {0xEFC9, 0x9537},+    {0xEFCA, 0x9538},+    {0xEFCB, 0x953C},+    {0xEFCC, 0x953E},+    {0xEFCD, 0x953F},+    {0xEFCE, 0x9542},+    {0xEFCF, 0x9535},+    {0xEFD0, 0x9544},+    {0xEFD1, 0x9545},+    {0xEFD2, 0x9546},+    {0xEFD3, 0x9549},+    {0xEFD4, 0x954C},+    {0xEFD5, 0x954E},+    {0xEFD6, 0x954F},+    {0xEFD7, 0x9552},+    {0xEFD8, 0x9553},+    {0xEFD9, 0x9554},+    {0xEFDA, 0x9556},+    {0xEFDB, 0x9557},+    {0xEFDC, 0x9558},+    {0xEFDD, 0x9559},+    {0xEFDE, 0x955B},+    {0xEFDF, 0x955E},+    {0xEFE0, 0x955F},+    {0xEFE1, 0x955D},+    {0xEFE2, 0x9561},+    {0xEFE3, 0x9562},+    {0xEFE4, 0x9564},+    {0xEFE5, 0x9565},+    {0xEFE6, 0x9566},+    {0xEFE7, 0x9567},+    {0xEFE8, 0x9568},+    {0xEFE9, 0x9569},+    {0xEFEA, 0x956A},+    {0xEFEB, 0x956B},+    {0xEFEC, 0x956C},+    {0xEFED, 0x956F},+    {0xEFEE, 0x9571},+    {0xEFEF, 0x9572},+    {0xEFF0, 0x9573},+    {0xEFF1, 0x953A},+    {0xEFF2, 0x77E7},+    {0xEFF3, 0x77EC},+    {0xEFF4, 0x96C9},+    {0xEFF5, 0x79D5},+    {0xEFF6, 0x79ED},+    {0xEFF7, 0x79E3},+    {0xEFF8, 0x79EB},+    {0xEFF9, 0x7A06},+    {0xEFFA, 0x5D47},+    {0xEFFB, 0x7A03},+    {0xEFFC, 0x7A02},+    {0xEFFD, 0x7A1E},+    {0xEFFE, 0x7A14},+    {0xF040, 0x9908},+    {0xF041, 0x9909},+    {0xF042, 0x990A},+    {0xF043, 0x990B},+    {0xF044, 0x990C},+    {0xF045, 0x990E},+    {0xF046, 0x990F},+    {0xF047, 0x9911},+    {0xF048, 0x9912},+    {0xF049, 0x9913},+    {0xF04A, 0x9914},+    {0xF04B, 0x9915},+    {0xF04C, 0x9916},+    {0xF04D, 0x9917},+    {0xF04E, 0x9918},+    {0xF04F, 0x9919},+    {0xF050, 0x991A},+    {0xF051, 0x991B},+    {0xF052, 0x991C},+    {0xF053, 0x991D},+    {0xF054, 0x991E},+    {0xF055, 0x991F},+    {0xF056, 0x9920},+    {0xF057, 0x9921},+    {0xF058, 0x9922},+    {0xF059, 0x9923},+    {0xF05A, 0x9924},+    {0xF05B, 0x9925},+    {0xF05C, 0x9926},+    {0xF05D, 0x9927},+    {0xF05E, 0x9928},+    {0xF05F, 0x9929},+    {0xF060, 0x992A},+    {0xF061, 0x992B},+    {0xF062, 0x992C},+    {0xF063, 0x992D},+    {0xF064, 0x992F},+    {0xF065, 0x9930},+    {0xF066, 0x9931},+    {0xF067, 0x9932},+    {0xF068, 0x9933},+    {0xF069, 0x9934},+    {0xF06A, 0x9935},+    {0xF06B, 0x9936},+    {0xF06C, 0x9937},+    {0xF06D, 0x9938},+    {0xF06E, 0x9939},+    {0xF06F, 0x993A},+    {0xF070, 0x993B},+    {0xF071, 0x993C},+    {0xF072, 0x993D},+    {0xF073, 0x993E},+    {0xF074, 0x993F},+    {0xF075, 0x9940},+    {0xF076, 0x9941},+    {0xF077, 0x9942},+    {0xF078, 0x9943},+    {0xF079, 0x9944},+    {0xF07A, 0x9945},+    {0xF07B, 0x9946},+    {0xF07C, 0x9947},+    {0xF07D, 0x9948},+    {0xF07E, 0x9949},+    {0xF080, 0x994A},+    {0xF081, 0x994B},+    {0xF082, 0x994C},+    {0xF083, 0x994D},+    {0xF084, 0x994E},+    {0xF085, 0x994F},+    {0xF086, 0x9950},+    {0xF087, 0x9951},+    {0xF088, 0x9952},+    {0xF089, 0x9953},+    {0xF08A, 0x9956},+    {0xF08B, 0x9957},+    {0xF08C, 0x9958},+    {0xF08D, 0x9959},+    {0xF08E, 0x995A},+    {0xF08F, 0x995B},+    {0xF090, 0x995C},+    {0xF091, 0x995D},+    {0xF092, 0x995E},+    {0xF093, 0x995F},+    {0xF094, 0x9960},+    {0xF095, 0x9961},+    {0xF096, 0x9962},+    {0xF097, 0x9964},+    {0xF098, 0x9966},+    {0xF099, 0x9973},+    {0xF09A, 0x9978},+    {0xF09B, 0x9979},+    {0xF09C, 0x997B},+    {0xF09D, 0x997E},+    {0xF09E, 0x9982},+    {0xF09F, 0x9983},+    {0xF0A0, 0x9989},+    {0xF0A1, 0x7A39},+    {0xF0A2, 0x7A37},+    {0xF0A3, 0x7A51},+    {0xF0A4, 0x9ECF},+    {0xF0A5, 0x99A5},+    {0xF0A6, 0x7A70},+    {0xF0A7, 0x7688},+    {0xF0A8, 0x768E},+    {0xF0A9, 0x7693},+    {0xF0AA, 0x7699},+    {0xF0AB, 0x76A4},+    {0xF0AC, 0x74DE},+    {0xF0AD, 0x74E0},+    {0xF0AE, 0x752C},+    {0xF0AF, 0x9E20},+    {0xF0B0, 0x9E22},+    {0xF0B1, 0x9E28},+    {0xF0B2, 0x9E29},+    {0xF0B3, 0x9E2A},+    {0xF0B4, 0x9E2B},+    {0xF0B5, 0x9E2C},+    {0xF0B6, 0x9E32},+    {0xF0B7, 0x9E31},+    {0xF0B8, 0x9E36},+    {0xF0B9, 0x9E38},+    {0xF0BA, 0x9E37},+    {0xF0BB, 0x9E39},+    {0xF0BC, 0x9E3A},+    {0xF0BD, 0x9E3E},+    {0xF0BE, 0x9E41},+    {0xF0BF, 0x9E42},+    {0xF0C0, 0x9E44},+    {0xF0C1, 0x9E46},+    {0xF0C2, 0x9E47},+    {0xF0C3, 0x9E48},+    {0xF0C4, 0x9E49},+    {0xF0C5, 0x9E4B},+    {0xF0C6, 0x9E4C},+    {0xF0C7, 0x9E4E},+    {0xF0C8, 0x9E51},+    {0xF0C9, 0x9E55},+    {0xF0CA, 0x9E57},+    {0xF0CB, 0x9E5A},+    {0xF0CC, 0x9E5B},+    {0xF0CD, 0x9E5C},+    {0xF0CE, 0x9E5E},+    {0xF0CF, 0x9E63},+    {0xF0D0, 0x9E66},+    {0xF0D1, 0x9E67},+    {0xF0D2, 0x9E68},+    {0xF0D3, 0x9E69},+    {0xF0D4, 0x9E6A},+    {0xF0D5, 0x9E6B},+    {0xF0D6, 0x9E6C},+    {0xF0D7, 0x9E71},+    {0xF0D8, 0x9E6D},+    {0xF0D9, 0x9E73},+    {0xF0DA, 0x7592},+    {0xF0DB, 0x7594},+    {0xF0DC, 0x7596},+    {0xF0DD, 0x75A0},+    {0xF0DE, 0x759D},+    {0xF0DF, 0x75AC},+    {0xF0E0, 0x75A3},+    {0xF0E1, 0x75B3},+    {0xF0E2, 0x75B4},+    {0xF0E3, 0x75B8},+    {0xF0E4, 0x75C4},+    {0xF0E5, 0x75B1},+    {0xF0E6, 0x75B0},+    {0xF0E7, 0x75C3},+    {0xF0E8, 0x75C2},+    {0xF0E9, 0x75D6},+    {0xF0EA, 0x75CD},+    {0xF0EB, 0x75E3},+    {0xF0EC, 0x75E8},+    {0xF0ED, 0x75E6},+    {0xF0EE, 0x75E4},+    {0xF0EF, 0x75EB},+    {0xF0F0, 0x75E7},+    {0xF0F1, 0x7603},+    {0xF0F2, 0x75F1},+    {0xF0F3, 0x75FC},+    {0xF0F4, 0x75FF},+    {0xF0F5, 0x7610},+    {0xF0F6, 0x7600},+    {0xF0F7, 0x7605},+    {0xF0F8, 0x760C},+    {0xF0F9, 0x7617},+    {0xF0FA, 0x760A},+    {0xF0FB, 0x7625},+    {0xF0FC, 0x7618},+    {0xF0FD, 0x7615},+    {0xF0FE, 0x7619},+    {0xF140, 0x998C},+    {0xF141, 0x998E},+    {0xF142, 0x999A},+    {0xF143, 0x999B},+    {0xF144, 0x999C},+    {0xF145, 0x999D},+    {0xF146, 0x999E},+    {0xF147, 0x999F},+    {0xF148, 0x99A0},+    {0xF149, 0x99A1},+    {0xF14A, 0x99A2},+    {0xF14B, 0x99A3},+    {0xF14C, 0x99A4},+    {0xF14D, 0x99A6},+    {0xF14E, 0x99A7},+    {0xF14F, 0x99A9},+    {0xF150, 0x99AA},+    {0xF151, 0x99AB},+    {0xF152, 0x99AC},+    {0xF153, 0x99AD},+    {0xF154, 0x99AE},+    {0xF155, 0x99AF},+    {0xF156, 0x99B0},+    {0xF157, 0x99B1},+    {0xF158, 0x99B2},+    {0xF159, 0x99B3},+    {0xF15A, 0x99B4},+    {0xF15B, 0x99B5},+    {0xF15C, 0x99B6},+    {0xF15D, 0x99B7},+    {0xF15E, 0x99B8},+    {0xF15F, 0x99B9},+    {0xF160, 0x99BA},+    {0xF161, 0x99BB},+    {0xF162, 0x99BC},+    {0xF163, 0x99BD},+    {0xF164, 0x99BE},+    {0xF165, 0x99BF},+    {0xF166, 0x99C0},+    {0xF167, 0x99C1},+    {0xF168, 0x99C2},+    {0xF169, 0x99C3},+    {0xF16A, 0x99C4},+    {0xF16B, 0x99C5},+    {0xF16C, 0x99C6},+    {0xF16D, 0x99C7},+    {0xF16E, 0x99C8},+    {0xF16F, 0x99C9},+    {0xF170, 0x99CA},+    {0xF171, 0x99CB},+    {0xF172, 0x99CC},+    {0xF173, 0x99CD},+    {0xF174, 0x99CE},+    {0xF175, 0x99CF},+    {0xF176, 0x99D0},+    {0xF177, 0x99D1},+    {0xF178, 0x99D2},+    {0xF179, 0x99D3},+    {0xF17A, 0x99D4},+    {0xF17B, 0x99D5},+    {0xF17C, 0x99D6},+    {0xF17D, 0x99D7},+    {0xF17E, 0x99D8},+    {0xF180, 0x99D9},+    {0xF181, 0x99DA},+    {0xF182, 0x99DB},+    {0xF183, 0x99DC},+    {0xF184, 0x99DD},+    {0xF185, 0x99DE},+    {0xF186, 0x99DF},+    {0xF187, 0x99E0},+    {0xF188, 0x99E1},+    {0xF189, 0x99E2},+    {0xF18A, 0x99E3},+    {0xF18B, 0x99E4},+    {0xF18C, 0x99E5},+    {0xF18D, 0x99E6},+    {0xF18E, 0x99E7},+    {0xF18F, 0x99E8},+    {0xF190, 0x99E9},+    {0xF191, 0x99EA},+    {0xF192, 0x99EB},+    {0xF193, 0x99EC},+    {0xF194, 0x99ED},+    {0xF195, 0x99EE},+    {0xF196, 0x99EF},+    {0xF197, 0x99F0},+    {0xF198, 0x99F1},+    {0xF199, 0x99F2},+    {0xF19A, 0x99F3},+    {0xF19B, 0x99F4},+    {0xF19C, 0x99F5},+    {0xF19D, 0x99F6},+    {0xF19E, 0x99F7},+    {0xF19F, 0x99F8},+    {0xF1A0, 0x99F9},+    {0xF1A1, 0x761B},+    {0xF1A2, 0x763C},+    {0xF1A3, 0x7622},+    {0xF1A4, 0x7620},+    {0xF1A5, 0x7640},+    {0xF1A6, 0x762D},+    {0xF1A7, 0x7630},+    {0xF1A8, 0x763F},+    {0xF1A9, 0x7635},+    {0xF1AA, 0x7643},+    {0xF1AB, 0x763E},+    {0xF1AC, 0x7633},+    {0xF1AD, 0x764D},+    {0xF1AE, 0x765E},+    {0xF1AF, 0x7654},+    {0xF1B0, 0x765C},+    {0xF1B1, 0x7656},+    {0xF1B2, 0x766B},+    {0xF1B3, 0x766F},+    {0xF1B4, 0x7FCA},+    {0xF1B5, 0x7AE6},+    {0xF1B6, 0x7A78},+    {0xF1B7, 0x7A79},+    {0xF1B8, 0x7A80},+    {0xF1B9, 0x7A86},+    {0xF1BA, 0x7A88},+    {0xF1BB, 0x7A95},+    {0xF1BC, 0x7AA6},+    {0xF1BD, 0x7AA0},+    {0xF1BE, 0x7AAC},+    {0xF1BF, 0x7AA8},+    {0xF1C0, 0x7AAD},+    {0xF1C1, 0x7AB3},+    {0xF1C2, 0x8864},+    {0xF1C3, 0x8869},+    {0xF1C4, 0x8872},+    {0xF1C5, 0x887D},+    {0xF1C6, 0x887F},+    {0xF1C7, 0x8882},+    {0xF1C8, 0x88A2},+    {0xF1C9, 0x88C6},+    {0xF1CA, 0x88B7},+    {0xF1CB, 0x88BC},+    {0xF1CC, 0x88C9},+    {0xF1CD, 0x88E2},+    {0xF1CE, 0x88CE},+    {0xF1CF, 0x88E3},+    {0xF1D0, 0x88E5},+    {0xF1D1, 0x88F1},+    {0xF1D2, 0x891A},+    {0xF1D3, 0x88FC},+    {0xF1D4, 0x88E8},+    {0xF1D5, 0x88FE},+    {0xF1D6, 0x88F0},+    {0xF1D7, 0x8921},+    {0xF1D8, 0x8919},+    {0xF1D9, 0x8913},+    {0xF1DA, 0x891B},+    {0xF1DB, 0x890A},+    {0xF1DC, 0x8934},+    {0xF1DD, 0x892B},+    {0xF1DE, 0x8936},+    {0xF1DF, 0x8941},+    {0xF1E0, 0x8966},+    {0xF1E1, 0x897B},+    {0xF1E2, 0x758B},+    {0xF1E3, 0x80E5},+    {0xF1E4, 0x76B2},+    {0xF1E5, 0x76B4},+    {0xF1E6, 0x77DC},+    {0xF1E7, 0x8012},+    {0xF1E8, 0x8014},+    {0xF1E9, 0x8016},+    {0xF1EA, 0x801C},+    {0xF1EB, 0x8020},+    {0xF1EC, 0x8022},+    {0xF1ED, 0x8025},+    {0xF1EE, 0x8026},+    {0xF1EF, 0x8027},+    {0xF1F0, 0x8029},+    {0xF1F1, 0x8028},+    {0xF1F2, 0x8031},+    {0xF1F3, 0x800B},+    {0xF1F4, 0x8035},+    {0xF1F5, 0x8043},+    {0xF1F6, 0x8046},+    {0xF1F7, 0x804D},+    {0xF1F8, 0x8052},+    {0xF1F9, 0x8069},+    {0xF1FA, 0x8071},+    {0xF1FB, 0x8983},+    {0xF1FC, 0x9878},+    {0xF1FD, 0x9880},+    {0xF1FE, 0x9883},+    {0xF240, 0x99FA},+    {0xF241, 0x99FB},+    {0xF242, 0x99FC},+    {0xF243, 0x99FD},+    {0xF244, 0x99FE},+    {0xF245, 0x99FF},+    {0xF246, 0x9A00},+    {0xF247, 0x9A01},+    {0xF248, 0x9A02},+    {0xF249, 0x9A03},+    {0xF24A, 0x9A04},+    {0xF24B, 0x9A05},+    {0xF24C, 0x9A06},+    {0xF24D, 0x9A07},+    {0xF24E, 0x9A08},+    {0xF24F, 0x9A09},+    {0xF250, 0x9A0A},+    {0xF251, 0x9A0B},+    {0xF252, 0x9A0C},+    {0xF253, 0x9A0D},+    {0xF254, 0x9A0E},+    {0xF255, 0x9A0F},+    {0xF256, 0x9A10},+    {0xF257, 0x9A11},+    {0xF258, 0x9A12},+    {0xF259, 0x9A13},+    {0xF25A, 0x9A14},+    {0xF25B, 0x9A15},+    {0xF25C, 0x9A16},+    {0xF25D, 0x9A17},+    {0xF25E, 0x9A18},+    {0xF25F, 0x9A19},+    {0xF260, 0x9A1A},+    {0xF261, 0x9A1B},+    {0xF262, 0x9A1C},+    {0xF263, 0x9A1D},+    {0xF264, 0x9A1E},+    {0xF265, 0x9A1F},+    {0xF266, 0x9A20},+    {0xF267, 0x9A21},+    {0xF268, 0x9A22},+    {0xF269, 0x9A23},+    {0xF26A, 0x9A24},+    {0xF26B, 0x9A25},+    {0xF26C, 0x9A26},+    {0xF26D, 0x9A27},+    {0xF26E, 0x9A28},+    {0xF26F, 0x9A29},+    {0xF270, 0x9A2A},+    {0xF271, 0x9A2B},+    {0xF272, 0x9A2C},+    {0xF273, 0x9A2D},+    {0xF274, 0x9A2E},+    {0xF275, 0x9A2F},+    {0xF276, 0x9A30},+    {0xF277, 0x9A31},+    {0xF278, 0x9A32},+    {0xF279, 0x9A33},+    {0xF27A, 0x9A34},+    {0xF27B, 0x9A35},+    {0xF27C, 0x9A36},+    {0xF27D, 0x9A37},+    {0xF27E, 0x9A38},+    {0xF280, 0x9A39},+    {0xF281, 0x9A3A},+    {0xF282, 0x9A3B},+    {0xF283, 0x9A3C},+    {0xF284, 0x9A3D},+    {0xF285, 0x9A3E},+    {0xF286, 0x9A3F},+    {0xF287, 0x9A40},+    {0xF288, 0x9A41},+    {0xF289, 0x9A42},+    {0xF28A, 0x9A43},+    {0xF28B, 0x9A44},+    {0xF28C, 0x9A45},+    {0xF28D, 0x9A46},+    {0xF28E, 0x9A47},+    {0xF28F, 0x9A48},+    {0xF290, 0x9A49},+    {0xF291, 0x9A4A},+    {0xF292, 0x9A4B},+    {0xF293, 0x9A4C},+    {0xF294, 0x9A4D},+    {0xF295, 0x9A4E},+    {0xF296, 0x9A4F},+    {0xF297, 0x9A50},+    {0xF298, 0x9A51},+    {0xF299, 0x9A52},+    {0xF29A, 0x9A53},+    {0xF29B, 0x9A54},+    {0xF29C, 0x9A55},+    {0xF29D, 0x9A56},+    {0xF29E, 0x9A57},+    {0xF29F, 0x9A58},+    {0xF2A0, 0x9A59},+    {0xF2A1, 0x9889},+    {0xF2A2, 0x988C},+    {0xF2A3, 0x988D},+    {0xF2A4, 0x988F},+    {0xF2A5, 0x9894},+    {0xF2A6, 0x989A},+    {0xF2A7, 0x989B},+    {0xF2A8, 0x989E},+    {0xF2A9, 0x989F},+    {0xF2AA, 0x98A1},+    {0xF2AB, 0x98A2},+    {0xF2AC, 0x98A5},+    {0xF2AD, 0x98A6},+    {0xF2AE, 0x864D},+    {0xF2AF, 0x8654},+    {0xF2B0, 0x866C},+    {0xF2B1, 0x866E},+    {0xF2B2, 0x867F},+    {0xF2B3, 0x867A},+    {0xF2B4, 0x867C},+    {0xF2B5, 0x867B},+    {0xF2B6, 0x86A8},+    {0xF2B7, 0x868D},+    {0xF2B8, 0x868B},+    {0xF2B9, 0x86AC},+    {0xF2BA, 0x869D},+    {0xF2BB, 0x86A7},+    {0xF2BC, 0x86A3},+    {0xF2BD, 0x86AA},+    {0xF2BE, 0x8693},+    {0xF2BF, 0x86A9},+    {0xF2C0, 0x86B6},+    {0xF2C1, 0x86C4},+    {0xF2C2, 0x86B5},+    {0xF2C3, 0x86CE},+    {0xF2C4, 0x86B0},+    {0xF2C5, 0x86BA},+    {0xF2C6, 0x86B1},+    {0xF2C7, 0x86AF},+    {0xF2C8, 0x86C9},+    {0xF2C9, 0x86CF},+    {0xF2CA, 0x86B4},+    {0xF2CB, 0x86E9},+    {0xF2CC, 0x86F1},+    {0xF2CD, 0x86F2},+    {0xF2CE, 0x86ED},+    {0xF2CF, 0x86F3},+    {0xF2D0, 0x86D0},+    {0xF2D1, 0x8713},+    {0xF2D2, 0x86DE},+    {0xF2D3, 0x86F4},+    {0xF2D4, 0x86DF},+    {0xF2D5, 0x86D8},+    {0xF2D6, 0x86D1},+    {0xF2D7, 0x8703},+    {0xF2D8, 0x8707},+    {0xF2D9, 0x86F8},+    {0xF2DA, 0x8708},+    {0xF2DB, 0x870A},+    {0xF2DC, 0x870D},+    {0xF2DD, 0x8709},+    {0xF2DE, 0x8723},+    {0xF2DF, 0x873B},+    {0xF2E0, 0x871E},+    {0xF2E1, 0x8725},+    {0xF2E2, 0x872E},+    {0xF2E3, 0x871A},+    {0xF2E4, 0x873E},+    {0xF2E5, 0x8748},+    {0xF2E6, 0x8734},+    {0xF2E7, 0x8731},+    {0xF2E8, 0x8729},+    {0xF2E9, 0x8737},+    {0xF2EA, 0x873F},+    {0xF2EB, 0x8782},+    {0xF2EC, 0x8722},+    {0xF2ED, 0x877D},+    {0xF2EE, 0x877E},+    {0xF2EF, 0x877B},+    {0xF2F0, 0x8760},+    {0xF2F1, 0x8770},+    {0xF2F2, 0x874C},+    {0xF2F3, 0x876E},+    {0xF2F4, 0x878B},+    {0xF2F5, 0x8753},+    {0xF2F6, 0x8763},+    {0xF2F7, 0x877C},+    {0xF2F8, 0x8764},+    {0xF2F9, 0x8759},+    {0xF2FA, 0x8765},+    {0xF2FB, 0x8793},+    {0xF2FC, 0x87AF},+    {0xF2FD, 0x87A8},+    {0xF2FE, 0x87D2},+    {0xF340, 0x9A5A},+    {0xF341, 0x9A5B},+    {0xF342, 0x9A5C},+    {0xF343, 0x9A5D},+    {0xF344, 0x9A5E},+    {0xF345, 0x9A5F},+    {0xF346, 0x9A60},+    {0xF347, 0x9A61},+    {0xF348, 0x9A62},+    {0xF349, 0x9A63},+    {0xF34A, 0x9A64},+    {0xF34B, 0x9A65},+    {0xF34C, 0x9A66},+    {0xF34D, 0x9A67},+    {0xF34E, 0x9A68},+    {0xF34F, 0x9A69},+    {0xF350, 0x9A6A},+    {0xF351, 0x9A6B},+    {0xF352, 0x9A72},+    {0xF353, 0x9A83},+    {0xF354, 0x9A89},+    {0xF355, 0x9A8D},+    {0xF356, 0x9A8E},+    {0xF357, 0x9A94},+    {0xF358, 0x9A95},+    {0xF359, 0x9A99},+    {0xF35A, 0x9AA6},+    {0xF35B, 0x9AA9},+    {0xF35C, 0x9AAA},+    {0xF35D, 0x9AAB},+    {0xF35E, 0x9AAC},+    {0xF35F, 0x9AAD},+    {0xF360, 0x9AAE},+    {0xF361, 0x9AAF},+    {0xF362, 0x9AB2},+    {0xF363, 0x9AB3},+    {0xF364, 0x9AB4},+    {0xF365, 0x9AB5},+    {0xF366, 0x9AB9},+    {0xF367, 0x9ABB},+    {0xF368, 0x9ABD},+    {0xF369, 0x9ABE},+    {0xF36A, 0x9ABF},+    {0xF36B, 0x9AC3},+    {0xF36C, 0x9AC4},+    {0xF36D, 0x9AC6},+    {0xF36E, 0x9AC7},+    {0xF36F, 0x9AC8},+    {0xF370, 0x9AC9},+    {0xF371, 0x9ACA},+    {0xF372, 0x9ACD},+    {0xF373, 0x9ACE},+    {0xF374, 0x9ACF},+    {0xF375, 0x9AD0},+    {0xF376, 0x9AD2},+    {0xF377, 0x9AD4},+    {0xF378, 0x9AD5},+    {0xF379, 0x9AD6},+    {0xF37A, 0x9AD7},+    {0xF37B, 0x9AD9},+    {0xF37C, 0x9ADA},+    {0xF37D, 0x9ADB},+    {0xF37E, 0x9ADC},+    {0xF380, 0x9ADD},+    {0xF381, 0x9ADE},+    {0xF382, 0x9AE0},+    {0xF383, 0x9AE2},+    {0xF384, 0x9AE3},+    {0xF385, 0x9AE4},+    {0xF386, 0x9AE5},+    {0xF387, 0x9AE7},+    {0xF388, 0x9AE8},+    {0xF389, 0x9AE9},+    {0xF38A, 0x9AEA},+    {0xF38B, 0x9AEC},+    {0xF38C, 0x9AEE},+    {0xF38D, 0x9AF0},+    {0xF38E, 0x9AF1},+    {0xF38F, 0x9AF2},+    {0xF390, 0x9AF3},+    {0xF391, 0x9AF4},+    {0xF392, 0x9AF5},+    {0xF393, 0x9AF6},+    {0xF394, 0x9AF7},+    {0xF395, 0x9AF8},+    {0xF396, 0x9AFA},+    {0xF397, 0x9AFC},+    {0xF398, 0x9AFD},+    {0xF399, 0x9AFE},+    {0xF39A, 0x9AFF},+    {0xF39B, 0x9B00},+    {0xF39C, 0x9B01},+    {0xF39D, 0x9B02},+    {0xF39E, 0x9B04},+    {0xF39F, 0x9B05},+    {0xF3A0, 0x9B06},+    {0xF3A1, 0x87C6},+    {0xF3A2, 0x8788},+    {0xF3A3, 0x8785},+    {0xF3A4, 0x87AD},+    {0xF3A5, 0x8797},+    {0xF3A6, 0x8783},+    {0xF3A7, 0x87AB},+    {0xF3A8, 0x87E5},+    {0xF3A9, 0x87AC},+    {0xF3AA, 0x87B5},+    {0xF3AB, 0x87B3},+    {0xF3AC, 0x87CB},+    {0xF3AD, 0x87D3},+    {0xF3AE, 0x87BD},+    {0xF3AF, 0x87D1},+    {0xF3B0, 0x87C0},+    {0xF3B1, 0x87CA},+    {0xF3B2, 0x87DB},+    {0xF3B3, 0x87EA},+    {0xF3B4, 0x87E0},+    {0xF3B5, 0x87EE},+    {0xF3B6, 0x8816},+    {0xF3B7, 0x8813},+    {0xF3B8, 0x87FE},+    {0xF3B9, 0x880A},+    {0xF3BA, 0x881B},+    {0xF3BB, 0x8821},+    {0xF3BC, 0x8839},+    {0xF3BD, 0x883C},+    {0xF3BE, 0x7F36},+    {0xF3BF, 0x7F42},+    {0xF3C0, 0x7F44},+    {0xF3C1, 0x7F45},+    {0xF3C2, 0x8210},+    {0xF3C3, 0x7AFA},+    {0xF3C4, 0x7AFD},+    {0xF3C5, 0x7B08},+    {0xF3C6, 0x7B03},+    {0xF3C7, 0x7B04},+    {0xF3C8, 0x7B15},+    {0xF3C9, 0x7B0A},+    {0xF3CA, 0x7B2B},+    {0xF3CB, 0x7B0F},+    {0xF3CC, 0x7B47},+    {0xF3CD, 0x7B38},+    {0xF3CE, 0x7B2A},+    {0xF3CF, 0x7B19},+    {0xF3D0, 0x7B2E},+    {0xF3D1, 0x7B31},+    {0xF3D2, 0x7B20},+    {0xF3D3, 0x7B25},+    {0xF3D4, 0x7B24},+    {0xF3D5, 0x7B33},+    {0xF3D6, 0x7B3E},+    {0xF3D7, 0x7B1E},+    {0xF3D8, 0x7B58},+    {0xF3D9, 0x7B5A},+    {0xF3DA, 0x7B45},+    {0xF3DB, 0x7B75},+    {0xF3DC, 0x7B4C},+    {0xF3DD, 0x7B5D},+    {0xF3DE, 0x7B60},+    {0xF3DF, 0x7B6E},+    {0xF3E0, 0x7B7B},+    {0xF3E1, 0x7B62},+    {0xF3E2, 0x7B72},+    {0xF3E3, 0x7B71},+    {0xF3E4, 0x7B90},+    {0xF3E5, 0x7BA6},+    {0xF3E6, 0x7BA7},+    {0xF3E7, 0x7BB8},+    {0xF3E8, 0x7BAC},+    {0xF3E9, 0x7B9D},+    {0xF3EA, 0x7BA8},+    {0xF3EB, 0x7B85},+    {0xF3EC, 0x7BAA},+    {0xF3ED, 0x7B9C},+    {0xF3EE, 0x7BA2},+    {0xF3EF, 0x7BAB},+    {0xF3F0, 0x7BB4},+    {0xF3F1, 0x7BD1},+    {0xF3F2, 0x7BC1},+    {0xF3F3, 0x7BCC},+    {0xF3F4, 0x7BDD},+    {0xF3F5, 0x7BDA},+    {0xF3F6, 0x7BE5},+    {0xF3F7, 0x7BE6},+    {0xF3F8, 0x7BEA},+    {0xF3F9, 0x7C0C},+    {0xF3FA, 0x7BFE},+    {0xF3FB, 0x7BFC},+    {0xF3FC, 0x7C0F},+    {0xF3FD, 0x7C16},+    {0xF3FE, 0x7C0B},+    {0xF440, 0x9B07},+    {0xF441, 0x9B09},+    {0xF442, 0x9B0A},+    {0xF443, 0x9B0B},+    {0xF444, 0x9B0C},+    {0xF445, 0x9B0D},+    {0xF446, 0x9B0E},+    {0xF447, 0x9B10},+    {0xF448, 0x9B11},+    {0xF449, 0x9B12},+    {0xF44A, 0x9B14},+    {0xF44B, 0x9B15},+    {0xF44C, 0x9B16},+    {0xF44D, 0x9B17},+    {0xF44E, 0x9B18},+    {0xF44F, 0x9B19},+    {0xF450, 0x9B1A},+    {0xF451, 0x9B1B},+    {0xF452, 0x9B1C},+    {0xF453, 0x9B1D},+    {0xF454, 0x9B1E},+    {0xF455, 0x9B20},+    {0xF456, 0x9B21},+    {0xF457, 0x9B22},+    {0xF458, 0x9B24},+    {0xF459, 0x9B25},+    {0xF45A, 0x9B26},+    {0xF45B, 0x9B27},+    {0xF45C, 0x9B28},+    {0xF45D, 0x9B29},+    {0xF45E, 0x9B2A},+    {0xF45F, 0x9B2B},+    {0xF460, 0x9B2C},+    {0xF461, 0x9B2D},+    {0xF462, 0x9B2E},+    {0xF463, 0x9B30},+    {0xF464, 0x9B31},+    {0xF465, 0x9B33},+    {0xF466, 0x9B34},+    {0xF467, 0x9B35},+    {0xF468, 0x9B36},+    {0xF469, 0x9B37},+    {0xF46A, 0x9B38},+    {0xF46B, 0x9B39},+    {0xF46C, 0x9B3A},+    {0xF46D, 0x9B3D},+    {0xF46E, 0x9B3E},+    {0xF46F, 0x9B3F},+    {0xF470, 0x9B40},+    {0xF471, 0x9B46},+    {0xF472, 0x9B4A},+    {0xF473, 0x9B4B},+    {0xF474, 0x9B4C},+    {0xF475, 0x9B4E},+    {0xF476, 0x9B50},+    {0xF477, 0x9B52},+    {0xF478, 0x9B53},+    {0xF479, 0x9B55},+    {0xF47A, 0x9B56},+    {0xF47B, 0x9B57},+    {0xF47C, 0x9B58},+    {0xF47D, 0x9B59},+    {0xF47E, 0x9B5A},+    {0xF480, 0x9B5B},+    {0xF481, 0x9B5C},+    {0xF482, 0x9B5D},+    {0xF483, 0x9B5E},+    {0xF484, 0x9B5F},+    {0xF485, 0x9B60},+    {0xF486, 0x9B61},+    {0xF487, 0x9B62},+    {0xF488, 0x9B63},+    {0xF489, 0x9B64},+    {0xF48A, 0x9B65},+    {0xF48B, 0x9B66},+    {0xF48C, 0x9B67},+    {0xF48D, 0x9B68},+    {0xF48E, 0x9B69},+    {0xF48F, 0x9B6A},+    {0xF490, 0x9B6B},+    {0xF491, 0x9B6C},+    {0xF492, 0x9B6D},+    {0xF493, 0x9B6E},+    {0xF494, 0x9B6F},+    {0xF495, 0x9B70},+    {0xF496, 0x9B71},+    {0xF497, 0x9B72},+    {0xF498, 0x9B73},+    {0xF499, 0x9B74},+    {0xF49A, 0x9B75},+    {0xF49B, 0x9B76},+    {0xF49C, 0x9B77},+    {0xF49D, 0x9B78},+    {0xF49E, 0x9B79},+    {0xF49F, 0x9B7A},+    {0xF4A0, 0x9B7B},+    {0xF4A1, 0x7C1F},+    {0xF4A2, 0x7C2A},+    {0xF4A3, 0x7C26},+    {0xF4A4, 0x7C38},+    {0xF4A5, 0x7C41},+    {0xF4A6, 0x7C40},+    {0xF4A7, 0x81FE},+    {0xF4A8, 0x8201},+    {0xF4A9, 0x8202},+    {0xF4AA, 0x8204},+    {0xF4AB, 0x81EC},+    {0xF4AC, 0x8844},+    {0xF4AD, 0x8221},+    {0xF4AE, 0x8222},+    {0xF4AF, 0x8223},+    {0xF4B0, 0x822D},+    {0xF4B1, 0x822F},+    {0xF4B2, 0x8228},+    {0xF4B3, 0x822B},+    {0xF4B4, 0x8238},+    {0xF4B5, 0x823B},+    {0xF4B6, 0x8233},+    {0xF4B7, 0x8234},+    {0xF4B8, 0x823E},+    {0xF4B9, 0x8244},+    {0xF4BA, 0x8249},+    {0xF4BB, 0x824B},+    {0xF4BC, 0x824F},+    {0xF4BD, 0x825A},+    {0xF4BE, 0x825F},+    {0xF4BF, 0x8268},+    {0xF4C0, 0x887E},+    {0xF4C1, 0x8885},+    {0xF4C2, 0x8888},+    {0xF4C3, 0x88D8},+    {0xF4C4, 0x88DF},+    {0xF4C5, 0x895E},+    {0xF4C6, 0x7F9D},+    {0xF4C7, 0x7F9F},+    {0xF4C8, 0x7FA7},+    {0xF4C9, 0x7FAF},+    {0xF4CA, 0x7FB0},+    {0xF4CB, 0x7FB2},+    {0xF4CC, 0x7C7C},+    {0xF4CD, 0x6549},+    {0xF4CE, 0x7C91},+    {0xF4CF, 0x7C9D},+    {0xF4D0, 0x7C9C},+    {0xF4D1, 0x7C9E},+    {0xF4D2, 0x7CA2},+    {0xF4D3, 0x7CB2},+    {0xF4D4, 0x7CBC},+    {0xF4D5, 0x7CBD},+    {0xF4D6, 0x7CC1},+    {0xF4D7, 0x7CC7},+    {0xF4D8, 0x7CCC},+    {0xF4D9, 0x7CCD},+    {0xF4DA, 0x7CC8},+    {0xF4DB, 0x7CC5},+    {0xF4DC, 0x7CD7},+    {0xF4DD, 0x7CE8},+    {0xF4DE, 0x826E},+    {0xF4DF, 0x66A8},+    {0xF4E0, 0x7FBF},+    {0xF4E1, 0x7FCE},+    {0xF4E2, 0x7FD5},+    {0xF4E3, 0x7FE5},+    {0xF4E4, 0x7FE1},+    {0xF4E5, 0x7FE6},+    {0xF4E6, 0x7FE9},+    {0xF4E7, 0x7FEE},+    {0xF4E8, 0x7FF3},+    {0xF4E9, 0x7CF8},+    {0xF4EA, 0x7D77},+    {0xF4EB, 0x7DA6},+    {0xF4EC, 0x7DAE},+    {0xF4ED, 0x7E47},+    {0xF4EE, 0x7E9B},+    {0xF4EF, 0x9EB8},+    {0xF4F0, 0x9EB4},+    {0xF4F1, 0x8D73},+    {0xF4F2, 0x8D84},+    {0xF4F3, 0x8D94},+    {0xF4F4, 0x8D91},+    {0xF4F5, 0x8DB1},+    {0xF4F6, 0x8D67},+    {0xF4F7, 0x8D6D},+    {0xF4F8, 0x8C47},+    {0xF4F9, 0x8C49},+    {0xF4FA, 0x914A},+    {0xF4FB, 0x9150},+    {0xF4FC, 0x914E},+    {0xF4FD, 0x914F},+    {0xF4FE, 0x9164},+    {0xF540, 0x9B7C},+    {0xF541, 0x9B7D},+    {0xF542, 0x9B7E},+    {0xF543, 0x9B7F},+    {0xF544, 0x9B80},+    {0xF545, 0x9B81},+    {0xF546, 0x9B82},+    {0xF547, 0x9B83},+    {0xF548, 0x9B84},+    {0xF549, 0x9B85},+    {0xF54A, 0x9B86},+    {0xF54B, 0x9B87},+    {0xF54C, 0x9B88},+    {0xF54D, 0x9B89},+    {0xF54E, 0x9B8A},+    {0xF54F, 0x9B8B},+    {0xF550, 0x9B8C},+    {0xF551, 0x9B8D},+    {0xF552, 0x9B8E},+    {0xF553, 0x9B8F},+    {0xF554, 0x9B90},+    {0xF555, 0x9B91},+    {0xF556, 0x9B92},+    {0xF557, 0x9B93},+    {0xF558, 0x9B94},+    {0xF559, 0x9B95},+    {0xF55A, 0x9B96},+    {0xF55B, 0x9B97},+    {0xF55C, 0x9B98},+    {0xF55D, 0x9B99},+    {0xF55E, 0x9B9A},+    {0xF55F, 0x9B9B},+    {0xF560, 0x9B9C},+    {0xF561, 0x9B9D},+    {0xF562, 0x9B9E},+    {0xF563, 0x9B9F},+    {0xF564, 0x9BA0},+    {0xF565, 0x9BA1},+    {0xF566, 0x9BA2},+    {0xF567, 0x9BA3},+    {0xF568, 0x9BA4},+    {0xF569, 0x9BA5},+    {0xF56A, 0x9BA6},+    {0xF56B, 0x9BA7},+    {0xF56C, 0x9BA8},+    {0xF56D, 0x9BA9},+    {0xF56E, 0x9BAA},+    {0xF56F, 0x9BAB},+    {0xF570, 0x9BAC},+    {0xF571, 0x9BAD},+    {0xF572, 0x9BAE},+    {0xF573, 0x9BAF},+    {0xF574, 0x9BB0},+    {0xF575, 0x9BB1},+    {0xF576, 0x9BB2},+    {0xF577, 0x9BB3},+    {0xF578, 0x9BB4},+    {0xF579, 0x9BB5},+    {0xF57A, 0x9BB6},+    {0xF57B, 0x9BB7},+    {0xF57C, 0x9BB8},+    {0xF57D, 0x9BB9},+    {0xF57E, 0x9BBA},+    {0xF580, 0x9BBB},+    {0xF581, 0x9BBC},+    {0xF582, 0x9BBD},+    {0xF583, 0x9BBE},+    {0xF584, 0x9BBF},+    {0xF585, 0x9BC0},+    {0xF586, 0x9BC1},+    {0xF587, 0x9BC2},+    {0xF588, 0x9BC3},+    {0xF589, 0x9BC4},+    {0xF58A, 0x9BC5},+    {0xF58B, 0x9BC6},+    {0xF58C, 0x9BC7},+    {0xF58D, 0x9BC8},+    {0xF58E, 0x9BC9},+    {0xF58F, 0x9BCA},+    {0xF590, 0x9BCB},+    {0xF591, 0x9BCC},+    {0xF592, 0x9BCD},+    {0xF593, 0x9BCE},+    {0xF594, 0x9BCF},+    {0xF595, 0x9BD0},+    {0xF596, 0x9BD1},+    {0xF597, 0x9BD2},+    {0xF598, 0x9BD3},+    {0xF599, 0x9BD4},+    {0xF59A, 0x9BD5},+    {0xF59B, 0x9BD6},+    {0xF59C, 0x9BD7},+    {0xF59D, 0x9BD8},+    {0xF59E, 0x9BD9},+    {0xF59F, 0x9BDA},+    {0xF5A0, 0x9BDB},+    {0xF5A1, 0x9162},+    {0xF5A2, 0x9161},+    {0xF5A3, 0x9170},+    {0xF5A4, 0x9169},+    {0xF5A5, 0x916F},+    {0xF5A6, 0x917D},+    {0xF5A7, 0x917E},+    {0xF5A8, 0x9172},+    {0xF5A9, 0x9174},+    {0xF5AA, 0x9179},+    {0xF5AB, 0x918C},+    {0xF5AC, 0x9185},+    {0xF5AD, 0x9190},+    {0xF5AE, 0x918D},+    {0xF5AF, 0x9191},+    {0xF5B0, 0x91A2},+    {0xF5B1, 0x91A3},+    {0xF5B2, 0x91AA},+    {0xF5B3, 0x91AD},+    {0xF5B4, 0x91AE},+    {0xF5B5, 0x91AF},+    {0xF5B6, 0x91B5},+    {0xF5B7, 0x91B4},+    {0xF5B8, 0x91BA},+    {0xF5B9, 0x8C55},+    {0xF5BA, 0x9E7E},+    {0xF5BB, 0x8DB8},+    {0xF5BC, 0x8DEB},+    {0xF5BD, 0x8E05},+    {0xF5BE, 0x8E59},+    {0xF5BF, 0x8E69},+    {0xF5C0, 0x8DB5},+    {0xF5C1, 0x8DBF},+    {0xF5C2, 0x8DBC},+    {0xF5C3, 0x8DBA},+    {0xF5C4, 0x8DC4},+    {0xF5C5, 0x8DD6},+    {0xF5C6, 0x8DD7},+    {0xF5C7, 0x8DDA},+    {0xF5C8, 0x8DDE},+    {0xF5C9, 0x8DCE},+    {0xF5CA, 0x8DCF},+    {0xF5CB, 0x8DDB},+    {0xF5CC, 0x8DC6},+    {0xF5CD, 0x8DEC},+    {0xF5CE, 0x8DF7},+    {0xF5CF, 0x8DF8},+    {0xF5D0, 0x8DE3},+    {0xF5D1, 0x8DF9},+    {0xF5D2, 0x8DFB},+    {0xF5D3, 0x8DE4},+    {0xF5D4, 0x8E09},+    {0xF5D5, 0x8DFD},+    {0xF5D6, 0x8E14},+    {0xF5D7, 0x8E1D},+    {0xF5D8, 0x8E1F},+    {0xF5D9, 0x8E2C},+    {0xF5DA, 0x8E2E},+    {0xF5DB, 0x8E23},+    {0xF5DC, 0x8E2F},+    {0xF5DD, 0x8E3A},+    {0xF5DE, 0x8E40},+    {0xF5DF, 0x8E39},+    {0xF5E0, 0x8E35},+    {0xF5E1, 0x8E3D},+    {0xF5E2, 0x8E31},+    {0xF5E3, 0x8E49},+    {0xF5E4, 0x8E41},+    {0xF5E5, 0x8E42},+    {0xF5E6, 0x8E51},+    {0xF5E7, 0x8E52},+    {0xF5E8, 0x8E4A},+    {0xF5E9, 0x8E70},+    {0xF5EA, 0x8E76},+    {0xF5EB, 0x8E7C},+    {0xF5EC, 0x8E6F},+    {0xF5ED, 0x8E74},+    {0xF5EE, 0x8E85},+    {0xF5EF, 0x8E8F},+    {0xF5F0, 0x8E94},+    {0xF5F1, 0x8E90},+    {0xF5F2, 0x8E9C},+    {0xF5F3, 0x8E9E},+    {0xF5F4, 0x8C78},+    {0xF5F5, 0x8C82},+    {0xF5F6, 0x8C8A},+    {0xF5F7, 0x8C85},+    {0xF5F8, 0x8C98},+    {0xF5F9, 0x8C94},+    {0xF5FA, 0x659B},+    {0xF5FB, 0x89D6},+    {0xF5FC, 0x89DE},+    {0xF5FD, 0x89DA},+    {0xF5FE, 0x89DC},+    {0xF640, 0x9BDC},+    {0xF641, 0x9BDD},+    {0xF642, 0x9BDE},+    {0xF643, 0x9BDF},+    {0xF644, 0x9BE0},+    {0xF645, 0x9BE1},+    {0xF646, 0x9BE2},+    {0xF647, 0x9BE3},+    {0xF648, 0x9BE4},+    {0xF649, 0x9BE5},+    {0xF64A, 0x9BE6},+    {0xF64B, 0x9BE7},+    {0xF64C, 0x9BE8},+    {0xF64D, 0x9BE9},+    {0xF64E, 0x9BEA},+    {0xF64F, 0x9BEB},+    {0xF650, 0x9BEC},+    {0xF651, 0x9BED},+    {0xF652, 0x9BEE},+    {0xF653, 0x9BEF},+    {0xF654, 0x9BF0},+    {0xF655, 0x9BF1},+    {0xF656, 0x9BF2},+    {0xF657, 0x9BF3},+    {0xF658, 0x9BF4},+    {0xF659, 0x9BF5},+    {0xF65A, 0x9BF6},+    {0xF65B, 0x9BF7},+    {0xF65C, 0x9BF8},+    {0xF65D, 0x9BF9},+    {0xF65E, 0x9BFA},+    {0xF65F, 0x9BFB},+    {0xF660, 0x9BFC},+    {0xF661, 0x9BFD},+    {0xF662, 0x9BFE},+    {0xF663, 0x9BFF},+    {0xF664, 0x9C00},+    {0xF665, 0x9C01},+    {0xF666, 0x9C02},+    {0xF667, 0x9C03},+    {0xF668, 0x9C04},+    {0xF669, 0x9C05},+    {0xF66A, 0x9C06},+    {0xF66B, 0x9C07},+    {0xF66C, 0x9C08},+    {0xF66D, 0x9C09},+    {0xF66E, 0x9C0A},+    {0xF66F, 0x9C0B},+    {0xF670, 0x9C0C},+    {0xF671, 0x9C0D},+    {0xF672, 0x9C0E},+    {0xF673, 0x9C0F},+    {0xF674, 0x9C10},+    {0xF675, 0x9C11},+    {0xF676, 0x9C12},+    {0xF677, 0x9C13},+    {0xF678, 0x9C14},+    {0xF679, 0x9C15},+    {0xF67A, 0x9C16},+    {0xF67B, 0x9C17},+    {0xF67C, 0x9C18},+    {0xF67D, 0x9C19},+    {0xF67E, 0x9C1A},+    {0xF680, 0x9C1B},+    {0xF681, 0x9C1C},+    {0xF682, 0x9C1D},+    {0xF683, 0x9C1E},+    {0xF684, 0x9C1F},+    {0xF685, 0x9C20},+    {0xF686, 0x9C21},+    {0xF687, 0x9C22},+    {0xF688, 0x9C23},+    {0xF689, 0x9C24},+    {0xF68A, 0x9C25},+    {0xF68B, 0x9C26},+    {0xF68C, 0x9C27},+    {0xF68D, 0x9C28},+    {0xF68E, 0x9C29},+    {0xF68F, 0x9C2A},+    {0xF690, 0x9C2B},+    {0xF691, 0x9C2C},+    {0xF692, 0x9C2D},+    {0xF693, 0x9C2E},+    {0xF694, 0x9C2F},+    {0xF695, 0x9C30},+    {0xF696, 0x9C31},+    {0xF697, 0x9C32},+    {0xF698, 0x9C33},+    {0xF699, 0x9C34},+    {0xF69A, 0x9C35},+    {0xF69B, 0x9C36},+    {0xF69C, 0x9C37},+    {0xF69D, 0x9C38},+    {0xF69E, 0x9C39},+    {0xF69F, 0x9C3A},+    {0xF6A0, 0x9C3B},+    {0xF6A1, 0x89E5},+    {0xF6A2, 0x89EB},+    {0xF6A3, 0x89EF},+    {0xF6A4, 0x8A3E},+    {0xF6A5, 0x8B26},+    {0xF6A6, 0x9753},+    {0xF6A7, 0x96E9},+    {0xF6A8, 0x96F3},+    {0xF6A9, 0x96EF},+    {0xF6AA, 0x9706},+    {0xF6AB, 0x9701},+    {0xF6AC, 0x9708},+    {0xF6AD, 0x970F},+    {0xF6AE, 0x970E},+    {0xF6AF, 0x972A},+    {0xF6B0, 0x972D},+    {0xF6B1, 0x9730},+    {0xF6B2, 0x973E},+    {0xF6B3, 0x9F80},+    {0xF6B4, 0x9F83},+    {0xF6B5, 0x9F85},+    {0xF6B6, 0x9F86},+    {0xF6B7, 0x9F87},+    {0xF6B8, 0x9F88},+    {0xF6B9, 0x9F89},+    {0xF6BA, 0x9F8A},+    {0xF6BB, 0x9F8C},+    {0xF6BC, 0x9EFE},+    {0xF6BD, 0x9F0B},+    {0xF6BE, 0x9F0D},+    {0xF6BF, 0x96B9},+    {0xF6C0, 0x96BC},+    {0xF6C1, 0x96BD},+    {0xF6C2, 0x96CE},+    {0xF6C3, 0x96D2},+    {0xF6C4, 0x77BF},+    {0xF6C5, 0x96E0},+    {0xF6C6, 0x928E},+    {0xF6C7, 0x92AE},+    {0xF6C8, 0x92C8},+    {0xF6C9, 0x933E},+    {0xF6CA, 0x936A},+    {0xF6CB, 0x93CA},+    {0xF6CC, 0x938F},+    {0xF6CD, 0x943E},+    {0xF6CE, 0x946B},+    {0xF6CF, 0x9C7F},+    {0xF6D0, 0x9C82},+    {0xF6D1, 0x9C85},+    {0xF6D2, 0x9C86},+    {0xF6D3, 0x9C87},+    {0xF6D4, 0x9C88},+    {0xF6D5, 0x7A23},+    {0xF6D6, 0x9C8B},+    {0xF6D7, 0x9C8E},+    {0xF6D8, 0x9C90},+    {0xF6D9, 0x9C91},+    {0xF6DA, 0x9C92},+    {0xF6DB, 0x9C94},+    {0xF6DC, 0x9C95},+    {0xF6DD, 0x9C9A},+    {0xF6DE, 0x9C9B},+    {0xF6DF, 0x9C9E},+    {0xF6E0, 0x9C9F},+    {0xF6E1, 0x9CA0},+    {0xF6E2, 0x9CA1},+    {0xF6E3, 0x9CA2},+    {0xF6E4, 0x9CA3},+    {0xF6E5, 0x9CA5},+    {0xF6E6, 0x9CA6},+    {0xF6E7, 0x9CA7},+    {0xF6E8, 0x9CA8},+    {0xF6E9, 0x9CA9},+    {0xF6EA, 0x9CAB},+    {0xF6EB, 0x9CAD},+    {0xF6EC, 0x9CAE},+    {0xF6ED, 0x9CB0},+    {0xF6EE, 0x9CB1},+    {0xF6EF, 0x9CB2},+    {0xF6F0, 0x9CB3},+    {0xF6F1, 0x9CB4},+    {0xF6F2, 0x9CB5},+    {0xF6F3, 0x9CB6},+    {0xF6F4, 0x9CB7},+    {0xF6F5, 0x9CBA},+    {0xF6F6, 0x9CBB},+    {0xF6F7, 0x9CBC},+    {0xF6F8, 0x9CBD},+    {0xF6F9, 0x9CC4},+    {0xF6FA, 0x9CC5},+    {0xF6FB, 0x9CC6},+    {0xF6FC, 0x9CC7},+    {0xF6FD, 0x9CCA},+    {0xF6FE, 0x9CCB},+    {0xF740, 0x9C3C},+    {0xF741, 0x9C3D},+    {0xF742, 0x9C3E},+    {0xF743, 0x9C3F},+    {0xF744, 0x9C40},+    {0xF745, 0x9C41},+    {0xF746, 0x9C42},+    {0xF747, 0x9C43},+    {0xF748, 0x9C44},+    {0xF749, 0x9C45},+    {0xF74A, 0x9C46},+    {0xF74B, 0x9C47},+    {0xF74C, 0x9C48},+    {0xF74D, 0x9C49},+    {0xF74E, 0x9C4A},+    {0xF74F, 0x9C4B},+    {0xF750, 0x9C4C},+    {0xF751, 0x9C4D},+    {0xF752, 0x9C4E},+    {0xF753, 0x9C4F},+    {0xF754, 0x9C50},+    {0xF755, 0x9C51},+    {0xF756, 0x9C52},+    {0xF757, 0x9C53},+    {0xF758, 0x9C54},+    {0xF759, 0x9C55},+    {0xF75A, 0x9C56},+    {0xF75B, 0x9C57},+    {0xF75C, 0x9C58},+    {0xF75D, 0x9C59},+    {0xF75E, 0x9C5A},+    {0xF75F, 0x9C5B},+    {0xF760, 0x9C5C},+    {0xF761, 0x9C5D},+    {0xF762, 0x9C5E},+    {0xF763, 0x9C5F},+    {0xF764, 0x9C60},+    {0xF765, 0x9C61},+    {0xF766, 0x9C62},+    {0xF767, 0x9C63},+    {0xF768, 0x9C64},+    {0xF769, 0x9C65},+    {0xF76A, 0x9C66},+    {0xF76B, 0x9C67},+    {0xF76C, 0x9C68},+    {0xF76D, 0x9C69},+    {0xF76E, 0x9C6A},+    {0xF76F, 0x9C6B},+    {0xF770, 0x9C6C},+    {0xF771, 0x9C6D},+    {0xF772, 0x9C6E},+    {0xF773, 0x9C6F},+    {0xF774, 0x9C70},+    {0xF775, 0x9C71},+    {0xF776, 0x9C72},+    {0xF777, 0x9C73},+    {0xF778, 0x9C74},+    {0xF779, 0x9C75},+    {0xF77A, 0x9C76},+    {0xF77B, 0x9C77},+    {0xF77C, 0x9C78},+    {0xF77D, 0x9C79},+    {0xF77E, 0x9C7A},+    {0xF780, 0x9C7B},+    {0xF781, 0x9C7D},+    {0xF782, 0x9C7E},+    {0xF783, 0x9C80},+    {0xF784, 0x9C83},+    {0xF785, 0x9C84},+    {0xF786, 0x9C89},+    {0xF787, 0x9C8A},+    {0xF788, 0x9C8C},+    {0xF789, 0x9C8F},+    {0xF78A, 0x9C93},+    {0xF78B, 0x9C96},+    {0xF78C, 0x9C97},+    {0xF78D, 0x9C98},+    {0xF78E, 0x9C99},+    {0xF78F, 0x9C9D},+    {0xF790, 0x9CAA},+    {0xF791, 0x9CAC},+    {0xF792, 0x9CAF},+    {0xF793, 0x9CB9},+    {0xF794, 0x9CBE},+    {0xF795, 0x9CBF},+    {0xF796, 0x9CC0},+    {0xF797, 0x9CC1},+    {0xF798, 0x9CC2},+    {0xF799, 0x9CC8},+    {0xF79A, 0x9CC9},+    {0xF79B, 0x9CD1},+    {0xF79C, 0x9CD2},+    {0xF79D, 0x9CDA},+    {0xF79E, 0x9CDB},+    {0xF79F, 0x9CE0},+    {0xF7A0, 0x9CE1},+    {0xF7A1, 0x9CCC},+    {0xF7A2, 0x9CCD},+    {0xF7A3, 0x9CCE},+    {0xF7A4, 0x9CCF},+    {0xF7A5, 0x9CD0},+    {0xF7A6, 0x9CD3},+    {0xF7A7, 0x9CD4},+    {0xF7A8, 0x9CD5},+    {0xF7A9, 0x9CD7},+    {0xF7AA, 0x9CD8},+    {0xF7AB, 0x9CD9},+    {0xF7AC, 0x9CDC},+    {0xF7AD, 0x9CDD},+    {0xF7AE, 0x9CDF},+    {0xF7AF, 0x9CE2},+    {0xF7B0, 0x977C},+    {0xF7B1, 0x9785},+    {0xF7B2, 0x9791},+    {0xF7B3, 0x9792},+    {0xF7B4, 0x9794},+    {0xF7B5, 0x97AF},+    {0xF7B6, 0x97AB},+    {0xF7B7, 0x97A3},+    {0xF7B8, 0x97B2},+    {0xF7B9, 0x97B4},+    {0xF7BA, 0x9AB1},+    {0xF7BB, 0x9AB0},+    {0xF7BC, 0x9AB7},+    {0xF7BD, 0x9E58},+    {0xF7BE, 0x9AB6},+    {0xF7BF, 0x9ABA},+    {0xF7C0, 0x9ABC},+    {0xF7C1, 0x9AC1},+    {0xF7C2, 0x9AC0},+    {0xF7C3, 0x9AC5},+    {0xF7C4, 0x9AC2},+    {0xF7C5, 0x9ACB},+    {0xF7C6, 0x9ACC},+    {0xF7C7, 0x9AD1},+    {0xF7C8, 0x9B45},+    {0xF7C9, 0x9B43},+    {0xF7CA, 0x9B47},+    {0xF7CB, 0x9B49},+    {0xF7CC, 0x9B48},+    {0xF7CD, 0x9B4D},+    {0xF7CE, 0x9B51},+    {0xF7CF, 0x98E8},+    {0xF7D0, 0x990D},+    {0xF7D1, 0x992E},+    {0xF7D2, 0x9955},+    {0xF7D3, 0x9954},+    {0xF7D4, 0x9ADF},+    {0xF7D5, 0x9AE1},+    {0xF7D6, 0x9AE6},+    {0xF7D7, 0x9AEF},+    {0xF7D8, 0x9AEB},+    {0xF7D9, 0x9AFB},+    {0xF7DA, 0x9AED},+    {0xF7DB, 0x9AF9},+    {0xF7DC, 0x9B08},+    {0xF7DD, 0x9B0F},+    {0xF7DE, 0x9B13},+    {0xF7DF, 0x9B1F},+    {0xF7E0, 0x9B23},+    {0xF7E1, 0x9EBD},+    {0xF7E2, 0x9EBE},+    {0xF7E3, 0x7E3B},+    {0xF7E4, 0x9E82},+    {0xF7E5, 0x9E87},+    {0xF7E6, 0x9E88},+    {0xF7E7, 0x9E8B},+    {0xF7E8, 0x9E92},+    {0xF7E9, 0x93D6},+    {0xF7EA, 0x9E9D},+    {0xF7EB, 0x9E9F},+    {0xF7EC, 0x9EDB},+    {0xF7ED, 0x9EDC},+    {0xF7EE, 0x9EDD},+    {0xF7EF, 0x9EE0},+    {0xF7F0, 0x9EDF},+    {0xF7F1, 0x9EE2},+    {0xF7F2, 0x9EE9},+    {0xF7F3, 0x9EE7},+    {0xF7F4, 0x9EE5},+    {0xF7F5, 0x9EEA},+    {0xF7F6, 0x9EEF},+    {0xF7F7, 0x9F22},+    {0xF7F8, 0x9F2C},+    {0xF7F9, 0x9F2F},+    {0xF7FA, 0x9F39},+    {0xF7FB, 0x9F37},+    {0xF7FC, 0x9F3D},+    {0xF7FD, 0x9F3E},+    {0xF7FE, 0x9F44},+    {0xF840, 0x9CE3},+    {0xF841, 0x9CE4},+    {0xF842, 0x9CE5},+    {0xF843, 0x9CE6},+    {0xF844, 0x9CE7},+    {0xF845, 0x9CE8},+    {0xF846, 0x9CE9},+    {0xF847, 0x9CEA},+    {0xF848, 0x9CEB},+    {0xF849, 0x9CEC},+    {0xF84A, 0x9CED},+    {0xF84B, 0x9CEE},+    {0xF84C, 0x9CEF},+    {0xF84D, 0x9CF0},+    {0xF84E, 0x9CF1},+    {0xF84F, 0x9CF2},+    {0xF850, 0x9CF3},+    {0xF851, 0x9CF4},+    {0xF852, 0x9CF5},+    {0xF853, 0x9CF6},+    {0xF854, 0x9CF7},+    {0xF855, 0x9CF8},+    {0xF856, 0x9CF9},+    {0xF857, 0x9CFA},+    {0xF858, 0x9CFB},+    {0xF859, 0x9CFC},+    {0xF85A, 0x9CFD},+    {0xF85B, 0x9CFE},+    {0xF85C, 0x9CFF},+    {0xF85D, 0x9D00},+    {0xF85E, 0x9D01},+    {0xF85F, 0x9D02},+    {0xF860, 0x9D03},+    {0xF861, 0x9D04},+    {0xF862, 0x9D05},+    {0xF863, 0x9D06},+    {0xF864, 0x9D07},+    {0xF865, 0x9D08},+    {0xF866, 0x9D09},+    {0xF867, 0x9D0A},+    {0xF868, 0x9D0B},+    {0xF869, 0x9D0C},+    {0xF86A, 0x9D0D},+    {0xF86B, 0x9D0E},+    {0xF86C, 0x9D0F},+    {0xF86D, 0x9D10},+    {0xF86E, 0x9D11},+    {0xF86F, 0x9D12},+    {0xF870, 0x9D13},+    {0xF871, 0x9D14},+    {0xF872, 0x9D15},+    {0xF873, 0x9D16},+    {0xF874, 0x9D17},+    {0xF875, 0x9D18},+    {0xF876, 0x9D19},+    {0xF877, 0x9D1A},+    {0xF878, 0x9D1B},+    {0xF879, 0x9D1C},+    {0xF87A, 0x9D1D},+    {0xF87B, 0x9D1E},+    {0xF87C, 0x9D1F},+    {0xF87D, 0x9D20},+    {0xF87E, 0x9D21},+    {0xF880, 0x9D22},+    {0xF881, 0x9D23},+    {0xF882, 0x9D24},+    {0xF883, 0x9D25},+    {0xF884, 0x9D26},+    {0xF885, 0x9D27},+    {0xF886, 0x9D28},+    {0xF887, 0x9D29},+    {0xF888, 0x9D2A},+    {0xF889, 0x9D2B},+    {0xF88A, 0x9D2C},+    {0xF88B, 0x9D2D},+    {0xF88C, 0x9D2E},+    {0xF88D, 0x9D2F},+    {0xF88E, 0x9D30},+    {0xF88F, 0x9D31},+    {0xF890, 0x9D32},+    {0xF891, 0x9D33},+    {0xF892, 0x9D34},+    {0xF893, 0x9D35},+    {0xF894, 0x9D36},+    {0xF895, 0x9D37},+    {0xF896, 0x9D38},+    {0xF897, 0x9D39},+    {0xF898, 0x9D3A},+    {0xF899, 0x9D3B},+    {0xF89A, 0x9D3C},+    {0xF89B, 0x9D3D},+    {0xF89C, 0x9D3E},+    {0xF89D, 0x9D3F},+    {0xF89E, 0x9D40},+    {0xF89F, 0x9D41},+    {0xF8A0, 0x9D42},+    {0xF8A1, 0xE234},+    {0xF8A2, 0xE235},+    {0xF8A3, 0xE236},+    {0xF8A4, 0xE237},+    {0xF8A5, 0xE238},+    {0xF8A6, 0xE239},+    {0xF8A7, 0xE23A},+    {0xF8A8, 0xE23B},+    {0xF8A9, 0xE23C},+    {0xF8AA, 0xE23D},+    {0xF8AB, 0xE23E},+    {0xF8AC, 0xE23F},+    {0xF8AD, 0xE240},+    {0xF8AE, 0xE241},+    {0xF8AF, 0xE242},+    {0xF8B0, 0xE243},+    {0xF8B1, 0xE244},+    {0xF8B2, 0xE245},+    {0xF8B3, 0xE246},+    {0xF8B4, 0xE247},+    {0xF8B5, 0xE248},+    {0xF8B6, 0xE249},+    {0xF8B7, 0xE24A},+    {0xF8B8, 0xE24B},+    {0xF8B9, 0xE24C},+    {0xF8BA, 0xE24D},+    {0xF8BB, 0xE24E},+    {0xF8BC, 0xE24F},+    {0xF8BD, 0xE250},+    {0xF8BE, 0xE251},+    {0xF8BF, 0xE252},+    {0xF8C0, 0xE253},+    {0xF8C1, 0xE254},+    {0xF8C2, 0xE255},+    {0xF8C3, 0xE256},+    {0xF8C4, 0xE257},+    {0xF8C5, 0xE258},+    {0xF8C6, 0xE259},+    {0xF8C7, 0xE25A},+    {0xF8C8, 0xE25B},+    {0xF8C9, 0xE25C},+    {0xF8CA, 0xE25D},+    {0xF8CB, 0xE25E},+    {0xF8CC, 0xE25F},+    {0xF8CD, 0xE260},+    {0xF8CE, 0xE261},+    {0xF8CF, 0xE262},+    {0xF8D0, 0xE263},+    {0xF8D1, 0xE264},+    {0xF8D2, 0xE265},+    {0xF8D3, 0xE266},+    {0xF8D4, 0xE267},+    {0xF8D5, 0xE268},+    {0xF8D6, 0xE269},+    {0xF8D7, 0xE26A},+    {0xF8D8, 0xE26B},+    {0xF8D9, 0xE26C},+    {0xF8DA, 0xE26D},+    {0xF8DB, 0xE26E},+    {0xF8DC, 0xE26F},+    {0xF8DD, 0xE270},+    {0xF8DE, 0xE271},+    {0xF8DF, 0xE272},+    {0xF8E0, 0xE273},+    {0xF8E1, 0xE274},+    {0xF8E2, 0xE275},+    {0xF8E3, 0xE276},+    {0xF8E4, 0xE277},+    {0xF8E5, 0xE278},+    {0xF8E6, 0xE279},+    {0xF8E7, 0xE27A},+    {0xF8E8, 0xE27B},+    {0xF8E9, 0xE27C},+    {0xF8EA, 0xE27D},+    {0xF8EB, 0xE27E},+    {0xF8EC, 0xE27F},+    {0xF8ED, 0xE280},+    {0xF8EE, 0xE281},+    {0xF8EF, 0xE282},+    {0xF8F0, 0xE283},+    {0xF8F1, 0xE284},+    {0xF8F2, 0xE285},+    {0xF8F3, 0xE286},+    {0xF8F4, 0xE287},+    {0xF8F5, 0xE288},+    {0xF8F6, 0xE289},+    {0xF8F7, 0xE28A},+    {0xF8F8, 0xE28B},+    {0xF8F9, 0xE28C},+    {0xF8FA, 0xE28D},+    {0xF8FB, 0xE28E},+    {0xF8FC, 0xE28F},+    {0xF8FD, 0xE290},+    {0xF8FE, 0xE291},+    {0xF940, 0x9D43},+    {0xF941, 0x9D44},+    {0xF942, 0x9D45},+    {0xF943, 0x9D46},+    {0xF944, 0x9D47},+    {0xF945, 0x9D48},+    {0xF946, 0x9D49},+    {0xF947, 0x9D4A},+    {0xF948, 0x9D4B},+    {0xF949, 0x9D4C},+    {0xF94A, 0x9D4D},+    {0xF94B, 0x9D4E},+    {0xF94C, 0x9D4F},+    {0xF94D, 0x9D50},+    {0xF94E, 0x9D51},+    {0xF94F, 0x9D52},+    {0xF950, 0x9D53},+    {0xF951, 0x9D54},+    {0xF952, 0x9D55},+    {0xF953, 0x9D56},+    {0xF954, 0x9D57},+    {0xF955, 0x9D58},+    {0xF956, 0x9D59},+    {0xF957, 0x9D5A},+    {0xF958, 0x9D5B},+    {0xF959, 0x9D5C},+    {0xF95A, 0x9D5D},+    {0xF95B, 0x9D5E},+    {0xF95C, 0x9D5F},+    {0xF95D, 0x9D60},+    {0xF95E, 0x9D61},+    {0xF95F, 0x9D62},+    {0xF960, 0x9D63},+    {0xF961, 0x9D64},+    {0xF962, 0x9D65},+    {0xF963, 0x9D66},+    {0xF964, 0x9D67},+    {0xF965, 0x9D68},+    {0xF966, 0x9D69},+    {0xF967, 0x9D6A},+    {0xF968, 0x9D6B},+    {0xF969, 0x9D6C},+    {0xF96A, 0x9D6D},+    {0xF96B, 0x9D6E},+    {0xF96C, 0x9D6F},+    {0xF96D, 0x9D70},+    {0xF96E, 0x9D71},+    {0xF96F, 0x9D72},+    {0xF970, 0x9D73},+    {0xF971, 0x9D74},+    {0xF972, 0x9D75},+    {0xF973, 0x9D76},+    {0xF974, 0x9D77},+    {0xF975, 0x9D78},+    {0xF976, 0x9D79},+    {0xF977, 0x9D7A},+    {0xF978, 0x9D7B},+    {0xF979, 0x9D7C},+    {0xF97A, 0x9D7D},+    {0xF97B, 0x9D7E},+    {0xF97C, 0x9D7F},+    {0xF97D, 0x9D80},+    {0xF97E, 0x9D81},+    {0xF980, 0x9D82},+    {0xF981, 0x9D83},+    {0xF982, 0x9D84},+    {0xF983, 0x9D85},+    {0xF984, 0x9D86},+    {0xF985, 0x9D87},+    {0xF986, 0x9D88},+    {0xF987, 0x9D89},+    {0xF988, 0x9D8A},+    {0xF989, 0x9D8B},+    {0xF98A, 0x9D8C},+    {0xF98B, 0x9D8D},+    {0xF98C, 0x9D8E},+    {0xF98D, 0x9D8F},+    {0xF98E, 0x9D90},+    {0xF98F, 0x9D91},+    {0xF990, 0x9D92},+    {0xF991, 0x9D93},+    {0xF992, 0x9D94},+    {0xF993, 0x9D95},+    {0xF994, 0x9D96},+    {0xF995, 0x9D97},+    {0xF996, 0x9D98},+    {0xF997, 0x9D99},+    {0xF998, 0x9D9A},+    {0xF999, 0x9D9B},+    {0xF99A, 0x9D9C},+    {0xF99B, 0x9D9D},+    {0xF99C, 0x9D9E},+    {0xF99D, 0x9D9F},+    {0xF99E, 0x9DA0},+    {0xF99F, 0x9DA1},+    {0xF9A0, 0x9DA2},+    {0xF9A1, 0xE292},+    {0xF9A2, 0xE293},+    {0xF9A3, 0xE294},+    {0xF9A4, 0xE295},+    {0xF9A5, 0xE296},+    {0xF9A6, 0xE297},+    {0xF9A7, 0xE298},+    {0xF9A8, 0xE299},+    {0xF9A9, 0xE29A},+    {0xF9AA, 0xE29B},+    {0xF9AB, 0xE29C},+    {0xF9AC, 0xE29D},+    {0xF9AD, 0xE29E},+    {0xF9AE, 0xE29F},+    {0xF9AF, 0xE2A0},+    {0xF9B0, 0xE2A1},+    {0xF9B1, 0xE2A2},+    {0xF9B2, 0xE2A3},+    {0xF9B3, 0xE2A4},+    {0xF9B4, 0xE2A5},+    {0xF9B5, 0xE2A6},+    {0xF9B6, 0xE2A7},+    {0xF9B7, 0xE2A8},+    {0xF9B8, 0xE2A9},+    {0xF9B9, 0xE2AA},+    {0xF9BA, 0xE2AB},+    {0xF9BB, 0xE2AC},+    {0xF9BC, 0xE2AD},+    {0xF9BD, 0xE2AE},+    {0xF9BE, 0xE2AF},+    {0xF9BF, 0xE2B0},+    {0xF9C0, 0xE2B1},+    {0xF9C1, 0xE2B2},+    {0xF9C2, 0xE2B3},+    {0xF9C3, 0xE2B4},+    {0xF9C4, 0xE2B5},+    {0xF9C5, 0xE2B6},+    {0xF9C6, 0xE2B7},+    {0xF9C7, 0xE2B8},+    {0xF9C8, 0xE2B9},+    {0xF9C9, 0xE2BA},+    {0xF9CA, 0xE2BB},+    {0xF9CB, 0xE2BC},+    {0xF9CC, 0xE2BD},+    {0xF9CD, 0xE2BE},+    {0xF9CE, 0xE2BF},+    {0xF9CF, 0xE2C0},+    {0xF9D0, 0xE2C1},+    {0xF9D1, 0xE2C2},+    {0xF9D2, 0xE2C3},+    {0xF9D3, 0xE2C4},+    {0xF9D4, 0xE2C5},+    {0xF9D5, 0xE2C6},+    {0xF9D6, 0xE2C7},+    {0xF9D7, 0xE2C8},+    {0xF9D8, 0xE2C9},+    {0xF9D9, 0xE2CA},+    {0xF9DA, 0xE2CB},+    {0xF9DB, 0xE2CC},+    {0xF9DC, 0xE2CD},+    {0xF9DD, 0xE2CE},+    {0xF9DE, 0xE2CF},+    {0xF9DF, 0xE2D0},+    {0xF9E0, 0xE2D1},+    {0xF9E1, 0xE2D2},+    {0xF9E2, 0xE2D3},+    {0xF9E3, 0xE2D4},+    {0xF9E4, 0xE2D5},+    {0xF9E5, 0xE2D6},+    {0xF9E6, 0xE2D7},+    {0xF9E7, 0xE2D8},+    {0xF9E8, 0xE2D9},+    {0xF9E9, 0xE2DA},+    {0xF9EA, 0xE2DB},+    {0xF9EB, 0xE2DC},+    {0xF9EC, 0xE2DD},+    {0xF9ED, 0xE2DE},+    {0xF9EE, 0xE2DF},+    {0xF9EF, 0xE2E0},+    {0xF9F0, 0xE2E1},+    {0xF9F1, 0xE2E2},+    {0xF9F2, 0xE2E3},+    {0xF9F3, 0xE2E4},+    {0xF9F4, 0xE2E5},+    {0xF9F5, 0xE2E6},+    {0xF9F6, 0xE2E7},+    {0xF9F7, 0xE2E8},+    {0xF9F8, 0xE2E9},+    {0xF9F9, 0xE2EA},+    {0xF9FA, 0xE2EB},+    {0xF9FB, 0xE2EC},+    {0xF9FC, 0xE2ED},+    {0xF9FD, 0xE2EE},+    {0xF9FE, 0xE2EF},+    {0xFA40, 0x9DA3},+    {0xFA41, 0x9DA4},+    {0xFA42, 0x9DA5},+    {0xFA43, 0x9DA6},+    {0xFA44, 0x9DA7},+    {0xFA45, 0x9DA8},+    {0xFA46, 0x9DA9},+    {0xFA47, 0x9DAA},+    {0xFA48, 0x9DAB},+    {0xFA49, 0x9DAC},+    {0xFA4A, 0x9DAD},+    {0xFA4B, 0x9DAE},+    {0xFA4C, 0x9DAF},+    {0xFA4D, 0x9DB0},+    {0xFA4E, 0x9DB1},+    {0xFA4F, 0x9DB2},+    {0xFA50, 0x9DB3},+    {0xFA51, 0x9DB4},+    {0xFA52, 0x9DB5},+    {0xFA53, 0x9DB6},+    {0xFA54, 0x9DB7},+    {0xFA55, 0x9DB8},+    {0xFA56, 0x9DB9},+    {0xFA57, 0x9DBA},+    {0xFA58, 0x9DBB},+    {0xFA59, 0x9DBC},+    {0xFA5A, 0x9DBD},+    {0xFA5B, 0x9DBE},+    {0xFA5C, 0x9DBF},+    {0xFA5D, 0x9DC0},+    {0xFA5E, 0x9DC1},+    {0xFA5F, 0x9DC2},+    {0xFA60, 0x9DC3},+    {0xFA61, 0x9DC4},+    {0xFA62, 0x9DC5},+    {0xFA63, 0x9DC6},+    {0xFA64, 0x9DC7},+    {0xFA65, 0x9DC8},+    {0xFA66, 0x9DC9},+    {0xFA67, 0x9DCA},+    {0xFA68, 0x9DCB},+    {0xFA69, 0x9DCC},+    {0xFA6A, 0x9DCD},+    {0xFA6B, 0x9DCE},+    {0xFA6C, 0x9DCF},+    {0xFA6D, 0x9DD0},+    {0xFA6E, 0x9DD1},+    {0xFA6F, 0x9DD2},+    {0xFA70, 0x9DD3},+    {0xFA71, 0x9DD4},+    {0xFA72, 0x9DD5},+    {0xFA73, 0x9DD6},+    {0xFA74, 0x9DD7},+    {0xFA75, 0x9DD8},+    {0xFA76, 0x9DD9},+    {0xFA77, 0x9DDA},+    {0xFA78, 0x9DDB},+    {0xFA79, 0x9DDC},+    {0xFA7A, 0x9DDD},+    {0xFA7B, 0x9DDE},+    {0xFA7C, 0x9DDF},+    {0xFA7D, 0x9DE0},+    {0xFA7E, 0x9DE1},+    {0xFA80, 0x9DE2},+    {0xFA81, 0x9DE3},+    {0xFA82, 0x9DE4},+    {0xFA83, 0x9DE5},+    {0xFA84, 0x9DE6},+    {0xFA85, 0x9DE7},+    {0xFA86, 0x9DE8},+    {0xFA87, 0x9DE9},+    {0xFA88, 0x9DEA},+    {0xFA89, 0x9DEB},+    {0xFA8A, 0x9DEC},+    {0xFA8B, 0x9DED},+    {0xFA8C, 0x9DEE},+    {0xFA8D, 0x9DEF},+    {0xFA8E, 0x9DF0},+    {0xFA8F, 0x9DF1},+    {0xFA90, 0x9DF2},+    {0xFA91, 0x9DF3},+    {0xFA92, 0x9DF4},+    {0xFA93, 0x9DF5},+    {0xFA94, 0x9DF6},+    {0xFA95, 0x9DF7},+    {0xFA96, 0x9DF8},+    {0xFA97, 0x9DF9},+    {0xFA98, 0x9DFA},+    {0xFA99, 0x9DFB},+    {0xFA9A, 0x9DFC},+    {0xFA9B, 0x9DFD},+    {0xFA9C, 0x9DFE},+    {0xFA9D, 0x9DFF},+    {0xFA9E, 0x9E00},+    {0xFA9F, 0x9E01},+    {0xFAA0, 0x9E02},+    {0xFAA1, 0xE2F0},+    {0xFAA2, 0xE2F1},+    {0xFAA3, 0xE2F2},+    {0xFAA4, 0xE2F3},+    {0xFAA5, 0xE2F4},+    {0xFAA6, 0xE2F5},+    {0xFAA7, 0xE2F6},+    {0xFAA8, 0xE2F7},+    {0xFAA9, 0xE2F8},+    {0xFAAA, 0xE2F9},+    {0xFAAB, 0xE2FA},+    {0xFAAC, 0xE2FB},+    {0xFAAD, 0xE2FC},+    {0xFAAE, 0xE2FD},+    {0xFAAF, 0xE2FE},+    {0xFAB0, 0xE2FF},+    {0xFAB1, 0xE300},+    {0xFAB2, 0xE301},+    {0xFAB3, 0xE302},+    {0xFAB4, 0xE303},+    {0xFAB5, 0xE304},+    {0xFAB6, 0xE305},+    {0xFAB7, 0xE306},+    {0xFAB8, 0xE307},+    {0xFAB9, 0xE308},+    {0xFABA, 0xE309},+    {0xFABB, 0xE30A},+    {0xFABC, 0xE30B},+    {0xFABD, 0xE30C},+    {0xFABE, 0xE30D},+    {0xFABF, 0xE30E},+    {0xFAC0, 0xE30F},+    {0xFAC1, 0xE310},+    {0xFAC2, 0xE311},+    {0xFAC3, 0xE312},+    {0xFAC4, 0xE313},+    {0xFAC5, 0xE314},+    {0xFAC6, 0xE315},+    {0xFAC7, 0xE316},+    {0xFAC8, 0xE317},+    {0xFAC9, 0xE318},+    {0xFACA, 0xE319},+    {0xFACB, 0xE31A},+    {0xFACC, 0xE31B},+    {0xFACD, 0xE31C},+    {0xFACE, 0xE31D},+    {0xFACF, 0xE31E},+    {0xFAD0, 0xE31F},+    {0xFAD1, 0xE320},+    {0xFAD2, 0xE321},+    {0xFAD3, 0xE322},+    {0xFAD4, 0xE323},+    {0xFAD5, 0xE324},+    {0xFAD6, 0xE325},+    {0xFAD7, 0xE326},+    {0xFAD8, 0xE327},+    {0xFAD9, 0xE328},+    {0xFADA, 0xE329},+    {0xFADB, 0xE32A},+    {0xFADC, 0xE32B},+    {0xFADD, 0xE32C},+    {0xFADE, 0xE32D},+    {0xFADF, 0xE32E},+    {0xFAE0, 0xE32F},+    {0xFAE1, 0xE330},+    {0xFAE2, 0xE331},+    {0xFAE3, 0xE332},+    {0xFAE4, 0xE333},+    {0xFAE5, 0xE334},+    {0xFAE6, 0xE335},+    {0xFAE7, 0xE336},+    {0xFAE8, 0xE337},+    {0xFAE9, 0xE338},+    {0xFAEA, 0xE339},+    {0xFAEB, 0xE33A},+    {0xFAEC, 0xE33B},+    {0xFAED, 0xE33C},+    {0xFAEE, 0xE33D},+    {0xFAEF, 0xE33E},+    {0xFAF0, 0xE33F},+    {0xFAF1, 0xE340},+    {0xFAF2, 0xE341},+    {0xFAF3, 0xE342},+    {0xFAF4, 0xE343},+    {0xFAF5, 0xE344},+    {0xFAF6, 0xE345},+    {0xFAF7, 0xE346},+    {0xFAF8, 0xE347},+    {0xFAF9, 0xE348},+    {0xFAFA, 0xE349},+    {0xFAFB, 0xE34A},+    {0xFAFC, 0xE34B},+    {0xFAFD, 0xE34C},+    {0xFAFE, 0xE34D},+    {0xFB40, 0x9E03},+    {0xFB41, 0x9E04},+    {0xFB42, 0x9E05},+    {0xFB43, 0x9E06},+    {0xFB44, 0x9E07},+    {0xFB45, 0x9E08},+    {0xFB46, 0x9E09},+    {0xFB47, 0x9E0A},+    {0xFB48, 0x9E0B},+    {0xFB49, 0x9E0C},+    {0xFB4A, 0x9E0D},+    {0xFB4B, 0x9E0E},+    {0xFB4C, 0x9E0F},+    {0xFB4D, 0x9E10},+    {0xFB4E, 0x9E11},+    {0xFB4F, 0x9E12},+    {0xFB50, 0x9E13},+    {0xFB51, 0x9E14},+    {0xFB52, 0x9E15},+    {0xFB53, 0x9E16},+    {0xFB54, 0x9E17},+    {0xFB55, 0x9E18},+    {0xFB56, 0x9E19},+    {0xFB57, 0x9E1A},+    {0xFB58, 0x9E1B},+    {0xFB59, 0x9E1C},+    {0xFB5A, 0x9E1D},+    {0xFB5B, 0x9E1E},+    {0xFB5C, 0x9E24},+    {0xFB5D, 0x9E27},+    {0xFB5E, 0x9E2E},+    {0xFB5F, 0x9E30},+    {0xFB60, 0x9E34},+    {0xFB61, 0x9E3B},+    {0xFB62, 0x9E3C},+    {0xFB63, 0x9E40},+    {0xFB64, 0x9E4D},+    {0xFB65, 0x9E50},+    {0xFB66, 0x9E52},+    {0xFB67, 0x9E53},+    {0xFB68, 0x9E54},+    {0xFB69, 0x9E56},+    {0xFB6A, 0x9E59},+    {0xFB6B, 0x9E5D},+    {0xFB6C, 0x9E5F},+    {0xFB6D, 0x9E60},+    {0xFB6E, 0x9E61},+    {0xFB6F, 0x9E62},+    {0xFB70, 0x9E65},+    {0xFB71, 0x9E6E},+    {0xFB72, 0x9E6F},+    {0xFB73, 0x9E72},+    {0xFB74, 0x9E74},+    {0xFB75, 0x9E75},+    {0xFB76, 0x9E76},+    {0xFB77, 0x9E77},+    {0xFB78, 0x9E78},+    {0xFB79, 0x9E79},+    {0xFB7A, 0x9E7A},+    {0xFB7B, 0x9E7B},+    {0xFB7C, 0x9E7C},+    {0xFB7D, 0x9E7D},+    {0xFB7E, 0x9E80},+    {0xFB80, 0x9E81},+    {0xFB81, 0x9E83},+    {0xFB82, 0x9E84},+    {0xFB83, 0x9E85},+    {0xFB84, 0x9E86},+    {0xFB85, 0x9E89},+    {0xFB86, 0x9E8A},+    {0xFB87, 0x9E8C},+    {0xFB88, 0x9E8D},+    {0xFB89, 0x9E8E},+    {0xFB8A, 0x9E8F},+    {0xFB8B, 0x9E90},+    {0xFB8C, 0x9E91},+    {0xFB8D, 0x9E94},+    {0xFB8E, 0x9E95},+    {0xFB8F, 0x9E96},+    {0xFB90, 0x9E97},+    {0xFB91, 0x9E98},+    {0xFB92, 0x9E99},+    {0xFB93, 0x9E9A},+    {0xFB94, 0x9E9B},+    {0xFB95, 0x9E9C},+    {0xFB96, 0x9E9E},+    {0xFB97, 0x9EA0},+    {0xFB98, 0x9EA1},+    {0xFB99, 0x9EA2},+    {0xFB9A, 0x9EA3},+    {0xFB9B, 0x9EA4},+    {0xFB9C, 0x9EA5},+    {0xFB9D, 0x9EA7},+    {0xFB9E, 0x9EA8},+    {0xFB9F, 0x9EA9},+    {0xFBA0, 0x9EAA},+    {0xFBA1, 0xE34E},+    {0xFBA2, 0xE34F},+    {0xFBA3, 0xE350},+    {0xFBA4, 0xE351},+    {0xFBA5, 0xE352},+    {0xFBA6, 0xE353},+    {0xFBA7, 0xE354},+    {0xFBA8, 0xE355},+    {0xFBA9, 0xE356},+    {0xFBAA, 0xE357},+    {0xFBAB, 0xE358},+    {0xFBAC, 0xE359},+    {0xFBAD, 0xE35A},+    {0xFBAE, 0xE35B},+    {0xFBAF, 0xE35C},+    {0xFBB0, 0xE35D},+    {0xFBB1, 0xE35E},+    {0xFBB2, 0xE35F},+    {0xFBB3, 0xE360},+    {0xFBB4, 0xE361},+    {0xFBB5, 0xE362},+    {0xFBB6, 0xE363},+    {0xFBB7, 0xE364},+    {0xFBB8, 0xE365},+    {0xFBB9, 0xE366},+    {0xFBBA, 0xE367},+    {0xFBBB, 0xE368},+    {0xFBBC, 0xE369},+    {0xFBBD, 0xE36A},+    {0xFBBE, 0xE36B},+    {0xFBBF, 0xE36C},+    {0xFBC0, 0xE36D},+    {0xFBC1, 0xE36E},+    {0xFBC2, 0xE36F},+    {0xFBC3, 0xE370},+    {0xFBC4, 0xE371},+    {0xFBC5, 0xE372},+    {0xFBC6, 0xE373},+    {0xFBC7, 0xE374},+    {0xFBC8, 0xE375},+    {0xFBC9, 0xE376},+    {0xFBCA, 0xE377},+    {0xFBCB, 0xE378},+    {0xFBCC, 0xE379},+    {0xFBCD, 0xE37A},+    {0xFBCE, 0xE37B},+    {0xFBCF, 0xE37C},+    {0xFBD0, 0xE37D},+    {0xFBD1, 0xE37E},+    {0xFBD2, 0xE37F},+    {0xFBD3, 0xE380},+    {0xFBD4, 0xE381},+    {0xFBD5, 0xE382},+    {0xFBD6, 0xE383},+    {0xFBD7, 0xE384},+    {0xFBD8, 0xE385},+    {0xFBD9, 0xE386},+    {0xFBDA, 0xE387},+    {0xFBDB, 0xE388},+    {0xFBDC, 0xE389},+    {0xFBDD, 0xE38A},+    {0xFBDE, 0xE38B},+    {0xFBDF, 0xE38C},+    {0xFBE0, 0xE38D},+    {0xFBE1, 0xE38E},+    {0xFBE2, 0xE38F},+    {0xFBE3, 0xE390},+    {0xFBE4, 0xE391},+    {0xFBE5, 0xE392},+    {0xFBE6, 0xE393},+    {0xFBE7, 0xE394},+    {0xFBE8, 0xE395},+    {0xFBE9, 0xE396},+    {0xFBEA, 0xE397},+    {0xFBEB, 0xE398},+    {0xFBEC, 0xE399},+    {0xFBED, 0xE39A},+    {0xFBEE, 0xE39B},+    {0xFBEF, 0xE39C},+    {0xFBF0, 0xE39D},+    {0xFBF1, 0xE39E},+    {0xFBF2, 0xE39F},+    {0xFBF3, 0xE3A0},+    {0xFBF4, 0xE3A1},+    {0xFBF5, 0xE3A2},+    {0xFBF6, 0xE3A3},+    {0xFBF7, 0xE3A4},+    {0xFBF8, 0xE3A5},+    {0xFBF9, 0xE3A6},+    {0xFBFA, 0xE3A7},+    {0xFBFB, 0xE3A8},+    {0xFBFC, 0xE3A9},+    {0xFBFD, 0xE3AA},+    {0xFBFE, 0xE3AB},+    {0xFC40, 0x9EAB},+    {0xFC41, 0x9EAC},+    {0xFC42, 0x9EAD},+    {0xFC43, 0x9EAE},+    {0xFC44, 0x9EAF},+    {0xFC45, 0x9EB0},+    {0xFC46, 0x9EB1},+    {0xFC47, 0x9EB2},+    {0xFC48, 0x9EB3},+    {0xFC49, 0x9EB5},+    {0xFC4A, 0x9EB6},+    {0xFC4B, 0x9EB7},+    {0xFC4C, 0x9EB9},+    {0xFC4D, 0x9EBA},+    {0xFC4E, 0x9EBC},+    {0xFC4F, 0x9EBF},+    {0xFC50, 0x9EC0},+    {0xFC51, 0x9EC1},+    {0xFC52, 0x9EC2},+    {0xFC53, 0x9EC3},+    {0xFC54, 0x9EC5},+    {0xFC55, 0x9EC6},+    {0xFC56, 0x9EC7},+    {0xFC57, 0x9EC8},+    {0xFC58, 0x9ECA},+    {0xFC59, 0x9ECB},+    {0xFC5A, 0x9ECC},+    {0xFC5B, 0x9ED0},+    {0xFC5C, 0x9ED2},+    {0xFC5D, 0x9ED3},+    {0xFC5E, 0x9ED5},+    {0xFC5F, 0x9ED6},+    {0xFC60, 0x9ED7},+    {0xFC61, 0x9ED9},+    {0xFC62, 0x9EDA},+    {0xFC63, 0x9EDE},+    {0xFC64, 0x9EE1},+    {0xFC65, 0x9EE3},+    {0xFC66, 0x9EE4},+    {0xFC67, 0x9EE6},+    {0xFC68, 0x9EE8},+    {0xFC69, 0x9EEB},+    {0xFC6A, 0x9EEC},+    {0xFC6B, 0x9EED},+    {0xFC6C, 0x9EEE},+    {0xFC6D, 0x9EF0},+    {0xFC6E, 0x9EF1},+    {0xFC6F, 0x9EF2},+    {0xFC70, 0x9EF3},+    {0xFC71, 0x9EF4},+    {0xFC72, 0x9EF5},+    {0xFC73, 0x9EF6},+    {0xFC74, 0x9EF7},+    {0xFC75, 0x9EF8},+    {0xFC76, 0x9EFA},+    {0xFC77, 0x9EFD},+    {0xFC78, 0x9EFF},+    {0xFC79, 0x9F00},+    {0xFC7A, 0x9F01},+    {0xFC7B, 0x9F02},+    {0xFC7C, 0x9F03},+    {0xFC7D, 0x9F04},+    {0xFC7E, 0x9F05},+    {0xFC80, 0x9F06},+    {0xFC81, 0x9F07},+    {0xFC82, 0x9F08},+    {0xFC83, 0x9F09},+    {0xFC84, 0x9F0A},+    {0xFC85, 0x9F0C},+    {0xFC86, 0x9F0F},+    {0xFC87, 0x9F11},+    {0xFC88, 0x9F12},+    {0xFC89, 0x9F14},+    {0xFC8A, 0x9F15},+    {0xFC8B, 0x9F16},+    {0xFC8C, 0x9F18},+    {0xFC8D, 0x9F1A},+    {0xFC8E, 0x9F1B},+    {0xFC8F, 0x9F1C},+    {0xFC90, 0x9F1D},+    {0xFC91, 0x9F1E},+    {0xFC92, 0x9F1F},+    {0xFC93, 0x9F21},+    {0xFC94, 0x9F23},+    {0xFC95, 0x9F24},+    {0xFC96, 0x9F25},+    {0xFC97, 0x9F26},+    {0xFC98, 0x9F27},+    {0xFC99, 0x9F28},+    {0xFC9A, 0x9F29},+    {0xFC9B, 0x9F2A},+    {0xFC9C, 0x9F2B},+    {0xFC9D, 0x9F2D},+    {0xFC9E, 0x9F2E},+    {0xFC9F, 0x9F30},+    {0xFCA0, 0x9F31},+    {0xFCA1, 0xE3AC},+    {0xFCA2, 0xE3AD},+    {0xFCA3, 0xE3AE},+    {0xFCA4, 0xE3AF},+    {0xFCA5, 0xE3B0},+    {0xFCA6, 0xE3B1},+    {0xFCA7, 0xE3B2},+    {0xFCA8, 0xE3B3},+    {0xFCA9, 0xE3B4},+    {0xFCAA, 0xE3B5},+    {0xFCAB, 0xE3B6},+    {0xFCAC, 0xE3B7},+    {0xFCAD, 0xE3B8},+    {0xFCAE, 0xE3B9},+    {0xFCAF, 0xE3BA},+    {0xFCB0, 0xE3BB},+    {0xFCB1, 0xE3BC},+    {0xFCB2, 0xE3BD},+    {0xFCB3, 0xE3BE},+    {0xFCB4, 0xE3BF},+    {0xFCB5, 0xE3C0},+    {0xFCB6, 0xE3C1},+    {0xFCB7, 0xE3C2},+    {0xFCB8, 0xE3C3},+    {0xFCB9, 0xE3C4},+    {0xFCBA, 0xE3C5},+    {0xFCBB, 0xE3C6},+    {0xFCBC, 0xE3C7},+    {0xFCBD, 0xE3C8},+    {0xFCBE, 0xE3C9},+    {0xFCBF, 0xE3CA},+    {0xFCC0, 0xE3CB},+    {0xFCC1, 0xE3CC},+    {0xFCC2, 0xE3CD},+    {0xFCC3, 0xE3CE},+    {0xFCC4, 0xE3CF},+    {0xFCC5, 0xE3D0},+    {0xFCC6, 0xE3D1},+    {0xFCC7, 0xE3D2},+    {0xFCC8, 0xE3D3},+    {0xFCC9, 0xE3D4},+    {0xFCCA, 0xE3D5},+    {0xFCCB, 0xE3D6},+    {0xFCCC, 0xE3D7},+    {0xFCCD, 0xE3D8},+    {0xFCCE, 0xE3D9},+    {0xFCCF, 0xE3DA},+    {0xFCD0, 0xE3DB},+    {0xFCD1, 0xE3DC},+    {0xFCD2, 0xE3DD},+    {0xFCD3, 0xE3DE},+    {0xFCD4, 0xE3DF},+    {0xFCD5, 0xE3E0},+    {0xFCD6, 0xE3E1},+    {0xFCD7, 0xE3E2},+    {0xFCD8, 0xE3E3},+    {0xFCD9, 0xE3E4},+    {0xFCDA, 0xE3E5},+    {0xFCDB, 0xE3E6},+    {0xFCDC, 0xE3E7},+    {0xFCDD, 0xE3E8},+    {0xFCDE, 0xE3E9},+    {0xFCDF, 0xE3EA},+    {0xFCE0, 0xE3EB},+    {0xFCE1, 0xE3EC},+    {0xFCE2, 0xE3ED},+    {0xFCE3, 0xE3EE},+    {0xFCE4, 0xE3EF},+    {0xFCE5, 0xE3F0},+    {0xFCE6, 0xE3F1},+    {0xFCE7, 0xE3F2},+    {0xFCE8, 0xE3F3},+    {0xFCE9, 0xE3F4},+    {0xFCEA, 0xE3F5},+    {0xFCEB, 0xE3F6},+    {0xFCEC, 0xE3F7},+    {0xFCED, 0xE3F8},+    {0xFCEE, 0xE3F9},+    {0xFCEF, 0xE3FA},+    {0xFCF0, 0xE3FB},+    {0xFCF1, 0xE3FC},+    {0xFCF2, 0xE3FD},+    {0xFCF3, 0xE3FE},+    {0xFCF4, 0xE3FF},+    {0xFCF5, 0xE400},+    {0xFCF6, 0xE401},+    {0xFCF7, 0xE402},+    {0xFCF8, 0xE403},+    {0xFCF9, 0xE404},+    {0xFCFA, 0xE405},+    {0xFCFB, 0xE406},+    {0xFCFC, 0xE407},+    {0xFCFD, 0xE408},+    {0xFCFE, 0xE409},+    {0xFD40, 0x9F32},+    {0xFD41, 0x9F33},+    {0xFD42, 0x9F34},+    {0xFD43, 0x9F35},+    {0xFD44, 0x9F36},+    {0xFD45, 0x9F38},+    {0xFD46, 0x9F3A},+    {0xFD47, 0x9F3C},+    {0xFD48, 0x9F3F},+    {0xFD49, 0x9F40},+    {0xFD4A, 0x9F41},+    {0xFD4B, 0x9F42},+    {0xFD4C, 0x9F43},+    {0xFD4D, 0x9F45},+    {0xFD4E, 0x9F46},+    {0xFD4F, 0x9F47},+    {0xFD50, 0x9F48},+    {0xFD51, 0x9F49},+    {0xFD52, 0x9F4A},+    {0xFD53, 0x9F4B},+    {0xFD54, 0x9F4C},+    {0xFD55, 0x9F4D},+    {0xFD56, 0x9F4E},+    {0xFD57, 0x9F4F},+    {0xFD58, 0x9F52},+    {0xFD59, 0x9F53},+    {0xFD5A, 0x9F54},+    {0xFD5B, 0x9F55},+    {0xFD5C, 0x9F56},+    {0xFD5D, 0x9F57},+    {0xFD5E, 0x9F58},+    {0xFD5F, 0x9F59},+    {0xFD60, 0x9F5A},+    {0xFD61, 0x9F5B},+    {0xFD62, 0x9F5C},+    {0xFD63, 0x9F5D},+    {0xFD64, 0x9F5E},+    {0xFD65, 0x9F5F},+    {0xFD66, 0x9F60},+    {0xFD67, 0x9F61},+    {0xFD68, 0x9F62},+    {0xFD69, 0x9F63},+    {0xFD6A, 0x9F64},+    {0xFD6B, 0x9F65},+    {0xFD6C, 0x9F66},+    {0xFD6D, 0x9F67},+    {0xFD6E, 0x9F68},+    {0xFD6F, 0x9F69},+    {0xFD70, 0x9F6A},+    {0xFD71, 0x9F6B},+    {0xFD72, 0x9F6C},+    {0xFD73, 0x9F6D},+    {0xFD74, 0x9F6E},+    {0xFD75, 0x9F6F},+    {0xFD76, 0x9F70},+    {0xFD77, 0x9F71},+    {0xFD78, 0x9F72},+    {0xFD79, 0x9F73},+    {0xFD7A, 0x9F74},+    {0xFD7B, 0x9F75},+    {0xFD7C, 0x9F76},+    {0xFD7D, 0x9F77},+    {0xFD7E, 0x9F78},+    {0xFD80, 0x9F79},+    {0xFD81, 0x9F7A},+    {0xFD82, 0x9F7B},+    {0xFD83, 0x9F7C},+    {0xFD84, 0x9F7D},+    {0xFD85, 0x9F7E},+    {0xFD86, 0x9F81},+    {0xFD87, 0x9F82},+    {0xFD88, 0x9F8D},+    {0xFD89, 0x9F8E},+    {0xFD8A, 0x9F8F},+    {0xFD8B, 0x9F90},+    {0xFD8C, 0x9F91},+    {0xFD8D, 0x9F92},+    {0xFD8E, 0x9F93},+    {0xFD8F, 0x9F94},+    {0xFD90, 0x9F95},+    {0xFD91, 0x9F96},+    {0xFD92, 0x9F97},+    {0xFD93, 0x9F98},+    {0xFD94, 0x9F9C},+    {0xFD95, 0x9F9D},+    {0xFD96, 0x9F9E},+    {0xFD97, 0x9FA1},+    {0xFD98, 0x9FA2},+    {0xFD99, 0x9FA3},+    {0xFD9A, 0x9FA4},+    {0xFD9B, 0x9FA5},+    {0xFD9C, 0xF92C},+    {0xFD9D, 0xF979},+    {0xFD9E, 0xF995},+    {0xFD9F, 0xF9E7},+    {0xFDA0, 0xF9F1},+    {0xFDA1, 0xE40A},+    {0xFDA2, 0xE40B},+    {0xFDA3, 0xE40C},+    {0xFDA4, 0xE40D},+    {0xFDA5, 0xE40E},+    {0xFDA6, 0xE40F},+    {0xFDA7, 0xE410},+    {0xFDA8, 0xE411},+    {0xFDA9, 0xE412},+    {0xFDAA, 0xE413},+    {0xFDAB, 0xE414},+    {0xFDAC, 0xE415},+    {0xFDAD, 0xE416},+    {0xFDAE, 0xE417},+    {0xFDAF, 0xE418},+    {0xFDB0, 0xE419},+    {0xFDB1, 0xE41A},+    {0xFDB2, 0xE41B},+    {0xFDB3, 0xE41C},+    {0xFDB4, 0xE41D},+    {0xFDB5, 0xE41E},+    {0xFDB6, 0xE41F},+    {0xFDB7, 0xE420},+    {0xFDB8, 0xE421},+    {0xFDB9, 0xE422},+    {0xFDBA, 0xE423},+    {0xFDBB, 0xE424},+    {0xFDBC, 0xE425},+    {0xFDBD, 0xE426},+    {0xFDBE, 0xE427},+    {0xFDBF, 0xE428},+    {0xFDC0, 0xE429},+    {0xFDC1, 0xE42A},+    {0xFDC2, 0xE42B},+    {0xFDC3, 0xE42C},+    {0xFDC4, 0xE42D},+    {0xFDC5, 0xE42E},+    {0xFDC6, 0xE42F},+    {0xFDC7, 0xE430},+    {0xFDC8, 0xE431},+    {0xFDC9, 0xE432},+    {0xFDCA, 0xE433},+    {0xFDCB, 0xE434},+    {0xFDCC, 0xE435},+    {0xFDCD, 0xE436},+    {0xFDCE, 0xE437},+    {0xFDCF, 0xE438},+    {0xFDD0, 0xE439},+    {0xFDD1, 0xE43A},+    {0xFDD2, 0xE43B},+    {0xFDD3, 0xE43C},+    {0xFDD4, 0xE43D},+    {0xFDD5, 0xE43E},+    {0xFDD6, 0xE43F},+    {0xFDD7, 0xE440},+    {0xFDD8, 0xE441},+    {0xFDD9, 0xE442},+    {0xFDDA, 0xE443},+    {0xFDDB, 0xE444},+    {0xFDDC, 0xE445},+    {0xFDDD, 0xE446},+    {0xFDDE, 0xE447},+    {0xFDDF, 0xE448},+    {0xFDE0, 0xE449},+    {0xFDE1, 0xE44A},+    {0xFDE2, 0xE44B},+    {0xFDE3, 0xE44C},+    {0xFDE4, 0xE44D},+    {0xFDE5, 0xE44E},+    {0xFDE6, 0xE44F},+    {0xFDE7, 0xE450},+    {0xFDE8, 0xE451},+    {0xFDE9, 0xE452},+    {0xFDEA, 0xE453},+    {0xFDEB, 0xE454},+    {0xFDEC, 0xE455},+    {0xFDED, 0xE456},+    {0xFDEE, 0xE457},+    {0xFDEF, 0xE458},+    {0xFDF0, 0xE459},+    {0xFDF1, 0xE45A},+    {0xFDF2, 0xE45B},+    {0xFDF3, 0xE45C},+    {0xFDF4, 0xE45D},+    {0xFDF5, 0xE45E},+    {0xFDF6, 0xE45F},+    {0xFDF7, 0xE460},+    {0xFDF8, 0xE461},+    {0xFDF9, 0xE462},+    {0xFDFA, 0xE463},+    {0xFDFB, 0xE464},+    {0xFDFC, 0xE465},+    {0xFDFD, 0xE466},+    {0xFDFE, 0xE467},+    {0xFE40, 0xFA0C},+    {0xFE41, 0xFA0D},+    {0xFE42, 0xFA0E},+    {0xFE43, 0xFA0F},+    {0xFE44, 0xFA11},+    {0xFE45, 0xFA13},+    {0xFE46, 0xFA14},+    {0xFE47, 0xFA18},+    {0xFE48, 0xFA1F},+    {0xFE49, 0xFA20},+    {0xFE4A, 0xFA21},+    {0xFE4B, 0xFA23},+    {0xFE4C, 0xFA24},+    {0xFE4D, 0xFA27},+    {0xFE4E, 0xFA28},+    {0xFE4F, 0xFA29},+    {0xFE50, 0xE815},+    {0xFE51, 0xE816},+    {0xFE52, 0xE817},+    {0xFE53, 0xE818},+    {0xFE54, 0xE819},+    {0xFE55, 0xE81A},+    {0xFE56, 0xE81B},+    {0xFE57, 0xE81C},+    {0xFE58, 0xE81D},+    {0xFE59, 0xE81E},+    {0xFE5A, 0xE81F},+    {0xFE5B, 0xE820},+    {0xFE5C, 0xE821},+    {0xFE5D, 0xE822},+    {0xFE5E, 0xE823},+    {0xFE5F, 0xE824},+    {0xFE60, 0xE825},+    {0xFE61, 0xE826},+    {0xFE62, 0xE827},+    {0xFE63, 0xE828},+    {0xFE64, 0xE829},+    {0xFE65, 0xE82A},+    {0xFE66, 0xE82B},+    {0xFE67, 0xE82C},+    {0xFE68, 0xE82D},+    {0xFE69, 0xE82E},+    {0xFE6A, 0xE82F},+    {0xFE6B, 0xE830},+    {0xFE6C, 0xE831},+    {0xFE6D, 0xE832},+    {0xFE6E, 0xE833},+    {0xFE6F, 0xE834},+    {0xFE70, 0xE835},+    {0xFE71, 0xE836},+    {0xFE72, 0xE837},+    {0xFE73, 0xE838},+    {0xFE74, 0xE839},+    {0xFE75, 0xE83A},+    {0xFE76, 0xE83B},+    {0xFE77, 0xE83C},+    {0xFE78, 0xE83D},+    {0xFE79, 0xE83E},+    {0xFE7A, 0xE83F},+    {0xFE7B, 0xE840},+    {0xFE7C, 0xE841},+    {0xFE7D, 0xE842},+    {0xFE7E, 0xE843},+    {0xFE80, 0xE844},+    {0xFE81, 0xE845},+    {0xFE82, 0xE846},+    {0xFE83, 0xE847},+    {0xFE84, 0xE848},+    {0xFE85, 0xE849},+    {0xFE86, 0xE84A},+    {0xFE87, 0xE84B},+    {0xFE88, 0xE84C},+    {0xFE89, 0xE84D},+    {0xFE8A, 0xE84E},+    {0xFE8B, 0xE84F},+    {0xFE8C, 0xE850},+    {0xFE8D, 0xE851},+    {0xFE8E, 0xE852},+    {0xFE8F, 0xE853},+    {0xFE90, 0xE854},+    {0xFE91, 0xE855},+    {0xFE92, 0xE856},+    {0xFE93, 0xE857},+    {0xFE94, 0xE858},+    {0xFE95, 0xE859},+    {0xFE96, 0xE85A},+    {0xFE97, 0xE85B},+    {0xFE98, 0xE85C},+    {0xFE99, 0xE85D},+    {0xFE9A, 0xE85E},+    {0xFE9B, 0xE85F},+    {0xFE9C, 0xE860},+    {0xFE9D, 0xE861},+    {0xFE9E, 0xE862},+    {0xFE9F, 0xE863},+    {0xFEA0, 0xE864},+    {0xFEA1, 0xE468},+    {0xFEA2, 0xE469},+    {0xFEA3, 0xE46A},+    {0xFEA4, 0xE46B},+    {0xFEA5, 0xE46C},+    {0xFEA6, 0xE46D},+    {0xFEA7, 0xE46E},+    {0xFEA8, 0xE46F},+    {0xFEA9, 0xE470},+    {0xFEAA, 0xE471},+    {0xFEAB, 0xE472},+    {0xFEAC, 0xE473},+    {0xFEAD, 0xE474},+    {0xFEAE, 0xE475},+    {0xFEAF, 0xE476},+    {0xFEB0, 0xE477},+    {0xFEB1, 0xE478},+    {0xFEB2, 0xE479},+    {0xFEB3, 0xE47A},+    {0xFEB4, 0xE47B},+    {0xFEB5, 0xE47C},+    {0xFEB6, 0xE47D},+    {0xFEB7, 0xE47E},+    {0xFEB8, 0xE47F},+    {0xFEB9, 0xE480},+    {0xFEBA, 0xE481},+    {0xFEBB, 0xE482},+    {0xFEBC, 0xE483},+    {0xFEBD, 0xE484},+    {0xFEBE, 0xE485},+    {0xFEBF, 0xE486},+    {0xFEC0, 0xE487},+    {0xFEC1, 0xE488},+    {0xFEC2, 0xE489},+    {0xFEC3, 0xE48A},+    {0xFEC4, 0xE48B},+    {0xFEC5, 0xE48C},+    {0xFEC6, 0xE48D},+    {0xFEC7, 0xE48E},+    {0xFEC8, 0xE48F},+    {0xFEC9, 0xE490},+    {0xFECA, 0xE491},+    {0xFECB, 0xE492},+    {0xFECC, 0xE493},+    {0xFECD, 0xE494},+    {0xFECE, 0xE495},+    {0xFECF, 0xE496},+    {0xFED0, 0xE497},+    {0xFED1, 0xE498},+    {0xFED2, 0xE499},+    {0xFED3, 0xE49A},+    {0xFED4, 0xE49B},+    {0xFED5, 0xE49C},+    {0xFED6, 0xE49D},+    {0xFED7, 0xE49E},+    {0xFED8, 0xE49F},+    {0xFED9, 0xE4A0},+    {0xFEDA, 0xE4A1},+    {0xFEDB, 0xE4A2},+    {0xFEDC, 0xE4A3},+    {0xFEDD, 0xE4A4},+    {0xFEDE, 0xE4A5},+    {0xFEDF, 0xE4A6},+    {0xFEE0, 0xE4A7},+    {0xFEE1, 0xE4A8},+    {0xFEE2, 0xE4A9},+    {0xFEE3, 0xE4AA},+    {0xFEE4, 0xE4AB},+    {0xFEE5, 0xE4AC},+    {0xFEE6, 0xE4AD},+    {0xFEE7, 0xE4AE},+    {0xFEE8, 0xE4AF},+    {0xFEE9, 0xE4B0},+    {0xFEEA, 0xE4B1},+    {0xFEEB, 0xE4B2},+    {0xFEEC, 0xE4B3},+    {0xFEED, 0xE4B4},+    {0xFEEE, 0xE4B5},+    {0xFEEF, 0xE4B6},+    {0xFEF0, 0xE4B7},+    {0xFEF1, 0xE4B8},+    {0xFEF2, 0xE4B9},+    {0xFEF3, 0xE4BA},+    {0xFEF4, 0xE4BB},+    {0xFEF5, 0xE4BC},+    {0xFEF6, 0xE4BD},+    {0xFEF7, 0xE4BE},+    {0xFEF8, 0xE4BF},+    {0xFEF9, 0xE4C0},+    {0xFEFA, 0xE4C1},+    {0xFEFB, 0xE4C2},+    {0xFEFC, 0xE4C3},+    {0xFEFD, 0xE4C4},+    {0xFEFE, 0xE4C5},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_UnicodeMap_Rec EUC_CN_UNICODE_ARRAY[] = {+    {0x20, 0x0020},+    {0x21, 0x0021},+    {0x22, 0x0022},+    {0x23, 0x0023},+    {0x24, 0x0024},+    {0x25, 0x0025},+    {0x26, 0x0026},+    {0x27, 0x0027},+    {0x28, 0x0028},+    {0x29, 0x0029},+    {0x2A, 0x002A},+    {0x2B, 0x002B},+    {0x2C, 0x002C},+    {0x2D, 0x002D},+    {0x2E, 0x002E},+    {0x2F, 0x002F},+    {0x30, 0x0030},+    {0x31, 0x0031},+    {0x32, 0x0032},+    {0x33, 0x0033},+    {0x34, 0x0034},+    {0x35, 0x0035},+    {0x36, 0x0036},+    {0x37, 0x0037},+    {0x38, 0x0038},+    {0x39, 0x0039},+    {0x3A, 0x003A},+    {0x3B, 0x003B},+    {0x3C, 0x003C},+    {0x3D, 0x003D},+    {0x3E, 0x003E},+    {0x3F, 0x003F},+    {0x40, 0x0040},+    {0x41, 0x0041},+    {0x42, 0x0042},+    {0x43, 0x0043},+    {0x44, 0x0044},+    {0x45, 0x0045},+    {0x46, 0x0046},+    {0x47, 0x0047},+    {0x48, 0x0048},+    {0x49, 0x0049},+    {0x4A, 0x004A},+    {0x4B, 0x004B},+    {0x4C, 0x004C},+    {0x4D, 0x004D},+    {0x4E, 0x004E},+    {0x4F, 0x004F},+    {0x50, 0x0050},+    {0x51, 0x0051},+    {0x52, 0x0052},+    {0x53, 0x0053},+    {0x54, 0x0054},+    {0x55, 0x0055},+    {0x56, 0x0056},+    {0x57, 0x0057},+    {0x58, 0x0058},+    {0x59, 0x0059},+    {0x5A, 0x005A},+    {0x5B, 0x005B},+    {0x5C, 0x005C},+    {0x5D, 0x005D},+    {0x5E, 0x005E},+    {0x5F, 0x005F},+    {0x60, 0x0060},+    {0x61, 0x0061},+    {0x62, 0x0062},+    {0x63, 0x0063},+    {0x64, 0x0064},+    {0x65, 0x0065},+    {0x66, 0x0066},+    {0x67, 0x0067},+    {0x68, 0x0068},+    {0x69, 0x0069},+    {0x6A, 0x006A},+    {0x6B, 0x006B},+    {0x6C, 0x006C},+    {0x6D, 0x006D},+    {0x6E, 0x006E},+    {0x6F, 0x006F},+    {0x70, 0x0070},+    {0x71, 0x0071},+    {0x72, 0x0072},+    {0x73, 0x0073},+    {0x74, 0x0074},+    {0x75, 0x0075},+    {0x76, 0x0076},+    {0x77, 0x0077},+    {0x78, 0x0078},+    {0x79, 0x0079},+    {0x7A, 0x007A},+    {0x7B, 0x007B},+    {0x7C, 0x007C},+    {0x7D, 0x007D},+    {0x7E, 0x007E},+    {0xA1A1, 0x3000},+    {0xA1A2, 0x3001},+    {0xA1A3, 0x3002},+    {0xA1A4, 0x00B7},+    {0xA1A5, 0x02C9},+    {0xA1A6, 0x02C7},+    {0xA1A7, 0x00A8},+    {0xA1A8, 0x3003},+    {0xA1A9, 0x3005},+    {0xA1AA, 0x2014},+    {0xA1AB, 0xFF5E},+    {0xA1AC, 0x2016},+    {0xA1AD, 0x2026},+    {0xA1AE, 0x2018},+    {0xA1AF, 0x2019},+    {0xA1B0, 0x201C},+    {0xA1B1, 0x201D},+    {0xA1B2, 0x3014},+    {0xA1B3, 0x3015},+    {0xA1B4, 0x3008},+    {0xA1B5, 0x3009},+    {0xA1B6, 0x300A},+    {0xA1B7, 0x300B},+    {0xA1B8, 0x300C},+    {0xA1B9, 0x300D},+    {0xA1BA, 0x300E},+    {0xA1BB, 0x300F},+    {0xA1BC, 0x3016},+    {0xA1BD, 0x3017},+    {0xA1BE, 0x3010},+    {0xA1BF, 0x3011},+    {0xA1C0, 0x00B1},+    {0xA1C1, 0x00D7},+    {0xA1C2, 0x00F7},+    {0xA1C3, 0x2236},+    {0xA1C4, 0x2227},+    {0xA1C5, 0x2228},+    {0xA1C6, 0x2211},+    {0xA1C7, 0x220F},+    {0xA1C8, 0x222A},+    {0xA1C9, 0x2229},+    {0xA1CA, 0x2208},+    {0xA1CB, 0x2237},+    {0xA1CC, 0x221A},+    {0xA1CD, 0x22A5},+    {0xA1CE, 0x2225},+    {0xA1CF, 0x2220},+    {0xA1D0, 0x2312},+    {0xA1D1, 0x2299},+    {0xA1D2, 0x222B},+    {0xA1D3, 0x222E},+    {0xA1D4, 0x2261},+    {0xA1D5, 0x224C},+    {0xA1D6, 0x2248},+    {0xA1D7, 0x223D},+    {0xA1D8, 0x221D},+    {0xA1D9, 0x2260},+    {0xA1DA, 0x226E},+    {0xA1DB, 0x226F},+    {0xA1DC, 0x2264},+    {0xA1DD, 0x2265},+    {0xA1DE, 0x221E},+    {0xA1DF, 0x2235},+    {0xA1E0, 0x2234},+    {0xA1E1, 0x2642},+    {0xA1E2, 0x2640},+    {0xA1E3, 0x00B0},+    {0xA1E4, 0x2032},+    {0xA1E5, 0x2033},+    {0xA1E6, 0x2103},+    {0xA1E7, 0xFF04},+    {0xA1E8, 0x00A4},+    {0xA1E9, 0xFFE0},+    {0xA1EA, 0xFFE1},+    {0xA1EB, 0x2030},+    {0xA1EC, 0x00A7},+    {0xA1ED, 0x2116},+    {0xA1EE, 0x2606},+    {0xA1EF, 0x2605},+    {0xA1F0, 0x25CB},+    {0xA1F1, 0x25CF},+    {0xA1F2, 0x25CE},+    {0xA1F3, 0x25C7},+    {0xA1F4, 0x25C6},+    {0xA1F5, 0x25A1},+    {0xA1F6, 0x25A0},+    {0xA1F7, 0x25B3},+    {0xA1F8, 0x25B2},+    {0xA1F9, 0x203B},+    {0xA1FA, 0x2192},+    {0xA1FB, 0x2190},+    {0xA1FC, 0x2191},+    {0xA1FD, 0x2193},+    {0xA1FE, 0x3013},+    {0xA2B1, 0x2488},+    {0xA2B2, 0x2489},+    {0xA2B3, 0x248A},+    {0xA2B4, 0x248B},+    {0xA2B5, 0x248C},+    {0xA2B6, 0x248D},+    {0xA2B7, 0x248E},+    {0xA2B8, 0x248F},+    {0xA2B9, 0x2490},+    {0xA2BA, 0x2491},+    {0xA2BB, 0x2492},+    {0xA2BC, 0x2493},+    {0xA2BD, 0x2494},+    {0xA2BE, 0x2495},+    {0xA2BF, 0x2496},+    {0xA2C0, 0x2497},+    {0xA2C1, 0x2498},+    {0xA2C2, 0x2499},+    {0xA2C3, 0x249A},+    {0xA2C4, 0x249B},+    {0xA2C5, 0x2474},+    {0xA2C6, 0x2475},+    {0xA2C7, 0x2476},+    {0xA2C8, 0x2477},+    {0xA2C9, 0x2478},+    {0xA2CA, 0x2479},+    {0xA2CB, 0x247A},+    {0xA2CC, 0x247B},+    {0xA2CD, 0x247C},+    {0xA2CE, 0x247D},+    {0xA2CF, 0x247E},+    {0xA2D0, 0x247F},+    {0xA2D1, 0x2480},+    {0xA2D2, 0x2481},+    {0xA2D3, 0x2482},+    {0xA2D4, 0x2483},+    {0xA2D5, 0x2484},+    {0xA2D6, 0x2485},+    {0xA2D7, 0x2486},+    {0xA2D8, 0x2487},+    {0xA2D9, 0x2460},+    {0xA2DA, 0x2461},+    {0xA2DB, 0x2462},+    {0xA2DC, 0x2463},+    {0xA2DD, 0x2464},+    {0xA2DE, 0x2465},+    {0xA2DF, 0x2466},+    {0xA2E0, 0x2467},+    {0xA2E1, 0x2468},+    {0xA2E2, 0x2469},+    {0xA2E5, 0x3220},+    {0xA2E6, 0x3221},+    {0xA2E7, 0x3222},+    {0xA2E8, 0x3223},+    {0xA2E9, 0x3224},+    {0xA2EA, 0x3225},+    {0xA2EB, 0x3226},+    {0xA2EC, 0x3227},+    {0xA2ED, 0x3228},+    {0xA2EE, 0x3229},+    {0xA2F1, 0x2160},+    {0xA2F2, 0x2161},+    {0xA2F3, 0x2162},+    {0xA2F4, 0x2163},+    {0xA2F5, 0x2164},+    {0xA2F6, 0x2165},+    {0xA2F7, 0x2166},+    {0xA2F8, 0x2167},+    {0xA2F9, 0x2168},+    {0xA2FA, 0x2169},+    {0xA2FB, 0x216A},+    {0xA2FC, 0x216B},+    {0xA3A1, 0xFF01},+    {0xA3A2, 0xFF02},+    {0xA3A3, 0xFF03},+    {0xA3A4, 0xFFE5},+    {0xA3A5, 0xFF05},+    {0xA3A6, 0xFF06},+    {0xA3A7, 0xFF07},+    {0xA3A8, 0xFF08},+    {0xA3A9, 0xFF09},+    {0xA3AA, 0xFF0A},+    {0xA3AB, 0xFF0B},+    {0xA3AC, 0xFF0C},+    {0xA3AD, 0xFF0D},+    {0xA3AE, 0xFF0E},+    {0xA3AF, 0xFF0F},+    {0xA3B0, 0xFF10},+    {0xA3B1, 0xFF11},+    {0xA3B2, 0xFF12},+    {0xA3B3, 0xFF13},+    {0xA3B4, 0xFF14},+    {0xA3B5, 0xFF15},+    {0xA3B6, 0xFF16},+    {0xA3B7, 0xFF17},+    {0xA3B8, 0xFF18},+    {0xA3B9, 0xFF19},+    {0xA3BA, 0xFF1A},+    {0xA3BB, 0xFF1B},+    {0xA3BC, 0xFF1C},+    {0xA3BD, 0xFF1D},+    {0xA3BE, 0xFF1E},+    {0xA3BF, 0xFF1F},+    {0xA3C0, 0xFF20},+    {0xA3C1, 0xFF21},+    {0xA3C2, 0xFF22},+    {0xA3C3, 0xFF23},+    {0xA3C4, 0xFF24},+    {0xA3C5, 0xFF25},+    {0xA3C6, 0xFF26},+    {0xA3C7, 0xFF27},+    {0xA3C8, 0xFF28},+    {0xA3C9, 0xFF29},+    {0xA3CA, 0xFF2A},+    {0xA3CB, 0xFF2B},+    {0xA3CC, 0xFF2C},+    {0xA3CD, 0xFF2D},+    {0xA3CE, 0xFF2E},+    {0xA3CF, 0xFF2F},+    {0xA3D0, 0xFF30},+    {0xA3D1, 0xFF31},+    {0xA3D2, 0xFF32},+    {0xA3D3, 0xFF33},+    {0xA3D4, 0xFF34},+    {0xA3D5, 0xFF35},+    {0xA3D6, 0xFF36},+    {0xA3D7, 0xFF37},+    {0xA3D8, 0xFF38},+    {0xA3D9, 0xFF39},+    {0xA3DA, 0xFF3A},+    {0xA3DB, 0xFF3B},+    {0xA3DC, 0xFF3C},+    {0xA3DD, 0xFF3D},+    {0xA3DE, 0xFF3E},+    {0xA3DF, 0xFF3F},+    {0xA3E0, 0xFF40},+    {0xA3E1, 0xFF41},+    {0xA3E2, 0xFF42},+    {0xA3E3, 0xFF43},+    {0xA3E4, 0xFF44},+    {0xA3E5, 0xFF45},+    {0xA3E6, 0xFF46},+    {0xA3E7, 0xFF47},+    {0xA3E8, 0xFF48},+    {0xA3E9, 0xFF49},+    {0xA3EA, 0xFF4A},+    {0xA3EB, 0xFF4B},+    {0xA3EC, 0xFF4C},+    {0xA3ED, 0xFF4D},+    {0xA3EE, 0xFF4E},+    {0xA3EF, 0xFF4F},+    {0xA3F0, 0xFF50},+    {0xA3F1, 0xFF51},+    {0xA3F2, 0xFF52},+    {0xA3F3, 0xFF53},+    {0xA3F4, 0xFF54},+    {0xA3F5, 0xFF55},+    {0xA3F6, 0xFF56},+    {0xA3F7, 0xFF57},+    {0xA3F8, 0xFF58},+    {0xA3F9, 0xFF59},+    {0xA3FA, 0xFF5A},+    {0xA3FB, 0xFF5B},+    {0xA3FC, 0xFF5C},+    {0xA3FD, 0xFF5D},+    {0xA3FE, 0xFFE3},+    {0xA4A1, 0x3041},+    {0xA4A2, 0x3042},+    {0xA4A3, 0x3043},+    {0xA4A4, 0x3044},+    {0xA4A5, 0x3045},+    {0xA4A6, 0x3046},+    {0xA4A7, 0x3047},+    {0xA4A8, 0x3048},+    {0xA4A9, 0x3049},+    {0xA4AA, 0x304A},+    {0xA4AB, 0x304B},+    {0xA4AC, 0x304C},+    {0xA4AD, 0x304D},+    {0xA4AE, 0x304E},+    {0xA4AF, 0x304F},+    {0xA4B0, 0x3050},+    {0xA4B1, 0x3051},+    {0xA4B2, 0x3052},+    {0xA4B3, 0x3053},+    {0xA4B4, 0x3054},+    {0xA4B5, 0x3055},+    {0xA4B6, 0x3056},+    {0xA4B7, 0x3057},+    {0xA4B8, 0x3058},+    {0xA4B9, 0x3059},+    {0xA4BA, 0x305A},+    {0xA4BB, 0x305B},+    {0xA4BC, 0x305C},+    {0xA4BD, 0x305D},+    {0xA4BE, 0x305E},+    {0xA4BF, 0x305F},+    {0xA4C0, 0x3060},+    {0xA4C1, 0x3061},+    {0xA4C2, 0x3062},+    {0xA4C3, 0x3063},+    {0xA4C4, 0x3064},+    {0xA4C5, 0x3065},+    {0xA4C6, 0x3066},+    {0xA4C7, 0x3067},+    {0xA4C8, 0x3068},+    {0xA4C9, 0x3069},+    {0xA4CA, 0x306A},+    {0xA4CB, 0x306B},+    {0xA4CC, 0x306C},+    {0xA4CD, 0x306D},+    {0xA4CE, 0x306E},+    {0xA4CF, 0x306F},+    {0xA4D0, 0x3070},+    {0xA4D1, 0x3071},+    {0xA4D2, 0x3072},+    {0xA4D3, 0x3073},+    {0xA4D4, 0x3074},+    {0xA4D5, 0x3075},+    {0xA4D6, 0x3076},+    {0xA4D7, 0x3077},+    {0xA4D8, 0x3078},+    {0xA4D9, 0x3079},+    {0xA4DA, 0x307A},+    {0xA4DB, 0x307B},+    {0xA4DC, 0x307C},+    {0xA4DD, 0x307D},+    {0xA4DE, 0x307E},+    {0xA4DF, 0x307F},+    {0xA4E0, 0x3080},+    {0xA4E1, 0x3081},+    {0xA4E2, 0x3082},+    {0xA4E3, 0x3083},+    {0xA4E4, 0x3084},+    {0xA4E5, 0x3085},+    {0xA4E6, 0x3086},+    {0xA4E7, 0x3087},+    {0xA4E8, 0x3088},+    {0xA4E9, 0x3089},+    {0xA4EA, 0x308A},+    {0xA4EB, 0x308B},+    {0xA4EC, 0x308C},+    {0xA4ED, 0x308D},+    {0xA4EE, 0x308E},+    {0xA4EF, 0x308F},+    {0xA4F0, 0x3090},+    {0xA4F1, 0x3091},+    {0xA4F2, 0x3092},+    {0xA4F3, 0x3093},+    {0xA5A1, 0x30A1},+    {0xA5A2, 0x30A2},+    {0xA5A3, 0x30A3},+    {0xA5A4, 0x30A4},+    {0xA5A5, 0x30A5},+    {0xA5A6, 0x30A6},+    {0xA5A7, 0x30A7},+    {0xA5A8, 0x30A8},+    {0xA5A9, 0x30A9},+    {0xA5AA, 0x30AA},+    {0xA5AB, 0x30AB},+    {0xA5AC, 0x30AC},+    {0xA5AD, 0x30AD},+    {0xA5AE, 0x30AE},+    {0xA5AF, 0x30AF},+    {0xA5B0, 0x30B0},+    {0xA5B1, 0x30B1},+    {0xA5B2, 0x30B2},+    {0xA5B3, 0x30B3},+    {0xA5B4, 0x30B4},+    {0xA5B5, 0x30B5},+    {0xA5B6, 0x30B6},+    {0xA5B7, 0x30B7},+    {0xA5B8, 0x30B8},+    {0xA5B9, 0x30B9},+    {0xA5BA, 0x30BA},+    {0xA5BB, 0x30BB},+    {0xA5BC, 0x30BC},+    {0xA5BD, 0x30BD},+    {0xA5BE, 0x30BE},+    {0xA5BF, 0x30BF},+    {0xA5C0, 0x30C0},+    {0xA5C1, 0x30C1},+    {0xA5C2, 0x30C2},+    {0xA5C3, 0x30C3},+    {0xA5C4, 0x30C4},+    {0xA5C5, 0x30C5},+    {0xA5C6, 0x30C6},+    {0xA5C7, 0x30C7},+    {0xA5C8, 0x30C8},+    {0xA5C9, 0x30C9},+    {0xA5CA, 0x30CA},+    {0xA5CB, 0x30CB},+    {0xA5CC, 0x30CC},+    {0xA5CD, 0x30CD},+    {0xA5CE, 0x30CE},+    {0xA5CF, 0x30CF},+    {0xA5D0, 0x30D0},+    {0xA5D1, 0x30D1},+    {0xA5D2, 0x30D2},+    {0xA5D3, 0x30D3},+    {0xA5D4, 0x30D4},+    {0xA5D5, 0x30D5},+    {0xA5D6, 0x30D6},+    {0xA5D7, 0x30D7},+    {0xA5D8, 0x30D8},+    {0xA5D9, 0x30D9},+    {0xA5DA, 0x30DA},+    {0xA5DB, 0x30DB},+    {0xA5DC, 0x30DC},+    {0xA5DD, 0x30DD},+    {0xA5DE, 0x30DE},+    {0xA5DF, 0x30DF},+    {0xA5E0, 0x30E0},+    {0xA5E1, 0x30E1},+    {0xA5E2, 0x30E2},+    {0xA5E3, 0x30E3},+    {0xA5E4, 0x30E4},+    {0xA5E5, 0x30E5},+    {0xA5E6, 0x30E6},+    {0xA5E7, 0x30E7},+    {0xA5E8, 0x30E8},+    {0xA5E9, 0x30E9},+    {0xA5EA, 0x30EA},+    {0xA5EB, 0x30EB},+    {0xA5EC, 0x30EC},+    {0xA5ED, 0x30ED},+    {0xA5EE, 0x30EE},+    {0xA5EF, 0x30EF},+    {0xA5F0, 0x30F0},+    {0xA5F1, 0x30F1},+    {0xA5F2, 0x30F2},+    {0xA5F3, 0x30F3},+    {0xA5F4, 0x30F4},+    {0xA5F5, 0x30F5},+    {0xA5F6, 0x30F6},+    {0xA6A1, 0x0391},+    {0xA6A2, 0x0392},+    {0xA6A3, 0x0393},+    {0xA6A4, 0x0394},+    {0xA6A5, 0x0395},+    {0xA6A6, 0x0396},+    {0xA6A7, 0x0397},+    {0xA6A8, 0x0398},+    {0xA6A9, 0x0399},+    {0xA6AA, 0x039A},+    {0xA6AB, 0x039B},+    {0xA6AC, 0x039C},+    {0xA6AD, 0x039D},+    {0xA6AE, 0x039E},+    {0xA6AF, 0x039F},+    {0xA6B0, 0x03A0},+    {0xA6B1, 0x03A1},+    {0xA6B2, 0x03A3},+    {0xA6B3, 0x03A4},+    {0xA6B4, 0x03A5},+    {0xA6B5, 0x03A6},+    {0xA6B6, 0x03A7},+    {0xA6B7, 0x03A8},+    {0xA6B8, 0x03A9},+    {0xA6C1, 0x03B1},+    {0xA6C2, 0x03B2},+    {0xA6C3, 0x03B3},+    {0xA6C4, 0x03B4},+    {0xA6C5, 0x03B5},+    {0xA6C6, 0x03B6},+    {0xA6C7, 0x03B7},+    {0xA6C8, 0x03B8},+    {0xA6C9, 0x03B9},+    {0xA6CA, 0x03BA},+    {0xA6CB, 0x03BB},+    {0xA6CC, 0x03BC},+    {0xA6CD, 0x03BD},+    {0xA6CE, 0x03BE},+    {0xA6CF, 0x03BF},+    {0xA6D0, 0x03C0},+    {0xA6D1, 0x03C1},+    {0xA6D2, 0x03C3},+    {0xA6D3, 0x03C4},+    {0xA6D4, 0x03C5},+    {0xA6D5, 0x03C6},+    {0xA6D6, 0x03C7},+    {0xA6D7, 0x03C8},+    {0xA6D8, 0x03C9},+    {0xA6D9, 0xE78D},+    {0xA6DA, 0xE78E},+    {0xA6DB, 0xE78F},+    {0xA6DC, 0xE790},+    {0xA6DD, 0xE791},+    {0xA6DE, 0xE792},+    {0xA6DF, 0xE793},+    {0xA6E0, 0xFE35},+    {0xA6E1, 0xFE36},+    {0xA6E2, 0xFE39},+    {0xA6E3, 0xFE3A},+    {0xA6E4, 0xFE3F},+    {0xA6E5, 0xFE40},+    {0xA6E6, 0xFE3D},+    {0xA6E7, 0xFE3E},+    {0xA6E8, 0xFE41},+    {0xA6E9, 0xFE42},+    {0xA6EA, 0xFE43},+    {0xA6EB, 0xFE44},+    {0xA6EC, 0xE794},+    {0xA6ED, 0xE795},+    {0xA6EE, 0xFE3B},+    {0xA6EF, 0xFE3C},+    {0xA6F0, 0xFE37},+    {0xA6F1, 0xFE38},+    {0xA6F2, 0xFE31},+    {0xA6F3, 0xE796},+    {0xA6F4, 0xFE33},+    {0xA6F5, 0xFE34},+    {0xA7A1, 0x0410},+    {0xA7A2, 0x0411},+    {0xA7A3, 0x0412},+    {0xA7A4, 0x0413},+    {0xA7A5, 0x0414},+    {0xA7A6, 0x0415},+    {0xA7A7, 0x0401},+    {0xA7A8, 0x0416},+    {0xA7A9, 0x0417},+    {0xA7AA, 0x0418},+    {0xA7AB, 0x0419},+    {0xA7AC, 0x041A},+    {0xA7AD, 0x041B},+    {0xA7AE, 0x041C},+    {0xA7AF, 0x041D},+    {0xA7B0, 0x041E},+    {0xA7B1, 0x041F},+    {0xA7B2, 0x0420},+    {0xA7B3, 0x0421},+    {0xA7B4, 0x0422},+    {0xA7B5, 0x0423},+    {0xA7B6, 0x0424},+    {0xA7B7, 0x0425},+    {0xA7B8, 0x0426},+    {0xA7B9, 0x0427},+    {0xA7BA, 0x0428},+    {0xA7BB, 0x0429},+    {0xA7BC, 0x042A},+    {0xA7BD, 0x042B},+    {0xA7BE, 0x042C},+    {0xA7BF, 0x042D},+    {0xA7C0, 0x042E},+    {0xA7C1, 0x042F},+    {0xA7D1, 0x0430},+    {0xA7D2, 0x0431},+    {0xA7D3, 0x0432},+    {0xA7D4, 0x0433},+    {0xA7D5, 0x0434},+    {0xA7D6, 0x0435},+    {0xA7D7, 0x0451},+    {0xA7D8, 0x0436},+    {0xA7D9, 0x0437},+    {0xA7DA, 0x0438},+    {0xA7DB, 0x0439},+    {0xA7DC, 0x043A},+    {0xA7DD, 0x043B},+    {0xA7DE, 0x043C},+    {0xA7DF, 0x043D},+    {0xA7E0, 0x043E},+    {0xA7E1, 0x043F},+    {0xA7E2, 0x0440},+    {0xA7E3, 0x0441},+    {0xA7E4, 0x0442},+    {0xA7E5, 0x0443},+    {0xA7E6, 0x0444},+    {0xA7E7, 0x0445},+    {0xA7E8, 0x0446},+    {0xA7E9, 0x0447},+    {0xA7EA, 0x0448},+    {0xA7EB, 0x0449},+    {0xA7EC, 0x044A},+    {0xA7ED, 0x044B},+    {0xA7EE, 0x044C},+    {0xA7EF, 0x044D},+    {0xA7F0, 0x044E},+    {0xA7F1, 0x044F},+    {0xA8A1, 0x0101},+    {0xA8A2, 0x00E1},+    {0xA8A3, 0x01CE},+    {0xA8A4, 0x00E0},+    {0xA8A5, 0x0113},+    {0xA8A6, 0x00E9},+    {0xA8A7, 0x011B},+    {0xA8A8, 0x00E8},+    {0xA8A9, 0x012B},+    {0xA8AA, 0x00ED},+    {0xA8AB, 0x01D0},+    {0xA8AC, 0x00EC},+    {0xA8AD, 0x014D},+    {0xA8AE, 0x00F3},+    {0xA8AF, 0x01D2},+    {0xA8B0, 0x00F2},+    {0xA8B1, 0x016B},+    {0xA8B2, 0x00FA},+    {0xA8B3, 0x01D4},+    {0xA8B4, 0x00F9},+    {0xA8B5, 0x01D6},+    {0xA8B6, 0x01D8},+    {0xA8B7, 0x01DA},+    {0xA8B8, 0x01DC},+    {0xA8B9, 0x00FC},+    {0xA8BA, 0x00EA},+    {0xA8BB, 0x0251},+    {0xA8BC, 0x1E3F},+    {0xA8BD, 0x0144},+    {0xA8BE, 0x0148},+    {0xA8BF, 0xE7C8},+    {0xA8C0, 0x0261},+    {0xA8C5, 0x3105},+    {0xA8C6, 0x3106},+    {0xA8C7, 0x3107},+    {0xA8C8, 0x3108},+    {0xA8C9, 0x3109},+    {0xA8CA, 0x310A},+    {0xA8CB, 0x310B},+    {0xA8CC, 0x310C},+    {0xA8CD, 0x310D},+    {0xA8CE, 0x310E},+    {0xA8CF, 0x310F},+    {0xA8D0, 0x3110},+    {0xA8D1, 0x3111},+    {0xA8D2, 0x3112},+    {0xA8D3, 0x3113},+    {0xA8D4, 0x3114},+    {0xA8D5, 0x3115},+    {0xA8D6, 0x3116},+    {0xA8D7, 0x3117},+    {0xA8D8, 0x3118},+    {0xA8D9, 0x3119},+    {0xA8DA, 0x311A},+    {0xA8DB, 0x311B},+    {0xA8DC, 0x311C},+    {0xA8DD, 0x311D},+    {0xA8DE, 0x311E},+    {0xA8DF, 0x311F},+    {0xA8E0, 0x3120},+    {0xA8E1, 0x3121},+    {0xA8E2, 0x3122},+    {0xA8E3, 0x3123},+    {0xA8E4, 0x3124},+    {0xA8E5, 0x3125},+    {0xA8E6, 0x3126},+    {0xA8E7, 0x3127},+    {0xA8E8, 0x3128},+    {0xA8E9, 0x3129},+    {0xA8EA, 0xE7CD},+    {0xA9A4, 0x2500},+    {0xA9A5, 0x2501},+    {0xA9A6, 0x2502},+    {0xA9A7, 0x2503},+    {0xA9A8, 0x2504},+    {0xA9A9, 0x2505},+    {0xA9AA, 0x2506},+    {0xA9AB, 0x2507},+    {0xA9AC, 0x2508},+    {0xA9AD, 0x2509},+    {0xA9AE, 0x250A},+    {0xA9AF, 0x250B},+    {0xA9B0, 0x250C},+    {0xA9B1, 0x250D},+    {0xA9B2, 0x250E},+    {0xA9B3, 0x250F},+    {0xA9B4, 0x2510},+    {0xA9B5, 0x2511},+    {0xA9B6, 0x2512},+    {0xA9B7, 0x2513},+    {0xA9B8, 0x2514},+    {0xA9B9, 0x2515},+    {0xA9BA, 0x2516},+    {0xA9BB, 0x2517},+    {0xA9BC, 0x2518},+    {0xA9BD, 0x2519},+    {0xA9BE, 0x251A},+    {0xA9BF, 0x251B},+    {0xA9C0, 0x251C},+    {0xA9C1, 0x251D},+    {0xA9C2, 0x251E},+    {0xA9C3, 0x251F},+    {0xA9C4, 0x2520},+    {0xA9C5, 0x2521},+    {0xA9C6, 0x2522},+    {0xA9C7, 0x2523},+    {0xA9C8, 0x2524},+    {0xA9C9, 0x2525},+    {0xA9CA, 0x2526},+    {0xA9CB, 0x2527},+    {0xA9CC, 0x2528},+    {0xA9CD, 0x2529},+    {0xA9CE, 0x252A},+    {0xA9CF, 0x252B},+    {0xA9D0, 0x252C},+    {0xA9D1, 0x252D},+    {0xA9D2, 0x252E},+    {0xA9D3, 0x252F},+    {0xA9D4, 0x2530},+    {0xA9D5, 0x2531},+    {0xA9D6, 0x2532},+    {0xA9D7, 0x2533},+    {0xA9D8, 0x2534},+    {0xA9D9, 0x2535},+    {0xA9DA, 0x2536},+    {0xA9DB, 0x2537},+    {0xA9DC, 0x2538},+    {0xA9DD, 0x2539},+    {0xA9DE, 0x253A},+    {0xA9DF, 0x253B},+    {0xA9E0, 0x253C},+    {0xA9E1, 0x253D},+    {0xA9E2, 0x253E},+    {0xA9E3, 0x253F},+    {0xA9E4, 0x2540},+    {0xA9E5, 0x2541},+    {0xA9E6, 0x2542},+    {0xA9E7, 0x2543},+    {0xA9E8, 0x2544},+    {0xA9E9, 0x2545},+    {0xA9EA, 0x2546},+    {0xA9EB, 0x2547},+    {0xA9EC, 0x2548},+    {0xA9ED, 0x2549},+    {0xA9EE, 0x254A},+    {0xA9EF, 0x254B},+    {0xAAA1, 0x0021},+    {0xAAA2, 0x0022},+    {0xAAA3, 0x0023},+    {0xAAA4, 0x0024},+    {0xAAA5, 0x0025},+    {0xAAA6, 0x0026},+    {0xAAA7, 0x0027},+    {0xAAA8, 0x0028},+    {0xAAA9, 0x0029},+    {0xAAAA, 0x002A},+    {0xAAAB, 0x002B},+    {0xAAAC, 0x002C},+    {0xAAAD, 0x002D},+    {0xAAAE, 0x002E},+    {0xAAAF, 0x002F},+    {0xAAB0, 0x0030},+    {0xAAB1, 0x0031},+    {0xAAB2, 0x0032},+    {0xAAB3, 0x0033},+    {0xAAB4, 0x0034},+    {0xAAB5, 0x0035},+    {0xAAB6, 0x0036},+    {0xAAB7, 0x0037},+    {0xAAB8, 0x0038},+    {0xAAB9, 0x0039},+    {0xAABA, 0x003A},+    {0xAABB, 0x003B},+    {0xAABC, 0x003C},+    {0xAABD, 0x003D},+    {0xAABE, 0x003E},+    {0xAABF, 0x003F},+    {0xAAC0, 0x0040},+    {0xAAC1, 0x0041},+    {0xAAC2, 0x0042},+    {0xAAC3, 0x0043},+    {0xAAC4, 0x0044},+    {0xAAC5, 0x0045},+    {0xAAC6, 0x0046},+    {0xAAC7, 0x0047},+    {0xAAC8, 0x0048},+    {0xAAC9, 0x0049},+    {0xAACA, 0x004A},+    {0xAACB, 0x004B},+    {0xAACC, 0x004C},+    {0xAACD, 0x004D},+    {0xAACE, 0x004E},+    {0xAACF, 0x004F},+    {0xAAD0, 0x0050},+    {0xAAD1, 0x0051},+    {0xAAD2, 0x0052},+    {0xAAD3, 0x0053},+    {0xAAD4, 0x0054},+    {0xAAD5, 0x0055},+    {0xAAD6, 0x0056},+    {0xAAD7, 0x0057},+    {0xAAD8, 0x0058},+    {0xAAD9, 0x0059},+    {0xAADA, 0x005A},+    {0xAADB, 0x005B},+    {0xAADC, 0x005C},+    {0xAADD, 0x005D},+    {0xAADE, 0x005E},+    {0xAADF, 0x005F},+    {0xAAE0, 0x0060},+    {0xAAE1, 0x0061},+    {0xAAE2, 0x0062},+    {0xAAE3, 0x0063},+    {0xAAE4, 0x0064},+    {0xAAE5, 0x0065},+    {0xAAE6, 0x0066},+    {0xAAE7, 0x0067},+    {0xAAE8, 0x0068},+    {0xAAE9, 0x0069},+    {0xAAEA, 0x006A},+    {0xAAEB, 0x006B},+    {0xAAEC, 0x006C},+    {0xAAED, 0x006D},+    {0xAAEE, 0x006E},+    {0xAAEF, 0x006F},+    {0xAAF0, 0x0070},+    {0xAAF1, 0x0071},+    {0xAAF2, 0x0072},+    {0xAAF3, 0x0073},+    {0xAAF4, 0x0074},+    {0xAAF5, 0x0075},+    {0xAAF6, 0x0076},+    {0xAAF7, 0x0077},+    {0xAAF8, 0x0078},+    {0xAAF9, 0x0079},+    {0xAAFA, 0x007A},+    {0xAAFB, 0x007B},+    {0xAAFC, 0x007C},+    {0xAAFD, 0x007D},+    {0xAAFE, 0x007E},+    {0xABA1, 0xE05E},+    {0xABA2, 0xE05F},+    {0xABA3, 0xE060},+    {0xABA4, 0xE061},+    {0xABA5, 0xE062},+    {0xABA6, 0xE063},+    {0xABA7, 0xE064},+    {0xABA8, 0xE065},+    {0xABA9, 0xE066},+    {0xABAA, 0xE067},+    {0xABAB, 0xE068},+    {0xABAC, 0xE069},+    {0xABAD, 0xE06A},+    {0xABAE, 0xE06B},+    {0xABAF, 0xE06C},+    {0xABB0, 0xE06D},+    {0xABB1, 0xE06E},+    {0xABB2, 0xE06F},+    {0xABB3, 0xE070},+    {0xABB4, 0xE071},+    {0xABB5, 0xE072},+    {0xABB6, 0xE073},+    {0xABB7, 0xE074},+    {0xABB8, 0xE075},+    {0xABB9, 0xE076},+    {0xABBA, 0xE077},+    {0xABBB, 0xE078},+    {0xABBC, 0xE079},+    {0xABBD, 0xE07A},+    {0xABBE, 0xE07B},+    {0xABBF, 0xE07C},+    {0xABC0, 0xE07D},+    {0xB0A1, 0x554A},+    {0xB0A2, 0x963F},+    {0xB0A3, 0x57C3},+    {0xB0A4, 0x6328},+    {0xB0A5, 0x54CE},+    {0xB0A6, 0x5509},+    {0xB0A7, 0x54C0},+    {0xB0A8, 0x7691},+    {0xB0A9, 0x764C},+    {0xB0AA, 0x853C},+    {0xB0AB, 0x77EE},+    {0xB0AC, 0x827E},+    {0xB0AD, 0x788D},+    {0xB0AE, 0x7231},+    {0xB0AF, 0x9698},+    {0xB0B0, 0x978D},+    {0xB0B1, 0x6C28},+    {0xB0B2, 0x5B89},+    {0xB0B3, 0x4FFA},+    {0xB0B4, 0x6309},+    {0xB0B5, 0x6697},+    {0xB0B6, 0x5CB8},+    {0xB0B7, 0x80FA},+    {0xB0B8, 0x6848},+    {0xB0B9, 0x80AE},+    {0xB0BA, 0x6602},+    {0xB0BB, 0x76CE},+    {0xB0BC, 0x51F9},+    {0xB0BD, 0x6556},+    {0xB0BE, 0x71AC},+    {0xB0BF, 0x7FF1},+    {0xB0C0, 0x8884},+    {0xB0C1, 0x50B2},+    {0xB0C2, 0x5965},+    {0xB0C3, 0x61CA},+    {0xB0C4, 0x6FB3},+    {0xB0C5, 0x82AD},+    {0xB0C6, 0x634C},+    {0xB0C7, 0x6252},+    {0xB0C8, 0x53ED},+    {0xB0C9, 0x5427},+    {0xB0CA, 0x7B06},+    {0xB0CB, 0x516B},+    {0xB0CC, 0x75A4},+    {0xB0CD, 0x5DF4},+    {0xB0CE, 0x62D4},+    {0xB0CF, 0x8DCB},+    {0xB0D0, 0x9776},+    {0xB0D1, 0x628A},+    {0xB0D2, 0x8019},+    {0xB0D3, 0x575D},+    {0xB0D4, 0x9738},+    {0xB0D5, 0x7F62},+    {0xB0D6, 0x7238},+    {0xB0D7, 0x767D},+    {0xB0D8, 0x67CF},+    {0xB0D9, 0x767E},+    {0xB0DA, 0x6446},+    {0xB0DB, 0x4F70},+    {0xB0DC, 0x8D25},+    {0xB0DD, 0x62DC},+    {0xB0DE, 0x7A17},+    {0xB0DF, 0x6591},+    {0xB0E0, 0x73ED},+    {0xB0E1, 0x642C},+    {0xB0E2, 0x6273},+    {0xB0E3, 0x822C},+    {0xB0E4, 0x9881},+    {0xB0E5, 0x677F},+    {0xB0E6, 0x7248},+    {0xB0E7, 0x626E},+    {0xB0E8, 0x62CC},+    {0xB0E9, 0x4F34},+    {0xB0EA, 0x74E3},+    {0xB0EB, 0x534A},+    {0xB0EC, 0x529E},+    {0xB0ED, 0x7ECA},+    {0xB0EE, 0x90A6},+    {0xB0EF, 0x5E2E},+    {0xB0F0, 0x6886},+    {0xB0F1, 0x699C},+    {0xB0F2, 0x8180},+    {0xB0F3, 0x7ED1},+    {0xB0F4, 0x68D2},+    {0xB0F5, 0x78C5},+    {0xB0F6, 0x868C},+    {0xB0F7, 0x9551},+    {0xB0F8, 0x508D},+    {0xB0F9, 0x8C24},+    {0xB0FA, 0x82DE},+    {0xB0FB, 0x80DE},+    {0xB0FC, 0x5305},+    {0xB0FD, 0x8912},+    {0xB0FE, 0x5265},+    {0xB1A1, 0x8584},+    {0xB1A2, 0x96F9},+    {0xB1A3, 0x4FDD},+    {0xB1A4, 0x5821},+    {0xB1A5, 0x9971},+    {0xB1A6, 0x5B9D},+    {0xB1A7, 0x62B1},+    {0xB1A8, 0x62A5},+    {0xB1A9, 0x66B4},+    {0xB1AA, 0x8C79},+    {0xB1AB, 0x9C8D},+    {0xB1AC, 0x7206},+    {0xB1AD, 0x676F},+    {0xB1AE, 0x7891},+    {0xB1AF, 0x60B2},+    {0xB1B0, 0x5351},+    {0xB1B1, 0x5317},+    {0xB1B2, 0x8F88},+    {0xB1B3, 0x80CC},+    {0xB1B4, 0x8D1D},+    {0xB1B5, 0x94A1},+    {0xB1B6, 0x500D},+    {0xB1B7, 0x72C8},+    {0xB1B8, 0x5907},+    {0xB1B9, 0x60EB},+    {0xB1BA, 0x7119},+    {0xB1BB, 0x88AB},+    {0xB1BC, 0x5954},+    {0xB1BD, 0x82EF},+    {0xB1BE, 0x672C},+    {0xB1BF, 0x7B28},+    {0xB1C0, 0x5D29},+    {0xB1C1, 0x7EF7},+    {0xB1C2, 0x752D},+    {0xB1C3, 0x6CF5},+    {0xB1C4, 0x8E66},+    {0xB1C5, 0x8FF8},+    {0xB1C6, 0x903C},+    {0xB1C7, 0x9F3B},+    {0xB1C8, 0x6BD4},+    {0xB1C9, 0x9119},+    {0xB1CA, 0x7B14},+    {0xB1CB, 0x5F7C},+    {0xB1CC, 0x78A7},+    {0xB1CD, 0x84D6},+    {0xB1CE, 0x853D},+    {0xB1CF, 0x6BD5},+    {0xB1D0, 0x6BD9},+    {0xB1D1, 0x6BD6},+    {0xB1D2, 0x5E01},+    {0xB1D3, 0x5E87},+    {0xB1D4, 0x75F9},+    {0xB1D5, 0x95ED},+    {0xB1D6, 0x655D},+    {0xB1D7, 0x5F0A},+    {0xB1D8, 0x5FC5},+    {0xB1D9, 0x8F9F},+    {0xB1DA, 0x58C1},+    {0xB1DB, 0x81C2},+    {0xB1DC, 0x907F},+    {0xB1DD, 0x965B},+    {0xB1DE, 0x97AD},+    {0xB1DF, 0x8FB9},+    {0xB1E0, 0x7F16},+    {0xB1E1, 0x8D2C},+    {0xB1E2, 0x6241},+    {0xB1E3, 0x4FBF},+    {0xB1E4, 0x53D8},+    {0xB1E5, 0x535E},+    {0xB1E6, 0x8FA8},+    {0xB1E7, 0x8FA9},+    {0xB1E8, 0x8FAB},+    {0xB1E9, 0x904D},+    {0xB1EA, 0x6807},+    {0xB1EB, 0x5F6A},+    {0xB1EC, 0x8198},+    {0xB1ED, 0x8868},+    {0xB1EE, 0x9CD6},+    {0xB1EF, 0x618B},+    {0xB1F0, 0x522B},+    {0xB1F1, 0x762A},+    {0xB1F2, 0x5F6C},+    {0xB1F3, 0x658C},+    {0xB1F4, 0x6FD2},+    {0xB1F5, 0x6EE8},+    {0xB1F6, 0x5BBE},+    {0xB1F7, 0x6448},+    {0xB1F8, 0x5175},+    {0xB1F9, 0x51B0},+    {0xB1FA, 0x67C4},+    {0xB1FB, 0x4E19},+    {0xB1FC, 0x79C9},+    {0xB1FD, 0x997C},+    {0xB1FE, 0x70B3},+    {0xB2A1, 0x75C5},+    {0xB2A2, 0x5E76},+    {0xB2A3, 0x73BB},+    {0xB2A4, 0x83E0},+    {0xB2A5, 0x64AD},+    {0xB2A6, 0x62E8},+    {0xB2A7, 0x94B5},+    {0xB2A8, 0x6CE2},+    {0xB2A9, 0x535A},+    {0xB2AA, 0x52C3},+    {0xB2AB, 0x640F},+    {0xB2AC, 0x94C2},+    {0xB2AD, 0x7B94},+    {0xB2AE, 0x4F2F},+    {0xB2AF, 0x5E1B},+    {0xB2B0, 0x8236},+    {0xB2B1, 0x8116},+    {0xB2B2, 0x818A},+    {0xB2B3, 0x6E24},+    {0xB2B4, 0x6CCA},+    {0xB2B5, 0x9A73},+    {0xB2B6, 0x6355},+    {0xB2B7, 0x535C},+    {0xB2B8, 0x54FA},+    {0xB2B9, 0x8865},+    {0xB2BA, 0x57E0},+    {0xB2BB, 0x4E0D},+    {0xB2BC, 0x5E03},+    {0xB2BD, 0x6B65},+    {0xB2BE, 0x7C3F},+    {0xB2BF, 0x90E8},+    {0xB2C0, 0x6016},+    {0xB2C1, 0x64E6},+    {0xB2C2, 0x731C},+    {0xB2C3, 0x88C1},+    {0xB2C4, 0x6750},+    {0xB2C5, 0x624D},+    {0xB2C6, 0x8D22},+    {0xB2C7, 0x776C},+    {0xB2C8, 0x8E29},+    {0xB2C9, 0x91C7},+    {0xB2CA, 0x5F69},+    {0xB2CB, 0x83DC},+    {0xB2CC, 0x8521},+    {0xB2CD, 0x9910},+    {0xB2CE, 0x53C2},+    {0xB2CF, 0x8695},+    {0xB2D0, 0x6B8B},+    {0xB2D1, 0x60ED},+    {0xB2D2, 0x60E8},+    {0xB2D3, 0x707F},+    {0xB2D4, 0x82CD},+    {0xB2D5, 0x8231},+    {0xB2D6, 0x4ED3},+    {0xB2D7, 0x6CA7},+    {0xB2D8, 0x85CF},+    {0xB2D9, 0x64CD},+    {0xB2DA, 0x7CD9},+    {0xB2DB, 0x69FD},+    {0xB2DC, 0x66F9},+    {0xB2DD, 0x8349},+    {0xB2DE, 0x5395},+    {0xB2DF, 0x7B56},+    {0xB2E0, 0x4FA7},+    {0xB2E1, 0x518C},+    {0xB2E2, 0x6D4B},+    {0xB2E3, 0x5C42},+    {0xB2E4, 0x8E6D},+    {0xB2E5, 0x63D2},+    {0xB2E6, 0x53C9},+    {0xB2E7, 0x832C},+    {0xB2E8, 0x8336},+    {0xB2E9, 0x67E5},+    {0xB2EA, 0x78B4},+    {0xB2EB, 0x643D},+    {0xB2EC, 0x5BDF},+    {0xB2ED, 0x5C94},+    {0xB2EE, 0x5DEE},+    {0xB2EF, 0x8BE7},+    {0xB2F0, 0x62C6},+    {0xB2F1, 0x67F4},+    {0xB2F2, 0x8C7A},+    {0xB2F3, 0x6400},+    {0xB2F4, 0x63BA},+    {0xB2F5, 0x8749},+    {0xB2F6, 0x998B},+    {0xB2F7, 0x8C17},+    {0xB2F8, 0x7F20},+    {0xB2F9, 0x94F2},+    {0xB2FA, 0x4EA7},+    {0xB2FB, 0x9610},+    {0xB2FC, 0x98A4},+    {0xB2FD, 0x660C},+    {0xB2FE, 0x7316},+    {0xB3A1, 0x573A},+    {0xB3A2, 0x5C1D},+    {0xB3A3, 0x5E38},+    {0xB3A4, 0x957F},+    {0xB3A5, 0x507F},+    {0xB3A6, 0x80A0},+    {0xB3A7, 0x5382},+    {0xB3A8, 0x655E},+    {0xB3A9, 0x7545},+    {0xB3AA, 0x5531},+    {0xB3AB, 0x5021},+    {0xB3AC, 0x8D85},+    {0xB3AD, 0x6284},+    {0xB3AE, 0x949E},+    {0xB3AF, 0x671D},+    {0xB3B0, 0x5632},+    {0xB3B1, 0x6F6E},+    {0xB3B2, 0x5DE2},+    {0xB3B3, 0x5435},+    {0xB3B4, 0x7092},+    {0xB3B5, 0x8F66},+    {0xB3B6, 0x626F},+    {0xB3B7, 0x64A4},+    {0xB3B8, 0x63A3},+    {0xB3B9, 0x5F7B},+    {0xB3BA, 0x6F88},+    {0xB3BB, 0x90F4},+    {0xB3BC, 0x81E3},+    {0xB3BD, 0x8FB0},+    {0xB3BE, 0x5C18},+    {0xB3BF, 0x6668},+    {0xB3C0, 0x5FF1},+    {0xB3C1, 0x6C89},+    {0xB3C2, 0x9648},+    {0xB3C3, 0x8D81},+    {0xB3C4, 0x886C},+    {0xB3C5, 0x6491},+    {0xB3C6, 0x79F0},+    {0xB3C7, 0x57CE},+    {0xB3C8, 0x6A59},+    {0xB3C9, 0x6210},+    {0xB3CA, 0x5448},+    {0xB3CB, 0x4E58},+    {0xB3CC, 0x7A0B},+    {0xB3CD, 0x60E9},+    {0xB3CE, 0x6F84},+    {0xB3CF, 0x8BDA},+    {0xB3D0, 0x627F},+    {0xB3D1, 0x901E},+    {0xB3D2, 0x9A8B},+    {0xB3D3, 0x79E4},+    {0xB3D4, 0x5403},+    {0xB3D5, 0x75F4},+    {0xB3D6, 0x6301},+    {0xB3D7, 0x5319},+    {0xB3D8, 0x6C60},+    {0xB3D9, 0x8FDF},+    {0xB3DA, 0x5F1B},+    {0xB3DB, 0x9A70},+    {0xB3DC, 0x803B},+    {0xB3DD, 0x9F7F},+    {0xB3DE, 0x4F88},+    {0xB3DF, 0x5C3A},+    {0xB3E0, 0x8D64},+    {0xB3E1, 0x7FC5},+    {0xB3E2, 0x65A5},+    {0xB3E3, 0x70BD},+    {0xB3E4, 0x5145},+    {0xB3E5, 0x51B2},+    {0xB3E6, 0x866B},+    {0xB3E7, 0x5D07},+    {0xB3E8, 0x5BA0},+    {0xB3E9, 0x62BD},+    {0xB3EA, 0x916C},+    {0xB3EB, 0x7574},+    {0xB3EC, 0x8E0C},+    {0xB3ED, 0x7A20},+    {0xB3EE, 0x6101},+    {0xB3EF, 0x7B79},+    {0xB3F0, 0x4EC7},+    {0xB3F1, 0x7EF8},+    {0xB3F2, 0x7785},+    {0xB3F3, 0x4E11},+    {0xB3F4, 0x81ED},+    {0xB3F5, 0x521D},+    {0xB3F6, 0x51FA},+    {0xB3F7, 0x6A71},+    {0xB3F8, 0x53A8},+    {0xB3F9, 0x8E87},+    {0xB3FA, 0x9504},+    {0xB3FB, 0x96CF},+    {0xB3FC, 0x6EC1},+    {0xB3FD, 0x9664},+    {0xB3FE, 0x695A},+    {0xB4A1, 0x7840},+    {0xB4A2, 0x50A8},+    {0xB4A3, 0x77D7},+    {0xB4A4, 0x6410},+    {0xB4A5, 0x89E6},+    {0xB4A6, 0x5904},+    {0xB4A7, 0x63E3},+    {0xB4A8, 0x5DDD},+    {0xB4A9, 0x7A7F},+    {0xB4AA, 0x693D},+    {0xB4AB, 0x4F20},+    {0xB4AC, 0x8239},+    {0xB4AD, 0x5598},+    {0xB4AE, 0x4E32},+    {0xB4AF, 0x75AE},+    {0xB4B0, 0x7A97},+    {0xB4B1, 0x5E62},+    {0xB4B2, 0x5E8A},+    {0xB4B3, 0x95EF},+    {0xB4B4, 0x521B},+    {0xB4B5, 0x5439},+    {0xB4B6, 0x708A},+    {0xB4B7, 0x6376},+    {0xB4B8, 0x9524},+    {0xB4B9, 0x5782},+    {0xB4BA, 0x6625},+    {0xB4BB, 0x693F},+    {0xB4BC, 0x9187},+    {0xB4BD, 0x5507},+    {0xB4BE, 0x6DF3},+    {0xB4BF, 0x7EAF},+    {0xB4C0, 0x8822},+    {0xB4C1, 0x6233},+    {0xB4C2, 0x7EF0},+    {0xB4C3, 0x75B5},+    {0xB4C4, 0x8328},+    {0xB4C5, 0x78C1},+    {0xB4C6, 0x96CC},+    {0xB4C7, 0x8F9E},+    {0xB4C8, 0x6148},+    {0xB4C9, 0x74F7},+    {0xB4CA, 0x8BCD},+    {0xB4CB, 0x6B64},+    {0xB4CC, 0x523A},+    {0xB4CD, 0x8D50},+    {0xB4CE, 0x6B21},+    {0xB4CF, 0x806A},+    {0xB4D0, 0x8471},+    {0xB4D1, 0x56F1},+    {0xB4D2, 0x5306},+    {0xB4D3, 0x4ECE},+    {0xB4D4, 0x4E1B},+    {0xB4D5, 0x51D1},+    {0xB4D6, 0x7C97},+    {0xB4D7, 0x918B},+    {0xB4D8, 0x7C07},+    {0xB4D9, 0x4FC3},+    {0xB4DA, 0x8E7F},+    {0xB4DB, 0x7BE1},+    {0xB4DC, 0x7A9C},+    {0xB4DD, 0x6467},+    {0xB4DE, 0x5D14},+    {0xB4DF, 0x50AC},+    {0xB4E0, 0x8106},+    {0xB4E1, 0x7601},+    {0xB4E2, 0x7CB9},+    {0xB4E3, 0x6DEC},+    {0xB4E4, 0x7FE0},+    {0xB4E5, 0x6751},+    {0xB4E6, 0x5B58},+    {0xB4E7, 0x5BF8},+    {0xB4E8, 0x78CB},+    {0xB4E9, 0x64AE},+    {0xB4EA, 0x6413},+    {0xB4EB, 0x63AA},+    {0xB4EC, 0x632B},+    {0xB4ED, 0x9519},+    {0xB4EE, 0x642D},+    {0xB4EF, 0x8FBE},+    {0xB4F0, 0x7B54},+    {0xB4F1, 0x7629},+    {0xB4F2, 0x6253},+    {0xB4F3, 0x5927},+    {0xB4F4, 0x5446},+    {0xB4F5, 0x6B79},+    {0xB4F6, 0x50A3},+    {0xB4F7, 0x6234},+    {0xB4F8, 0x5E26},+    {0xB4F9, 0x6B86},+    {0xB4FA, 0x4EE3},+    {0xB4FB, 0x8D37},+    {0xB4FC, 0x888B},+    {0xB4FD, 0x5F85},+    {0xB4FE, 0x902E},+    {0xB5A1, 0x6020},+    {0xB5A2, 0x803D},+    {0xB5A3, 0x62C5},+    {0xB5A4, 0x4E39},+    {0xB5A5, 0x5355},+    {0xB5A6, 0x90F8},+    {0xB5A7, 0x63B8},+    {0xB5A8, 0x80C6},+    {0xB5A9, 0x65E6},+    {0xB5AA, 0x6C2E},+    {0xB5AB, 0x4F46},+    {0xB5AC, 0x60EE},+    {0xB5AD, 0x6DE1},+    {0xB5AE, 0x8BDE},+    {0xB5AF, 0x5F39},+    {0xB5B0, 0x86CB},+    {0xB5B1, 0x5F53},+    {0xB5B2, 0x6321},+    {0xB5B3, 0x515A},+    {0xB5B4, 0x8361},+    {0xB5B5, 0x6863},+    {0xB5B6, 0x5200},+    {0xB5B7, 0x6363},+    {0xB5B8, 0x8E48},+    {0xB5B9, 0x5012},+    {0xB5BA, 0x5C9B},+    {0xB5BB, 0x7977},+    {0xB5BC, 0x5BFC},+    {0xB5BD, 0x5230},+    {0xB5BE, 0x7A3B},+    {0xB5BF, 0x60BC},+    {0xB5C0, 0x9053},+    {0xB5C1, 0x76D7},+    {0xB5C2, 0x5FB7},+    {0xB5C3, 0x5F97},+    {0xB5C4, 0x7684},+    {0xB5C5, 0x8E6C},+    {0xB5C6, 0x706F},+    {0xB5C7, 0x767B},+    {0xB5C8, 0x7B49},+    {0xB5C9, 0x77AA},+    {0xB5CA, 0x51F3},+    {0xB5CB, 0x9093},+    {0xB5CC, 0x5824},+    {0xB5CD, 0x4F4E},+    {0xB5CE, 0x6EF4},+    {0xB5CF, 0x8FEA},+    {0xB5D0, 0x654C},+    {0xB5D1, 0x7B1B},+    {0xB5D2, 0x72C4},+    {0xB5D3, 0x6DA4},+    {0xB5D4, 0x7FDF},+    {0xB5D5, 0x5AE1},+    {0xB5D6, 0x62B5},+    {0xB5D7, 0x5E95},+    {0xB5D8, 0x5730},+    {0xB5D9, 0x8482},+    {0xB5DA, 0x7B2C},+    {0xB5DB, 0x5E1D},+    {0xB5DC, 0x5F1F},+    {0xB5DD, 0x9012},+    {0xB5DE, 0x7F14},+    {0xB5DF, 0x98A0},+    {0xB5E0, 0x6382},+    {0xB5E1, 0x6EC7},+    {0xB5E2, 0x7898},+    {0xB5E3, 0x70B9},+    {0xB5E4, 0x5178},+    {0xB5E5, 0x975B},+    {0xB5E6, 0x57AB},+    {0xB5E7, 0x7535},+    {0xB5E8, 0x4F43},+    {0xB5E9, 0x7538},+    {0xB5EA, 0x5E97},+    {0xB5EB, 0x60E6},+    {0xB5EC, 0x5960},+    {0xB5ED, 0x6DC0},+    {0xB5EE, 0x6BBF},+    {0xB5EF, 0x7889},+    {0xB5F0, 0x53FC},+    {0xB5F1, 0x96D5},+    {0xB5F2, 0x51CB},+    {0xB5F3, 0x5201},+    {0xB5F4, 0x6389},+    {0xB5F5, 0x540A},+    {0xB5F6, 0x9493},+    {0xB5F7, 0x8C03},+    {0xB5F8, 0x8DCC},+    {0xB5F9, 0x7239},+    {0xB5FA, 0x789F},+    {0xB5FB, 0x8776},+    {0xB5FC, 0x8FED},+    {0xB5FD, 0x8C0D},+    {0xB5FE, 0x53E0},+    {0xB6A1, 0x4E01},+    {0xB6A2, 0x76EF},+    {0xB6A3, 0x53EE},+    {0xB6A4, 0x9489},+    {0xB6A5, 0x9876},+    {0xB6A6, 0x9F0E},+    {0xB6A7, 0x952D},+    {0xB6A8, 0x5B9A},+    {0xB6A9, 0x8BA2},+    {0xB6AA, 0x4E22},+    {0xB6AB, 0x4E1C},+    {0xB6AC, 0x51AC},+    {0xB6AD, 0x8463},+    {0xB6AE, 0x61C2},+    {0xB6AF, 0x52A8},+    {0xB6B0, 0x680B},+    {0xB6B1, 0x4F97},+    {0xB6B2, 0x606B},+    {0xB6B3, 0x51BB},+    {0xB6B4, 0x6D1E},+    {0xB6B5, 0x515C},+    {0xB6B6, 0x6296},+    {0xB6B7, 0x6597},+    {0xB6B8, 0x9661},+    {0xB6B9, 0x8C46},+    {0xB6BA, 0x9017},+    {0xB6BB, 0x75D8},+    {0xB6BC, 0x90FD},+    {0xB6BD, 0x7763},+    {0xB6BE, 0x6BD2},+    {0xB6BF, 0x728A},+    {0xB6C0, 0x72EC},+    {0xB6C1, 0x8BFB},+    {0xB6C2, 0x5835},+    {0xB6C3, 0x7779},+    {0xB6C4, 0x8D4C},+    {0xB6C5, 0x675C},+    {0xB6C6, 0x9540},+    {0xB6C7, 0x809A},+    {0xB6C8, 0x5EA6},+    {0xB6C9, 0x6E21},+    {0xB6CA, 0x5992},+    {0xB6CB, 0x7AEF},+    {0xB6CC, 0x77ED},+    {0xB6CD, 0x953B},+    {0xB6CE, 0x6BB5},+    {0xB6CF, 0x65AD},+    {0xB6D0, 0x7F0E},+    {0xB6D1, 0x5806},+    {0xB6D2, 0x5151},+    {0xB6D3, 0x961F},+    {0xB6D4, 0x5BF9},+    {0xB6D5, 0x58A9},+    {0xB6D6, 0x5428},+    {0xB6D7, 0x8E72},+    {0xB6D8, 0x6566},+    {0xB6D9, 0x987F},+    {0xB6DA, 0x56E4},+    {0xB6DB, 0x949D},+    {0xB6DC, 0x76FE},+    {0xB6DD, 0x9041},+    {0xB6DE, 0x6387},+    {0xB6DF, 0x54C6},+    {0xB6E0, 0x591A},+    {0xB6E1, 0x593A},+    {0xB6E2, 0x579B},+    {0xB6E3, 0x8EB2},+    {0xB6E4, 0x6735},+    {0xB6E5, 0x8DFA},+    {0xB6E6, 0x8235},+    {0xB6E7, 0x5241},+    {0xB6E8, 0x60F0},+    {0xB6E9, 0x5815},+    {0xB6EA, 0x86FE},+    {0xB6EB, 0x5CE8},+    {0xB6EC, 0x9E45},+    {0xB6ED, 0x4FC4},+    {0xB6EE, 0x989D},+    {0xB6EF, 0x8BB9},+    {0xB6F0, 0x5A25},+    {0xB6F1, 0x6076},+    {0xB6F2, 0x5384},+    {0xB6F3, 0x627C},+    {0xB6F4, 0x904F},+    {0xB6F5, 0x9102},+    {0xB6F6, 0x997F},+    {0xB6F7, 0x6069},+    {0xB6F8, 0x800C},+    {0xB6F9, 0x513F},+    {0xB6FA, 0x8033},+    {0xB6FB, 0x5C14},+    {0xB6FC, 0x9975},+    {0xB6FD, 0x6D31},+    {0xB6FE, 0x4E8C},+    {0xB7A1, 0x8D30},+    {0xB7A2, 0x53D1},+    {0xB7A3, 0x7F5A},+    {0xB7A4, 0x7B4F},+    {0xB7A5, 0x4F10},+    {0xB7A6, 0x4E4F},+    {0xB7A7, 0x9600},+    {0xB7A8, 0x6CD5},+    {0xB7A9, 0x73D0},+    {0xB7AA, 0x85E9},+    {0xB7AB, 0x5E06},+    {0xB7AC, 0x756A},+    {0xB7AD, 0x7FFB},+    {0xB7AE, 0x6A0A},+    {0xB7AF, 0x77FE},+    {0xB7B0, 0x9492},+    {0xB7B1, 0x7E41},+    {0xB7B2, 0x51E1},+    {0xB7B3, 0x70E6},+    {0xB7B4, 0x53CD},+    {0xB7B5, 0x8FD4},+    {0xB7B6, 0x8303},+    {0xB7B7, 0x8D29},+    {0xB7B8, 0x72AF},+    {0xB7B9, 0x996D},+    {0xB7BA, 0x6CDB},+    {0xB7BB, 0x574A},+    {0xB7BC, 0x82B3},+    {0xB7BD, 0x65B9},+    {0xB7BE, 0x80AA},+    {0xB7BF, 0x623F},+    {0xB7C0, 0x9632},+    {0xB7C1, 0x59A8},+    {0xB7C2, 0x4EFF},+    {0xB7C3, 0x8BBF},+    {0xB7C4, 0x7EBA},+    {0xB7C5, 0x653E},+    {0xB7C6, 0x83F2},+    {0xB7C7, 0x975E},+    {0xB7C8, 0x5561},+    {0xB7C9, 0x98DE},+    {0xB7CA, 0x80A5},+    {0xB7CB, 0x532A},+    {0xB7CC, 0x8BFD},+    {0xB7CD, 0x5420},+    {0xB7CE, 0x80BA},+    {0xB7CF, 0x5E9F},+    {0xB7D0, 0x6CB8},+    {0xB7D1, 0x8D39},+    {0xB7D2, 0x82AC},+    {0xB7D3, 0x915A},+    {0xB7D4, 0x5429},+    {0xB7D5, 0x6C1B},+    {0xB7D6, 0x5206},+    {0xB7D7, 0x7EB7},+    {0xB7D8, 0x575F},+    {0xB7D9, 0x711A},+    {0xB7DA, 0x6C7E},+    {0xB7DB, 0x7C89},+    {0xB7DC, 0x594B},+    {0xB7DD, 0x4EFD},+    {0xB7DE, 0x5FFF},+    {0xB7DF, 0x6124},+    {0xB7E0, 0x7CAA},+    {0xB7E1, 0x4E30},+    {0xB7E2, 0x5C01},+    {0xB7E3, 0x67AB},+    {0xB7E4, 0x8702},+    {0xB7E5, 0x5CF0},+    {0xB7E6, 0x950B},+    {0xB7E7, 0x98CE},+    {0xB7E8, 0x75AF},+    {0xB7E9, 0x70FD},+    {0xB7EA, 0x9022},+    {0xB7EB, 0x51AF},+    {0xB7EC, 0x7F1D},+    {0xB7ED, 0x8BBD},+    {0xB7EE, 0x5949},+    {0xB7EF, 0x51E4},+    {0xB7F0, 0x4F5B},+    {0xB7F1, 0x5426},+    {0xB7F2, 0x592B},+    {0xB7F3, 0x6577},+    {0xB7F4, 0x80A4},+    {0xB7F5, 0x5B75},+    {0xB7F6, 0x6276},+    {0xB7F7, 0x62C2},+    {0xB7F8, 0x8F90},+    {0xB7F9, 0x5E45},+    {0xB7FA, 0x6C1F},+    {0xB7FB, 0x7B26},+    {0xB7FC, 0x4F0F},+    {0xB7FD, 0x4FD8},+    {0xB7FE, 0x670D},+    {0xB8A1, 0x6D6E},+    {0xB8A2, 0x6DAA},+    {0xB8A3, 0x798F},+    {0xB8A4, 0x88B1},+    {0xB8A5, 0x5F17},+    {0xB8A6, 0x752B},+    {0xB8A7, 0x629A},+    {0xB8A8, 0x8F85},+    {0xB8A9, 0x4FEF},+    {0xB8AA, 0x91DC},+    {0xB8AB, 0x65A7},+    {0xB8AC, 0x812F},+    {0xB8AD, 0x8151},+    {0xB8AE, 0x5E9C},+    {0xB8AF, 0x8150},+    {0xB8B0, 0x8D74},+    {0xB8B1, 0x526F},+    {0xB8B2, 0x8986},+    {0xB8B3, 0x8D4B},+    {0xB8B4, 0x590D},+    {0xB8B5, 0x5085},+    {0xB8B6, 0x4ED8},+    {0xB8B7, 0x961C},+    {0xB8B8, 0x7236},+    {0xB8B9, 0x8179},+    {0xB8BA, 0x8D1F},+    {0xB8BB, 0x5BCC},+    {0xB8BC, 0x8BA3},+    {0xB8BD, 0x9644},+    {0xB8BE, 0x5987},+    {0xB8BF, 0x7F1A},+    {0xB8C0, 0x5490},+    {0xB8C1, 0x5676},+    {0xB8C2, 0x560E},+    {0xB8C3, 0x8BE5},+    {0xB8C4, 0x6539},+    {0xB8C5, 0x6982},+    {0xB8C6, 0x9499},+    {0xB8C7, 0x76D6},+    {0xB8C8, 0x6E89},+    {0xB8C9, 0x5E72},+    {0xB8CA, 0x7518},+    {0xB8CB, 0x6746},+    {0xB8CC, 0x67D1},+    {0xB8CD, 0x7AFF},+    {0xB8CE, 0x809D},+    {0xB8CF, 0x8D76},+    {0xB8D0, 0x611F},+    {0xB8D1, 0x79C6},+    {0xB8D2, 0x6562},+    {0xB8D3, 0x8D63},+    {0xB8D4, 0x5188},+    {0xB8D5, 0x521A},+    {0xB8D6, 0x94A2},+    {0xB8D7, 0x7F38},+    {0xB8D8, 0x809B},+    {0xB8D9, 0x7EB2},+    {0xB8DA, 0x5C97},+    {0xB8DB, 0x6E2F},+    {0xB8DC, 0x6760},+    {0xB8DD, 0x7BD9},+    {0xB8DE, 0x768B},+    {0xB8DF, 0x9AD8},+    {0xB8E0, 0x818F},+    {0xB8E1, 0x7F94},+    {0xB8E2, 0x7CD5},+    {0xB8E3, 0x641E},+    {0xB8E4, 0x9550},+    {0xB8E5, 0x7A3F},+    {0xB8E6, 0x544A},+    {0xB8E7, 0x54E5},+    {0xB8E8, 0x6B4C},+    {0xB8E9, 0x6401},+    {0xB8EA, 0x6208},+    {0xB8EB, 0x9E3D},+    {0xB8EC, 0x80F3},+    {0xB8ED, 0x7599},+    {0xB8EE, 0x5272},+    {0xB8EF, 0x9769},+    {0xB8F0, 0x845B},+    {0xB8F1, 0x683C},+    {0xB8F2, 0x86E4},+    {0xB8F3, 0x9601},+    {0xB8F4, 0x9694},+    {0xB8F5, 0x94EC},+    {0xB8F6, 0x4E2A},+    {0xB8F7, 0x5404},+    {0xB8F8, 0x7ED9},+    {0xB8F9, 0x6839},+    {0xB8FA, 0x8DDF},+    {0xB8FB, 0x8015},+    {0xB8FC, 0x66F4},+    {0xB8FD, 0x5E9A},+    {0xB8FE, 0x7FB9},+    {0xB9A1, 0x57C2},+    {0xB9A2, 0x803F},+    {0xB9A3, 0x6897},+    {0xB9A4, 0x5DE5},+    {0xB9A5, 0x653B},+    {0xB9A6, 0x529F},+    {0xB9A7, 0x606D},+    {0xB9A8, 0x9F9A},+    {0xB9A9, 0x4F9B},+    {0xB9AA, 0x8EAC},+    {0xB9AB, 0x516C},+    {0xB9AC, 0x5BAB},+    {0xB9AD, 0x5F13},+    {0xB9AE, 0x5DE9},+    {0xB9AF, 0x6C5E},+    {0xB9B0, 0x62F1},+    {0xB9B1, 0x8D21},+    {0xB9B2, 0x5171},+    {0xB9B3, 0x94A9},+    {0xB9B4, 0x52FE},+    {0xB9B5, 0x6C9F},+    {0xB9B6, 0x82DF},+    {0xB9B7, 0x72D7},+    {0xB9B8, 0x57A2},+    {0xB9B9, 0x6784},+    {0xB9BA, 0x8D2D},+    {0xB9BB, 0x591F},+    {0xB9BC, 0x8F9C},+    {0xB9BD, 0x83C7},+    {0xB9BE, 0x5495},+    {0xB9BF, 0x7B8D},+    {0xB9C0, 0x4F30},+    {0xB9C1, 0x6CBD},+    {0xB9C2, 0x5B64},+    {0xB9C3, 0x59D1},+    {0xB9C4, 0x9F13},+    {0xB9C5, 0x53E4},+    {0xB9C6, 0x86CA},+    {0xB9C7, 0x9AA8},+    {0xB9C8, 0x8C37},+    {0xB9C9, 0x80A1},+    {0xB9CA, 0x6545},+    {0xB9CB, 0x987E},+    {0xB9CC, 0x56FA},+    {0xB9CD, 0x96C7},+    {0xB9CE, 0x522E},+    {0xB9CF, 0x74DC},+    {0xB9D0, 0x5250},+    {0xB9D1, 0x5BE1},+    {0xB9D2, 0x6302},+    {0xB9D3, 0x8902},+    {0xB9D4, 0x4E56},+    {0xB9D5, 0x62D0},+    {0xB9D6, 0x602A},+    {0xB9D7, 0x68FA},+    {0xB9D8, 0x5173},+    {0xB9D9, 0x5B98},+    {0xB9DA, 0x51A0},+    {0xB9DB, 0x89C2},+    {0xB9DC, 0x7BA1},+    {0xB9DD, 0x9986},+    {0xB9DE, 0x7F50},+    {0xB9DF, 0x60EF},+    {0xB9E0, 0x704C},+    {0xB9E1, 0x8D2F},+    {0xB9E2, 0x5149},+    {0xB9E3, 0x5E7F},+    {0xB9E4, 0x901B},+    {0xB9E5, 0x7470},+    {0xB9E6, 0x89C4},+    {0xB9E7, 0x572D},+    {0xB9E8, 0x7845},+    {0xB9E9, 0x5F52},+    {0xB9EA, 0x9F9F},+    {0xB9EB, 0x95FA},+    {0xB9EC, 0x8F68},+    {0xB9ED, 0x9B3C},+    {0xB9EE, 0x8BE1},+    {0xB9EF, 0x7678},+    {0xB9F0, 0x6842},+    {0xB9F1, 0x67DC},+    {0xB9F2, 0x8DEA},+    {0xB9F3, 0x8D35},+    {0xB9F4, 0x523D},+    {0xB9F5, 0x8F8A},+    {0xB9F6, 0x6EDA},+    {0xB9F7, 0x68CD},+    {0xB9F8, 0x9505},+    {0xB9F9, 0x90ED},+    {0xB9FA, 0x56FD},+    {0xB9FB, 0x679C},+    {0xB9FC, 0x88F9},+    {0xB9FD, 0x8FC7},+    {0xB9FE, 0x54C8},+    {0xBAA1, 0x9AB8},+    {0xBAA2, 0x5B69},+    {0xBAA3, 0x6D77},+    {0xBAA4, 0x6C26},+    {0xBAA5, 0x4EA5},+    {0xBAA6, 0x5BB3},+    {0xBAA7, 0x9A87},+    {0xBAA8, 0x9163},+    {0xBAA9, 0x61A8},+    {0xBAAA, 0x90AF},+    {0xBAAB, 0x97E9},+    {0xBAAC, 0x542B},+    {0xBAAD, 0x6DB5},+    {0xBAAE, 0x5BD2},+    {0xBAAF, 0x51FD},+    {0xBAB0, 0x558A},+    {0xBAB1, 0x7F55},+    {0xBAB2, 0x7FF0},+    {0xBAB3, 0x64BC},+    {0xBAB4, 0x634D},+    {0xBAB5, 0x65F1},+    {0xBAB6, 0x61BE},+    {0xBAB7, 0x608D},+    {0xBAB8, 0x710A},+    {0xBAB9, 0x6C57},+    {0xBABA, 0x6C49},+    {0xBABB, 0x592F},+    {0xBABC, 0x676D},+    {0xBABD, 0x822A},+    {0xBABE, 0x58D5},+    {0xBABF, 0x568E},+    {0xBAC0, 0x8C6A},+    {0xBAC1, 0x6BEB},+    {0xBAC2, 0x90DD},+    {0xBAC3, 0x597D},+    {0xBAC4, 0x8017},+    {0xBAC5, 0x53F7},+    {0xBAC6, 0x6D69},+    {0xBAC7, 0x5475},+    {0xBAC8, 0x559D},+    {0xBAC9, 0x8377},+    {0xBACA, 0x83CF},+    {0xBACB, 0x6838},+    {0xBACC, 0x79BE},+    {0xBACD, 0x548C},+    {0xBACE, 0x4F55},+    {0xBACF, 0x5408},+    {0xBAD0, 0x76D2},+    {0xBAD1, 0x8C89},+    {0xBAD2, 0x9602},+    {0xBAD3, 0x6CB3},+    {0xBAD4, 0x6DB8},+    {0xBAD5, 0x8D6B},+    {0xBAD6, 0x8910},+    {0xBAD7, 0x9E64},+    {0xBAD8, 0x8D3A},+    {0xBAD9, 0x563F},+    {0xBADA, 0x9ED1},+    {0xBADB, 0x75D5},+    {0xBADC, 0x5F88},+    {0xBADD, 0x72E0},+    {0xBADE, 0x6068},+    {0xBADF, 0x54FC},+    {0xBAE0, 0x4EA8},+    {0xBAE1, 0x6A2A},+    {0xBAE2, 0x8861},+    {0xBAE3, 0x6052},+    {0xBAE4, 0x8F70},+    {0xBAE5, 0x54C4},+    {0xBAE6, 0x70D8},+    {0xBAE7, 0x8679},+    {0xBAE8, 0x9E3F},+    {0xBAE9, 0x6D2A},+    {0xBAEA, 0x5B8F},+    {0xBAEB, 0x5F18},+    {0xBAEC, 0x7EA2},+    {0xBAED, 0x5589},+    {0xBAEE, 0x4FAF},+    {0xBAEF, 0x7334},+    {0xBAF0, 0x543C},+    {0xBAF1, 0x539A},+    {0xBAF2, 0x5019},+    {0xBAF3, 0x540E},+    {0xBAF4, 0x547C},+    {0xBAF5, 0x4E4E},+    {0xBAF6, 0x5FFD},+    {0xBAF7, 0x745A},+    {0xBAF8, 0x58F6},+    {0xBAF9, 0x846B},+    {0xBAFA, 0x80E1},+    {0xBAFB, 0x8774},+    {0xBAFC, 0x72D0},+    {0xBAFD, 0x7CCA},+    {0xBAFE, 0x6E56},+    {0xBBA1, 0x5F27},+    {0xBBA2, 0x864E},+    {0xBBA3, 0x552C},+    {0xBBA4, 0x62A4},+    {0xBBA5, 0x4E92},+    {0xBBA6, 0x6CAA},+    {0xBBA7, 0x6237},+    {0xBBA8, 0x82B1},+    {0xBBA9, 0x54D7},+    {0xBBAA, 0x534E},+    {0xBBAB, 0x733E},+    {0xBBAC, 0x6ED1},+    {0xBBAD, 0x753B},+    {0xBBAE, 0x5212},+    {0xBBAF, 0x5316},+    {0xBBB0, 0x8BDD},+    {0xBBB1, 0x69D0},+    {0xBBB2, 0x5F8A},+    {0xBBB3, 0x6000},+    {0xBBB4, 0x6DEE},+    {0xBBB5, 0x574F},+    {0xBBB6, 0x6B22},+    {0xBBB7, 0x73AF},+    {0xBBB8, 0x6853},+    {0xBBB9, 0x8FD8},+    {0xBBBA, 0x7F13},+    {0xBBBB, 0x6362},+    {0xBBBC, 0x60A3},+    {0xBBBD, 0x5524},+    {0xBBBE, 0x75EA},+    {0xBBBF, 0x8C62},+    {0xBBC0, 0x7115},+    {0xBBC1, 0x6DA3},+    {0xBBC2, 0x5BA6},+    {0xBBC3, 0x5E7B},+    {0xBBC4, 0x8352},+    {0xBBC5, 0x614C},+    {0xBBC6, 0x9EC4},+    {0xBBC7, 0x78FA},+    {0xBBC8, 0x8757},+    {0xBBC9, 0x7C27},+    {0xBBCA, 0x7687},+    {0xBBCB, 0x51F0},+    {0xBBCC, 0x60F6},+    {0xBBCD, 0x714C},+    {0xBBCE, 0x6643},+    {0xBBCF, 0x5E4C},+    {0xBBD0, 0x604D},+    {0xBBD1, 0x8C0E},+    {0xBBD2, 0x7070},+    {0xBBD3, 0x6325},+    {0xBBD4, 0x8F89},+    {0xBBD5, 0x5FBD},+    {0xBBD6, 0x6062},+    {0xBBD7, 0x86D4},+    {0xBBD8, 0x56DE},+    {0xBBD9, 0x6BC1},+    {0xBBDA, 0x6094},+    {0xBBDB, 0x6167},+    {0xBBDC, 0x5349},+    {0xBBDD, 0x60E0},+    {0xBBDE, 0x6666},+    {0xBBDF, 0x8D3F},+    {0xBBE0, 0x79FD},+    {0xBBE1, 0x4F1A},+    {0xBBE2, 0x70E9},+    {0xBBE3, 0x6C47},+    {0xBBE4, 0x8BB3},+    {0xBBE5, 0x8BF2},+    {0xBBE6, 0x7ED8},+    {0xBBE7, 0x8364},+    {0xBBE8, 0x660F},+    {0xBBE9, 0x5A5A},+    {0xBBEA, 0x9B42},+    {0xBBEB, 0x6D51},+    {0xBBEC, 0x6DF7},+    {0xBBED, 0x8C41},+    {0xBBEE, 0x6D3B},+    {0xBBEF, 0x4F19},+    {0xBBF0, 0x706B},+    {0xBBF1, 0x83B7},+    {0xBBF2, 0x6216},+    {0xBBF3, 0x60D1},+    {0xBBF4, 0x970D},+    {0xBBF5, 0x8D27},+    {0xBBF6, 0x7978},+    {0xBBF7, 0x51FB},+    {0xBBF8, 0x573E},+    {0xBBF9, 0x57FA},+    {0xBBFA, 0x673A},+    {0xBBFB, 0x7578},+    {0xBBFC, 0x7A3D},+    {0xBBFD, 0x79EF},+    {0xBBFE, 0x7B95},+    {0xBCA1, 0x808C},+    {0xBCA2, 0x9965},+    {0xBCA3, 0x8FF9},+    {0xBCA4, 0x6FC0},+    {0xBCA5, 0x8BA5},+    {0xBCA6, 0x9E21},+    {0xBCA7, 0x59EC},+    {0xBCA8, 0x7EE9},+    {0xBCA9, 0x7F09},+    {0xBCAA, 0x5409},+    {0xBCAB, 0x6781},+    {0xBCAC, 0x68D8},+    {0xBCAD, 0x8F91},+    {0xBCAE, 0x7C4D},+    {0xBCAF, 0x96C6},+    {0xBCB0, 0x53CA},+    {0xBCB1, 0x6025},+    {0xBCB2, 0x75BE},+    {0xBCB3, 0x6C72},+    {0xBCB4, 0x5373},+    {0xBCB5, 0x5AC9},+    {0xBCB6, 0x7EA7},+    {0xBCB7, 0x6324},+    {0xBCB8, 0x51E0},+    {0xBCB9, 0x810A},+    {0xBCBA, 0x5DF1},+    {0xBCBB, 0x84DF},+    {0xBCBC, 0x6280},+    {0xBCBD, 0x5180},+    {0xBCBE, 0x5B63},+    {0xBCBF, 0x4F0E},+    {0xBCC0, 0x796D},+    {0xBCC1, 0x5242},+    {0xBCC2, 0x60B8},+    {0xBCC3, 0x6D4E},+    {0xBCC4, 0x5BC4},+    {0xBCC5, 0x5BC2},+    {0xBCC6, 0x8BA1},+    {0xBCC7, 0x8BB0},+    {0xBCC8, 0x65E2},+    {0xBCC9, 0x5FCC},+    {0xBCCA, 0x9645},+    {0xBCCB, 0x5993},+    {0xBCCC, 0x7EE7},+    {0xBCCD, 0x7EAA},+    {0xBCCE, 0x5609},+    {0xBCCF, 0x67B7},+    {0xBCD0, 0x5939},+    {0xBCD1, 0x4F73},+    {0xBCD2, 0x5BB6},+    {0xBCD3, 0x52A0},+    {0xBCD4, 0x835A},+    {0xBCD5, 0x988A},+    {0xBCD6, 0x8D3E},+    {0xBCD7, 0x7532},+    {0xBCD8, 0x94BE},+    {0xBCD9, 0x5047},+    {0xBCDA, 0x7A3C},+    {0xBCDB, 0x4EF7},+    {0xBCDC, 0x67B6},+    {0xBCDD, 0x9A7E},+    {0xBCDE, 0x5AC1},+    {0xBCDF, 0x6B7C},+    {0xBCE0, 0x76D1},+    {0xBCE1, 0x575A},+    {0xBCE2, 0x5C16},+    {0xBCE3, 0x7B3A},+    {0xBCE4, 0x95F4},+    {0xBCE5, 0x714E},+    {0xBCE6, 0x517C},+    {0xBCE7, 0x80A9},+    {0xBCE8, 0x8270},+    {0xBCE9, 0x5978},+    {0xBCEA, 0x7F04},+    {0xBCEB, 0x8327},+    {0xBCEC, 0x68C0},+    {0xBCED, 0x67EC},+    {0xBCEE, 0x78B1},+    {0xBCEF, 0x7877},+    {0xBCF0, 0x62E3},+    {0xBCF1, 0x6361},+    {0xBCF2, 0x7B80},+    {0xBCF3, 0x4FED},+    {0xBCF4, 0x526A},+    {0xBCF5, 0x51CF},+    {0xBCF6, 0x8350},+    {0xBCF7, 0x69DB},+    {0xBCF8, 0x9274},+    {0xBCF9, 0x8DF5},+    {0xBCFA, 0x8D31},+    {0xBCFB, 0x89C1},+    {0xBCFC, 0x952E},+    {0xBCFD, 0x7BAD},+    {0xBCFE, 0x4EF6},+    {0xBDA1, 0x5065},+    {0xBDA2, 0x8230},+    {0xBDA3, 0x5251},+    {0xBDA4, 0x996F},+    {0xBDA5, 0x6E10},+    {0xBDA6, 0x6E85},+    {0xBDA7, 0x6DA7},+    {0xBDA8, 0x5EFA},+    {0xBDA9, 0x50F5},+    {0xBDAA, 0x59DC},+    {0xBDAB, 0x5C06},+    {0xBDAC, 0x6D46},+    {0xBDAD, 0x6C5F},+    {0xBDAE, 0x7586},+    {0xBDAF, 0x848B},+    {0xBDB0, 0x6868},+    {0xBDB1, 0x5956},+    {0xBDB2, 0x8BB2},+    {0xBDB3, 0x5320},+    {0xBDB4, 0x9171},+    {0xBDB5, 0x964D},+    {0xBDB6, 0x8549},+    {0xBDB7, 0x6912},+    {0xBDB8, 0x7901},+    {0xBDB9, 0x7126},+    {0xBDBA, 0x80F6},+    {0xBDBB, 0x4EA4},+    {0xBDBC, 0x90CA},+    {0xBDBD, 0x6D47},+    {0xBDBE, 0x9A84},+    {0xBDBF, 0x5A07},+    {0xBDC0, 0x56BC},+    {0xBDC1, 0x6405},+    {0xBDC2, 0x94F0},+    {0xBDC3, 0x77EB},+    {0xBDC4, 0x4FA5},+    {0xBDC5, 0x811A},+    {0xBDC6, 0x72E1},+    {0xBDC7, 0x89D2},+    {0xBDC8, 0x997A},+    {0xBDC9, 0x7F34},+    {0xBDCA, 0x7EDE},+    {0xBDCB, 0x527F},+    {0xBDCC, 0x6559},+    {0xBDCD, 0x9175},+    {0xBDCE, 0x8F7F},+    {0xBDCF, 0x8F83},+    {0xBDD0, 0x53EB},+    {0xBDD1, 0x7A96},+    {0xBDD2, 0x63ED},+    {0xBDD3, 0x63A5},+    {0xBDD4, 0x7686},+    {0xBDD5, 0x79F8},+    {0xBDD6, 0x8857},+    {0xBDD7, 0x9636},+    {0xBDD8, 0x622A},+    {0xBDD9, 0x52AB},+    {0xBDDA, 0x8282},+    {0xBDDB, 0x6854},+    {0xBDDC, 0x6770},+    {0xBDDD, 0x6377},+    {0xBDDE, 0x776B},+    {0xBDDF, 0x7AED},+    {0xBDE0, 0x6D01},+    {0xBDE1, 0x7ED3},+    {0xBDE2, 0x89E3},+    {0xBDE3, 0x59D0},+    {0xBDE4, 0x6212},+    {0xBDE5, 0x85C9},+    {0xBDE6, 0x82A5},+    {0xBDE7, 0x754C},+    {0xBDE8, 0x501F},+    {0xBDE9, 0x4ECB},+    {0xBDEA, 0x75A5},+    {0xBDEB, 0x8BEB},+    {0xBDEC, 0x5C4A},+    {0xBDED, 0x5DFE},+    {0xBDEE, 0x7B4B},+    {0xBDEF, 0x65A4},+    {0xBDF0, 0x91D1},+    {0xBDF1, 0x4ECA},+    {0xBDF2, 0x6D25},+    {0xBDF3, 0x895F},+    {0xBDF4, 0x7D27},+    {0xBDF5, 0x9526},+    {0xBDF6, 0x4EC5},+    {0xBDF7, 0x8C28},+    {0xBDF8, 0x8FDB},+    {0xBDF9, 0x9773},+    {0xBDFA, 0x664B},+    {0xBDFB, 0x7981},+    {0xBDFC, 0x8FD1},+    {0xBDFD, 0x70EC},+    {0xBDFE, 0x6D78},+    {0xBEA1, 0x5C3D},+    {0xBEA2, 0x52B2},+    {0xBEA3, 0x8346},+    {0xBEA4, 0x5162},+    {0xBEA5, 0x830E},+    {0xBEA6, 0x775B},+    {0xBEA7, 0x6676},+    {0xBEA8, 0x9CB8},+    {0xBEA9, 0x4EAC},+    {0xBEAA, 0x60CA},+    {0xBEAB, 0x7CBE},+    {0xBEAC, 0x7CB3},+    {0xBEAD, 0x7ECF},+    {0xBEAE, 0x4E95},+    {0xBEAF, 0x8B66},+    {0xBEB0, 0x666F},+    {0xBEB1, 0x9888},+    {0xBEB2, 0x9759},+    {0xBEB3, 0x5883},+    {0xBEB4, 0x656C},+    {0xBEB5, 0x955C},+    {0xBEB6, 0x5F84},+    {0xBEB7, 0x75C9},+    {0xBEB8, 0x9756},+    {0xBEB9, 0x7ADF},+    {0xBEBA, 0x7ADE},+    {0xBEBB, 0x51C0},+    {0xBEBC, 0x70AF},+    {0xBEBD, 0x7A98},+    {0xBEBE, 0x63EA},+    {0xBEBF, 0x7A76},+    {0xBEC0, 0x7EA0},+    {0xBEC1, 0x7396},+    {0xBEC2, 0x97ED},+    {0xBEC3, 0x4E45},+    {0xBEC4, 0x7078},+    {0xBEC5, 0x4E5D},+    {0xBEC6, 0x9152},+    {0xBEC7, 0x53A9},+    {0xBEC8, 0x6551},+    {0xBEC9, 0x65E7},+    {0xBECA, 0x81FC},+    {0xBECB, 0x8205},+    {0xBECC, 0x548E},+    {0xBECD, 0x5C31},+    {0xBECE, 0x759A},+    {0xBECF, 0x97A0},+    {0xBED0, 0x62D8},+    {0xBED1, 0x72D9},+    {0xBED2, 0x75BD},+    {0xBED3, 0x5C45},+    {0xBED4, 0x9A79},+    {0xBED5, 0x83CA},+    {0xBED6, 0x5C40},+    {0xBED7, 0x5480},+    {0xBED8, 0x77E9},+    {0xBED9, 0x4E3E},+    {0xBEDA, 0x6CAE},+    {0xBEDB, 0x805A},+    {0xBEDC, 0x62D2},+    {0xBEDD, 0x636E},+    {0xBEDE, 0x5DE8},+    {0xBEDF, 0x5177},+    {0xBEE0, 0x8DDD},+    {0xBEE1, 0x8E1E},+    {0xBEE2, 0x952F},+    {0xBEE3, 0x4FF1},+    {0xBEE4, 0x53E5},+    {0xBEE5, 0x60E7},+    {0xBEE6, 0x70AC},+    {0xBEE7, 0x5267},+    {0xBEE8, 0x6350},+    {0xBEE9, 0x9E43},+    {0xBEEA, 0x5A1F},+    {0xBEEB, 0x5026},+    {0xBEEC, 0x7737},+    {0xBEED, 0x5377},+    {0xBEEE, 0x7EE2},+    {0xBEEF, 0x6485},+    {0xBEF0, 0x652B},+    {0xBEF1, 0x6289},+    {0xBEF2, 0x6398},+    {0xBEF3, 0x5014},+    {0xBEF4, 0x7235},+    {0xBEF5, 0x89C9},+    {0xBEF6, 0x51B3},+    {0xBEF7, 0x8BC0},+    {0xBEF8, 0x7EDD},+    {0xBEF9, 0x5747},+    {0xBEFA, 0x83CC},+    {0xBEFB, 0x94A7},+    {0xBEFC, 0x519B},+    {0xBEFD, 0x541B},+    {0xBEFE, 0x5CFB},+    {0xBFA1, 0x4FCA},+    {0xBFA2, 0x7AE3},+    {0xBFA3, 0x6D5A},+    {0xBFA4, 0x90E1},+    {0xBFA5, 0x9A8F},+    {0xBFA6, 0x5580},+    {0xBFA7, 0x5496},+    {0xBFA8, 0x5361},+    {0xBFA9, 0x54AF},+    {0xBFAA, 0x5F00},+    {0xBFAB, 0x63E9},+    {0xBFAC, 0x6977},+    {0xBFAD, 0x51EF},+    {0xBFAE, 0x6168},+    {0xBFAF, 0x520A},+    {0xBFB0, 0x582A},+    {0xBFB1, 0x52D8},+    {0xBFB2, 0x574E},+    {0xBFB3, 0x780D},+    {0xBFB4, 0x770B},+    {0xBFB5, 0x5EB7},+    {0xBFB6, 0x6177},+    {0xBFB7, 0x7CE0},+    {0xBFB8, 0x625B},+    {0xBFB9, 0x6297},+    {0xBFBA, 0x4EA2},+    {0xBFBB, 0x7095},+    {0xBFBC, 0x8003},+    {0xBFBD, 0x62F7},+    {0xBFBE, 0x70E4},+    {0xBFBF, 0x9760},+    {0xBFC0, 0x5777},+    {0xBFC1, 0x82DB},+    {0xBFC2, 0x67EF},+    {0xBFC3, 0x68F5},+    {0xBFC4, 0x78D5},+    {0xBFC5, 0x9897},+    {0xBFC6, 0x79D1},+    {0xBFC7, 0x58F3},+    {0xBFC8, 0x54B3},+    {0xBFC9, 0x53EF},+    {0xBFCA, 0x6E34},+    {0xBFCB, 0x514B},+    {0xBFCC, 0x523B},+    {0xBFCD, 0x5BA2},+    {0xBFCE, 0x8BFE},+    {0xBFCF, 0x80AF},+    {0xBFD0, 0x5543},+    {0xBFD1, 0x57A6},+    {0xBFD2, 0x6073},+    {0xBFD3, 0x5751},+    {0xBFD4, 0x542D},+    {0xBFD5, 0x7A7A},+    {0xBFD6, 0x6050},+    {0xBFD7, 0x5B54},+    {0xBFD8, 0x63A7},+    {0xBFD9, 0x62A0},+    {0xBFDA, 0x53E3},+    {0xBFDB, 0x6263},+    {0xBFDC, 0x5BC7},+    {0xBFDD, 0x67AF},+    {0xBFDE, 0x54ED},+    {0xBFDF, 0x7A9F},+    {0xBFE0, 0x82E6},+    {0xBFE1, 0x9177},+    {0xBFE2, 0x5E93},+    {0xBFE3, 0x88E4},+    {0xBFE4, 0x5938},+    {0xBFE5, 0x57AE},+    {0xBFE6, 0x630E},+    {0xBFE7, 0x8DE8},+    {0xBFE8, 0x80EF},+    {0xBFE9, 0x5757},+    {0xBFEA, 0x7B77},+    {0xBFEB, 0x4FA9},+    {0xBFEC, 0x5FEB},+    {0xBFED, 0x5BBD},+    {0xBFEE, 0x6B3E},+    {0xBFEF, 0x5321},+    {0xBFF0, 0x7B50},+    {0xBFF1, 0x72C2},+    {0xBFF2, 0x6846},+    {0xBFF3, 0x77FF},+    {0xBFF4, 0x7736},+    {0xBFF5, 0x65F7},+    {0xBFF6, 0x51B5},+    {0xBFF7, 0x4E8F},+    {0xBFF8, 0x76D4},+    {0xBFF9, 0x5CBF},+    {0xBFFA, 0x7AA5},+    {0xBFFB, 0x8475},+    {0xBFFC, 0x594E},+    {0xBFFD, 0x9B41},+    {0xBFFE, 0x5080},+    {0xC0A1, 0x9988},+    {0xC0A2, 0x6127},+    {0xC0A3, 0x6E83},+    {0xC0A4, 0x5764},+    {0xC0A5, 0x6606},+    {0xC0A6, 0x6346},+    {0xC0A7, 0x56F0},+    {0xC0A8, 0x62EC},+    {0xC0A9, 0x6269},+    {0xC0AA, 0x5ED3},+    {0xC0AB, 0x9614},+    {0xC0AC, 0x5783},+    {0xC0AD, 0x62C9},+    {0xC0AE, 0x5587},+    {0xC0AF, 0x8721},+    {0xC0B0, 0x814A},+    {0xC0B1, 0x8FA3},+    {0xC0B2, 0x5566},+    {0xC0B3, 0x83B1},+    {0xC0B4, 0x6765},+    {0xC0B5, 0x8D56},+    {0xC0B6, 0x84DD},+    {0xC0B7, 0x5A6A},+    {0xC0B8, 0x680F},+    {0xC0B9, 0x62E6},+    {0xC0BA, 0x7BEE},+    {0xC0BB, 0x9611},+    {0xC0BC, 0x5170},+    {0xC0BD, 0x6F9C},+    {0xC0BE, 0x8C30},+    {0xC0BF, 0x63FD},+    {0xC0C0, 0x89C8},+    {0xC0C1, 0x61D2},+    {0xC0C2, 0x7F06},+    {0xC0C3, 0x70C2},+    {0xC0C4, 0x6EE5},+    {0xC0C5, 0x7405},+    {0xC0C6, 0x6994},+    {0xC0C7, 0x72FC},+    {0xC0C8, 0x5ECA},+    {0xC0C9, 0x90CE},+    {0xC0CA, 0x6717},+    {0xC0CB, 0x6D6A},+    {0xC0CC, 0x635E},+    {0xC0CD, 0x52B3},+    {0xC0CE, 0x7262},+    {0xC0CF, 0x8001},+    {0xC0D0, 0x4F6C},+    {0xC0D1, 0x59E5},+    {0xC0D2, 0x916A},+    {0xC0D3, 0x70D9},+    {0xC0D4, 0x6D9D},+    {0xC0D5, 0x52D2},+    {0xC0D6, 0x4E50},+    {0xC0D7, 0x96F7},+    {0xC0D8, 0x956D},+    {0xC0D9, 0x857E},+    {0xC0DA, 0x78CA},+    {0xC0DB, 0x7D2F},+    {0xC0DC, 0x5121},+    {0xC0DD, 0x5792},+    {0xC0DE, 0x64C2},+    {0xC0DF, 0x808B},+    {0xC0E0, 0x7C7B},+    {0xC0E1, 0x6CEA},+    {0xC0E2, 0x68F1},+    {0xC0E3, 0x695E},+    {0xC0E4, 0x51B7},+    {0xC0E5, 0x5398},+    {0xC0E6, 0x68A8},+    {0xC0E7, 0x7281},+    {0xC0E8, 0x9ECE},+    {0xC0E9, 0x7BF1},+    {0xC0EA, 0x72F8},+    {0xC0EB, 0x79BB},+    {0xC0EC, 0x6F13},+    {0xC0ED, 0x7406},+    {0xC0EE, 0x674E},+    {0xC0EF, 0x91CC},+    {0xC0F0, 0x9CA4},+    {0xC0F1, 0x793C},+    {0xC0F2, 0x8389},+    {0xC0F3, 0x8354},+    {0xC0F4, 0x540F},+    {0xC0F5, 0x6817},+    {0xC0F6, 0x4E3D},+    {0xC0F7, 0x5389},+    {0xC0F8, 0x52B1},+    {0xC0F9, 0x783E},+    {0xC0FA, 0x5386},+    {0xC0FB, 0x5229},+    {0xC0FC, 0x5088},+    {0xC0FD, 0x4F8B},+    {0xC0FE, 0x4FD0},+    {0xC1A1, 0x75E2},+    {0xC1A2, 0x7ACB},+    {0xC1A3, 0x7C92},+    {0xC1A4, 0x6CA5},+    {0xC1A5, 0x96B6},+    {0xC1A6, 0x529B},+    {0xC1A7, 0x7483},+    {0xC1A8, 0x54E9},+    {0xC1A9, 0x4FE9},+    {0xC1AA, 0x8054},+    {0xC1AB, 0x83B2},+    {0xC1AC, 0x8FDE},+    {0xC1AD, 0x9570},+    {0xC1AE, 0x5EC9},+    {0xC1AF, 0x601C},+    {0xC1B0, 0x6D9F},+    {0xC1B1, 0x5E18},+    {0xC1B2, 0x655B},+    {0xC1B3, 0x8138},+    {0xC1B4, 0x94FE},+    {0xC1B5, 0x604B},+    {0xC1B6, 0x70BC},+    {0xC1B7, 0x7EC3},+    {0xC1B8, 0x7CAE},+    {0xC1B9, 0xF979},+    {0xC1BA, 0x6881},+    {0xC1BB, 0x7CB1},+    {0xC1BC, 0x826F},+    {0xC1BD, 0x4E24},+    {0xC1BE, 0x8F86},+    {0xC1BF, 0x91CF},+    {0xC1C0, 0x667E},+    {0xC1C1, 0x4EAE},+    {0xC1C2, 0x8C05},+    {0xC1C3, 0x64A9},+    {0xC1C4, 0x804A},+    {0xC1C5, 0x50DA},+    {0xC1C6, 0x7597},+    {0xC1C7, 0x71CE},+    {0xC1C8, 0x5BE5},+    {0xC1C9, 0x8FBD},+    {0xC1CA, 0x6F66},+    {0xC1CB, 0x4E86},+    {0xC1CC, 0x6482},+    {0xC1CD, 0x9563},+    {0xC1CE, 0x5ED6},+    {0xC1CF, 0x6599},+    {0xC1D0, 0x5217},+    {0xC1D1, 0x88C2},+    {0xC1D2, 0x70C8},+    {0xC1D3, 0x52A3},+    {0xC1D4, 0x730E},+    {0xC1D5, 0x7433},+    {0xC1D6, 0x6797},+    {0xC1D7, 0x78F7},+    {0xC1D8, 0x9716},+    {0xC1D9, 0x4E34},+    {0xC1DA, 0x90BB},+    {0xC1DB, 0x9CDE},+    {0xC1DC, 0x6DCB},+    {0xC1DD, 0x51DB},+    {0xC1DE, 0x8D41},+    {0xC1DF, 0x541D},+    {0xC1E0, 0x62CE},+    {0xC1E1, 0x73B2},+    {0xC1E2, 0x83F1},+    {0xC1E3, 0x96F6},+    {0xC1E4, 0x9F84},+    {0xC1E5, 0x94C3},+    {0xC1E6, 0x4F36},+    {0xC1E7, 0x7F9A},+    {0xC1E8, 0x51CC},+    {0xC1E9, 0x7075},+    {0xC1EA, 0x9675},+    {0xC1EB, 0x5CAD},+    {0xC1EC, 0x9886},+    {0xC1ED, 0x53E6},+    {0xC1EE, 0x4EE4},+    {0xC1EF, 0x6E9C},+    {0xC1F0, 0x7409},+    {0xC1F1, 0x69B4},+    {0xC1F2, 0x786B},+    {0xC1F3, 0x998F},+    {0xC1F4, 0x7559},+    {0xC1F5, 0x5218},+    {0xC1F6, 0x7624},+    {0xC1F7, 0x6D41},+    {0xC1F8, 0x67F3},+    {0xC1F9, 0x516D},+    {0xC1FA, 0x9F99},+    {0xC1FB, 0x804B},+    {0xC1FC, 0x5499},+    {0xC1FD, 0x7B3C},+    {0xC1FE, 0x7ABF},+    {0xC2A1, 0x9686},+    {0xC2A2, 0x5784},+    {0xC2A3, 0x62E2},+    {0xC2A4, 0x9647},+    {0xC2A5, 0x697C},+    {0xC2A6, 0x5A04},+    {0xC2A7, 0x6402},+    {0xC2A8, 0x7BD3},+    {0xC2A9, 0x6F0F},+    {0xC2AA, 0x964B},+    {0xC2AB, 0x82A6},+    {0xC2AC, 0x5362},+    {0xC2AD, 0x9885},+    {0xC2AE, 0x5E90},+    {0xC2AF, 0x7089},+    {0xC2B0, 0x63B3},+    {0xC2B1, 0x5364},+    {0xC2B2, 0x864F},+    {0xC2B3, 0x9C81},+    {0xC2B4, 0x9E93},+    {0xC2B5, 0x788C},+    {0xC2B6, 0x9732},+    {0xC2B7, 0x8DEF},+    {0xC2B8, 0x8D42},+    {0xC2B9, 0x9E7F},+    {0xC2BA, 0x6F5E},+    {0xC2BB, 0x7984},+    {0xC2BC, 0x5F55},+    {0xC2BD, 0x9646},+    {0xC2BE, 0x622E},+    {0xC2BF, 0x9A74},+    {0xC2C0, 0x5415},+    {0xC2C1, 0x94DD},+    {0xC2C2, 0x4FA3},+    {0xC2C3, 0x65C5},+    {0xC2C4, 0x5C65},+    {0xC2C5, 0x5C61},+    {0xC2C6, 0x7F15},+    {0xC2C7, 0x8651},+    {0xC2C8, 0x6C2F},+    {0xC2C9, 0x5F8B},+    {0xC2CA, 0x7387},+    {0xC2CB, 0x6EE4},+    {0xC2CC, 0x7EFF},+    {0xC2CD, 0x5CE6},+    {0xC2CE, 0x631B},+    {0xC2CF, 0x5B6A},+    {0xC2D0, 0x6EE6},+    {0xC2D1, 0x5375},+    {0xC2D2, 0x4E71},+    {0xC2D3, 0x63A0},+    {0xC2D4, 0x7565},+    {0xC2D5, 0x62A1},+    {0xC2D6, 0x8F6E},+    {0xC2D7, 0x4F26},+    {0xC2D8, 0x4ED1},+    {0xC2D9, 0x6CA6},+    {0xC2DA, 0x7EB6},+    {0xC2DB, 0x8BBA},+    {0xC2DC, 0x841D},+    {0xC2DD, 0x87BA},+    {0xC2DE, 0x7F57},+    {0xC2DF, 0x903B},+    {0xC2E0, 0x9523},+    {0xC2E1, 0x7BA9},+    {0xC2E2, 0x9AA1},+    {0xC2E3, 0x88F8},+    {0xC2E4, 0x843D},+    {0xC2E5, 0x6D1B},+    {0xC2E6, 0x9A86},+    {0xC2E7, 0x7EDC},+    {0xC2E8, 0x5988},+    {0xC2E9, 0x9EBB},+    {0xC2EA, 0x739B},+    {0xC2EB, 0x7801},+    {0xC2EC, 0x8682},+    {0xC2ED, 0x9A6C},+    {0xC2EE, 0x9A82},+    {0xC2EF, 0x561B},+    {0xC2F0, 0x5417},+    {0xC2F1, 0x57CB},+    {0xC2F2, 0x4E70},+    {0xC2F3, 0x9EA6},+    {0xC2F4, 0x5356},+    {0xC2F5, 0x8FC8},+    {0xC2F6, 0x8109},+    {0xC2F7, 0x7792},+    {0xC2F8, 0x9992},+    {0xC2F9, 0x86EE},+    {0xC2FA, 0x6EE1},+    {0xC2FB, 0x8513},+    {0xC2FC, 0x66FC},+    {0xC2FD, 0x6162},+    {0xC2FE, 0x6F2B},+    {0xC3A1, 0x8C29},+    {0xC3A2, 0x8292},+    {0xC3A3, 0x832B},+    {0xC3A4, 0x76F2},+    {0xC3A5, 0x6C13},+    {0xC3A6, 0x5FD9},+    {0xC3A7, 0x83BD},+    {0xC3A8, 0x732B},+    {0xC3A9, 0x8305},+    {0xC3AA, 0x951A},+    {0xC3AB, 0x6BDB},+    {0xC3AC, 0x77DB},+    {0xC3AD, 0x94C6},+    {0xC3AE, 0x536F},+    {0xC3AF, 0x8302},+    {0xC3B0, 0x5192},+    {0xC3B1, 0x5E3D},+    {0xC3B2, 0x8C8C},+    {0xC3B3, 0x8D38},+    {0xC3B4, 0x4E48},+    {0xC3B5, 0x73AB},+    {0xC3B6, 0x679A},+    {0xC3B7, 0x6885},+    {0xC3B8, 0x9176},+    {0xC3B9, 0x9709},+    {0xC3BA, 0x7164},+    {0xC3BB, 0x6CA1},+    {0xC3BC, 0x7709},+    {0xC3BD, 0x5A92},+    {0xC3BE, 0x9541},+    {0xC3BF, 0x6BCF},+    {0xC3C0, 0x7F8E},+    {0xC3C1, 0x6627},+    {0xC3C2, 0x5BD0},+    {0xC3C3, 0x59B9},+    {0xC3C4, 0x5A9A},+    {0xC3C5, 0x95E8},+    {0xC3C6, 0x95F7},+    {0xC3C7, 0x4EEC},+    {0xC3C8, 0x840C},+    {0xC3C9, 0x8499},+    {0xC3CA, 0x6AAC},+    {0xC3CB, 0x76DF},+    {0xC3CC, 0x9530},+    {0xC3CD, 0x731B},+    {0xC3CE, 0x68A6},+    {0xC3CF, 0x5B5F},+    {0xC3D0, 0x772F},+    {0xC3D1, 0x919A},+    {0xC3D2, 0x9761},+    {0xC3D3, 0x7CDC},+    {0xC3D4, 0x8FF7},+    {0xC3D5, 0x8C1C},+    {0xC3D6, 0x5F25},+    {0xC3D7, 0x7C73},+    {0xC3D8, 0x79D8},+    {0xC3D9, 0x89C5},+    {0xC3DA, 0x6CCC},+    {0xC3DB, 0x871C},+    {0xC3DC, 0x5BC6},+    {0xC3DD, 0x5E42},+    {0xC3DE, 0x68C9},+    {0xC3DF, 0x7720},+    {0xC3E0, 0x7EF5},+    {0xC3E1, 0x5195},+    {0xC3E2, 0x514D},+    {0xC3E3, 0x52C9},+    {0xC3E4, 0x5A29},+    {0xC3E5, 0x7F05},+    {0xC3E6, 0x9762},+    {0xC3E7, 0x82D7},+    {0xC3E8, 0x63CF},+    {0xC3E9, 0x7784},+    {0xC3EA, 0x85D0},+    {0xC3EB, 0x79D2},+    {0xC3EC, 0x6E3A},+    {0xC3ED, 0x5E99},+    {0xC3EE, 0x5999},+    {0xC3EF, 0x8511},+    {0xC3F0, 0x706D},+    {0xC3F1, 0x6C11},+    {0xC3F2, 0x62BF},+    {0xC3F3, 0x76BF},+    {0xC3F4, 0x654F},+    {0xC3F5, 0x60AF},+    {0xC3F6, 0x95FD},+    {0xC3F7, 0x660E},+    {0xC3F8, 0x879F},+    {0xC3F9, 0x9E23},+    {0xC3FA, 0x94ED},+    {0xC3FB, 0x540D},+    {0xC3FC, 0x547D},+    {0xC3FD, 0x8C2C},+    {0xC3FE, 0x6478},+    {0xC4A1, 0x6479},+    {0xC4A2, 0x8611},+    {0xC4A3, 0x6A21},+    {0xC4A4, 0x819C},+    {0xC4A5, 0x78E8},+    {0xC4A6, 0x6469},+    {0xC4A7, 0x9B54},+    {0xC4A8, 0x62B9},+    {0xC4A9, 0x672B},+    {0xC4AA, 0x83AB},+    {0xC4AB, 0x58A8},+    {0xC4AC, 0x9ED8},+    {0xC4AD, 0x6CAB},+    {0xC4AE, 0x6F20},+    {0xC4AF, 0x5BDE},+    {0xC4B0, 0x964C},+    {0xC4B1, 0x8C0B},+    {0xC4B2, 0x725F},+    {0xC4B3, 0x67D0},+    {0xC4B4, 0x62C7},+    {0xC4B5, 0x7261},+    {0xC4B6, 0x4EA9},+    {0xC4B7, 0x59C6},+    {0xC4B8, 0x6BCD},+    {0xC4B9, 0x5893},+    {0xC4BA, 0x66AE},+    {0xC4BB, 0x5E55},+    {0xC4BC, 0x52DF},+    {0xC4BD, 0x6155},+    {0xC4BE, 0x6728},+    {0xC4BF, 0x76EE},+    {0xC4C0, 0x7766},+    {0xC4C1, 0x7267},+    {0xC4C2, 0x7A46},+    {0xC4C3, 0x62FF},+    {0xC4C4, 0x54EA},+    {0xC4C5, 0x5450},+    {0xC4C6, 0x94A0},+    {0xC4C7, 0x90A3},+    {0xC4C8, 0x5A1C},+    {0xC4C9, 0x7EB3},+    {0xC4CA, 0x6C16},+    {0xC4CB, 0x4E43},+    {0xC4CC, 0x5976},+    {0xC4CD, 0x8010},+    {0xC4CE, 0x5948},+    {0xC4CF, 0x5357},+    {0xC4D0, 0x7537},+    {0xC4D1, 0x96BE},+    {0xC4D2, 0x56CA},+    {0xC4D3, 0x6320},+    {0xC4D4, 0x8111},+    {0xC4D5, 0x607C},+    {0xC4D6, 0x95F9},+    {0xC4D7, 0x6DD6},+    {0xC4D8, 0x5462},+    {0xC4D9, 0x9981},+    {0xC4DA, 0x5185},+    {0xC4DB, 0x5AE9},+    {0xC4DC, 0x80FD},+    {0xC4DD, 0x59AE},+    {0xC4DE, 0x9713},+    {0xC4DF, 0x502A},+    {0xC4E0, 0x6CE5},+    {0xC4E1, 0x5C3C},+    {0xC4E2, 0x62DF},+    {0xC4E3, 0x4F60},+    {0xC4E4, 0x533F},+    {0xC4E5, 0x817B},+    {0xC4E6, 0x9006},+    {0xC4E7, 0x6EBA},+    {0xC4E8, 0x852B},+    {0xC4E9, 0x62C8},+    {0xC4EA, 0x5E74},+    {0xC4EB, 0x78BE},+    {0xC4EC, 0x64B5},+    {0xC4ED, 0x637B},+    {0xC4EE, 0x5FF5},+    {0xC4EF, 0x5A18},+    {0xC4F0, 0x917F},+    {0xC4F1, 0x9E1F},+    {0xC4F2, 0x5C3F},+    {0xC4F3, 0x634F},+    {0xC4F4, 0x8042},+    {0xC4F5, 0x5B7D},+    {0xC4F6, 0x556E},+    {0xC4F7, 0x954A},+    {0xC4F8, 0x954D},+    {0xC4F9, 0x6D85},+    {0xC4FA, 0x60A8},+    {0xC4FB, 0x67E0},+    {0xC4FC, 0x72DE},+    {0xC4FD, 0x51DD},+    {0xC4FE, 0x5B81},+    {0xC5A1, 0x62E7},+    {0xC5A2, 0x6CDE},+    {0xC5A3, 0x725B},+    {0xC5A4, 0x626D},+    {0xC5A5, 0x94AE},+    {0xC5A6, 0x7EBD},+    {0xC5A7, 0x8113},+    {0xC5A8, 0x6D53},+    {0xC5A9, 0x519C},+    {0xC5AA, 0x5F04},+    {0xC5AB, 0x5974},+    {0xC5AC, 0x52AA},+    {0xC5AD, 0x6012},+    {0xC5AE, 0x5973},+    {0xC5AF, 0x6696},+    {0xC5B0, 0x8650},+    {0xC5B1, 0x759F},+    {0xC5B2, 0x632A},+    {0xC5B3, 0x61E6},+    {0xC5B4, 0x7CEF},+    {0xC5B5, 0x8BFA},+    {0xC5B6, 0x54E6},+    {0xC5B7, 0x6B27},+    {0xC5B8, 0x9E25},+    {0xC5B9, 0x6BB4},+    {0xC5BA, 0x85D5},+    {0xC5BB, 0x5455},+    {0xC5BC, 0x5076},+    {0xC5BD, 0x6CA4},+    {0xC5BE, 0x556A},+    {0xC5BF, 0x8DB4},+    {0xC5C0, 0x722C},+    {0xC5C1, 0x5E15},+    {0xC5C2, 0x6015},+    {0xC5C3, 0x7436},+    {0xC5C4, 0x62CD},+    {0xC5C5, 0x6392},+    {0xC5C6, 0x724C},+    {0xC5C7, 0x5F98},+    {0xC5C8, 0x6E43},+    {0xC5C9, 0x6D3E},+    {0xC5CA, 0x6500},+    {0xC5CB, 0x6F58},+    {0xC5CC, 0x76D8},+    {0xC5CD, 0x78D0},+    {0xC5CE, 0x76FC},+    {0xC5CF, 0x7554},+    {0xC5D0, 0x5224},+    {0xC5D1, 0x53DB},+    {0xC5D2, 0x4E53},+    {0xC5D3, 0x5E9E},+    {0xC5D4, 0x65C1},+    {0xC5D5, 0x802A},+    {0xC5D6, 0x80D6},+    {0xC5D7, 0x629B},+    {0xC5D8, 0x5486},+    {0xC5D9, 0x5228},+    {0xC5DA, 0x70AE},+    {0xC5DB, 0x888D},+    {0xC5DC, 0x8DD1},+    {0xC5DD, 0x6CE1},+    {0xC5DE, 0x5478},+    {0xC5DF, 0x80DA},+    {0xC5E0, 0x57F9},+    {0xC5E1, 0x88F4},+    {0xC5E2, 0x8D54},+    {0xC5E3, 0x966A},+    {0xC5E4, 0x914D},+    {0xC5E5, 0x4F69},+    {0xC5E6, 0x6C9B},+    {0xC5E7, 0x55B7},+    {0xC5E8, 0x76C6},+    {0xC5E9, 0x7830},+    {0xC5EA, 0x62A8},+    {0xC5EB, 0x70F9},+    {0xC5EC, 0x6F8E},+    {0xC5ED, 0x5F6D},+    {0xC5EE, 0x84EC},+    {0xC5EF, 0x68DA},+    {0xC5F0, 0x787C},+    {0xC5F1, 0x7BF7},+    {0xC5F2, 0x81A8},+    {0xC5F3, 0x670B},+    {0xC5F4, 0x9E4F},+    {0xC5F5, 0x6367},+    {0xC5F6, 0x78B0},+    {0xC5F7, 0x576F},+    {0xC5F8, 0x7812},+    {0xC5F9, 0x9739},+    {0xC5FA, 0x6279},+    {0xC5FB, 0x62AB},+    {0xC5FC, 0x5288},+    {0xC5FD, 0x7435},+    {0xC5FE, 0x6BD7},+    {0xC6A1, 0x5564},+    {0xC6A2, 0x813E},+    {0xC6A3, 0x75B2},+    {0xC6A4, 0x76AE},+    {0xC6A5, 0x5339},+    {0xC6A6, 0x75DE},+    {0xC6A7, 0x50FB},+    {0xC6A8, 0x5C41},+    {0xC6A9, 0x8B6C},+    {0xC6AA, 0x7BC7},+    {0xC6AB, 0x504F},+    {0xC6AC, 0x7247},+    {0xC6AD, 0x9A97},+    {0xC6AE, 0x98D8},+    {0xC6AF, 0x6F02},+    {0xC6B0, 0x74E2},+    {0xC6B1, 0x7968},+    {0xC6B2, 0x6487},+    {0xC6B3, 0x77A5},+    {0xC6B4, 0x62FC},+    {0xC6B5, 0x9891},+    {0xC6B6, 0x8D2B},+    {0xC6B7, 0x54C1},+    {0xC6B8, 0x8058},+    {0xC6B9, 0x4E52},+    {0xC6BA, 0x576A},+    {0xC6BB, 0x82F9},+    {0xC6BC, 0x840D},+    {0xC6BD, 0x5E73},+    {0xC6BE, 0x51ED},+    {0xC6BF, 0x74F6},+    {0xC6C0, 0x8BC4},+    {0xC6C1, 0x5C4F},+    {0xC6C2, 0x5761},+    {0xC6C3, 0x6CFC},+    {0xC6C4, 0x9887},+    {0xC6C5, 0x5A46},+    {0xC6C6, 0x7834},+    {0xC6C7, 0x9B44},+    {0xC6C8, 0x8FEB},+    {0xC6C9, 0x7C95},+    {0xC6CA, 0x5256},+    {0xC6CB, 0x6251},+    {0xC6CC, 0x94FA},+    {0xC6CD, 0x4EC6},+    {0xC6CE, 0x8386},+    {0xC6CF, 0x8461},+    {0xC6D0, 0x83E9},+    {0xC6D1, 0x84B2},+    {0xC6D2, 0x57D4},+    {0xC6D3, 0x6734},+    {0xC6D4, 0x5703},+    {0xC6D5, 0x666E},+    {0xC6D6, 0x6D66},+    {0xC6D7, 0x8C31},+    {0xC6D8, 0x66DD},+    {0xC6D9, 0x7011},+    {0xC6DA, 0x671F},+    {0xC6DB, 0x6B3A},+    {0xC6DC, 0x6816},+    {0xC6DD, 0x621A},+    {0xC6DE, 0x59BB},+    {0xC6DF, 0x4E03},+    {0xC6E0, 0x51C4},+    {0xC6E1, 0x6F06},+    {0xC6E2, 0x67D2},+    {0xC6E3, 0x6C8F},+    {0xC6E4, 0x5176},+    {0xC6E5, 0x68CB},+    {0xC6E6, 0x5947},+    {0xC6E7, 0x6B67},+    {0xC6E8, 0x7566},+    {0xC6E9, 0x5D0E},+    {0xC6EA, 0x8110},+    {0xC6EB, 0x9F50},+    {0xC6EC, 0x65D7},+    {0xC6ED, 0x7948},+    {0xC6EE, 0x7941},+    {0xC6EF, 0x9A91},+    {0xC6F0, 0x8D77},+    {0xC6F1, 0x5C82},+    {0xC6F2, 0x4E5E},+    {0xC6F3, 0x4F01},+    {0xC6F4, 0x542F},+    {0xC6F5, 0x5951},+    {0xC6F6, 0x780C},+    {0xC6F7, 0x5668},+    {0xC6F8, 0x6C14},+    {0xC6F9, 0x8FC4},+    {0xC6FA, 0x5F03},+    {0xC6FB, 0x6C7D},+    {0xC6FC, 0x6CE3},+    {0xC6FD, 0x8BAB},+    {0xC6FE, 0x6390},+    {0xC7A1, 0x6070},+    {0xC7A2, 0x6D3D},+    {0xC7A3, 0x7275},+    {0xC7A4, 0x6266},+    {0xC7A5, 0x948E},+    {0xC7A6, 0x94C5},+    {0xC7A7, 0x5343},+    {0xC7A8, 0x8FC1},+    {0xC7A9, 0x7B7E},+    {0xC7AA, 0x4EDF},+    {0xC7AB, 0x8C26},+    {0xC7AC, 0x4E7E},+    {0xC7AD, 0x9ED4},+    {0xC7AE, 0x94B1},+    {0xC7AF, 0x94B3},+    {0xC7B0, 0x524D},+    {0xC7B1, 0x6F5C},+    {0xC7B2, 0x9063},+    {0xC7B3, 0x6D45},+    {0xC7B4, 0x8C34},+    {0xC7B5, 0x5811},+    {0xC7B6, 0x5D4C},+    {0xC7B7, 0x6B20},+    {0xC7B8, 0x6B49},+    {0xC7B9, 0x67AA},+    {0xC7BA, 0x545B},+    {0xC7BB, 0x8154},+    {0xC7BC, 0x7F8C},+    {0xC7BD, 0x5899},+    {0xC7BE, 0x8537},+    {0xC7BF, 0x5F3A},+    {0xC7C0, 0x62A2},+    {0xC7C1, 0x6A47},+    {0xC7C2, 0x9539},+    {0xC7C3, 0x6572},+    {0xC7C4, 0x6084},+    {0xC7C5, 0x6865},+    {0xC7C6, 0x77A7},+    {0xC7C7, 0x4E54},+    {0xC7C8, 0x4FA8},+    {0xC7C9, 0x5DE7},+    {0xC7CA, 0x9798},+    {0xC7CB, 0x64AC},+    {0xC7CC, 0x7FD8},+    {0xC7CD, 0x5CED},+    {0xC7CE, 0x4FCF},+    {0xC7CF, 0x7A8D},+    {0xC7D0, 0x5207},+    {0xC7D1, 0x8304},+    {0xC7D2, 0x4E14},+    {0xC7D3, 0x602F},+    {0xC7D4, 0x7A83},+    {0xC7D5, 0x94A6},+    {0xC7D6, 0x4FB5},+    {0xC7D7, 0x4EB2},+    {0xC7D8, 0x79E6},+    {0xC7D9, 0x7434},+    {0xC7DA, 0x52E4},+    {0xC7DB, 0x82B9},+    {0xC7DC, 0x64D2},+    {0xC7DD, 0x79BD},+    {0xC7DE, 0x5BDD},+    {0xC7DF, 0x6C81},+    {0xC7E0, 0x9752},+    {0xC7E1, 0x8F7B},+    {0xC7E2, 0x6C22},+    {0xC7E3, 0x503E},+    {0xC7E4, 0x537F},+    {0xC7E5, 0x6E05},+    {0xC7E6, 0x64CE},+    {0xC7E7, 0x6674},+    {0xC7E8, 0x6C30},+    {0xC7E9, 0x60C5},+    {0xC7EA, 0x9877},+    {0xC7EB, 0x8BF7},+    {0xC7EC, 0x5E86},+    {0xC7ED, 0x743C},+    {0xC7EE, 0x7A77},+    {0xC7EF, 0x79CB},+    {0xC7F0, 0x4E18},+    {0xC7F1, 0x90B1},+    {0xC7F2, 0x7403},+    {0xC7F3, 0x6C42},+    {0xC7F4, 0x56DA},+    {0xC7F5, 0x914B},+    {0xC7F6, 0x6CC5},+    {0xC7F7, 0x8D8B},+    {0xC7F8, 0x533A},+    {0xC7F9, 0x86C6},+    {0xC7FA, 0x66F2},+    {0xC7FB, 0x8EAF},+    {0xC7FC, 0x5C48},+    {0xC7FD, 0x9A71},+    {0xC7FE, 0x6E20},+    {0xC8A1, 0x53D6},+    {0xC8A2, 0x5A36},+    {0xC8A3, 0x9F8B},+    {0xC8A4, 0x8DA3},+    {0xC8A5, 0x53BB},+    {0xC8A6, 0x5708},+    {0xC8A7, 0x98A7},+    {0xC8A8, 0x6743},+    {0xC8A9, 0x919B},+    {0xC8AA, 0x6CC9},+    {0xC8AB, 0x5168},+    {0xC8AC, 0x75CA},+    {0xC8AD, 0x62F3},+    {0xC8AE, 0x72AC},+    {0xC8AF, 0x5238},+    {0xC8B0, 0x529D},+    {0xC8B1, 0x7F3A},+    {0xC8B2, 0x7094},+    {0xC8B3, 0x7638},+    {0xC8B4, 0x5374},+    {0xC8B5, 0x9E4A},+    {0xC8B6, 0x69B7},+    {0xC8B7, 0x786E},+    {0xC8B8, 0x96C0},+    {0xC8B9, 0x88D9},+    {0xC8BA, 0x7FA4},+    {0xC8BB, 0x7136},+    {0xC8BC, 0x71C3},+    {0xC8BD, 0x5189},+    {0xC8BE, 0x67D3},+    {0xC8BF, 0x74E4},+    {0xC8C0, 0x58E4},+    {0xC8C1, 0x6518},+    {0xC8C2, 0x56B7},+    {0xC8C3, 0x8BA9},+    {0xC8C4, 0x9976},+    {0xC8C5, 0x6270},+    {0xC8C6, 0x7ED5},+    {0xC8C7, 0x60F9},+    {0xC8C8, 0x70ED},+    {0xC8C9, 0x58EC},+    {0xC8CA, 0x4EC1},+    {0xC8CB, 0x4EBA},+    {0xC8CC, 0x5FCD},+    {0xC8CD, 0x97E7},+    {0xC8CE, 0x4EFB},+    {0xC8CF, 0x8BA4},+    {0xC8D0, 0x5203},+    {0xC8D1, 0x598A},+    {0xC8D2, 0x7EAB},+    {0xC8D3, 0x6254},+    {0xC8D4, 0x4ECD},+    {0xC8D5, 0x65E5},+    {0xC8D6, 0x620E},+    {0xC8D7, 0x8338},+    {0xC8D8, 0x84C9},+    {0xC8D9, 0x8363},+    {0xC8DA, 0x878D},+    {0xC8DB, 0x7194},+    {0xC8DC, 0x6EB6},+    {0xC8DD, 0x5BB9},+    {0xC8DE, 0x7ED2},+    {0xC8DF, 0x5197},+    {0xC8E0, 0x63C9},+    {0xC8E1, 0x67D4},+    {0xC8E2, 0x8089},+    {0xC8E3, 0x8339},+    {0xC8E4, 0x8815},+    {0xC8E5, 0x5112},+    {0xC8E6, 0x5B7A},+    {0xC8E7, 0x5982},+    {0xC8E8, 0x8FB1},+    {0xC8E9, 0x4E73},+    {0xC8EA, 0x6C5D},+    {0xC8EB, 0x5165},+    {0xC8EC, 0x8925},+    {0xC8ED, 0x8F6F},+    {0xC8EE, 0x962E},+    {0xC8EF, 0x854A},+    {0xC8F0, 0x745E},+    {0xC8F1, 0x9510},+    {0xC8F2, 0x95F0},+    {0xC8F3, 0x6DA6},+    {0xC8F4, 0x82E5},+    {0xC8F5, 0x5F31},+    {0xC8F6, 0x6492},+    {0xC8F7, 0x6D12},+    {0xC8F8, 0x8428},+    {0xC8F9, 0x816E},+    {0xC8FA, 0x9CC3},+    {0xC8FB, 0x585E},+    {0xC8FC, 0x8D5B},+    {0xC8FD, 0x4E09},+    {0xC8FE, 0x53C1},+    {0xC9A1, 0x4F1E},+    {0xC9A2, 0x6563},+    {0xC9A3, 0x6851},+    {0xC9A4, 0x55D3},+    {0xC9A5, 0x4E27},+    {0xC9A6, 0x6414},+    {0xC9A7, 0x9A9A},+    {0xC9A8, 0x626B},+    {0xC9A9, 0x5AC2},+    {0xC9AA, 0x745F},+    {0xC9AB, 0x8272},+    {0xC9AC, 0x6DA9},+    {0xC9AD, 0x68EE},+    {0xC9AE, 0x50E7},+    {0xC9AF, 0x838E},+    {0xC9B0, 0x7802},+    {0xC9B1, 0x6740},+    {0xC9B2, 0x5239},+    {0xC9B3, 0x6C99},+    {0xC9B4, 0x7EB1},+    {0xC9B5, 0x50BB},+    {0xC9B6, 0x5565},+    {0xC9B7, 0x715E},+    {0xC9B8, 0x7B5B},+    {0xC9B9, 0x6652},+    {0xC9BA, 0x73CA},+    {0xC9BB, 0x82EB},+    {0xC9BC, 0x6749},+    {0xC9BD, 0x5C71},+    {0xC9BE, 0x5220},+    {0xC9BF, 0x717D},+    {0xC9C0, 0x886B},+    {0xC9C1, 0x95EA},+    {0xC9C2, 0x9655},+    {0xC9C3, 0x64C5},+    {0xC9C4, 0x8D61},+    {0xC9C5, 0x81B3},+    {0xC9C6, 0x5584},+    {0xC9C7, 0x6C55},+    {0xC9C8, 0x6247},+    {0xC9C9, 0x7F2E},+    {0xC9CA, 0x5892},+    {0xC9CB, 0x4F24},+    {0xC9CC, 0x5546},+    {0xC9CD, 0x8D4F},+    {0xC9CE, 0x664C},+    {0xC9CF, 0x4E0A},+    {0xC9D0, 0x5C1A},+    {0xC9D1, 0x88F3},+    {0xC9D2, 0x68A2},+    {0xC9D3, 0x634E},+    {0xC9D4, 0x7A0D},+    {0xC9D5, 0x70E7},+    {0xC9D6, 0x828D},+    {0xC9D7, 0x52FA},+    {0xC9D8, 0x97F6},+    {0xC9D9, 0x5C11},+    {0xC9DA, 0x54E8},+    {0xC9DB, 0x90B5},+    {0xC9DC, 0x7ECD},+    {0xC9DD, 0x5962},+    {0xC9DE, 0x8D4A},+    {0xC9DF, 0x86C7},+    {0xC9E0, 0x820C},+    {0xC9E1, 0x820D},+    {0xC9E2, 0x8D66},+    {0xC9E3, 0x6444},+    {0xC9E4, 0x5C04},+    {0xC9E5, 0x6151},+    {0xC9E6, 0x6D89},+    {0xC9E7, 0x793E},+    {0xC9E8, 0x8BBE},+    {0xC9E9, 0x7837},+    {0xC9EA, 0x7533},+    {0xC9EB, 0x547B},+    {0xC9EC, 0x4F38},+    {0xC9ED, 0x8EAB},+    {0xC9EE, 0x6DF1},+    {0xC9EF, 0x5A20},+    {0xC9F0, 0x7EC5},+    {0xC9F1, 0x795E},+    {0xC9F2, 0x6C88},+    {0xC9F3, 0x5BA1},+    {0xC9F4, 0x5A76},+    {0xC9F5, 0x751A},+    {0xC9F6, 0x80BE},+    {0xC9F7, 0x614E},+    {0xC9F8, 0x6E17},+    {0xC9F9, 0x58F0},+    {0xC9FA, 0x751F},+    {0xC9FB, 0x7525},+    {0xC9FC, 0x7272},+    {0xC9FD, 0x5347},+    {0xC9FE, 0x7EF3},+    {0xCAA1, 0x7701},+    {0xCAA2, 0x76DB},+    {0xCAA3, 0x5269},+    {0xCAA4, 0x80DC},+    {0xCAA5, 0x5723},+    {0xCAA6, 0x5E08},+    {0xCAA7, 0x5931},+    {0xCAA8, 0x72EE},+    {0xCAA9, 0x65BD},+    {0xCAAA, 0x6E7F},+    {0xCAAB, 0x8BD7},+    {0xCAAC, 0x5C38},+    {0xCAAD, 0x8671},+    {0xCAAE, 0x5341},+    {0xCAAF, 0x77F3},+    {0xCAB0, 0x62FE},+    {0xCAB1, 0x65F6},+    {0xCAB2, 0x4EC0},+    {0xCAB3, 0x98DF},+    {0xCAB4, 0x8680},+    {0xCAB5, 0x5B9E},+    {0xCAB6, 0x8BC6},+    {0xCAB7, 0x53F2},+    {0xCAB8, 0x77E2},+    {0xCAB9, 0x4F7F},+    {0xCABA, 0x5C4E},+    {0xCABB, 0x9A76},+    {0xCABC, 0x59CB},+    {0xCABD, 0x5F0F},+    {0xCABE, 0x793A},+    {0xCABF, 0x58EB},+    {0xCAC0, 0x4E16},+    {0xCAC1, 0x67FF},+    {0xCAC2, 0x4E8B},+    {0xCAC3, 0x62ED},+    {0xCAC4, 0x8A93},+    {0xCAC5, 0x901D},+    {0xCAC6, 0x52BF},+    {0xCAC7, 0x662F},+    {0xCAC8, 0x55DC},+    {0xCAC9, 0x566C},+    {0xCACA, 0x9002},+    {0xCACB, 0x4ED5},+    {0xCACC, 0x4F8D},+    {0xCACD, 0x91CA},+    {0xCACE, 0x9970},+    {0xCACF, 0x6C0F},+    {0xCAD0, 0x5E02},+    {0xCAD1, 0x6043},+    {0xCAD2, 0x5BA4},+    {0xCAD3, 0x89C6},+    {0xCAD4, 0x8BD5},+    {0xCAD5, 0x6536},+    {0xCAD6, 0x624B},+    {0xCAD7, 0x9996},+    {0xCAD8, 0x5B88},+    {0xCAD9, 0x5BFF},+    {0xCADA, 0x6388},+    {0xCADB, 0x552E},+    {0xCADC, 0x53D7},+    {0xCADD, 0x7626},+    {0xCADE, 0x517D},+    {0xCADF, 0x852C},+    {0xCAE0, 0x67A2},+    {0xCAE1, 0x68B3},+    {0xCAE2, 0x6B8A},+    {0xCAE3, 0x6292},+    {0xCAE4, 0x8F93},+    {0xCAE5, 0x53D4},+    {0xCAE6, 0x8212},+    {0xCAE7, 0x6DD1},+    {0xCAE8, 0x758F},+    {0xCAE9, 0x4E66},+    {0xCAEA, 0x8D4E},+    {0xCAEB, 0x5B70},+    {0xCAEC, 0x719F},+    {0xCAED, 0x85AF},+    {0xCAEE, 0x6691},+    {0xCAEF, 0x66D9},+    {0xCAF0, 0x7F72},+    {0xCAF1, 0x8700},+    {0xCAF2, 0x9ECD},+    {0xCAF3, 0x9F20},+    {0xCAF4, 0x5C5E},+    {0xCAF5, 0x672F},+    {0xCAF6, 0x8FF0},+    {0xCAF7, 0x6811},+    {0xCAF8, 0x675F},+    {0xCAF9, 0x620D},+    {0xCAFA, 0x7AD6},+    {0xCAFB, 0x5885},+    {0xCAFC, 0x5EB6},+    {0xCAFD, 0x6570},+    {0xCAFE, 0x6F31},+    {0xCBA1, 0x6055},+    {0xCBA2, 0x5237},+    {0xCBA3, 0x800D},+    {0xCBA4, 0x6454},+    {0xCBA5, 0x8870},+    {0xCBA6, 0x7529},+    {0xCBA7, 0x5E05},+    {0xCBA8, 0x6813},+    {0xCBA9, 0x62F4},+    {0xCBAA, 0x971C},+    {0xCBAB, 0x53CC},+    {0xCBAC, 0x723D},+    {0xCBAD, 0x8C01},+    {0xCBAE, 0x6C34},+    {0xCBAF, 0x7761},+    {0xCBB0, 0x7A0E},+    {0xCBB1, 0x542E},+    {0xCBB2, 0x77AC},+    {0xCBB3, 0x987A},+    {0xCBB4, 0x821C},+    {0xCBB5, 0x8BF4},+    {0xCBB6, 0x7855},+    {0xCBB7, 0x6714},+    {0xCBB8, 0x70C1},+    {0xCBB9, 0x65AF},+    {0xCBBA, 0x6495},+    {0xCBBB, 0x5636},+    {0xCBBC, 0x601D},+    {0xCBBD, 0x79C1},+    {0xCBBE, 0x53F8},+    {0xCBBF, 0x4E1D},+    {0xCBC0, 0x6B7B},+    {0xCBC1, 0x8086},+    {0xCBC2, 0x5BFA},+    {0xCBC3, 0x55E3},+    {0xCBC4, 0x56DB},+    {0xCBC5, 0x4F3A},+    {0xCBC6, 0x4F3C},+    {0xCBC7, 0x9972},+    {0xCBC8, 0x5DF3},+    {0xCBC9, 0x677E},+    {0xCBCA, 0x8038},+    {0xCBCB, 0x6002},+    {0xCBCC, 0x9882},+    {0xCBCD, 0x9001},+    {0xCBCE, 0x5B8B},+    {0xCBCF, 0x8BBC},+    {0xCBD0, 0x8BF5},+    {0xCBD1, 0x641C},+    {0xCBD2, 0x8258},+    {0xCBD3, 0x64DE},+    {0xCBD4, 0x55FD},+    {0xCBD5, 0x82CF},+    {0xCBD6, 0x9165},+    {0xCBD7, 0x4FD7},+    {0xCBD8, 0x7D20},+    {0xCBD9, 0x901F},+    {0xCBDA, 0x7C9F},+    {0xCBDB, 0x50F3},+    {0xCBDC, 0x5851},+    {0xCBDD, 0x6EAF},+    {0xCBDE, 0x5BBF},+    {0xCBDF, 0x8BC9},+    {0xCBE0, 0x8083},+    {0xCBE1, 0x9178},+    {0xCBE2, 0x849C},+    {0xCBE3, 0x7B97},+    {0xCBE4, 0x867D},+    {0xCBE5, 0x968B},+    {0xCBE6, 0x968F},+    {0xCBE7, 0x7EE5},+    {0xCBE8, 0x9AD3},+    {0xCBE9, 0x788E},+    {0xCBEA, 0x5C81},+    {0xCBEB, 0x7A57},+    {0xCBEC, 0x9042},+    {0xCBED, 0x96A7},+    {0xCBEE, 0x795F},+    {0xCBEF, 0x5B59},+    {0xCBF0, 0x635F},+    {0xCBF1, 0x7B0B},+    {0xCBF2, 0x84D1},+    {0xCBF3, 0x68AD},+    {0xCBF4, 0x5506},+    {0xCBF5, 0x7F29},+    {0xCBF6, 0x7410},+    {0xCBF7, 0x7D22},+    {0xCBF8, 0x9501},+    {0xCBF9, 0x6240},+    {0xCBFA, 0x584C},+    {0xCBFB, 0x4ED6},+    {0xCBFC, 0x5B83},+    {0xCBFD, 0x5979},+    {0xCBFE, 0x5854},+    {0xCCA1, 0x736D},+    {0xCCA2, 0x631E},+    {0xCCA3, 0x8E4B},+    {0xCCA4, 0x8E0F},+    {0xCCA5, 0x80CE},+    {0xCCA6, 0x82D4},+    {0xCCA7, 0x62AC},+    {0xCCA8, 0x53F0},+    {0xCCA9, 0x6CF0},+    {0xCCAA, 0x915E},+    {0xCCAB, 0x592A},+    {0xCCAC, 0x6001},+    {0xCCAD, 0x6C70},+    {0xCCAE, 0x574D},+    {0xCCAF, 0x644A},+    {0xCCB0, 0x8D2A},+    {0xCCB1, 0x762B},+    {0xCCB2, 0x6EE9},+    {0xCCB3, 0x575B},+    {0xCCB4, 0x6A80},+    {0xCCB5, 0x75F0},+    {0xCCB6, 0x6F6D},+    {0xCCB7, 0x8C2D},+    {0xCCB8, 0x8C08},+    {0xCCB9, 0x5766},+    {0xCCBA, 0x6BEF},+    {0xCCBB, 0x8892},+    {0xCCBC, 0x78B3},+    {0xCCBD, 0x63A2},+    {0xCCBE, 0x53F9},+    {0xCCBF, 0x70AD},+    {0xCCC0, 0x6C64},+    {0xCCC1, 0x5858},+    {0xCCC2, 0x642A},+    {0xCCC3, 0x5802},+    {0xCCC4, 0x68E0},+    {0xCCC5, 0x819B},+    {0xCCC6, 0x5510},+    {0xCCC7, 0x7CD6},+    {0xCCC8, 0x5018},+    {0xCCC9, 0x8EBA},+    {0xCCCA, 0x6DCC},+    {0xCCCB, 0x8D9F},+    {0xCCCC, 0x70EB},+    {0xCCCD, 0x638F},+    {0xCCCE, 0x6D9B},+    {0xCCCF, 0x6ED4},+    {0xCCD0, 0x7EE6},+    {0xCCD1, 0x8404},+    {0xCCD2, 0x6843},+    {0xCCD3, 0x9003},+    {0xCCD4, 0x6DD8},+    {0xCCD5, 0x9676},+    {0xCCD6, 0x8BA8},+    {0xCCD7, 0x5957},+    {0xCCD8, 0x7279},+    {0xCCD9, 0x85E4},+    {0xCCDA, 0x817E},+    {0xCCDB, 0x75BC},+    {0xCCDC, 0x8A8A},+    {0xCCDD, 0x68AF},+    {0xCCDE, 0x5254},+    {0xCCDF, 0x8E22},+    {0xCCE0, 0x9511},+    {0xCCE1, 0x63D0},+    {0xCCE2, 0x9898},+    {0xCCE3, 0x8E44},+    {0xCCE4, 0x557C},+    {0xCCE5, 0x4F53},+    {0xCCE6, 0x66FF},+    {0xCCE7, 0x568F},+    {0xCCE8, 0x60D5},+    {0xCCE9, 0x6D95},+    {0xCCEA, 0x5243},+    {0xCCEB, 0x5C49},+    {0xCCEC, 0x5929},+    {0xCCED, 0x6DFB},+    {0xCCEE, 0x586B},+    {0xCCEF, 0x7530},+    {0xCCF0, 0x751C},+    {0xCCF1, 0x606C},+    {0xCCF2, 0x8214},+    {0xCCF3, 0x8146},+    {0xCCF4, 0x6311},+    {0xCCF5, 0x6761},+    {0xCCF6, 0x8FE2},+    {0xCCF7, 0x773A},+    {0xCCF8, 0x8DF3},+    {0xCCF9, 0x8D34},+    {0xCCFA, 0x94C1},+    {0xCCFB, 0x5E16},+    {0xCCFC, 0x5385},+    {0xCCFD, 0x542C},+    {0xCCFE, 0x70C3},+    {0xCDA1, 0x6C40},+    {0xCDA2, 0x5EF7},+    {0xCDA3, 0x505C},+    {0xCDA4, 0x4EAD},+    {0xCDA5, 0x5EAD},+    {0xCDA6, 0x633A},+    {0xCDA7, 0x8247},+    {0xCDA8, 0x901A},+    {0xCDA9, 0x6850},+    {0xCDAA, 0x916E},+    {0xCDAB, 0x77B3},+    {0xCDAC, 0x540C},+    {0xCDAD, 0x94DC},+    {0xCDAE, 0x5F64},+    {0xCDAF, 0x7AE5},+    {0xCDB0, 0x6876},+    {0xCDB1, 0x6345},+    {0xCDB2, 0x7B52},+    {0xCDB3, 0x7EDF},+    {0xCDB4, 0x75DB},+    {0xCDB5, 0x5077},+    {0xCDB6, 0x6295},+    {0xCDB7, 0x5934},+    {0xCDB8, 0x900F},+    {0xCDB9, 0x51F8},+    {0xCDBA, 0x79C3},+    {0xCDBB, 0x7A81},+    {0xCDBC, 0x56FE},+    {0xCDBD, 0x5F92},+    {0xCDBE, 0x9014},+    {0xCDBF, 0x6D82},+    {0xCDC0, 0x5C60},+    {0xCDC1, 0x571F},+    {0xCDC2, 0x5410},+    {0xCDC3, 0x5154},+    {0xCDC4, 0x6E4D},+    {0xCDC5, 0x56E2},+    {0xCDC6, 0x63A8},+    {0xCDC7, 0x9893},+    {0xCDC8, 0x817F},+    {0xCDC9, 0x8715},+    {0xCDCA, 0x892A},+    {0xCDCB, 0x9000},+    {0xCDCC, 0x541E},+    {0xCDCD, 0x5C6F},+    {0xCDCE, 0x81C0},+    {0xCDCF, 0x62D6},+    {0xCDD0, 0x6258},+    {0xCDD1, 0x8131},+    {0xCDD2, 0x9E35},+    {0xCDD3, 0x9640},+    {0xCDD4, 0x9A6E},+    {0xCDD5, 0x9A7C},+    {0xCDD6, 0x692D},+    {0xCDD7, 0x59A5},+    {0xCDD8, 0x62D3},+    {0xCDD9, 0x553E},+    {0xCDDA, 0x6316},+    {0xCDDB, 0x54C7},+    {0xCDDC, 0x86D9},+    {0xCDDD, 0x6D3C},+    {0xCDDE, 0x5A03},+    {0xCDDF, 0x74E6},+    {0xCDE0, 0x889C},+    {0xCDE1, 0x6B6A},+    {0xCDE2, 0x5916},+    {0xCDE3, 0x8C4C},+    {0xCDE4, 0x5F2F},+    {0xCDE5, 0x6E7E},+    {0xCDE6, 0x73A9},+    {0xCDE7, 0x987D},+    {0xCDE8, 0x4E38},+    {0xCDE9, 0x70F7},+    {0xCDEA, 0x5B8C},+    {0xCDEB, 0x7897},+    {0xCDEC, 0x633D},+    {0xCDED, 0x665A},+    {0xCDEE, 0x7696},+    {0xCDEF, 0x60CB},+    {0xCDF0, 0x5B9B},+    {0xCDF1, 0x5A49},+    {0xCDF2, 0x4E07},+    {0xCDF3, 0x8155},+    {0xCDF4, 0x6C6A},+    {0xCDF5, 0x738B},+    {0xCDF6, 0x4EA1},+    {0xCDF7, 0x6789},+    {0xCDF8, 0x7F51},+    {0xCDF9, 0x5F80},+    {0xCDFA, 0x65FA},+    {0xCDFB, 0x671B},+    {0xCDFC, 0x5FD8},+    {0xCDFD, 0x5984},+    {0xCDFE, 0x5A01},+    {0xCEA1, 0x5DCD},+    {0xCEA2, 0x5FAE},+    {0xCEA3, 0x5371},+    {0xCEA4, 0x97E6},+    {0xCEA5, 0x8FDD},+    {0xCEA6, 0x6845},+    {0xCEA7, 0x56F4},+    {0xCEA8, 0x552F},+    {0xCEA9, 0x60DF},+    {0xCEAA, 0x4E3A},+    {0xCEAB, 0x6F4D},+    {0xCEAC, 0x7EF4},+    {0xCEAD, 0x82C7},+    {0xCEAE, 0x840E},+    {0xCEAF, 0x59D4},+    {0xCEB0, 0x4F1F},+    {0xCEB1, 0x4F2A},+    {0xCEB2, 0x5C3E},+    {0xCEB3, 0x7EAC},+    {0xCEB4, 0x672A},+    {0xCEB5, 0x851A},+    {0xCEB6, 0x5473},+    {0xCEB7, 0x754F},+    {0xCEB8, 0x80C3},+    {0xCEB9, 0x5582},+    {0xCEBA, 0x9B4F},+    {0xCEBB, 0x4F4D},+    {0xCEBC, 0x6E2D},+    {0xCEBD, 0x8C13},+    {0xCEBE, 0x5C09},+    {0xCEBF, 0x6170},+    {0xCEC0, 0x536B},+    {0xCEC1, 0x761F},+    {0xCEC2, 0x6E29},+    {0xCEC3, 0x868A},+    {0xCEC4, 0x6587},+    {0xCEC5, 0x95FB},+    {0xCEC6, 0x7EB9},+    {0xCEC7, 0x543B},+    {0xCEC8, 0x7A33},+    {0xCEC9, 0x7D0A},+    {0xCECA, 0x95EE},+    {0xCECB, 0x55E1},+    {0xCECC, 0x7FC1},+    {0xCECD, 0x74EE},+    {0xCECE, 0x631D},+    {0xCECF, 0x8717},+    {0xCED0, 0x6DA1},+    {0xCED1, 0x7A9D},+    {0xCED2, 0x6211},+    {0xCED3, 0x65A1},+    {0xCED4, 0x5367},+    {0xCED5, 0x63E1},+    {0xCED6, 0x6C83},+    {0xCED7, 0x5DEB},+    {0xCED8, 0x545C},+    {0xCED9, 0x94A8},+    {0xCEDA, 0x4E4C},+    {0xCEDB, 0x6C61},+    {0xCEDC, 0x8BEC},+    {0xCEDD, 0x5C4B},+    {0xCEDE, 0x65E0},+    {0xCEDF, 0x829C},+    {0xCEE0, 0x68A7},+    {0xCEE1, 0x543E},+    {0xCEE2, 0x5434},+    {0xCEE3, 0x6BCB},+    {0xCEE4, 0x6B66},+    {0xCEE5, 0x4E94},+    {0xCEE6, 0x6342},+    {0xCEE7, 0x5348},+    {0xCEE8, 0x821E},+    {0xCEE9, 0x4F0D},+    {0xCEEA, 0x4FAE},+    {0xCEEB, 0x575E},+    {0xCEEC, 0x620A},+    {0xCEED, 0x96FE},+    {0xCEEE, 0x6664},+    {0xCEEF, 0x7269},+    {0xCEF0, 0x52FF},+    {0xCEF1, 0x52A1},+    {0xCEF2, 0x609F},+    {0xCEF3, 0x8BEF},+    {0xCEF4, 0x6614},+    {0xCEF5, 0x7199},+    {0xCEF6, 0x6790},+    {0xCEF7, 0x897F},+    {0xCEF8, 0x7852},+    {0xCEF9, 0x77FD},+    {0xCEFA, 0x6670},+    {0xCEFB, 0x563B},+    {0xCEFC, 0x5438},+    {0xCEFD, 0x9521},+    {0xCEFE, 0x727A},+    {0xCFA1, 0x7A00},+    {0xCFA2, 0x606F},+    {0xCFA3, 0x5E0C},+    {0xCFA4, 0x6089},+    {0xCFA5, 0x819D},+    {0xCFA6, 0x5915},+    {0xCFA7, 0x60DC},+    {0xCFA8, 0x7184},+    {0xCFA9, 0x70EF},+    {0xCFAA, 0x6EAA},+    {0xCFAB, 0x6C50},+    {0xCFAC, 0x7280},+    {0xCFAD, 0x6A84},+    {0xCFAE, 0x88AD},+    {0xCFAF, 0x5E2D},+    {0xCFB0, 0x4E60},+    {0xCFB1, 0x5AB3},+    {0xCFB2, 0x559C},+    {0xCFB3, 0x94E3},+    {0xCFB4, 0x6D17},+    {0xCFB5, 0x7CFB},+    {0xCFB6, 0x9699},+    {0xCFB7, 0x620F},+    {0xCFB8, 0x7EC6},+    {0xCFB9, 0x778E},+    {0xCFBA, 0x867E},+    {0xCFBB, 0x5323},+    {0xCFBC, 0x971E},+    {0xCFBD, 0x8F96},+    {0xCFBE, 0x6687},+    {0xCFBF, 0x5CE1},+    {0xCFC0, 0x4FA0},+    {0xCFC1, 0x72ED},+    {0xCFC2, 0x4E0B},+    {0xCFC3, 0x53A6},+    {0xCFC4, 0x590F},+    {0xCFC5, 0x5413},+    {0xCFC6, 0x6380},+    {0xCFC7, 0x9528},+    {0xCFC8, 0x5148},+    {0xCFC9, 0x4ED9},+    {0xCFCA, 0x9C9C},+    {0xCFCB, 0x7EA4},+    {0xCFCC, 0x54B8},+    {0xCFCD, 0x8D24},+    {0xCFCE, 0x8854},+    {0xCFCF, 0x8237},+    {0xCFD0, 0x95F2},+    {0xCFD1, 0x6D8E},+    {0xCFD2, 0x5F26},+    {0xCFD3, 0x5ACC},+    {0xCFD4, 0x663E},+    {0xCFD5, 0x9669},+    {0xCFD6, 0x73B0},+    {0xCFD7, 0x732E},+    {0xCFD8, 0x53BF},+    {0xCFD9, 0x817A},+    {0xCFDA, 0x9985},+    {0xCFDB, 0x7FA1},+    {0xCFDC, 0x5BAA},+    {0xCFDD, 0x9677},+    {0xCFDE, 0x9650},+    {0xCFDF, 0x7EBF},+    {0xCFE0, 0x76F8},+    {0xCFE1, 0x53A2},+    {0xCFE2, 0x9576},+    {0xCFE3, 0x9999},+    {0xCFE4, 0x7BB1},+    {0xCFE5, 0x8944},+    {0xCFE6, 0x6E58},+    {0xCFE7, 0x4E61},+    {0xCFE8, 0x7FD4},+    {0xCFE9, 0x7965},+    {0xCFEA, 0x8BE6},+    {0xCFEB, 0x60F3},+    {0xCFEC, 0x54CD},+    {0xCFED, 0x4EAB},+    {0xCFEE, 0x9879},+    {0xCFEF, 0x5DF7},+    {0xCFF0, 0x6A61},+    {0xCFF1, 0x50CF},+    {0xCFF2, 0x5411},+    {0xCFF3, 0x8C61},+    {0xCFF4, 0x8427},+    {0xCFF5, 0x785D},+    {0xCFF6, 0x9704},+    {0xCFF7, 0x524A},+    {0xCFF8, 0x54EE},+    {0xCFF9, 0x56A3},+    {0xCFFA, 0x9500},+    {0xCFFB, 0x6D88},+    {0xCFFC, 0x5BB5},+    {0xCFFD, 0x6DC6},+    {0xCFFE, 0x6653},+    {0xD0A1, 0x5C0F},+    {0xD0A2, 0x5B5D},+    {0xD0A3, 0x6821},+    {0xD0A4, 0x8096},+    {0xD0A5, 0x5578},+    {0xD0A6, 0x7B11},+    {0xD0A7, 0x6548},+    {0xD0A8, 0x6954},+    {0xD0A9, 0x4E9B},+    {0xD0AA, 0x6B47},+    {0xD0AB, 0x874E},+    {0xD0AC, 0x978B},+    {0xD0AD, 0x534F},+    {0xD0AE, 0x631F},+    {0xD0AF, 0x643A},+    {0xD0B0, 0x90AA},+    {0xD0B1, 0x659C},+    {0xD0B2, 0x80C1},+    {0xD0B3, 0x8C10},+    {0xD0B4, 0x5199},+    {0xD0B5, 0x68B0},+    {0xD0B6, 0x5378},+    {0xD0B7, 0x87F9},+    {0xD0B8, 0x61C8},+    {0xD0B9, 0x6CC4},+    {0xD0BA, 0x6CFB},+    {0xD0BB, 0x8C22},+    {0xD0BC, 0x5C51},+    {0xD0BD, 0x85AA},+    {0xD0BE, 0x82AF},+    {0xD0BF, 0x950C},+    {0xD0C0, 0x6B23},+    {0xD0C1, 0x8F9B},+    {0xD0C2, 0x65B0},+    {0xD0C3, 0x5FFB},+    {0xD0C4, 0x5FC3},+    {0xD0C5, 0x4FE1},+    {0xD0C6, 0x8845},+    {0xD0C7, 0x661F},+    {0xD0C8, 0x8165},+    {0xD0C9, 0x7329},+    {0xD0CA, 0x60FA},+    {0xD0CB, 0x5174},+    {0xD0CC, 0x5211},+    {0xD0CD, 0x578B},+    {0xD0CE, 0x5F62},+    {0xD0CF, 0x90A2},+    {0xD0D0, 0x884C},+    {0xD0D1, 0x9192},+    {0xD0D2, 0x5E78},+    {0xD0D3, 0x674F},+    {0xD0D4, 0x6027},+    {0xD0D5, 0x59D3},+    {0xD0D6, 0x5144},+    {0xD0D7, 0x51F6},+    {0xD0D8, 0x80F8},+    {0xD0D9, 0x5308},+    {0xD0DA, 0x6C79},+    {0xD0DB, 0x96C4},+    {0xD0DC, 0x718A},+    {0xD0DD, 0x4F11},+    {0xD0DE, 0x4FEE},+    {0xD0DF, 0x7F9E},+    {0xD0E0, 0x673D},+    {0xD0E1, 0x55C5},+    {0xD0E2, 0x9508},+    {0xD0E3, 0x79C0},+    {0xD0E4, 0x8896},+    {0xD0E5, 0x7EE3},+    {0xD0E6, 0x589F},+    {0xD0E7, 0x620C},+    {0xD0E8, 0x9700},+    {0xD0E9, 0x865A},+    {0xD0EA, 0x5618},+    {0xD0EB, 0x987B},+    {0xD0EC, 0x5F90},+    {0xD0ED, 0x8BB8},+    {0xD0EE, 0x84C4},+    {0xD0EF, 0x9157},+    {0xD0F0, 0x53D9},+    {0xD0F1, 0x65ED},+    {0xD0F2, 0x5E8F},+    {0xD0F3, 0x755C},+    {0xD0F4, 0x6064},+    {0xD0F5, 0x7D6E},+    {0xD0F6, 0x5A7F},+    {0xD0F7, 0x7EEA},+    {0xD0F8, 0x7EED},+    {0xD0F9, 0x8F69},+    {0xD0FA, 0x55A7},+    {0xD0FB, 0x5BA3},+    {0xD0FC, 0x60AC},+    {0xD0FD, 0x65CB},+    {0xD0FE, 0x7384},+    {0xD1A1, 0x9009},+    {0xD1A2, 0x7663},+    {0xD1A3, 0x7729},+    {0xD1A4, 0x7EDA},+    {0xD1A5, 0x9774},+    {0xD1A6, 0x859B},+    {0xD1A7, 0x5B66},+    {0xD1A8, 0x7A74},+    {0xD1A9, 0x96EA},+    {0xD1AA, 0x8840},+    {0xD1AB, 0x52CB},+    {0xD1AC, 0x718F},+    {0xD1AD, 0x5FAA},+    {0xD1AE, 0x65EC},+    {0xD1AF, 0x8BE2},+    {0xD1B0, 0x5BFB},+    {0xD1B1, 0x9A6F},+    {0xD1B2, 0x5DE1},+    {0xD1B3, 0x6B89},+    {0xD1B4, 0x6C5B},+    {0xD1B5, 0x8BAD},+    {0xD1B6, 0x8BAF},+    {0xD1B7, 0x900A},+    {0xD1B8, 0x8FC5},+    {0xD1B9, 0x538B},+    {0xD1BA, 0x62BC},+    {0xD1BB, 0x9E26},+    {0xD1BC, 0x9E2D},+    {0xD1BD, 0x5440},+    {0xD1BE, 0x4E2B},+    {0xD1BF, 0x82BD},+    {0xD1C0, 0x7259},+    {0xD1C1, 0x869C},+    {0xD1C2, 0x5D16},+    {0xD1C3, 0x8859},+    {0xD1C4, 0x6DAF},+    {0xD1C5, 0x96C5},+    {0xD1C6, 0x54D1},+    {0xD1C7, 0x4E9A},+    {0xD1C8, 0x8BB6},+    {0xD1C9, 0x7109},+    {0xD1CA, 0x54BD},+    {0xD1CB, 0x9609},+    {0xD1CC, 0x70DF},+    {0xD1CD, 0x6DF9},+    {0xD1CE, 0x76D0},+    {0xD1CF, 0x4E25},+    {0xD1D0, 0x7814},+    {0xD1D1, 0x8712},+    {0xD1D2, 0x5CA9},+    {0xD1D3, 0x5EF6},+    {0xD1D4, 0x8A00},+    {0xD1D5, 0x989C},+    {0xD1D6, 0x960E},+    {0xD1D7, 0x708E},+    {0xD1D8, 0x6CBF},+    {0xD1D9, 0x5944},+    {0xD1DA, 0x63A9},+    {0xD1DB, 0x773C},+    {0xD1DC, 0x884D},+    {0xD1DD, 0x6F14},+    {0xD1DE, 0x8273},+    {0xD1DF, 0x5830},+    {0xD1E0, 0x71D5},+    {0xD1E1, 0x538C},+    {0xD1E2, 0x781A},+    {0xD1E3, 0x96C1},+    {0xD1E4, 0x5501},+    {0xD1E5, 0x5F66},+    {0xD1E6, 0x7130},+    {0xD1E7, 0x5BB4},+    {0xD1E8, 0x8C1A},+    {0xD1E9, 0x9A8C},+    {0xD1EA, 0x6B83},+    {0xD1EB, 0x592E},+    {0xD1EC, 0x9E2F},+    {0xD1ED, 0x79E7},+    {0xD1EE, 0x6768},+    {0xD1EF, 0x626C},+    {0xD1F0, 0x4F6F},+    {0xD1F1, 0x75A1},+    {0xD1F2, 0x7F8A},+    {0xD1F3, 0x6D0B},+    {0xD1F4, 0x9633},+    {0xD1F5, 0x6C27},+    {0xD1F6, 0x4EF0},+    {0xD1F7, 0x75D2},+    {0xD1F8, 0x517B},+    {0xD1F9, 0x6837},+    {0xD1FA, 0x6F3E},+    {0xD1FB, 0x9080},+    {0xD1FC, 0x8170},+    {0xD1FD, 0x5996},+    {0xD1FE, 0x7476},+    {0xD2A1, 0x6447},+    {0xD2A2, 0x5C27},+    {0xD2A3, 0x9065},+    {0xD2A4, 0x7A91},+    {0xD2A5, 0x8C23},+    {0xD2A6, 0x59DA},+    {0xD2A7, 0x54AC},+    {0xD2A8, 0x8200},+    {0xD2A9, 0x836F},+    {0xD2AA, 0x8981},+    {0xD2AB, 0x8000},+    {0xD2AC, 0x6930},+    {0xD2AD, 0x564E},+    {0xD2AE, 0x8036},+    {0xD2AF, 0x7237},+    {0xD2B0, 0x91CE},+    {0xD2B1, 0x51B6},+    {0xD2B2, 0x4E5F},+    {0xD2B3, 0x9875},+    {0xD2B4, 0x6396},+    {0xD2B5, 0x4E1A},+    {0xD2B6, 0x53F6},+    {0xD2B7, 0x66F3},+    {0xD2B8, 0x814B},+    {0xD2B9, 0x591C},+    {0xD2BA, 0x6DB2},+    {0xD2BB, 0x4E00},+    {0xD2BC, 0x58F9},+    {0xD2BD, 0x533B},+    {0xD2BE, 0x63D6},+    {0xD2BF, 0x94F1},+    {0xD2C0, 0x4F9D},+    {0xD2C1, 0x4F0A},+    {0xD2C2, 0x8863},+    {0xD2C3, 0x9890},+    {0xD2C4, 0x5937},+    {0xD2C5, 0x9057},+    {0xD2C6, 0x79FB},+    {0xD2C7, 0x4EEA},+    {0xD2C8, 0x80F0},+    {0xD2C9, 0x7591},+    {0xD2CA, 0x6C82},+    {0xD2CB, 0x5B9C},+    {0xD2CC, 0x59E8},+    {0xD2CD, 0x5F5D},+    {0xD2CE, 0x6905},+    {0xD2CF, 0x8681},+    {0xD2D0, 0x501A},+    {0xD2D1, 0x5DF2},+    {0xD2D2, 0x4E59},+    {0xD2D3, 0x77E3},+    {0xD2D4, 0x4EE5},+    {0xD2D5, 0x827A},+    {0xD2D6, 0x6291},+    {0xD2D7, 0x6613},+    {0xD2D8, 0x9091},+    {0xD2D9, 0x5C79},+    {0xD2DA, 0x4EBF},+    {0xD2DB, 0x5F79},+    {0xD2DC, 0x81C6},+    {0xD2DD, 0x9038},+    {0xD2DE, 0x8084},+    {0xD2DF, 0x75AB},+    {0xD2E0, 0x4EA6},+    {0xD2E1, 0x88D4},+    {0xD2E2, 0x610F},+    {0xD2E3, 0x6BC5},+    {0xD2E4, 0x5FC6},+    {0xD2E5, 0x4E49},+    {0xD2E6, 0x76CA},+    {0xD2E7, 0x6EA2},+    {0xD2E8, 0x8BE3},+    {0xD2E9, 0x8BAE},+    {0xD2EA, 0x8C0A},+    {0xD2EB, 0x8BD1},+    {0xD2EC, 0x5F02},+    {0xD2ED, 0x7FFC},+    {0xD2EE, 0x7FCC},+    {0xD2EF, 0x7ECE},+    {0xD2F0, 0x8335},+    {0xD2F1, 0x836B},+    {0xD2F2, 0x56E0},+    {0xD2F3, 0x6BB7},+    {0xD2F4, 0x97F3},+    {0xD2F5, 0x9634},+    {0xD2F6, 0x59FB},+    {0xD2F7, 0x541F},+    {0xD2F8, 0x94F6},+    {0xD2F9, 0x6DEB},+    {0xD2FA, 0x5BC5},+    {0xD2FB, 0x996E},+    {0xD2FC, 0x5C39},+    {0xD2FD, 0x5F15},+    {0xD2FE, 0x9690},+    {0xD3A1, 0x5370},+    {0xD3A2, 0x82F1},+    {0xD3A3, 0x6A31},+    {0xD3A4, 0x5A74},+    {0xD3A5, 0x9E70},+    {0xD3A6, 0x5E94},+    {0xD3A7, 0x7F28},+    {0xD3A8, 0x83B9},+    {0xD3A9, 0x8424},+    {0xD3AA, 0x8425},+    {0xD3AB, 0x8367},+    {0xD3AC, 0x8747},+    {0xD3AD, 0x8FCE},+    {0xD3AE, 0x8D62},+    {0xD3AF, 0x76C8},+    {0xD3B0, 0x5F71},+    {0xD3B1, 0x9896},+    {0xD3B2, 0x786C},+    {0xD3B3, 0x6620},+    {0xD3B4, 0x54DF},+    {0xD3B5, 0x62E5},+    {0xD3B6, 0x4F63},+    {0xD3B7, 0x81C3},+    {0xD3B8, 0x75C8},+    {0xD3B9, 0x5EB8},+    {0xD3BA, 0x96CD},+    {0xD3BB, 0x8E0A},+    {0xD3BC, 0x86F9},+    {0xD3BD, 0x548F},+    {0xD3BE, 0x6CF3},+    {0xD3BF, 0x6D8C},+    {0xD3C0, 0x6C38},+    {0xD3C1, 0x607F},+    {0xD3C2, 0x52C7},+    {0xD3C3, 0x7528},+    {0xD3C4, 0x5E7D},+    {0xD3C5, 0x4F18},+    {0xD3C6, 0x60A0},+    {0xD3C7, 0x5FE7},+    {0xD3C8, 0x5C24},+    {0xD3C9, 0x7531},+    {0xD3CA, 0x90AE},+    {0xD3CB, 0x94C0},+    {0xD3CC, 0x72B9},+    {0xD3CD, 0x6CB9},+    {0xD3CE, 0x6E38},+    {0xD3CF, 0x9149},+    {0xD3D0, 0x6709},+    {0xD3D1, 0x53CB},+    {0xD3D2, 0x53F3},+    {0xD3D3, 0x4F51},+    {0xD3D4, 0x91C9},+    {0xD3D5, 0x8BF1},+    {0xD3D6, 0x53C8},+    {0xD3D7, 0x5E7C},+    {0xD3D8, 0x8FC2},+    {0xD3D9, 0x6DE4},+    {0xD3DA, 0x4E8E},+    {0xD3DB, 0x76C2},+    {0xD3DC, 0x6986},+    {0xD3DD, 0x865E},+    {0xD3DE, 0x611A},+    {0xD3DF, 0x8206},+    {0xD3E0, 0x4F59},+    {0xD3E1, 0x4FDE},+    {0xD3E2, 0x903E},+    {0xD3E3, 0x9C7C},+    {0xD3E4, 0x6109},+    {0xD3E5, 0x6E1D},+    {0xD3E6, 0x6E14},+    {0xD3E7, 0x9685},+    {0xD3E8, 0x4E88},+    {0xD3E9, 0x5A31},+    {0xD3EA, 0x96E8},+    {0xD3EB, 0x4E0E},+    {0xD3EC, 0x5C7F},+    {0xD3ED, 0x79B9},+    {0xD3EE, 0x5B87},+    {0xD3EF, 0x8BED},+    {0xD3F0, 0x7FBD},+    {0xD3F1, 0x7389},+    {0xD3F2, 0x57DF},+    {0xD3F3, 0x828B},+    {0xD3F4, 0x90C1},+    {0xD3F5, 0x5401},+    {0xD3F6, 0x9047},+    {0xD3F7, 0x55BB},+    {0xD3F8, 0x5CEA},+    {0xD3F9, 0x5FA1},+    {0xD3FA, 0x6108},+    {0xD3FB, 0x6B32},+    {0xD3FC, 0x72F1},+    {0xD3FD, 0x80B2},+    {0xD3FE, 0x8A89},+    {0xD4A1, 0x6D74},+    {0xD4A2, 0x5BD3},+    {0xD4A3, 0x88D5},+    {0xD4A4, 0x9884},+    {0xD4A5, 0x8C6B},+    {0xD4A6, 0x9A6D},+    {0xD4A7, 0x9E33},+    {0xD4A8, 0x6E0A},+    {0xD4A9, 0x51A4},+    {0xD4AA, 0x5143},+    {0xD4AB, 0x57A3},+    {0xD4AC, 0x8881},+    {0xD4AD, 0x539F},+    {0xD4AE, 0x63F4},+    {0xD4AF, 0x8F95},+    {0xD4B0, 0x56ED},+    {0xD4B1, 0x5458},+    {0xD4B2, 0x5706},+    {0xD4B3, 0x733F},+    {0xD4B4, 0x6E90},+    {0xD4B5, 0x7F18},+    {0xD4B6, 0x8FDC},+    {0xD4B7, 0x82D1},+    {0xD4B8, 0x613F},+    {0xD4B9, 0x6028},+    {0xD4BA, 0x9662},+    {0xD4BB, 0x66F0},+    {0xD4BC, 0x7EA6},+    {0xD4BD, 0x8D8A},+    {0xD4BE, 0x8DC3},+    {0xD4BF, 0x94A5},+    {0xD4C0, 0x5CB3},+    {0xD4C1, 0x7CA4},+    {0xD4C2, 0x6708},+    {0xD4C3, 0x60A6},+    {0xD4C4, 0x9605},+    {0xD4C5, 0x8018},+    {0xD4C6, 0x4E91},+    {0xD4C7, 0x90E7},+    {0xD4C8, 0x5300},+    {0xD4C9, 0x9668},+    {0xD4CA, 0x5141},+    {0xD4CB, 0x8FD0},+    {0xD4CC, 0x8574},+    {0xD4CD, 0x915D},+    {0xD4CE, 0x6655},+    {0xD4CF, 0x97F5},+    {0xD4D0, 0x5B55},+    {0xD4D1, 0x531D},+    {0xD4D2, 0x7838},+    {0xD4D3, 0x6742},+    {0xD4D4, 0x683D},+    {0xD4D5, 0x54C9},+    {0xD4D6, 0x707E},+    {0xD4D7, 0x5BB0},+    {0xD4D8, 0x8F7D},+    {0xD4D9, 0x518D},+    {0xD4DA, 0x5728},+    {0xD4DB, 0x54B1},+    {0xD4DC, 0x6512},+    {0xD4DD, 0x6682},+    {0xD4DE, 0x8D5E},+    {0xD4DF, 0x8D43},+    {0xD4E0, 0x810F},+    {0xD4E1, 0x846C},+    {0xD4E2, 0x906D},+    {0xD4E3, 0x7CDF},+    {0xD4E4, 0x51FF},+    {0xD4E5, 0x85FB},+    {0xD4E6, 0x67A3},+    {0xD4E7, 0x65E9},+    {0xD4E8, 0x6FA1},+    {0xD4E9, 0x86A4},+    {0xD4EA, 0x8E81},+    {0xD4EB, 0x566A},+    {0xD4EC, 0x9020},+    {0xD4ED, 0x7682},+    {0xD4EE, 0x7076},+    {0xD4EF, 0x71E5},+    {0xD4F0, 0x8D23},+    {0xD4F1, 0x62E9},+    {0xD4F2, 0x5219},+    {0xD4F3, 0x6CFD},+    {0xD4F4, 0x8D3C},+    {0xD4F5, 0x600E},+    {0xD4F6, 0x589E},+    {0xD4F7, 0x618E},+    {0xD4F8, 0x66FE},+    {0xD4F9, 0x8D60},+    {0xD4FA, 0x624E},+    {0xD4FB, 0x55B3},+    {0xD4FC, 0x6E23},+    {0xD4FD, 0x672D},+    {0xD4FE, 0x8F67},+    {0xD5A1, 0x94E1},+    {0xD5A2, 0x95F8},+    {0xD5A3, 0x7728},+    {0xD5A4, 0x6805},+    {0xD5A5, 0x69A8},+    {0xD5A6, 0x548B},+    {0xD5A7, 0x4E4D},+    {0xD5A8, 0x70B8},+    {0xD5A9, 0x8BC8},+    {0xD5AA, 0x6458},+    {0xD5AB, 0x658B},+    {0xD5AC, 0x5B85},+    {0xD5AD, 0x7A84},+    {0xD5AE, 0x503A},+    {0xD5AF, 0x5BE8},+    {0xD5B0, 0x77BB},+    {0xD5B1, 0x6BE1},+    {0xD5B2, 0x8A79},+    {0xD5B3, 0x7C98},+    {0xD5B4, 0x6CBE},+    {0xD5B5, 0x76CF},+    {0xD5B6, 0x65A9},+    {0xD5B7, 0x8F97},+    {0xD5B8, 0x5D2D},+    {0xD5B9, 0x5C55},+    {0xD5BA, 0x8638},+    {0xD5BB, 0x6808},+    {0xD5BC, 0x5360},+    {0xD5BD, 0x6218},+    {0xD5BE, 0x7AD9},+    {0xD5BF, 0x6E5B},+    {0xD5C0, 0x7EFD},+    {0xD5C1, 0x6A1F},+    {0xD5C2, 0x7AE0},+    {0xD5C3, 0x5F70},+    {0xD5C4, 0x6F33},+    {0xD5C5, 0x5F20},+    {0xD5C6, 0x638C},+    {0xD5C7, 0x6DA8},+    {0xD5C8, 0x6756},+    {0xD5C9, 0x4E08},+    {0xD5CA, 0x5E10},+    {0xD5CB, 0x8D26},+    {0xD5CC, 0x4ED7},+    {0xD5CD, 0x80C0},+    {0xD5CE, 0x7634},+    {0xD5CF, 0x969C},+    {0xD5D0, 0x62DB},+    {0xD5D1, 0x662D},+    {0xD5D2, 0x627E},+    {0xD5D3, 0x6CBC},+    {0xD5D4, 0x8D75},+    {0xD5D5, 0x7167},+    {0xD5D6, 0x7F69},+    {0xD5D7, 0x5146},+    {0xD5D8, 0x8087},+    {0xD5D9, 0x53EC},+    {0xD5DA, 0x906E},+    {0xD5DB, 0x6298},+    {0xD5DC, 0x54F2},+    {0xD5DD, 0x86F0},+    {0xD5DE, 0x8F99},+    {0xD5DF, 0x8005},+    {0xD5E0, 0x9517},+    {0xD5E1, 0x8517},+    {0xD5E2, 0x8FD9},+    {0xD5E3, 0x6D59},+    {0xD5E4, 0x73CD},+    {0xD5E5, 0x659F},+    {0xD5E6, 0x771F},+    {0xD5E7, 0x7504},+    {0xD5E8, 0x7827},+    {0xD5E9, 0x81FB},+    {0xD5EA, 0x8D1E},+    {0xD5EB, 0x9488},+    {0xD5EC, 0x4FA6},+    {0xD5ED, 0x6795},+    {0xD5EE, 0x75B9},+    {0xD5EF, 0x8BCA},+    {0xD5F0, 0x9707},+    {0xD5F1, 0x632F},+    {0xD5F2, 0x9547},+    {0xD5F3, 0x9635},+    {0xD5F4, 0x84B8},+    {0xD5F5, 0x6323},+    {0xD5F6, 0x7741},+    {0xD5F7, 0x5F81},+    {0xD5F8, 0x72F0},+    {0xD5F9, 0x4E89},+    {0xD5FA, 0x6014},+    {0xD5FB, 0x6574},+    {0xD5FC, 0x62EF},+    {0xD5FD, 0x6B63},+    {0xD5FE, 0x653F},+    {0xD6A1, 0x5E27},+    {0xD6A2, 0x75C7},+    {0xD6A3, 0x90D1},+    {0xD6A4, 0x8BC1},+    {0xD6A5, 0x829D},+    {0xD6A6, 0x679D},+    {0xD6A7, 0x652F},+    {0xD6A8, 0x5431},+    {0xD6A9, 0x8718},+    {0xD6AA, 0x77E5},+    {0xD6AB, 0x80A2},+    {0xD6AC, 0x8102},+    {0xD6AD, 0x6C41},+    {0xD6AE, 0x4E4B},+    {0xD6AF, 0x7EC7},+    {0xD6B0, 0x804C},+    {0xD6B1, 0x76F4},+    {0xD6B2, 0x690D},+    {0xD6B3, 0x6B96},+    {0xD6B4, 0x6267},+    {0xD6B5, 0x503C},+    {0xD6B6, 0x4F84},+    {0xD6B7, 0x5740},+    {0xD6B8, 0x6307},+    {0xD6B9, 0x6B62},+    {0xD6BA, 0x8DBE},+    {0xD6BB, 0x53EA},+    {0xD6BC, 0x65E8},+    {0xD6BD, 0x7EB8},+    {0xD6BE, 0x5FD7},+    {0xD6BF, 0x631A},+    {0xD6C0, 0x63B7},+    {0xD6C1, 0x81F3},+    {0xD6C2, 0x81F4},+    {0xD6C3, 0x7F6E},+    {0xD6C4, 0x5E1C},+    {0xD6C5, 0x5CD9},+    {0xD6C6, 0x5236},+    {0xD6C7, 0x667A},+    {0xD6C8, 0x79E9},+    {0xD6C9, 0x7A1A},+    {0xD6CA, 0x8D28},+    {0xD6CB, 0x7099},+    {0xD6CC, 0x75D4},+    {0xD6CD, 0x6EDE},+    {0xD6CE, 0x6CBB},+    {0xD6CF, 0x7A92},+    {0xD6D0, 0x4E2D},+    {0xD6D1, 0x76C5},+    {0xD6D2, 0x5FE0},+    {0xD6D3, 0x949F},+    {0xD6D4, 0x8877},+    {0xD6D5, 0x7EC8},+    {0xD6D6, 0x79CD},+    {0xD6D7, 0x80BF},+    {0xD6D8, 0x91CD},+    {0xD6D9, 0x4EF2},+    {0xD6DA, 0x4F17},+    {0xD6DB, 0x821F},+    {0xD6DC, 0x5468},+    {0xD6DD, 0x5DDE},+    {0xD6DE, 0x6D32},+    {0xD6DF, 0x8BCC},+    {0xD6E0, 0x7CA5},+    {0xD6E1, 0x8F74},+    {0xD6E2, 0x8098},+    {0xD6E3, 0x5E1A},+    {0xD6E4, 0x5492},+    {0xD6E5, 0x76B1},+    {0xD6E6, 0x5B99},+    {0xD6E7, 0x663C},+    {0xD6E8, 0x9AA4},+    {0xD6E9, 0x73E0},+    {0xD6EA, 0x682A},+    {0xD6EB, 0x86DB},+    {0xD6EC, 0x6731},+    {0xD6ED, 0x732A},+    {0xD6EE, 0x8BF8},+    {0xD6EF, 0x8BDB},+    {0xD6F0, 0x9010},+    {0xD6F1, 0x7AF9},+    {0xD6F2, 0x70DB},+    {0xD6F3, 0x716E},+    {0xD6F4, 0x62C4},+    {0xD6F5, 0x77A9},+    {0xD6F6, 0x5631},+    {0xD6F7, 0x4E3B},+    {0xD6F8, 0x8457},+    {0xD6F9, 0x67F1},+    {0xD6FA, 0x52A9},+    {0xD6FB, 0x86C0},+    {0xD6FC, 0x8D2E},+    {0xD6FD, 0x94F8},+    {0xD6FE, 0x7B51},+    {0xD7A1, 0x4F4F},+    {0xD7A2, 0x6CE8},+    {0xD7A3, 0x795D},+    {0xD7A4, 0x9A7B},+    {0xD7A5, 0x6293},+    {0xD7A6, 0x722A},+    {0xD7A7, 0x62FD},+    {0xD7A8, 0x4E13},+    {0xD7A9, 0x7816},+    {0xD7AA, 0x8F6C},+    {0xD7AB, 0x64B0},+    {0xD7AC, 0x8D5A},+    {0xD7AD, 0x7BC6},+    {0xD7AE, 0x6869},+    {0xD7AF, 0x5E84},+    {0xD7B0, 0x88C5},+    {0xD7B1, 0x5986},+    {0xD7B2, 0x649E},+    {0xD7B3, 0x58EE},+    {0xD7B4, 0x72B6},+    {0xD7B5, 0x690E},+    {0xD7B6, 0x9525},+    {0xD7B7, 0x8FFD},+    {0xD7B8, 0x8D58},+    {0xD7B9, 0x5760},+    {0xD7BA, 0x7F00},+    {0xD7BB, 0x8C06},+    {0xD7BC, 0x51C6},+    {0xD7BD, 0x6349},+    {0xD7BE, 0x62D9},+    {0xD7BF, 0x5353},+    {0xD7C0, 0x684C},+    {0xD7C1, 0x7422},+    {0xD7C2, 0x8301},+    {0xD7C3, 0x914C},+    {0xD7C4, 0x5544},+    {0xD7C5, 0x7740},+    {0xD7C6, 0x707C},+    {0xD7C7, 0x6D4A},+    {0xD7C8, 0x5179},+    {0xD7C9, 0x54A8},+    {0xD7CA, 0x8D44},+    {0xD7CB, 0x59FF},+    {0xD7CC, 0x6ECB},+    {0xD7CD, 0x6DC4},+    {0xD7CE, 0x5B5C},+    {0xD7CF, 0x7D2B},+    {0xD7D0, 0x4ED4},+    {0xD7D1, 0x7C7D},+    {0xD7D2, 0x6ED3},+    {0xD7D3, 0x5B50},+    {0xD7D4, 0x81EA},+    {0xD7D5, 0x6E0D},+    {0xD7D6, 0x5B57},+    {0xD7D7, 0x9B03},+    {0xD7D8, 0x68D5},+    {0xD7D9, 0x8E2A},+    {0xD7DA, 0x5B97},+    {0xD7DB, 0x7EFC},+    {0xD7DC, 0x603B},+    {0xD7DD, 0x7EB5},+    {0xD7DE, 0x90B9},+    {0xD7DF, 0x8D70},+    {0xD7E0, 0x594F},+    {0xD7E1, 0x63CD},+    {0xD7E2, 0x79DF},+    {0xD7E3, 0x8DB3},+    {0xD7E4, 0x5352},+    {0xD7E5, 0x65CF},+    {0xD7E6, 0x7956},+    {0xD7E7, 0x8BC5},+    {0xD7E8, 0x963B},+    {0xD7E9, 0x7EC4},+    {0xD7EA, 0x94BB},+    {0xD7EB, 0x7E82},+    {0xD7EC, 0x5634},+    {0xD7ED, 0x9189},+    {0xD7EE, 0x6700},+    {0xD7EF, 0x7F6A},+    {0xD7F0, 0x5C0A},+    {0xD7F1, 0x9075},+    {0xD7F2, 0x6628},+    {0xD7F3, 0x5DE6},+    {0xD7F4, 0x4F50},+    {0xD7F5, 0x67DE},+    {0xD7F6, 0x505A},+    {0xD7F7, 0x4F5C},+    {0xD7F8, 0x5750},+    {0xD7F9, 0x5EA7},+    {0xD8A1, 0x4E8D},+    {0xD8A2, 0x4E0C},+    {0xD8A3, 0xFA0C},+    {0xD8A4, 0x4E10},+    {0xD8A5, 0x5EFF},+    {0xD8A6, 0x5345},+    {0xD8A7, 0x4E15},+    {0xD8A8, 0x4E98},+    {0xD8A9, 0x4E1E},+    {0xD8AA, 0x9B32},+    {0xD8AB, 0x5B6C},+    {0xD8AC, 0x5669},+    {0xD8AD, 0x4E28},+    {0xD8AE, 0x79BA},+    {0xD8AF, 0x4E3F},+    {0xD8B0, 0x5315},+    {0xD8B1, 0x4E47},+    {0xD8B2, 0x592D},+    {0xD8B3, 0x723B},+    {0xD8B4, 0x536E},+    {0xD8B5, 0x6C10},+    {0xD8B6, 0x56DF},+    {0xD8B7, 0x80E4},+    {0xD8B8, 0x9997},+    {0xD8B9, 0x6BD3},+    {0xD8BA, 0x777E},+    {0xD8BB, 0x9F17},+    {0xD8BC, 0x4E36},+    {0xD8BD, 0x4E9F},+    {0xD8BE, 0x9F10},+    {0xD8BF, 0x4E5C},+    {0xD8C0, 0x4E69},+    {0xD8C1, 0x4E93},+    {0xD8C2, 0x8288},+    {0xD8C3, 0x5B5B},+    {0xD8C4, 0x556C},+    {0xD8C5, 0x560F},+    {0xD8C6, 0x4EC4},+    {0xD8C7, 0x538D},+    {0xD8C8, 0x539D},+    {0xD8C9, 0x53A3},+    {0xD8CA, 0x53A5},+    {0xD8CB, 0x53AE},+    {0xD8CC, 0x9765},+    {0xD8CD, 0x8D5D},+    {0xD8CE, 0x531A},+    {0xD8CF, 0x53F5},+    {0xD8D0, 0x5326},+    {0xD8D1, 0x532E},+    {0xD8D2, 0x533E},+    {0xD8D3, 0x8D5C},+    {0xD8D4, 0x5366},+    {0xD8D5, 0x5363},+    {0xD8D6, 0x5202},+    {0xD8D7, 0x5208},+    {0xD8D8, 0x520E},+    {0xD8D9, 0x522D},+    {0xD8DA, 0x5233},+    {0xD8DB, 0x523F},+    {0xD8DC, 0x5240},+    {0xD8DD, 0x524C},+    {0xD8DE, 0x525E},+    {0xD8DF, 0x5261},+    {0xD8E0, 0x525C},+    {0xD8E1, 0x84AF},+    {0xD8E2, 0x527D},+    {0xD8E3, 0x5282},+    {0xD8E4, 0x5281},+    {0xD8E5, 0x5290},+    {0xD8E6, 0x5293},+    {0xD8E7, 0x5182},+    {0xD8E8, 0x7F54},+    {0xD8E9, 0x4EBB},+    {0xD8EA, 0x4EC3},+    {0xD8EB, 0x4EC9},+    {0xD8EC, 0x4EC2},+    {0xD8ED, 0x4EE8},+    {0xD8EE, 0x4EE1},+    {0xD8EF, 0x4EEB},+    {0xD8F0, 0x4EDE},+    {0xD8F1, 0x4F1B},+    {0xD8F2, 0x4EF3},+    {0xD8F3, 0x4F22},+    {0xD8F4, 0x4F64},+    {0xD8F5, 0x4EF5},+    {0xD8F6, 0x4F25},+    {0xD8F7, 0x4F27},+    {0xD8F8, 0x4F09},+    {0xD8F9, 0x4F2B},+    {0xD8FA, 0x4F5E},+    {0xD8FB, 0x4F67},+    {0xD8FC, 0x6538},+    {0xD8FD, 0x4F5A},+    {0xD8FE, 0x4F5D},+    {0xD9A1, 0x4F5F},+    {0xD9A2, 0x4F57},+    {0xD9A3, 0x4F32},+    {0xD9A4, 0x4F3D},+    {0xD9A5, 0x4F76},+    {0xD9A6, 0x4F74},+    {0xD9A7, 0x4F91},+    {0xD9A8, 0x4F89},+    {0xD9A9, 0x4F83},+    {0xD9AA, 0x4F8F},+    {0xD9AB, 0x4F7E},+    {0xD9AC, 0x4F7B},+    {0xD9AD, 0x4FAA},+    {0xD9AE, 0x4F7C},+    {0xD9AF, 0x4FAC},+    {0xD9B0, 0x4F94},+    {0xD9B1, 0x4FE6},+    {0xD9B2, 0x4FE8},+    {0xD9B3, 0x4FEA},+    {0xD9B4, 0x4FC5},+    {0xD9B5, 0x4FDA},+    {0xD9B6, 0x4FE3},+    {0xD9B7, 0x4FDC},+    {0xD9B8, 0x4FD1},+    {0xD9B9, 0x4FDF},+    {0xD9BA, 0x4FF8},+    {0xD9BB, 0x5029},+    {0xD9BC, 0x504C},+    {0xD9BD, 0x4FF3},+    {0xD9BE, 0x502C},+    {0xD9BF, 0x500F},+    {0xD9C0, 0x502E},+    {0xD9C1, 0x502D},+    {0xD9C2, 0x4FFE},+    {0xD9C3, 0x501C},+    {0xD9C4, 0x500C},+    {0xD9C5, 0x5025},+    {0xD9C6, 0x5028},+    {0xD9C7, 0x507E},+    {0xD9C8, 0x5043},+    {0xD9C9, 0x5055},+    {0xD9CA, 0x5048},+    {0xD9CB, 0x504E},+    {0xD9CC, 0x506C},+    {0xD9CD, 0x507B},+    {0xD9CE, 0x50A5},+    {0xD9CF, 0x50A7},+    {0xD9D0, 0x50A9},+    {0xD9D1, 0x50BA},+    {0xD9D2, 0x50D6},+    {0xD9D3, 0x5106},+    {0xD9D4, 0x50ED},+    {0xD9D5, 0x50EC},+    {0xD9D6, 0x50E6},+    {0xD9D7, 0x50EE},+    {0xD9D8, 0x5107},+    {0xD9D9, 0x510B},+    {0xD9DA, 0x4EDD},+    {0xD9DB, 0x6C3D},+    {0xD9DC, 0x4F58},+    {0xD9DD, 0x4F65},+    {0xD9DE, 0x4FCE},+    {0xD9DF, 0x9FA0},+    {0xD9E0, 0x6C46},+    {0xD9E1, 0x7C74},+    {0xD9E2, 0x516E},+    {0xD9E3, 0x5DFD},+    {0xD9E4, 0x9EC9},+    {0xD9E5, 0x9998},+    {0xD9E6, 0x5181},+    {0xD9E7, 0x5914},+    {0xD9E8, 0x52F9},+    {0xD9E9, 0x530D},+    {0xD9EA, 0x8A07},+    {0xD9EB, 0x5310},+    {0xD9EC, 0x51EB},+    {0xD9ED, 0x5919},+    {0xD9EE, 0x5155},+    {0xD9EF, 0x4EA0},+    {0xD9F0, 0x5156},+    {0xD9F1, 0x4EB3},+    {0xD9F2, 0x886E},+    {0xD9F3, 0x88A4},+    {0xD9F4, 0x4EB5},+    {0xD9F5, 0x8114},+    {0xD9F6, 0x88D2},+    {0xD9F7, 0x7980},+    {0xD9F8, 0x5B34},+    {0xD9F9, 0x8803},+    {0xD9FA, 0x7FB8},+    {0xD9FB, 0x51AB},+    {0xD9FC, 0x51B1},+    {0xD9FD, 0x51BD},+    {0xD9FE, 0x51BC},+    {0xDAA1, 0x51C7},+    {0xDAA2, 0x5196},+    {0xDAA3, 0x51A2},+    {0xDAA4, 0x51A5},+    {0xDAA5, 0x8BA0},+    {0xDAA6, 0x8BA6},+    {0xDAA7, 0x8BA7},+    {0xDAA8, 0x8BAA},+    {0xDAA9, 0x8BB4},+    {0xDAAA, 0x8BB5},+    {0xDAAB, 0x8BB7},+    {0xDAAC, 0x8BC2},+    {0xDAAD, 0x8BC3},+    {0xDAAE, 0x8BCB},+    {0xDAAF, 0x8BCF},+    {0xDAB0, 0x8BCE},+    {0xDAB1, 0x8BD2},+    {0xDAB2, 0x8BD3},+    {0xDAB3, 0x8BD4},+    {0xDAB4, 0x8BD6},+    {0xDAB5, 0x8BD8},+    {0xDAB6, 0x8BD9},+    {0xDAB7, 0x8BDC},+    {0xDAB8, 0x8BDF},+    {0xDAB9, 0x8BE0},+    {0xDABA, 0x8BE4},+    {0xDABB, 0x8BE8},+    {0xDABC, 0x8BE9},+    {0xDABD, 0x8BEE},+    {0xDABE, 0x8BF0},+    {0xDABF, 0x8BF3},+    {0xDAC0, 0x8BF6},+    {0xDAC1, 0x8BF9},+    {0xDAC2, 0x8BFC},+    {0xDAC3, 0x8BFF},+    {0xDAC4, 0x8C00},+    {0xDAC5, 0x8C02},+    {0xDAC6, 0x8C04},+    {0xDAC7, 0x8C07},+    {0xDAC8, 0x8C0C},+    {0xDAC9, 0x8C0F},+    {0xDACA, 0x8C11},+    {0xDACB, 0x8C12},+    {0xDACC, 0x8C14},+    {0xDACD, 0x8C15},+    {0xDACE, 0x8C16},+    {0xDACF, 0x8C19},+    {0xDAD0, 0x8C1B},+    {0xDAD1, 0x8C18},+    {0xDAD2, 0x8C1D},+    {0xDAD3, 0x8C1F},+    {0xDAD4, 0x8C20},+    {0xDAD5, 0x8C21},+    {0xDAD6, 0x8C25},+    {0xDAD7, 0x8C27},+    {0xDAD8, 0x8C2A},+    {0xDAD9, 0x8C2B},+    {0xDADA, 0x8C2E},+    {0xDADB, 0x8C2F},+    {0xDADC, 0x8C32},+    {0xDADD, 0x8C33},+    {0xDADE, 0x8C35},+    {0xDADF, 0x8C36},+    {0xDAE0, 0x5369},+    {0xDAE1, 0x537A},+    {0xDAE2, 0x961D},+    {0xDAE3, 0x9622},+    {0xDAE4, 0x9621},+    {0xDAE5, 0x9631},+    {0xDAE6, 0x962A},+    {0xDAE7, 0x963D},+    {0xDAE8, 0x963C},+    {0xDAE9, 0x9642},+    {0xDAEA, 0x9649},+    {0xDAEB, 0x9654},+    {0xDAEC, 0x965F},+    {0xDAED, 0x9667},+    {0xDAEE, 0x966C},+    {0xDAEF, 0x9672},+    {0xDAF0, 0x9674},+    {0xDAF1, 0x9688},+    {0xDAF2, 0x968D},+    {0xDAF3, 0x9697},+    {0xDAF4, 0x96B0},+    {0xDAF5, 0x9097},+    {0xDAF6, 0x909B},+    {0xDAF7, 0x909D},+    {0xDAF8, 0x9099},+    {0xDAF9, 0x90AC},+    {0xDAFA, 0x90A1},+    {0xDAFB, 0x90B4},+    {0xDAFC, 0x90B3},+    {0xDAFD, 0x90B6},+    {0xDAFE, 0x90BA},+    {0xDBA1, 0x90B8},+    {0xDBA2, 0x90B0},+    {0xDBA3, 0x90CF},+    {0xDBA4, 0x90C5},+    {0xDBA5, 0x90BE},+    {0xDBA6, 0x90D0},+    {0xDBA7, 0x90C4},+    {0xDBA8, 0x90C7},+    {0xDBA9, 0x90D3},+    {0xDBAA, 0x90E6},+    {0xDBAB, 0x90E2},+    {0xDBAC, 0x90DC},+    {0xDBAD, 0x90D7},+    {0xDBAE, 0x90DB},+    {0xDBAF, 0x90EB},+    {0xDBB0, 0x90EF},+    {0xDBB1, 0x90FE},+    {0xDBB2, 0x9104},+    {0xDBB3, 0x9122},+    {0xDBB4, 0x911E},+    {0xDBB5, 0x9123},+    {0xDBB6, 0x9131},+    {0xDBB7, 0x912F},+    {0xDBB8, 0x9139},+    {0xDBB9, 0x9143},+    {0xDBBA, 0x9146},+    {0xDBBB, 0x520D},+    {0xDBBC, 0x5942},+    {0xDBBD, 0x52A2},+    {0xDBBE, 0x52AC},+    {0xDBBF, 0x52AD},+    {0xDBC0, 0x52BE},+    {0xDBC1, 0x54FF},+    {0xDBC2, 0x52D0},+    {0xDBC3, 0x52D6},+    {0xDBC4, 0x52F0},+    {0xDBC5, 0x53DF},+    {0xDBC6, 0x71EE},+    {0xDBC7, 0x77CD},+    {0xDBC8, 0x5EF4},+    {0xDBC9, 0x51F5},+    {0xDBCA, 0x51FC},+    {0xDBCB, 0x9B2F},+    {0xDBCC, 0x53B6},+    {0xDBCD, 0x5F01},+    {0xDBCE, 0x755A},+    {0xDBCF, 0x5DEF},+    {0xDBD0, 0x574C},+    {0xDBD1, 0x57A9},+    {0xDBD2, 0x57A1},+    {0xDBD3, 0x587E},+    {0xDBD4, 0x58BC},+    {0xDBD5, 0x58C5},+    {0xDBD6, 0x58D1},+    {0xDBD7, 0x5729},+    {0xDBD8, 0x572C},+    {0xDBD9, 0x572A},+    {0xDBDA, 0x5733},+    {0xDBDB, 0x5739},+    {0xDBDC, 0x572E},+    {0xDBDD, 0x572F},+    {0xDBDE, 0x575C},+    {0xDBDF, 0x573B},+    {0xDBE0, 0x5742},+    {0xDBE1, 0x5769},+    {0xDBE2, 0x5785},+    {0xDBE3, 0x576B},+    {0xDBE4, 0x5786},+    {0xDBE5, 0x577C},+    {0xDBE6, 0x577B},+    {0xDBE7, 0x5768},+    {0xDBE8, 0x576D},+    {0xDBE9, 0x5776},+    {0xDBEA, 0x5773},+    {0xDBEB, 0x57AD},+    {0xDBEC, 0x57A4},+    {0xDBED, 0x578C},+    {0xDBEE, 0x57B2},+    {0xDBEF, 0x57CF},+    {0xDBF0, 0x57A7},+    {0xDBF1, 0x57B4},+    {0xDBF2, 0x5793},+    {0xDBF3, 0x57A0},+    {0xDBF4, 0x57D5},+    {0xDBF5, 0x57D8},+    {0xDBF6, 0x57DA},+    {0xDBF7, 0x57D9},+    {0xDBF8, 0x57D2},+    {0xDBF9, 0x57B8},+    {0xDBFA, 0x57F4},+    {0xDBFB, 0x57EF},+    {0xDBFC, 0x57F8},+    {0xDBFD, 0x57E4},+    {0xDBFE, 0x57DD},+    {0xDCA1, 0x580B},+    {0xDCA2, 0x580D},+    {0xDCA3, 0x57FD},+    {0xDCA4, 0x57ED},+    {0xDCA5, 0x5800},+    {0xDCA6, 0x581E},+    {0xDCA7, 0x5819},+    {0xDCA8, 0x5844},+    {0xDCA9, 0x5820},+    {0xDCAA, 0x5865},+    {0xDCAB, 0x586C},+    {0xDCAC, 0x5881},+    {0xDCAD, 0x5889},+    {0xDCAE, 0x589A},+    {0xDCAF, 0x5880},+    {0xDCB0, 0x99A8},+    {0xDCB1, 0x9F19},+    {0xDCB2, 0x61FF},+    {0xDCB3, 0x8279},+    {0xDCB4, 0x827D},+    {0xDCB5, 0x827F},+    {0xDCB6, 0x828F},+    {0xDCB7, 0x828A},+    {0xDCB8, 0x82A8},+    {0xDCB9, 0x8284},+    {0xDCBA, 0x828E},+    {0xDCBB, 0x8291},+    {0xDCBC, 0x8297},+    {0xDCBD, 0x8299},+    {0xDCBE, 0x82AB},+    {0xDCBF, 0x82B8},+    {0xDCC0, 0x82BE},+    {0xDCC1, 0x82B0},+    {0xDCC2, 0x82C8},+    {0xDCC3, 0x82CA},+    {0xDCC4, 0x82E3},+    {0xDCC5, 0x8298},+    {0xDCC6, 0x82B7},+    {0xDCC7, 0x82AE},+    {0xDCC8, 0x82CB},+    {0xDCC9, 0x82CC},+    {0xDCCA, 0x82C1},+    {0xDCCB, 0x82A9},+    {0xDCCC, 0x82B4},+    {0xDCCD, 0x82A1},+    {0xDCCE, 0x82AA},+    {0xDCCF, 0x829F},+    {0xDCD0, 0x82C4},+    {0xDCD1, 0x82CE},+    {0xDCD2, 0x82A4},+    {0xDCD3, 0x82E1},+    {0xDCD4, 0x8309},+    {0xDCD5, 0x82F7},+    {0xDCD6, 0x82E4},+    {0xDCD7, 0x830F},+    {0xDCD8, 0x8307},+    {0xDCD9, 0x82DC},+    {0xDCDA, 0x82F4},+    {0xDCDB, 0x82D2},+    {0xDCDC, 0x82D8},+    {0xDCDD, 0x830C},+    {0xDCDE, 0x82FB},+    {0xDCDF, 0x82D3},+    {0xDCE0, 0x8311},+    {0xDCE1, 0x831A},+    {0xDCE2, 0x8306},+    {0xDCE3, 0x8314},+    {0xDCE4, 0x8315},+    {0xDCE5, 0x82E0},+    {0xDCE6, 0x82D5},+    {0xDCE7, 0x831C},+    {0xDCE8, 0x8351},+    {0xDCE9, 0x835B},+    {0xDCEA, 0x835C},+    {0xDCEB, 0x8308},+    {0xDCEC, 0x8392},+    {0xDCED, 0x833C},+    {0xDCEE, 0x8334},+    {0xDCEF, 0x8331},+    {0xDCF0, 0x839B},+    {0xDCF1, 0x835E},+    {0xDCF2, 0x832F},+    {0xDCF3, 0x834F},+    {0xDCF4, 0x8347},+    {0xDCF5, 0x8343},+    {0xDCF6, 0x835F},+    {0xDCF7, 0x8340},+    {0xDCF8, 0x8317},+    {0xDCF9, 0x8360},+    {0xDCFA, 0x832D},+    {0xDCFB, 0x833A},+    {0xDCFC, 0x8333},+    {0xDCFD, 0x8366},+    {0xDCFE, 0x8365},+    {0xDDA1, 0x8368},+    {0xDDA2, 0x831B},+    {0xDDA3, 0x8369},+    {0xDDA4, 0x836C},+    {0xDDA5, 0x836A},+    {0xDDA6, 0x836D},+    {0xDDA7, 0x836E},+    {0xDDA8, 0x83B0},+    {0xDDA9, 0x8378},+    {0xDDAA, 0x83B3},+    {0xDDAB, 0x83B4},+    {0xDDAC, 0x83A0},+    {0xDDAD, 0x83AA},+    {0xDDAE, 0x8393},+    {0xDDAF, 0x839C},+    {0xDDB0, 0x8385},+    {0xDDB1, 0x837C},+    {0xDDB2, 0x83B6},+    {0xDDB3, 0x83A9},+    {0xDDB4, 0x837D},+    {0xDDB5, 0x83B8},+    {0xDDB6, 0x837B},+    {0xDDB7, 0x8398},+    {0xDDB8, 0x839E},+    {0xDDB9, 0x83A8},+    {0xDDBA, 0x83BA},+    {0xDDBB, 0x83BC},+    {0xDDBC, 0x83C1},+    {0xDDBD, 0x8401},+    {0xDDBE, 0x83E5},+    {0xDDBF, 0x83D8},+    {0xDDC0, 0x5807},+    {0xDDC1, 0x8418},+    {0xDDC2, 0x840B},+    {0xDDC3, 0x83DD},+    {0xDDC4, 0x83FD},+    {0xDDC5, 0x83D6},+    {0xDDC6, 0x841C},+    {0xDDC7, 0x8438},+    {0xDDC8, 0x8411},+    {0xDDC9, 0x8406},+    {0xDDCA, 0x83D4},+    {0xDDCB, 0x83DF},+    {0xDDCC, 0x840F},+    {0xDDCD, 0x8403},+    {0xDDCE, 0x83F8},+    {0xDDCF, 0x83F9},+    {0xDDD0, 0x83EA},+    {0xDDD1, 0x83C5},+    {0xDDD2, 0x83C0},+    {0xDDD3, 0x8426},+    {0xDDD4, 0x83F0},+    {0xDDD5, 0x83E1},+    {0xDDD6, 0x845C},+    {0xDDD7, 0x8451},+    {0xDDD8, 0x845A},+    {0xDDD9, 0x8459},+    {0xDDDA, 0x8473},+    {0xDDDB, 0x8487},+    {0xDDDC, 0x8488},+    {0xDDDD, 0x847A},+    {0xDDDE, 0x8489},+    {0xDDDF, 0x8478},+    {0xDDE0, 0x843C},+    {0xDDE1, 0x8446},+    {0xDDE2, 0x8469},+    {0xDDE3, 0x8476},+    {0xDDE4, 0x848C},+    {0xDDE5, 0x848E},+    {0xDDE6, 0x8431},+    {0xDDE7, 0x846D},+    {0xDDE8, 0x84C1},+    {0xDDE9, 0x84CD},+    {0xDDEA, 0x84D0},+    {0xDDEB, 0x84E6},+    {0xDDEC, 0x84BD},+    {0xDDED, 0x84D3},+    {0xDDEE, 0x84CA},+    {0xDDEF, 0x84BF},+    {0xDDF0, 0x84BA},+    {0xDDF1, 0x84E0},+    {0xDDF2, 0x84A1},+    {0xDDF3, 0x84B9},+    {0xDDF4, 0x84B4},+    {0xDDF5, 0x8497},+    {0xDDF6, 0x84E5},+    {0xDDF7, 0x84E3},+    {0xDDF8, 0x850C},+    {0xDDF9, 0x750D},+    {0xDDFA, 0x8538},+    {0xDDFB, 0x84F0},+    {0xDDFC, 0x8539},+    {0xDDFD, 0x851F},+    {0xDDFE, 0x853A},+    {0xDEA1, 0x8556},+    {0xDEA2, 0x853B},+    {0xDEA3, 0x84FF},+    {0xDEA4, 0x84FC},+    {0xDEA5, 0x8559},+    {0xDEA6, 0x8548},+    {0xDEA7, 0x8568},+    {0xDEA8, 0x8564},+    {0xDEA9, 0x855E},+    {0xDEAA, 0x857A},+    {0xDEAB, 0x77A2},+    {0xDEAC, 0x8543},+    {0xDEAD, 0x8572},+    {0xDEAE, 0x857B},+    {0xDEAF, 0x85A4},+    {0xDEB0, 0x85A8},+    {0xDEB1, 0x8587},+    {0xDEB2, 0x858F},+    {0xDEB3, 0x8579},+    {0xDEB4, 0x85AE},+    {0xDEB5, 0x859C},+    {0xDEB6, 0x8585},+    {0xDEB7, 0x85B9},+    {0xDEB8, 0x85B7},+    {0xDEB9, 0x85B0},+    {0xDEBA, 0x85D3},+    {0xDEBB, 0x85C1},+    {0xDEBC, 0x85DC},+    {0xDEBD, 0x85FF},+    {0xDEBE, 0x8627},+    {0xDEBF, 0x8605},+    {0xDEC0, 0x8629},+    {0xDEC1, 0x8616},+    {0xDEC2, 0x863C},+    {0xDEC3, 0x5EFE},+    {0xDEC4, 0x5F08},+    {0xDEC5, 0x593C},+    {0xDEC6, 0x5941},+    {0xDEC7, 0x8037},+    {0xDEC8, 0x5955},+    {0xDEC9, 0x595A},+    {0xDECA, 0x5958},+    {0xDECB, 0x530F},+    {0xDECC, 0x5C22},+    {0xDECD, 0x5C25},+    {0xDECE, 0x5C2C},+    {0xDECF, 0x5C34},+    {0xDED0, 0x624C},+    {0xDED1, 0x626A},+    {0xDED2, 0x629F},+    {0xDED3, 0x62BB},+    {0xDED4, 0x62CA},+    {0xDED5, 0x62DA},+    {0xDED6, 0x62D7},+    {0xDED7, 0x62EE},+    {0xDED8, 0x6322},+    {0xDED9, 0x62F6},+    {0xDEDA, 0x6339},+    {0xDEDB, 0x634B},+    {0xDEDC, 0x6343},+    {0xDEDD, 0x63AD},+    {0xDEDE, 0x63F6},+    {0xDEDF, 0x6371},+    {0xDEE0, 0x637A},+    {0xDEE1, 0x638E},+    {0xDEE2, 0x63B4},+    {0xDEE3, 0x636D},+    {0xDEE4, 0x63AC},+    {0xDEE5, 0x638A},+    {0xDEE6, 0x6369},+    {0xDEE7, 0x63AE},+    {0xDEE8, 0x63BC},+    {0xDEE9, 0x63F2},+    {0xDEEA, 0x63F8},+    {0xDEEB, 0x63E0},+    {0xDEEC, 0x63FF},+    {0xDEED, 0x63C4},+    {0xDEEE, 0x63DE},+    {0xDEEF, 0x63CE},+    {0xDEF0, 0x6452},+    {0xDEF1, 0x63C6},+    {0xDEF2, 0x63BE},+    {0xDEF3, 0x6445},+    {0xDEF4, 0x6441},+    {0xDEF5, 0x640B},+    {0xDEF6, 0x641B},+    {0xDEF7, 0x6420},+    {0xDEF8, 0x640C},+    {0xDEF9, 0x6426},+    {0xDEFA, 0x6421},+    {0xDEFB, 0x645E},+    {0xDEFC, 0x6484},+    {0xDEFD, 0x646D},+    {0xDEFE, 0x6496},+    {0xDFA1, 0x647A},+    {0xDFA2, 0x64B7},+    {0xDFA3, 0x64B8},+    {0xDFA4, 0x6499},+    {0xDFA5, 0x64BA},+    {0xDFA6, 0x64C0},+    {0xDFA7, 0x64D0},+    {0xDFA8, 0x64D7},+    {0xDFA9, 0x64E4},+    {0xDFAA, 0x64E2},+    {0xDFAB, 0x6509},+    {0xDFAC, 0x6525},+    {0xDFAD, 0x652E},+    {0xDFAE, 0x5F0B},+    {0xDFAF, 0x5FD2},+    {0xDFB0, 0x7519},+    {0xDFB1, 0x5F11},+    {0xDFB2, 0x535F},+    {0xDFB3, 0x53F1},+    {0xDFB4, 0x53FD},+    {0xDFB5, 0x53E9},+    {0xDFB6, 0x53E8},+    {0xDFB7, 0x53FB},+    {0xDFB8, 0x5412},+    {0xDFB9, 0x5416},+    {0xDFBA, 0x5406},+    {0xDFBB, 0x544B},+    {0xDFBC, 0x5452},+    {0xDFBD, 0x5453},+    {0xDFBE, 0x5454},+    {0xDFBF, 0x5456},+    {0xDFC0, 0x5443},+    {0xDFC1, 0x5421},+    {0xDFC2, 0x5457},+    {0xDFC3, 0x5459},+    {0xDFC4, 0x5423},+    {0xDFC5, 0x5432},+    {0xDFC6, 0x5482},+    {0xDFC7, 0x5494},+    {0xDFC8, 0x5477},+    {0xDFC9, 0x5471},+    {0xDFCA, 0x5464},+    {0xDFCB, 0x549A},+    {0xDFCC, 0x549B},+    {0xDFCD, 0x5484},+    {0xDFCE, 0x5476},+    {0xDFCF, 0x5466},+    {0xDFD0, 0x549D},+    {0xDFD1, 0x54D0},+    {0xDFD2, 0x54AD},+    {0xDFD3, 0x54C2},+    {0xDFD4, 0x54B4},+    {0xDFD5, 0x54D2},+    {0xDFD6, 0x54A7},+    {0xDFD7, 0x54A6},+    {0xDFD8, 0x54D3},+    {0xDFD9, 0x54D4},+    {0xDFDA, 0x5472},+    {0xDFDB, 0x54A3},+    {0xDFDC, 0x54D5},+    {0xDFDD, 0x54BB},+    {0xDFDE, 0x54BF},+    {0xDFDF, 0x54CC},+    {0xDFE0, 0x54D9},+    {0xDFE1, 0x54DA},+    {0xDFE2, 0x54DC},+    {0xDFE3, 0x54A9},+    {0xDFE4, 0x54AA},+    {0xDFE5, 0x54A4},+    {0xDFE6, 0x54DD},+    {0xDFE7, 0x54CF},+    {0xDFE8, 0x54DE},+    {0xDFE9, 0x551B},+    {0xDFEA, 0x54E7},+    {0xDFEB, 0x5520},+    {0xDFEC, 0x54FD},+    {0xDFED, 0x5514},+    {0xDFEE, 0x54F3},+    {0xDFEF, 0x5522},+    {0xDFF0, 0x5523},+    {0xDFF1, 0x550F},+    {0xDFF2, 0x5511},+    {0xDFF3, 0x5527},+    {0xDFF4, 0x552A},+    {0xDFF5, 0x5567},+    {0xDFF6, 0x558F},+    {0xDFF7, 0x55B5},+    {0xDFF8, 0x5549},+    {0xDFF9, 0x556D},+    {0xDFFA, 0x5541},+    {0xDFFB, 0x5555},+    {0xDFFC, 0x553F},+    {0xDFFD, 0x5550},+    {0xDFFE, 0x553C},+    {0xE0A1, 0x5537},+    {0xE0A2, 0x5556},+    {0xE0A3, 0x5575},+    {0xE0A4, 0x5576},+    {0xE0A5, 0x5577},+    {0xE0A6, 0x5533},+    {0xE0A7, 0x5530},+    {0xE0A8, 0x555C},+    {0xE0A9, 0x558B},+    {0xE0AA, 0x55D2},+    {0xE0AB, 0x5583},+    {0xE0AC, 0x55B1},+    {0xE0AD, 0x55B9},+    {0xE0AE, 0x5588},+    {0xE0AF, 0x5581},+    {0xE0B0, 0x559F},+    {0xE0B1, 0x557E},+    {0xE0B2, 0x55D6},+    {0xE0B3, 0x5591},+    {0xE0B4, 0x557B},+    {0xE0B5, 0x55DF},+    {0xE0B6, 0x55BD},+    {0xE0B7, 0x55BE},+    {0xE0B8, 0x5594},+    {0xE0B9, 0x5599},+    {0xE0BA, 0x55EA},+    {0xE0BB, 0x55F7},+    {0xE0BC, 0x55C9},+    {0xE0BD, 0x561F},+    {0xE0BE, 0x55D1},+    {0xE0BF, 0x55EB},+    {0xE0C0, 0x55EC},+    {0xE0C1, 0x55D4},+    {0xE0C2, 0x55E6},+    {0xE0C3, 0x55DD},+    {0xE0C4, 0x55C4},+    {0xE0C5, 0x55EF},+    {0xE0C6, 0x55E5},+    {0xE0C7, 0x55F2},+    {0xE0C8, 0x55F3},+    {0xE0C9, 0x55CC},+    {0xE0CA, 0x55CD},+    {0xE0CB, 0x55E8},+    {0xE0CC, 0x55F5},+    {0xE0CD, 0x55E4},+    {0xE0CE, 0x8F94},+    {0xE0CF, 0x561E},+    {0xE0D0, 0x5608},+    {0xE0D1, 0x560C},+    {0xE0D2, 0x5601},+    {0xE0D3, 0x5624},+    {0xE0D4, 0x5623},+    {0xE0D5, 0x55FE},+    {0xE0D6, 0x5600},+    {0xE0D7, 0x5627},+    {0xE0D8, 0x562D},+    {0xE0D9, 0x5658},+    {0xE0DA, 0x5639},+    {0xE0DB, 0x5657},+    {0xE0DC, 0x562C},+    {0xE0DD, 0x564D},+    {0xE0DE, 0x5662},+    {0xE0DF, 0x5659},+    {0xE0E0, 0x565C},+    {0xE0E1, 0x564C},+    {0xE0E2, 0x5654},+    {0xE0E3, 0x5686},+    {0xE0E4, 0x5664},+    {0xE0E5, 0x5671},+    {0xE0E6, 0x566B},+    {0xE0E7, 0x567B},+    {0xE0E8, 0x567C},+    {0xE0E9, 0x5685},+    {0xE0EA, 0x5693},+    {0xE0EB, 0x56AF},+    {0xE0EC, 0x56D4},+    {0xE0ED, 0x56D7},+    {0xE0EE, 0x56DD},+    {0xE0EF, 0x56E1},+    {0xE0F0, 0x56F5},+    {0xE0F1, 0x56EB},+    {0xE0F2, 0x56F9},+    {0xE0F3, 0x56FF},+    {0xE0F4, 0x5704},+    {0xE0F5, 0x570A},+    {0xE0F6, 0x5709},+    {0xE0F7, 0x571C},+    {0xE0F8, 0x5E0F},+    {0xE0F9, 0x5E19},+    {0xE0FA, 0x5E14},+    {0xE0FB, 0x5E11},+    {0xE0FC, 0x5E31},+    {0xE0FD, 0x5E3B},+    {0xE0FE, 0x5E3C},+    {0xE1A1, 0x5E37},+    {0xE1A2, 0x5E44},+    {0xE1A3, 0x5E54},+    {0xE1A4, 0x5E5B},+    {0xE1A5, 0x5E5E},+    {0xE1A6, 0x5E61},+    {0xE1A7, 0x5C8C},+    {0xE1A8, 0x5C7A},+    {0xE1A9, 0x5C8D},+    {0xE1AA, 0x5C90},+    {0xE1AB, 0x5C96},+    {0xE1AC, 0x5C88},+    {0xE1AD, 0x5C98},+    {0xE1AE, 0x5C99},+    {0xE1AF, 0x5C91},+    {0xE1B0, 0x5C9A},+    {0xE1B1, 0x5C9C},+    {0xE1B2, 0x5CB5},+    {0xE1B3, 0x5CA2},+    {0xE1B4, 0x5CBD},+    {0xE1B5, 0x5CAC},+    {0xE1B6, 0x5CAB},+    {0xE1B7, 0x5CB1},+    {0xE1B8, 0x5CA3},+    {0xE1B9, 0x5CC1},+    {0xE1BA, 0x5CB7},+    {0xE1BB, 0x5CC4},+    {0xE1BC, 0x5CD2},+    {0xE1BD, 0x5CE4},+    {0xE1BE, 0x5CCB},+    {0xE1BF, 0x5CE5},+    {0xE1C0, 0x5D02},+    {0xE1C1, 0x5D03},+    {0xE1C2, 0x5D27},+    {0xE1C3, 0x5D26},+    {0xE1C4, 0x5D2E},+    {0xE1C5, 0x5D24},+    {0xE1C6, 0x5D1E},+    {0xE1C7, 0x5D06},+    {0xE1C8, 0x5D1B},+    {0xE1C9, 0x5D58},+    {0xE1CA, 0x5D3E},+    {0xE1CB, 0x5D34},+    {0xE1CC, 0x5D3D},+    {0xE1CD, 0x5D6C},+    {0xE1CE, 0x5D5B},+    {0xE1CF, 0x5D6F},+    {0xE1D0, 0x5D5D},+    {0xE1D1, 0x5D6B},+    {0xE1D2, 0x5D4B},+    {0xE1D3, 0x5D4A},+    {0xE1D4, 0x5D69},+    {0xE1D5, 0x5D74},+    {0xE1D6, 0x5D82},+    {0xE1D7, 0x5D99},+    {0xE1D8, 0x5D9D},+    {0xE1D9, 0x8C73},+    {0xE1DA, 0x5DB7},+    {0xE1DB, 0x5DC5},+    {0xE1DC, 0x5F73},+    {0xE1DD, 0x5F77},+    {0xE1DE, 0x5F82},+    {0xE1DF, 0x5F87},+    {0xE1E0, 0x5F89},+    {0xE1E1, 0x5F8C},+    {0xE1E2, 0x5F95},+    {0xE1E3, 0x5F99},+    {0xE1E4, 0x5F9C},+    {0xE1E5, 0x5FA8},+    {0xE1E6, 0x5FAD},+    {0xE1E7, 0x5FB5},+    {0xE1E8, 0x5FBC},+    {0xE1E9, 0x8862},+    {0xE1EA, 0x5F61},+    {0xE1EB, 0x72AD},+    {0xE1EC, 0x72B0},+    {0xE1ED, 0x72B4},+    {0xE1EE, 0x72B7},+    {0xE1EF, 0x72B8},+    {0xE1F0, 0x72C3},+    {0xE1F1, 0x72C1},+    {0xE1F2, 0x72CE},+    {0xE1F3, 0x72CD},+    {0xE1F4, 0x72D2},+    {0xE1F5, 0x72E8},+    {0xE1F6, 0x72EF},+    {0xE1F7, 0x72E9},+    {0xE1F8, 0x72F2},+    {0xE1F9, 0x72F4},+    {0xE1FA, 0x72F7},+    {0xE1FB, 0x7301},+    {0xE1FC, 0x72F3},+    {0xE1FD, 0x7303},+    {0xE1FE, 0x72FA},+    {0xE2A1, 0x72FB},+    {0xE2A2, 0x7317},+    {0xE2A3, 0x7313},+    {0xE2A4, 0x7321},+    {0xE2A5, 0x730A},+    {0xE2A6, 0x731E},+    {0xE2A7, 0x731D},+    {0xE2A8, 0x7315},+    {0xE2A9, 0x7322},+    {0xE2AA, 0x7339},+    {0xE2AB, 0x7325},+    {0xE2AC, 0x732C},+    {0xE2AD, 0x7338},+    {0xE2AE, 0x7331},+    {0xE2AF, 0x7350},+    {0xE2B0, 0x734D},+    {0xE2B1, 0x7357},+    {0xE2B2, 0x7360},+    {0xE2B3, 0x736C},+    {0xE2B4, 0x736F},+    {0xE2B5, 0x737E},+    {0xE2B6, 0x821B},+    {0xE2B7, 0x5925},+    {0xE2B8, 0x98E7},+    {0xE2B9, 0x5924},+    {0xE2BA, 0x5902},+    {0xE2BB, 0x9963},+    {0xE2BC, 0x9967},+    {0xE2BD, 0x9968},+    {0xE2BE, 0x9969},+    {0xE2BF, 0x996A},+    {0xE2C0, 0x996B},+    {0xE2C1, 0x996C},+    {0xE2C2, 0x9974},+    {0xE2C3, 0x9977},+    {0xE2C4, 0x997D},+    {0xE2C5, 0x9980},+    {0xE2C6, 0x9984},+    {0xE2C7, 0x9987},+    {0xE2C8, 0x998A},+    {0xE2C9, 0x998D},+    {0xE2CA, 0x9990},+    {0xE2CB, 0x9991},+    {0xE2CC, 0x9993},+    {0xE2CD, 0x9994},+    {0xE2CE, 0x9995},+    {0xE2CF, 0x5E80},+    {0xE2D0, 0x5E91},+    {0xE2D1, 0x5E8B},+    {0xE2D2, 0x5E96},+    {0xE2D3, 0x5EA5},+    {0xE2D4, 0x5EA0},+    {0xE2D5, 0x5EB9},+    {0xE2D6, 0x5EB5},+    {0xE2D7, 0x5EBE},+    {0xE2D8, 0x5EB3},+    {0xE2D9, 0x8D53},+    {0xE2DA, 0x5ED2},+    {0xE2DB, 0x5ED1},+    {0xE2DC, 0x5EDB},+    {0xE2DD, 0x5EE8},+    {0xE2DE, 0x5EEA},+    {0xE2DF, 0x81BA},+    {0xE2E0, 0x5FC4},+    {0xE2E1, 0x5FC9},+    {0xE2E2, 0x5FD6},+    {0xE2E3, 0x5FCF},+    {0xE2E4, 0x6003},+    {0xE2E5, 0x5FEE},+    {0xE2E6, 0x6004},+    {0xE2E7, 0x5FE1},+    {0xE2E8, 0x5FE4},+    {0xE2E9, 0x5FFE},+    {0xE2EA, 0x6005},+    {0xE2EB, 0x6006},+    {0xE2EC, 0x5FEA},+    {0xE2ED, 0x5FED},+    {0xE2EE, 0x5FF8},+    {0xE2EF, 0x6019},+    {0xE2F0, 0x6035},+    {0xE2F1, 0x6026},+    {0xE2F2, 0x601B},+    {0xE2F3, 0x600F},+    {0xE2F4, 0x600D},+    {0xE2F5, 0x6029},+    {0xE2F6, 0x602B},+    {0xE2F7, 0x600A},+    {0xE2F8, 0x603F},+    {0xE2F9, 0x6021},+    {0xE2FA, 0x6078},+    {0xE2FB, 0x6079},+    {0xE2FC, 0x607B},+    {0xE2FD, 0x607A},+    {0xE2FE, 0x6042},+    {0xE3A1, 0x606A},+    {0xE3A2, 0x607D},+    {0xE3A3, 0x6096},+    {0xE3A4, 0x609A},+    {0xE3A5, 0x60AD},+    {0xE3A6, 0x609D},+    {0xE3A7, 0x6083},+    {0xE3A8, 0x6092},+    {0xE3A9, 0x608C},+    {0xE3AA, 0x609B},+    {0xE3AB, 0x60EC},+    {0xE3AC, 0x60BB},+    {0xE3AD, 0x60B1},+    {0xE3AE, 0x60DD},+    {0xE3AF, 0x60D8},+    {0xE3B0, 0x60C6},+    {0xE3B1, 0x60DA},+    {0xE3B2, 0x60B4},+    {0xE3B3, 0x6120},+    {0xE3B4, 0x6126},+    {0xE3B5, 0x6115},+    {0xE3B6, 0x6123},+    {0xE3B7, 0x60F4},+    {0xE3B8, 0x6100},+    {0xE3B9, 0x610E},+    {0xE3BA, 0x612B},+    {0xE3BB, 0x614A},+    {0xE3BC, 0x6175},+    {0xE3BD, 0x61AC},+    {0xE3BE, 0x6194},+    {0xE3BF, 0x61A7},+    {0xE3C0, 0x61B7},+    {0xE3C1, 0x61D4},+    {0xE3C2, 0x61F5},+    {0xE3C3, 0x5FDD},+    {0xE3C4, 0x96B3},+    {0xE3C5, 0x95E9},+    {0xE3C6, 0x95EB},+    {0xE3C7, 0x95F1},+    {0xE3C8, 0x95F3},+    {0xE3C9, 0x95F5},+    {0xE3CA, 0x95F6},+    {0xE3CB, 0x95FC},+    {0xE3CC, 0x95FE},+    {0xE3CD, 0x9603},+    {0xE3CE, 0x9604},+    {0xE3CF, 0x9606},+    {0xE3D0, 0x9608},+    {0xE3D1, 0x960A},+    {0xE3D2, 0x960B},+    {0xE3D3, 0x960C},+    {0xE3D4, 0x960D},+    {0xE3D5, 0x960F},+    {0xE3D6, 0x9612},+    {0xE3D7, 0x9615},+    {0xE3D8, 0x9616},+    {0xE3D9, 0x9617},+    {0xE3DA, 0x9619},+    {0xE3DB, 0x961A},+    {0xE3DC, 0x4E2C},+    {0xE3DD, 0x723F},+    {0xE3DE, 0x6215},+    {0xE3DF, 0x6C35},+    {0xE3E0, 0x6C54},+    {0xE3E1, 0x6C5C},+    {0xE3E2, 0x6C4A},+    {0xE3E3, 0x6CA3},+    {0xE3E4, 0x6C85},+    {0xE3E5, 0x6C90},+    {0xE3E6, 0x6C94},+    {0xE3E7, 0x6C8C},+    {0xE3E8, 0x6C68},+    {0xE3E9, 0x6C69},+    {0xE3EA, 0x6C74},+    {0xE3EB, 0x6C76},+    {0xE3EC, 0x6C86},+    {0xE3ED, 0x6CA9},+    {0xE3EE, 0x6CD0},+    {0xE3EF, 0x6CD4},+    {0xE3F0, 0x6CAD},+    {0xE3F1, 0x6CF7},+    {0xE3F2, 0x6CF8},+    {0xE3F3, 0x6CF1},+    {0xE3F4, 0x6CD7},+    {0xE3F5, 0x6CB2},+    {0xE3F6, 0x6CE0},+    {0xE3F7, 0x6CD6},+    {0xE3F8, 0x6CFA},+    {0xE3F9, 0x6CEB},+    {0xE3FA, 0x6CEE},+    {0xE3FB, 0x6CB1},+    {0xE3FC, 0x6CD3},+    {0xE3FD, 0x6CEF},+    {0xE3FE, 0x6CFE},+    {0xE4A1, 0x6D39},+    {0xE4A2, 0x6D27},+    {0xE4A3, 0x6D0C},+    {0xE4A4, 0x6D43},+    {0xE4A5, 0x6D48},+    {0xE4A6, 0x6D07},+    {0xE4A7, 0x6D04},+    {0xE4A8, 0x6D19},+    {0xE4A9, 0x6D0E},+    {0xE4AA, 0x6D2B},+    {0xE4AB, 0x6D4D},+    {0xE4AC, 0x6D2E},+    {0xE4AD, 0x6D35},+    {0xE4AE, 0x6D1A},+    {0xE4AF, 0x6D4F},+    {0xE4B0, 0x6D52},+    {0xE4B1, 0x6D54},+    {0xE4B2, 0x6D33},+    {0xE4B3, 0x6D91},+    {0xE4B4, 0x6D6F},+    {0xE4B5, 0x6D9E},+    {0xE4B6, 0x6DA0},+    {0xE4B7, 0x6D5E},+    {0xE4B8, 0x6D93},+    {0xE4B9, 0x6D94},+    {0xE4BA, 0x6D5C},+    {0xE4BB, 0x6D60},+    {0xE4BC, 0x6D7C},+    {0xE4BD, 0x6D63},+    {0xE4BE, 0x6E1A},+    {0xE4BF, 0x6DC7},+    {0xE4C0, 0x6DC5},+    {0xE4C1, 0x6DDE},+    {0xE4C2, 0x6E0E},+    {0xE4C3, 0x6DBF},+    {0xE4C4, 0x6DE0},+    {0xE4C5, 0x6E11},+    {0xE4C6, 0x6DE6},+    {0xE4C7, 0x6DDD},+    {0xE4C8, 0x6DD9},+    {0xE4C9, 0x6E16},+    {0xE4CA, 0x6DAB},+    {0xE4CB, 0x6E0C},+    {0xE4CC, 0x6DAE},+    {0xE4CD, 0x6E2B},+    {0xE4CE, 0x6E6E},+    {0xE4CF, 0x6E4E},+    {0xE4D0, 0x6E6B},+    {0xE4D1, 0x6EB2},+    {0xE4D2, 0x6E5F},+    {0xE4D3, 0x6E86},+    {0xE4D4, 0x6E53},+    {0xE4D5, 0x6E54},+    {0xE4D6, 0x6E32},+    {0xE4D7, 0x6E25},+    {0xE4D8, 0x6E44},+    {0xE4D9, 0x6EDF},+    {0xE4DA, 0x6EB1},+    {0xE4DB, 0x6E98},+    {0xE4DC, 0x6EE0},+    {0xE4DD, 0x6F2D},+    {0xE4DE, 0x6EE2},+    {0xE4DF, 0x6EA5},+    {0xE4E0, 0x6EA7},+    {0xE4E1, 0x6EBD},+    {0xE4E2, 0x6EBB},+    {0xE4E3, 0x6EB7},+    {0xE4E4, 0x6ED7},+    {0xE4E5, 0x6EB4},+    {0xE4E6, 0x6ECF},+    {0xE4E7, 0x6E8F},+    {0xE4E8, 0x6EC2},+    {0xE4E9, 0x6E9F},+    {0xE4EA, 0x6F62},+    {0xE4EB, 0x6F46},+    {0xE4EC, 0x6F47},+    {0xE4ED, 0x6F24},+    {0xE4EE, 0x6F15},+    {0xE4EF, 0x6EF9},+    {0xE4F0, 0x6F2F},+    {0xE4F1, 0x6F36},+    {0xE4F2, 0x6F4B},+    {0xE4F3, 0x6F74},+    {0xE4F4, 0x6F2A},+    {0xE4F5, 0x6F09},+    {0xE4F6, 0x6F29},+    {0xE4F7, 0x6F89},+    {0xE4F8, 0x6F8D},+    {0xE4F9, 0x6F8C},+    {0xE4FA, 0x6F78},+    {0xE4FB, 0x6F72},+    {0xE4FC, 0x6F7C},+    {0xE4FD, 0x6F7A},+    {0xE4FE, 0x6FD1},+    {0xE5A1, 0x6FC9},+    {0xE5A2, 0x6FA7},+    {0xE5A3, 0x6FB9},+    {0xE5A4, 0x6FB6},+    {0xE5A5, 0x6FC2},+    {0xE5A6, 0x6FE1},+    {0xE5A7, 0x6FEE},+    {0xE5A8, 0x6FDE},+    {0xE5A9, 0x6FE0},+    {0xE5AA, 0x6FEF},+    {0xE5AB, 0x701A},+    {0xE5AC, 0x7023},+    {0xE5AD, 0x701B},+    {0xE5AE, 0x7039},+    {0xE5AF, 0x7035},+    {0xE5B0, 0x704F},+    {0xE5B1, 0x705E},+    {0xE5B2, 0x5B80},+    {0xE5B3, 0x5B84},+    {0xE5B4, 0x5B95},+    {0xE5B5, 0x5B93},+    {0xE5B6, 0x5BA5},+    {0xE5B7, 0x5BB8},+    {0xE5B8, 0x752F},+    {0xE5B9, 0x9A9E},+    {0xE5BA, 0x6434},+    {0xE5BB, 0x5BE4},+    {0xE5BC, 0x5BEE},+    {0xE5BD, 0x8930},+    {0xE5BE, 0x5BF0},+    {0xE5BF, 0x8E47},+    {0xE5C0, 0x8B07},+    {0xE5C1, 0x8FB6},+    {0xE5C2, 0x8FD3},+    {0xE5C3, 0x8FD5},+    {0xE5C4, 0x8FE5},+    {0xE5C5, 0x8FEE},+    {0xE5C6, 0x8FE4},+    {0xE5C7, 0x8FE9},+    {0xE5C8, 0x8FE6},+    {0xE5C9, 0x8FF3},+    {0xE5CA, 0x8FE8},+    {0xE5CB, 0x9005},+    {0xE5CC, 0x9004},+    {0xE5CD, 0x900B},+    {0xE5CE, 0x9026},+    {0xE5CF, 0x9011},+    {0xE5D0, 0x900D},+    {0xE5D1, 0x9016},+    {0xE5D2, 0x9021},+    {0xE5D3, 0x9035},+    {0xE5D4, 0x9036},+    {0xE5D5, 0x902D},+    {0xE5D6, 0x902F},+    {0xE5D7, 0x9044},+    {0xE5D8, 0x9051},+    {0xE5D9, 0x9052},+    {0xE5DA, 0x9050},+    {0xE5DB, 0x9068},+    {0xE5DC, 0x9058},+    {0xE5DD, 0x9062},+    {0xE5DE, 0x905B},+    {0xE5DF, 0x66B9},+    {0xE5E0, 0x9074},+    {0xE5E1, 0x907D},+    {0xE5E2, 0x9082},+    {0xE5E3, 0x9088},+    {0xE5E4, 0x9083},+    {0xE5E5, 0x908B},+    {0xE5E6, 0x5F50},+    {0xE5E7, 0x5F57},+    {0xE5E8, 0x5F56},+    {0xE5E9, 0x5F58},+    {0xE5EA, 0x5C3B},+    {0xE5EB, 0x54AB},+    {0xE5EC, 0x5C50},+    {0xE5ED, 0x5C59},+    {0xE5EE, 0x5B71},+    {0xE5EF, 0x5C63},+    {0xE5F0, 0x5C66},+    {0xE5F1, 0x7FBC},+    {0xE5F2, 0x5F2A},+    {0xE5F3, 0x5F29},+    {0xE5F4, 0x5F2D},+    {0xE5F5, 0x8274},+    {0xE5F6, 0x5F3C},+    {0xE5F7, 0x9B3B},+    {0xE5F8, 0x5C6E},+    {0xE5F9, 0x5981},+    {0xE5FA, 0x5983},+    {0xE5FB, 0x598D},+    {0xE5FC, 0x59A9},+    {0xE5FD, 0x59AA},+    {0xE5FE, 0x59A3},+    {0xE6A1, 0x5997},+    {0xE6A2, 0x59CA},+    {0xE6A3, 0x59AB},+    {0xE6A4, 0x599E},+    {0xE6A5, 0x59A4},+    {0xE6A6, 0x59D2},+    {0xE6A7, 0x59B2},+    {0xE6A8, 0x59AF},+    {0xE6A9, 0x59D7},+    {0xE6AA, 0x59BE},+    {0xE6AB, 0x5A05},+    {0xE6AC, 0x5A06},+    {0xE6AD, 0x59DD},+    {0xE6AE, 0x5A08},+    {0xE6AF, 0x59E3},+    {0xE6B0, 0x59D8},+    {0xE6B1, 0x59F9},+    {0xE6B2, 0x5A0C},+    {0xE6B3, 0x5A09},+    {0xE6B4, 0x5A32},+    {0xE6B5, 0x5A34},+    {0xE6B6, 0x5A11},+    {0xE6B7, 0x5A23},+    {0xE6B8, 0x5A13},+    {0xE6B9, 0x5A40},+    {0xE6BA, 0x5A67},+    {0xE6BB, 0x5A4A},+    {0xE6BC, 0x5A55},+    {0xE6BD, 0x5A3C},+    {0xE6BE, 0x5A62},+    {0xE6BF, 0x5A75},+    {0xE6C0, 0x80EC},+    {0xE6C1, 0x5AAA},+    {0xE6C2, 0x5A9B},+    {0xE6C3, 0x5A77},+    {0xE6C4, 0x5A7A},+    {0xE6C5, 0x5ABE},+    {0xE6C6, 0x5AEB},+    {0xE6C7, 0x5AB2},+    {0xE6C8, 0x5AD2},+    {0xE6C9, 0x5AD4},+    {0xE6CA, 0x5AB8},+    {0xE6CB, 0x5AE0},+    {0xE6CC, 0x5AE3},+    {0xE6CD, 0x5AF1},+    {0xE6CE, 0x5AD6},+    {0xE6CF, 0x5AE6},+    {0xE6D0, 0x5AD8},+    {0xE6D1, 0x5ADC},+    {0xE6D2, 0x5B09},+    {0xE6D3, 0x5B17},+    {0xE6D4, 0x5B16},+    {0xE6D5, 0x5B32},+    {0xE6D6, 0x5B37},+    {0xE6D7, 0x5B40},+    {0xE6D8, 0x5C15},+    {0xE6D9, 0x5C1C},+    {0xE6DA, 0x5B5A},+    {0xE6DB, 0x5B65},+    {0xE6DC, 0x5B73},+    {0xE6DD, 0x5B51},+    {0xE6DE, 0x5B53},+    {0xE6DF, 0x5B62},+    {0xE6E0, 0x9A75},+    {0xE6E1, 0x9A77},+    {0xE6E2, 0x9A78},+    {0xE6E3, 0x9A7A},+    {0xE6E4, 0x9A7F},+    {0xE6E5, 0x9A7D},+    {0xE6E6, 0x9A80},+    {0xE6E7, 0x9A81},+    {0xE6E8, 0x9A85},+    {0xE6E9, 0x9A88},+    {0xE6EA, 0x9A8A},+    {0xE6EB, 0x9A90},+    {0xE6EC, 0x9A92},+    {0xE6ED, 0x9A93},+    {0xE6EE, 0x9A96},+    {0xE6EF, 0x9A98},+    {0xE6F0, 0x9A9B},+    {0xE6F1, 0x9A9C},+    {0xE6F2, 0x9A9D},+    {0xE6F3, 0x9A9F},+    {0xE6F4, 0x9AA0},+    {0xE6F5, 0x9AA2},+    {0xE6F6, 0x9AA3},+    {0xE6F7, 0x9AA5},+    {0xE6F8, 0x9AA7},+    {0xE6F9, 0x7E9F},+    {0xE6FA, 0x7EA1},+    {0xE6FB, 0x7EA3},+    {0xE6FC, 0x7EA5},+    {0xE6FD, 0x7EA8},+    {0xE6FE, 0x7EA9},+    {0xE7A1, 0x7EAD},+    {0xE7A2, 0x7EB0},+    {0xE7A3, 0x7EBE},+    {0xE7A4, 0x7EC0},+    {0xE7A5, 0x7EC1},+    {0xE7A6, 0x7EC2},+    {0xE7A7, 0x7EC9},+    {0xE7A8, 0x7ECB},+    {0xE7A9, 0x7ECC},+    {0xE7AA, 0x7ED0},+    {0xE7AB, 0x7ED4},+    {0xE7AC, 0x7ED7},+    {0xE7AD, 0x7EDB},+    {0xE7AE, 0x7EE0},+    {0xE7AF, 0x7EE1},+    {0xE7B0, 0x7EE8},+    {0xE7B1, 0x7EEB},+    {0xE7B2, 0x7EEE},+    {0xE7B3, 0x7EEF},+    {0xE7B4, 0x7EF1},+    {0xE7B5, 0x7EF2},+    {0xE7B6, 0x7F0D},+    {0xE7B7, 0x7EF6},+    {0xE7B8, 0x7EFA},+    {0xE7B9, 0x7EFB},+    {0xE7BA, 0x7EFE},+    {0xE7BB, 0x7F01},+    {0xE7BC, 0x7F02},+    {0xE7BD, 0x7F03},+    {0xE7BE, 0x7F07},+    {0xE7BF, 0x7F08},+    {0xE7C0, 0x7F0B},+    {0xE7C1, 0x7F0C},+    {0xE7C2, 0x7F0F},+    {0xE7C3, 0x7F11},+    {0xE7C4, 0x7F12},+    {0xE7C5, 0x7F17},+    {0xE7C6, 0x7F19},+    {0xE7C7, 0x7F1C},+    {0xE7C8, 0x7F1B},+    {0xE7C9, 0x7F1F},+    {0xE7CA, 0x7F21},+    {0xE7CB, 0x7F22},+    {0xE7CC, 0x7F23},+    {0xE7CD, 0x7F24},+    {0xE7CE, 0x7F25},+    {0xE7CF, 0x7F26},+    {0xE7D0, 0x7F27},+    {0xE7D1, 0x7F2A},+    {0xE7D2, 0x7F2B},+    {0xE7D3, 0x7F2C},+    {0xE7D4, 0x7F2D},+    {0xE7D5, 0x7F2F},+    {0xE7D6, 0x7F30},+    {0xE7D7, 0x7F31},+    {0xE7D8, 0x7F32},+    {0xE7D9, 0x7F33},+    {0xE7DA, 0x7F35},+    {0xE7DB, 0x5E7A},+    {0xE7DC, 0x757F},+    {0xE7DD, 0x5DDB},+    {0xE7DE, 0x753E},+    {0xE7DF, 0x9095},+    {0xE7E0, 0x738E},+    {0xE7E1, 0x7391},+    {0xE7E2, 0x73AE},+    {0xE7E3, 0x73A2},+    {0xE7E4, 0x739F},+    {0xE7E5, 0x73CF},+    {0xE7E6, 0x73C2},+    {0xE7E7, 0x73D1},+    {0xE7E8, 0x73B7},+    {0xE7E9, 0x73B3},+    {0xE7EA, 0x73C0},+    {0xE7EB, 0x73C9},+    {0xE7EC, 0x73C8},+    {0xE7ED, 0x73E5},+    {0xE7EE, 0x73D9},+    {0xE7EF, 0x987C},+    {0xE7F0, 0x740A},+    {0xE7F1, 0x73E9},+    {0xE7F2, 0x73E7},+    {0xE7F3, 0x73DE},+    {0xE7F4, 0x73BA},+    {0xE7F5, 0x73F2},+    {0xE7F6, 0x740F},+    {0xE7F7, 0x742A},+    {0xE7F8, 0x745B},+    {0xE7F9, 0x7426},+    {0xE7FA, 0x7425},+    {0xE7FB, 0x7428},+    {0xE7FC, 0x7430},+    {0xE7FD, 0x742E},+    {0xE7FE, 0x742C},+    {0xE8A1, 0x741B},+    {0xE8A2, 0x741A},+    {0xE8A3, 0x7441},+    {0xE8A4, 0x745C},+    {0xE8A5, 0x7457},+    {0xE8A6, 0x7455},+    {0xE8A7, 0x7459},+    {0xE8A8, 0x7477},+    {0xE8A9, 0x746D},+    {0xE8AA, 0x747E},+    {0xE8AB, 0x749C},+    {0xE8AC, 0x748E},+    {0xE8AD, 0x7480},+    {0xE8AE, 0x7481},+    {0xE8AF, 0x7487},+    {0xE8B0, 0x748B},+    {0xE8B1, 0x749E},+    {0xE8B2, 0x74A8},+    {0xE8B3, 0x74A9},+    {0xE8B4, 0x7490},+    {0xE8B5, 0x74A7},+    {0xE8B6, 0x74D2},+    {0xE8B7, 0x74BA},+    {0xE8B8, 0x97EA},+    {0xE8B9, 0x97EB},+    {0xE8BA, 0x97EC},+    {0xE8BB, 0x674C},+    {0xE8BC, 0x6753},+    {0xE8BD, 0x675E},+    {0xE8BE, 0x6748},+    {0xE8BF, 0x6769},+    {0xE8C0, 0x67A5},+    {0xE8C1, 0x6787},+    {0xE8C2, 0x676A},+    {0xE8C3, 0x6773},+    {0xE8C4, 0x6798},+    {0xE8C5, 0x67A7},+    {0xE8C6, 0x6775},+    {0xE8C7, 0x67A8},+    {0xE8C8, 0x679E},+    {0xE8C9, 0x67AD},+    {0xE8CA, 0x678B},+    {0xE8CB, 0x6777},+    {0xE8CC, 0x677C},+    {0xE8CD, 0x67F0},+    {0xE8CE, 0x6809},+    {0xE8CF, 0x67D8},+    {0xE8D0, 0x680A},+    {0xE8D1, 0x67E9},+    {0xE8D2, 0x67B0},+    {0xE8D3, 0x680C},+    {0xE8D4, 0x67D9},+    {0xE8D5, 0x67B5},+    {0xE8D6, 0x67DA},+    {0xE8D7, 0x67B3},+    {0xE8D8, 0x67DD},+    {0xE8D9, 0x6800},+    {0xE8DA, 0x67C3},+    {0xE8DB, 0x67B8},+    {0xE8DC, 0x67E2},+    {0xE8DD, 0x680E},+    {0xE8DE, 0x67C1},+    {0xE8DF, 0x67FD},+    {0xE8E0, 0x6832},+    {0xE8E1, 0x6833},+    {0xE8E2, 0x6860},+    {0xE8E3, 0x6861},+    {0xE8E4, 0x684E},+    {0xE8E5, 0x6862},+    {0xE8E6, 0x6844},+    {0xE8E7, 0x6864},+    {0xE8E8, 0x6883},+    {0xE8E9, 0x681D},+    {0xE8EA, 0x6855},+    {0xE8EB, 0x6866},+    {0xE8EC, 0x6841},+    {0xE8ED, 0x6867},+    {0xE8EE, 0x6840},+    {0xE8EF, 0x683E},+    {0xE8F0, 0x684A},+    {0xE8F1, 0x6849},+    {0xE8F2, 0x6829},+    {0xE8F3, 0x68B5},+    {0xE8F4, 0x688F},+    {0xE8F5, 0x6874},+    {0xE8F6, 0x6877},+    {0xE8F7, 0x6893},+    {0xE8F8, 0x686B},+    {0xE8F9, 0x68C2},+    {0xE8FA, 0x696E},+    {0xE8FB, 0x68FC},+    {0xE8FC, 0x691F},+    {0xE8FD, 0x6920},+    {0xE8FE, 0x68F9},+    {0xE9A1, 0x6924},+    {0xE9A2, 0x68F0},+    {0xE9A3, 0x690B},+    {0xE9A4, 0x6901},+    {0xE9A5, 0x6957},+    {0xE9A6, 0x68E3},+    {0xE9A7, 0x6910},+    {0xE9A8, 0x6971},+    {0xE9A9, 0x6939},+    {0xE9AA, 0x6960},+    {0xE9AB, 0x6942},+    {0xE9AC, 0x695D},+    {0xE9AD, 0x6984},+    {0xE9AE, 0x696B},+    {0xE9AF, 0x6980},+    {0xE9B0, 0x6998},+    {0xE9B1, 0x6978},+    {0xE9B2, 0x6934},+    {0xE9B3, 0x69CC},+    {0xE9B4, 0x6987},+    {0xE9B5, 0x6988},+    {0xE9B6, 0x69CE},+    {0xE9B7, 0x6989},+    {0xE9B8, 0x6966},+    {0xE9B9, 0x6963},+    {0xE9BA, 0x6979},+    {0xE9BB, 0x699B},+    {0xE9BC, 0x69A7},+    {0xE9BD, 0x69BB},+    {0xE9BE, 0x69AB},+    {0xE9BF, 0x69AD},+    {0xE9C0, 0x69D4},+    {0xE9C1, 0x69B1},+    {0xE9C2, 0x69C1},+    {0xE9C3, 0x69CA},+    {0xE9C4, 0x69DF},+    {0xE9C5, 0x6995},+    {0xE9C6, 0x69E0},+    {0xE9C7, 0x698D},+    {0xE9C8, 0x69FF},+    {0xE9C9, 0x6A2F},+    {0xE9CA, 0x69ED},+    {0xE9CB, 0x6A17},+    {0xE9CC, 0x6A18},+    {0xE9CD, 0x6A65},+    {0xE9CE, 0x69F2},+    {0xE9CF, 0x6A44},+    {0xE9D0, 0x6A3E},+    {0xE9D1, 0x6AA0},+    {0xE9D2, 0x6A50},+    {0xE9D3, 0x6A5B},+    {0xE9D4, 0x6A35},+    {0xE9D5, 0x6A8E},+    {0xE9D6, 0x6A79},+    {0xE9D7, 0x6A3D},+    {0xE9D8, 0x6A28},+    {0xE9D9, 0x6A58},+    {0xE9DA, 0x6A7C},+    {0xE9DB, 0x6A91},+    {0xE9DC, 0x6A90},+    {0xE9DD, 0x6AA9},+    {0xE9DE, 0x6A97},+    {0xE9DF, 0x6AAB},+    {0xE9E0, 0x7337},+    {0xE9E1, 0x7352},+    {0xE9E2, 0x6B81},+    {0xE9E3, 0x6B82},+    {0xE9E4, 0x6B87},+    {0xE9E5, 0x6B84},+    {0xE9E6, 0x6B92},+    {0xE9E7, 0x6B93},+    {0xE9E8, 0x6B8D},+    {0xE9E9, 0x6B9A},+    {0xE9EA, 0x6B9B},+    {0xE9EB, 0x6BA1},+    {0xE9EC, 0x6BAA},+    {0xE9ED, 0x8F6B},+    {0xE9EE, 0x8F6D},+    {0xE9EF, 0x8F71},+    {0xE9F0, 0x8F72},+    {0xE9F1, 0x8F73},+    {0xE9F2, 0x8F75},+    {0xE9F3, 0x8F76},+    {0xE9F4, 0x8F78},+    {0xE9F5, 0x8F77},+    {0xE9F6, 0x8F79},+    {0xE9F7, 0x8F7A},+    {0xE9F8, 0x8F7C},+    {0xE9F9, 0x8F7E},+    {0xE9FA, 0x8F81},+    {0xE9FB, 0x8F82},+    {0xE9FC, 0x8F84},+    {0xE9FD, 0x8F87},+    {0xE9FE, 0x8F8B},+    {0xEAA1, 0x8F8D},+    {0xEAA2, 0x8F8E},+    {0xEAA3, 0x8F8F},+    {0xEAA4, 0x8F98},+    {0xEAA5, 0x8F9A},+    {0xEAA6, 0x8ECE},+    {0xEAA7, 0x620B},+    {0xEAA8, 0x6217},+    {0xEAA9, 0x621B},+    {0xEAAA, 0x621F},+    {0xEAAB, 0x6222},+    {0xEAAC, 0x6221},+    {0xEAAD, 0x6225},+    {0xEAAE, 0x6224},+    {0xEAAF, 0x622C},+    {0xEAB0, 0x81E7},+    {0xEAB1, 0x74EF},+    {0xEAB2, 0x74F4},+    {0xEAB3, 0x74FF},+    {0xEAB4, 0x750F},+    {0xEAB5, 0x7511},+    {0xEAB6, 0x7513},+    {0xEAB7, 0x6534},+    {0xEAB8, 0x65EE},+    {0xEAB9, 0x65EF},+    {0xEABA, 0x65F0},+    {0xEABB, 0x660A},+    {0xEABC, 0x6619},+    {0xEABD, 0x6772},+    {0xEABE, 0x6603},+    {0xEABF, 0x6615},+    {0xEAC0, 0x6600},+    {0xEAC1, 0x7085},+    {0xEAC2, 0x66F7},+    {0xEAC3, 0x661D},+    {0xEAC4, 0x6634},+    {0xEAC5, 0x6631},+    {0xEAC6, 0x6636},+    {0xEAC7, 0x6635},+    {0xEAC8, 0x8006},+    {0xEAC9, 0x665F},+    {0xEACA, 0x6654},+    {0xEACB, 0x6641},+    {0xEACC, 0x664F},+    {0xEACD, 0x6656},+    {0xEACE, 0x6661},+    {0xEACF, 0x6657},+    {0xEAD0, 0x6677},+    {0xEAD1, 0x6684},+    {0xEAD2, 0x668C},+    {0xEAD3, 0x66A7},+    {0xEAD4, 0x669D},+    {0xEAD5, 0x66BE},+    {0xEAD6, 0x66DB},+    {0xEAD7, 0x66DC},+    {0xEAD8, 0x66E6},+    {0xEAD9, 0x66E9},+    {0xEADA, 0x8D32},+    {0xEADB, 0x8D33},+    {0xEADC, 0x8D36},+    {0xEADD, 0x8D3B},+    {0xEADE, 0x8D3D},+    {0xEADF, 0x8D40},+    {0xEAE0, 0x8D45},+    {0xEAE1, 0x8D46},+    {0xEAE2, 0x8D48},+    {0xEAE3, 0x8D49},+    {0xEAE4, 0x8D47},+    {0xEAE5, 0x8D4D},+    {0xEAE6, 0x8D55},+    {0xEAE7, 0x8D59},+    {0xEAE8, 0x89C7},+    {0xEAE9, 0x89CA},+    {0xEAEA, 0x89CB},+    {0xEAEB, 0x89CC},+    {0xEAEC, 0x89CE},+    {0xEAED, 0x89CF},+    {0xEAEE, 0x89D0},+    {0xEAEF, 0x89D1},+    {0xEAF0, 0x726E},+    {0xEAF1, 0x729F},+    {0xEAF2, 0x725D},+    {0xEAF3, 0x7266},+    {0xEAF4, 0x726F},+    {0xEAF5, 0x727E},+    {0xEAF6, 0x727F},+    {0xEAF7, 0x7284},+    {0xEAF8, 0x728B},+    {0xEAF9, 0x728D},+    {0xEAFA, 0x728F},+    {0xEAFB, 0x7292},+    {0xEAFC, 0x6308},+    {0xEAFD, 0x6332},+    {0xEAFE, 0x63B0},+    {0xEBA1, 0x643F},+    {0xEBA2, 0x64D8},+    {0xEBA3, 0x8004},+    {0xEBA4, 0x6BEA},+    {0xEBA5, 0x6BF3},+    {0xEBA6, 0x6BFD},+    {0xEBA7, 0x6BF5},+    {0xEBA8, 0x6BF9},+    {0xEBA9, 0x6C05},+    {0xEBAA, 0x6C07},+    {0xEBAB, 0x6C06},+    {0xEBAC, 0x6C0D},+    {0xEBAD, 0x6C15},+    {0xEBAE, 0x6C18},+    {0xEBAF, 0x6C19},+    {0xEBB0, 0x6C1A},+    {0xEBB1, 0x6C21},+    {0xEBB2, 0x6C29},+    {0xEBB3, 0x6C24},+    {0xEBB4, 0x6C2A},+    {0xEBB5, 0x6C32},+    {0xEBB6, 0x6535},+    {0xEBB7, 0x6555},+    {0xEBB8, 0x656B},+    {0xEBB9, 0x724D},+    {0xEBBA, 0x7252},+    {0xEBBB, 0x7256},+    {0xEBBC, 0x7230},+    {0xEBBD, 0x8662},+    {0xEBBE, 0x5216},+    {0xEBBF, 0x809F},+    {0xEBC0, 0x809C},+    {0xEBC1, 0x8093},+    {0xEBC2, 0x80BC},+    {0xEBC3, 0x670A},+    {0xEBC4, 0x80BD},+    {0xEBC5, 0x80B1},+    {0xEBC6, 0x80AB},+    {0xEBC7, 0x80AD},+    {0xEBC8, 0x80B4},+    {0xEBC9, 0x80B7},+    {0xEBCA, 0x80E7},+    {0xEBCB, 0x80E8},+    {0xEBCC, 0x80E9},+    {0xEBCD, 0x80EA},+    {0xEBCE, 0x80DB},+    {0xEBCF, 0x80C2},+    {0xEBD0, 0x80C4},+    {0xEBD1, 0x80D9},+    {0xEBD2, 0x80CD},+    {0xEBD3, 0x80D7},+    {0xEBD4, 0x6710},+    {0xEBD5, 0x80DD},+    {0xEBD6, 0x80EB},+    {0xEBD7, 0x80F1},+    {0xEBD8, 0x80F4},+    {0xEBD9, 0x80ED},+    {0xEBDA, 0x810D},+    {0xEBDB, 0x810E},+    {0xEBDC, 0x80F2},+    {0xEBDD, 0x80FC},+    {0xEBDE, 0x6715},+    {0xEBDF, 0x8112},+    {0xEBE0, 0x8C5A},+    {0xEBE1, 0x8136},+    {0xEBE2, 0x811E},+    {0xEBE3, 0x812C},+    {0xEBE4, 0x8118},+    {0xEBE5, 0x8132},+    {0xEBE6, 0x8148},+    {0xEBE7, 0x814C},+    {0xEBE8, 0x8153},+    {0xEBE9, 0x8174},+    {0xEBEA, 0x8159},+    {0xEBEB, 0x815A},+    {0xEBEC, 0x8171},+    {0xEBED, 0x8160},+    {0xEBEE, 0x8169},+    {0xEBEF, 0x817C},+    {0xEBF0, 0x817D},+    {0xEBF1, 0x816D},+    {0xEBF2, 0x8167},+    {0xEBF3, 0x584D},+    {0xEBF4, 0x5AB5},+    {0xEBF5, 0x8188},+    {0xEBF6, 0x8182},+    {0xEBF7, 0x8191},+    {0xEBF8, 0x6ED5},+    {0xEBF9, 0x81A3},+    {0xEBFA, 0x81AA},+    {0xEBFB, 0x81CC},+    {0xEBFC, 0x6726},+    {0xEBFD, 0x81CA},+    {0xEBFE, 0x81BB},+    {0xECA1, 0x81C1},+    {0xECA2, 0x81A6},+    {0xECA3, 0x6B24},+    {0xECA4, 0x6B37},+    {0xECA5, 0x6B39},+    {0xECA6, 0x6B43},+    {0xECA7, 0x6B46},+    {0xECA8, 0x6B59},+    {0xECA9, 0x98D1},+    {0xECAA, 0x98D2},+    {0xECAB, 0x98D3},+    {0xECAC, 0x98D5},+    {0xECAD, 0x98D9},+    {0xECAE, 0x98DA},+    {0xECAF, 0x6BB3},+    {0xECB0, 0x5F40},+    {0xECB1, 0x6BC2},+    {0xECB2, 0x89F3},+    {0xECB3, 0x6590},+    {0xECB4, 0x9F51},+    {0xECB5, 0x6593},+    {0xECB6, 0x65BC},+    {0xECB7, 0x65C6},+    {0xECB8, 0x65C4},+    {0xECB9, 0x65C3},+    {0xECBA, 0x65CC},+    {0xECBB, 0x65CE},+    {0xECBC, 0x65D2},+    {0xECBD, 0x65D6},+    {0xECBE, 0x7080},+    {0xECBF, 0x709C},+    {0xECC0, 0x7096},+    {0xECC1, 0x709D},+    {0xECC2, 0x70BB},+    {0xECC3, 0x70C0},+    {0xECC4, 0x70B7},+    {0xECC5, 0x70AB},+    {0xECC6, 0x70B1},+    {0xECC7, 0x70E8},+    {0xECC8, 0x70CA},+    {0xECC9, 0x7110},+    {0xECCA, 0x7113},+    {0xECCB, 0x7116},+    {0xECCC, 0x712F},+    {0xECCD, 0x7131},+    {0xECCE, 0x7173},+    {0xECCF, 0x715C},+    {0xECD0, 0x7168},+    {0xECD1, 0x7145},+    {0xECD2, 0x7172},+    {0xECD3, 0x714A},+    {0xECD4, 0x7178},+    {0xECD5, 0x717A},+    {0xECD6, 0x7198},+    {0xECD7, 0x71B3},+    {0xECD8, 0x71B5},+    {0xECD9, 0x71A8},+    {0xECDA, 0x71A0},+    {0xECDB, 0x71E0},+    {0xECDC, 0x71D4},+    {0xECDD, 0x71E7},+    {0xECDE, 0x71F9},+    {0xECDF, 0x721D},+    {0xECE0, 0x7228},+    {0xECE1, 0x706C},+    {0xECE2, 0x7118},+    {0xECE3, 0x7166},+    {0xECE4, 0x71B9},+    {0xECE5, 0x623E},+    {0xECE6, 0x623D},+    {0xECE7, 0x6243},+    {0xECE8, 0x6248},+    {0xECE9, 0x6249},+    {0xECEA, 0x793B},+    {0xECEB, 0x7940},+    {0xECEC, 0x7946},+    {0xECED, 0x7949},+    {0xECEE, 0x795B},+    {0xECEF, 0x795C},+    {0xECF0, 0x7953},+    {0xECF1, 0x795A},+    {0xECF2, 0x7962},+    {0xECF3, 0x7957},+    {0xECF4, 0x7960},+    {0xECF5, 0x796F},+    {0xECF6, 0x7967},+    {0xECF7, 0x797A},+    {0xECF8, 0x7985},+    {0xECF9, 0x798A},+    {0xECFA, 0x799A},+    {0xECFB, 0x79A7},+    {0xECFC, 0x79B3},+    {0xECFD, 0x5FD1},+    {0xECFE, 0x5FD0},+    {0xEDA1, 0x603C},+    {0xEDA2, 0x605D},+    {0xEDA3, 0x605A},+    {0xEDA4, 0x6067},+    {0xEDA5, 0x6041},+    {0xEDA6, 0x6059},+    {0xEDA7, 0x6063},+    {0xEDA8, 0x60AB},+    {0xEDA9, 0x6106},+    {0xEDAA, 0x610D},+    {0xEDAB, 0x615D},+    {0xEDAC, 0x61A9},+    {0xEDAD, 0x619D},+    {0xEDAE, 0x61CB},+    {0xEDAF, 0x61D1},+    {0xEDB0, 0x6206},+    {0xEDB1, 0x8080},+    {0xEDB2, 0x807F},+    {0xEDB3, 0x6C93},+    {0xEDB4, 0x6CF6},+    {0xEDB5, 0x6DFC},+    {0xEDB6, 0x77F6},+    {0xEDB7, 0x77F8},+    {0xEDB8, 0x7800},+    {0xEDB9, 0x7809},+    {0xEDBA, 0x7817},+    {0xEDBB, 0x7818},+    {0xEDBC, 0x7811},+    {0xEDBD, 0x65AB},+    {0xEDBE, 0x782D},+    {0xEDBF, 0x781C},+    {0xEDC0, 0x781D},+    {0xEDC1, 0x7839},+    {0xEDC2, 0x783A},+    {0xEDC3, 0x783B},+    {0xEDC4, 0x781F},+    {0xEDC5, 0x783C},+    {0xEDC6, 0x7825},+    {0xEDC7, 0x782C},+    {0xEDC8, 0x7823},+    {0xEDC9, 0x7829},+    {0xEDCA, 0x784E},+    {0xEDCB, 0x786D},+    {0xEDCC, 0x7856},+    {0xEDCD, 0x7857},+    {0xEDCE, 0x7826},+    {0xEDCF, 0x7850},+    {0xEDD0, 0x7847},+    {0xEDD1, 0x784C},+    {0xEDD2, 0x786A},+    {0xEDD3, 0x789B},+    {0xEDD4, 0x7893},+    {0xEDD5, 0x789A},+    {0xEDD6, 0x7887},+    {0xEDD7, 0x789C},+    {0xEDD8, 0x78A1},+    {0xEDD9, 0x78A3},+    {0xEDDA, 0x78B2},+    {0xEDDB, 0x78B9},+    {0xEDDC, 0x78A5},+    {0xEDDD, 0x78D4},+    {0xEDDE, 0x78D9},+    {0xEDDF, 0x78C9},+    {0xEDE0, 0x78EC},+    {0xEDE1, 0x78F2},+    {0xEDE2, 0x7905},+    {0xEDE3, 0x78F4},+    {0xEDE4, 0x7913},+    {0xEDE5, 0x7924},+    {0xEDE6, 0x791E},+    {0xEDE7, 0x7934},+    {0xEDE8, 0x9F9B},+    {0xEDE9, 0x9EF9},+    {0xEDEA, 0x9EFB},+    {0xEDEB, 0x9EFC},+    {0xEDEC, 0x76F1},+    {0xEDED, 0x7704},+    {0xEDEE, 0x770D},+    {0xEDEF, 0x76F9},+    {0xEDF0, 0x7707},+    {0xEDF1, 0x7708},+    {0xEDF2, 0x771A},+    {0xEDF3, 0x7722},+    {0xEDF4, 0x7719},+    {0xEDF5, 0x772D},+    {0xEDF6, 0x7726},+    {0xEDF7, 0x7735},+    {0xEDF8, 0x7738},+    {0xEDF9, 0x7750},+    {0xEDFA, 0x7751},+    {0xEDFB, 0x7747},+    {0xEDFC, 0x7743},+    {0xEDFD, 0x775A},+    {0xEDFE, 0x7768},+    {0xEEA1, 0x7762},+    {0xEEA2, 0x7765},+    {0xEEA3, 0x777F},+    {0xEEA4, 0x778D},+    {0xEEA5, 0x777D},+    {0xEEA6, 0x7780},+    {0xEEA7, 0x778C},+    {0xEEA8, 0x7791},+    {0xEEA9, 0x779F},+    {0xEEAA, 0x77A0},+    {0xEEAB, 0x77B0},+    {0xEEAC, 0x77B5},+    {0xEEAD, 0x77BD},+    {0xEEAE, 0x753A},+    {0xEEAF, 0x7540},+    {0xEEB0, 0x754E},+    {0xEEB1, 0x754B},+    {0xEEB2, 0x7548},+    {0xEEB3, 0x755B},+    {0xEEB4, 0x7572},+    {0xEEB5, 0x7579},+    {0xEEB6, 0x7583},+    {0xEEB7, 0x7F58},+    {0xEEB8, 0x7F61},+    {0xEEB9, 0x7F5F},+    {0xEEBA, 0x8A48},+    {0xEEBB, 0x7F68},+    {0xEEBC, 0x7F74},+    {0xEEBD, 0x7F71},+    {0xEEBE, 0x7F79},+    {0xEEBF, 0x7F81},+    {0xEEC0, 0x7F7E},+    {0xEEC1, 0x76CD},+    {0xEEC2, 0x76E5},+    {0xEEC3, 0x8832},+    {0xEEC4, 0x9485},+    {0xEEC5, 0x9486},+    {0xEEC6, 0x9487},+    {0xEEC7, 0x948B},+    {0xEEC8, 0x948A},+    {0xEEC9, 0x948C},+    {0xEECA, 0x948D},+    {0xEECB, 0x948F},+    {0xEECC, 0x9490},+    {0xEECD, 0x9494},+    {0xEECE, 0x9497},+    {0xEECF, 0x9495},+    {0xEED0, 0x949A},+    {0xEED1, 0x949B},+    {0xEED2, 0x949C},+    {0xEED3, 0x94A3},+    {0xEED4, 0x94A4},+    {0xEED5, 0x94AB},+    {0xEED6, 0x94AA},+    {0xEED7, 0x94AD},+    {0xEED8, 0x94AC},+    {0xEED9, 0x94AF},+    {0xEEDA, 0x94B0},+    {0xEEDB, 0x94B2},+    {0xEEDC, 0x94B4},+    {0xEEDD, 0x94B6},+    {0xEEDE, 0x94B7},+    {0xEEDF, 0x94B8},+    {0xEEE0, 0x94B9},+    {0xEEE1, 0x94BA},+    {0xEEE2, 0x94BC},+    {0xEEE3, 0x94BD},+    {0xEEE4, 0x94BF},+    {0xEEE5, 0x94C4},+    {0xEEE6, 0x94C8},+    {0xEEE7, 0x94C9},+    {0xEEE8, 0x94CA},+    {0xEEE9, 0x94CB},+    {0xEEEA, 0x94CC},+    {0xEEEB, 0x94CD},+    {0xEEEC, 0x94CE},+    {0xEEED, 0x94D0},+    {0xEEEE, 0x94D1},+    {0xEEEF, 0x94D2},+    {0xEEF0, 0x94D5},+    {0xEEF1, 0x94D6},+    {0xEEF2, 0x94D7},+    {0xEEF3, 0x94D9},+    {0xEEF4, 0x94D8},+    {0xEEF5, 0x94DB},+    {0xEEF6, 0x94DE},+    {0xEEF7, 0x94DF},+    {0xEEF8, 0x94E0},+    {0xEEF9, 0x94E2},+    {0xEEFA, 0x94E4},+    {0xEEFB, 0x94E5},+    {0xEEFC, 0x94E7},+    {0xEEFD, 0x94E8},+    {0xEEFE, 0x94EA},+    {0xEFA1, 0x94E9},+    {0xEFA2, 0x94EB},+    {0xEFA3, 0x94EE},+    {0xEFA4, 0x94EF},+    {0xEFA5, 0x94F3},+    {0xEFA6, 0x94F4},+    {0xEFA7, 0x94F5},+    {0xEFA8, 0x94F7},+    {0xEFA9, 0x94F9},+    {0xEFAA, 0x94FC},+    {0xEFAB, 0x94FD},+    {0xEFAC, 0x94FF},+    {0xEFAD, 0x9503},+    {0xEFAE, 0x9502},+    {0xEFAF, 0x9506},+    {0xEFB0, 0x9507},+    {0xEFB1, 0x9509},+    {0xEFB2, 0x950A},+    {0xEFB3, 0x950D},+    {0xEFB4, 0x950E},+    {0xEFB5, 0x950F},+    {0xEFB6, 0x9512},+    {0xEFB7, 0x9513},+    {0xEFB8, 0x9514},+    {0xEFB9, 0x9515},+    {0xEFBA, 0x9516},+    {0xEFBB, 0x9518},+    {0xEFBC, 0x951B},+    {0xEFBD, 0x951D},+    {0xEFBE, 0x951E},+    {0xEFBF, 0x951F},+    {0xEFC0, 0x9522},+    {0xEFC1, 0x952A},+    {0xEFC2, 0x952B},+    {0xEFC3, 0x9529},+    {0xEFC4, 0x952C},+    {0xEFC5, 0x9531},+    {0xEFC6, 0x9532},+    {0xEFC7, 0x9534},+    {0xEFC8, 0x9536},+    {0xEFC9, 0x9537},+    {0xEFCA, 0x9538},+    {0xEFCB, 0x953C},+    {0xEFCC, 0x953E},+    {0xEFCD, 0x953F},+    {0xEFCE, 0x9542},+    {0xEFCF, 0x9535},+    {0xEFD0, 0x9544},+    {0xEFD1, 0x9545},+    {0xEFD2, 0x9546},+    {0xEFD3, 0x9549},+    {0xEFD4, 0x954C},+    {0xEFD5, 0x954E},+    {0xEFD6, 0x954F},+    {0xEFD7, 0x9552},+    {0xEFD8, 0x9553},+    {0xEFD9, 0x9554},+    {0xEFDA, 0x9556},+    {0xEFDB, 0x9557},+    {0xEFDC, 0x9558},+    {0xEFDD, 0x9559},+    {0xEFDE, 0x955B},+    {0xEFDF, 0x955E},+    {0xEFE0, 0x955F},+    {0xEFE1, 0x955D},+    {0xEFE2, 0x9561},+    {0xEFE3, 0x9562},+    {0xEFE4, 0x9564},+    {0xEFE5, 0x9565},+    {0xEFE6, 0x9566},+    {0xEFE7, 0x9567},+    {0xEFE8, 0x9568},+    {0xEFE9, 0x9569},+    {0xEFEA, 0x956A},+    {0xEFEB, 0x956B},+    {0xEFEC, 0x956C},+    {0xEFED, 0x956F},+    {0xEFEE, 0x9571},+    {0xEFEF, 0x9572},+    {0xEFF0, 0x9573},+    {0xEFF1, 0x953A},+    {0xEFF2, 0x77E7},+    {0xEFF3, 0x77EC},+    {0xEFF4, 0x96C9},+    {0xEFF5, 0x79D5},+    {0xEFF6, 0x79ED},+    {0xEFF7, 0x79E3},+    {0xEFF8, 0x79EB},+    {0xEFF9, 0x7A06},+    {0xEFFA, 0x5D47},+    {0xEFFB, 0x7A03},+    {0xEFFC, 0x7A02},+    {0xEFFD, 0x7A1E},+    {0xEFFE, 0x7A14},+    {0xF0A1, 0x7A39},+    {0xF0A2, 0x7A37},+    {0xF0A3, 0x7A51},+    {0xF0A4, 0x9ECF},+    {0xF0A5, 0x99A5},+    {0xF0A6, 0x7A70},+    {0xF0A7, 0x7688},+    {0xF0A8, 0x768E},+    {0xF0A9, 0x7693},+    {0xF0AA, 0x7699},+    {0xF0AB, 0x76A4},+    {0xF0AC, 0x74DE},+    {0xF0AD, 0x74E0},+    {0xF0AE, 0x752C},+    {0xF0AF, 0x9E20},+    {0xF0B0, 0x9E22},+    {0xF0B1, 0x9E28},+    {0xF0B2, 0x9E29},+    {0xF0B3, 0x9E2A},+    {0xF0B4, 0x9E2B},+    {0xF0B5, 0x9E2C},+    {0xF0B6, 0x9E32},+    {0xF0B7, 0x9E31},+    {0xF0B8, 0x9E36},+    {0xF0B9, 0x9E38},+    {0xF0BA, 0x9E37},+    {0xF0BB, 0x9E39},+    {0xF0BC, 0x9E3A},+    {0xF0BD, 0x9E3E},+    {0xF0BE, 0x9E41},+    {0xF0BF, 0x9E42},+    {0xF0C0, 0x9E44},+    {0xF0C1, 0x9E46},+    {0xF0C2, 0x9E47},+    {0xF0C3, 0x9E48},+    {0xF0C4, 0x9E49},+    {0xF0C5, 0x9E4B},+    {0xF0C6, 0x9E4C},+    {0xF0C7, 0x9E4E},+    {0xF0C8, 0x9E51},+    {0xF0C9, 0x9E55},+    {0xF0CA, 0x9E57},+    {0xF0CB, 0x9E5A},+    {0xF0CC, 0x9E5B},+    {0xF0CD, 0x9E5C},+    {0xF0CE, 0x9E5E},+    {0xF0CF, 0x9E63},+    {0xF0D0, 0x9E66},+    {0xF0D1, 0x9E67},+    {0xF0D2, 0x9E68},+    {0xF0D3, 0x9E69},+    {0xF0D4, 0x9E6A},+    {0xF0D5, 0x9E6B},+    {0xF0D6, 0x9E6C},+    {0xF0D7, 0x9E71},+    {0xF0D8, 0x9E6D},+    {0xF0D9, 0x9E73},+    {0xF0DA, 0x7592},+    {0xF0DB, 0x7594},+    {0xF0DC, 0x7596},+    {0xF0DD, 0x75A0},+    {0xF0DE, 0x759D},+    {0xF0DF, 0x75AC},+    {0xF0E0, 0x75A3},+    {0xF0E1, 0x75B3},+    {0xF0E2, 0x75B4},+    {0xF0E3, 0x75B8},+    {0xF0E4, 0x75C4},+    {0xF0E5, 0x75B1},+    {0xF0E6, 0x75B0},+    {0xF0E7, 0x75C3},+    {0xF0E8, 0x75C2},+    {0xF0E9, 0x75D6},+    {0xF0EA, 0x75CD},+    {0xF0EB, 0x75E3},+    {0xF0EC, 0x75E8},+    {0xF0ED, 0x75E6},+    {0xF0EE, 0x75E4},+    {0xF0EF, 0x75EB},+    {0xF0F0, 0x75E7},+    {0xF0F1, 0x7603},+    {0xF0F2, 0x75F1},+    {0xF0F3, 0x75FC},+    {0xF0F4, 0x75FF},+    {0xF0F5, 0x7610},+    {0xF0F6, 0x7600},+    {0xF0F7, 0x7605},+    {0xF0F8, 0x760C},+    {0xF0F9, 0x7617},+    {0xF0FA, 0x760A},+    {0xF0FB, 0x7625},+    {0xF0FC, 0x7618},+    {0xF0FD, 0x7615},+    {0xF0FE, 0x7619},+    {0xF1A1, 0x761B},+    {0xF1A2, 0x763C},+    {0xF1A3, 0x7622},+    {0xF1A4, 0x7620},+    {0xF1A5, 0x7640},+    {0xF1A6, 0x762D},+    {0xF1A7, 0x7630},+    {0xF1A8, 0x763F},+    {0xF1A9, 0x7635},+    {0xF1AA, 0x7643},+    {0xF1AB, 0x763E},+    {0xF1AC, 0x7633},+    {0xF1AD, 0x764D},+    {0xF1AE, 0x765E},+    {0xF1AF, 0x7654},+    {0xF1B0, 0x765C},+    {0xF1B1, 0x7656},+    {0xF1B2, 0x766B},+    {0xF1B3, 0x766F},+    {0xF1B4, 0x7FCA},+    {0xF1B5, 0x7AE6},+    {0xF1B6, 0x7A78},+    {0xF1B7, 0x7A79},+    {0xF1B8, 0x7A80},+    {0xF1B9, 0x7A86},+    {0xF1BA, 0x7A88},+    {0xF1BB, 0x7A95},+    {0xF1BC, 0x7AA6},+    {0xF1BD, 0x7AA0},+    {0xF1BE, 0x7AAC},+    {0xF1BF, 0x7AA8},+    {0xF1C0, 0x7AAD},+    {0xF1C1, 0x7AB3},+    {0xF1C2, 0x8864},+    {0xF1C3, 0x8869},+    {0xF1C4, 0x8872},+    {0xF1C5, 0x887D},+    {0xF1C6, 0x887F},+    {0xF1C7, 0x8882},+    {0xF1C8, 0x88A2},+    {0xF1C9, 0x88C6},+    {0xF1CA, 0x88B7},+    {0xF1CB, 0x88BC},+    {0xF1CC, 0x88C9},+    {0xF1CD, 0x88E2},+    {0xF1CE, 0x88CE},+    {0xF1CF, 0x88E3},+    {0xF1D0, 0x88E5},+    {0xF1D1, 0x88F1},+    {0xF1D2, 0x891A},+    {0xF1D3, 0x88FC},+    {0xF1D4, 0x88E8},+    {0xF1D5, 0x88FE},+    {0xF1D6, 0x88F0},+    {0xF1D7, 0x8921},+    {0xF1D8, 0x8919},+    {0xF1D9, 0x8913},+    {0xF1DA, 0x891B},+    {0xF1DB, 0x890A},+    {0xF1DC, 0x8934},+    {0xF1DD, 0x892B},+    {0xF1DE, 0x8936},+    {0xF1DF, 0x8941},+    {0xF1E0, 0x8966},+    {0xF1E1, 0x897B},+    {0xF1E2, 0x758B},+    {0xF1E3, 0x80E5},+    {0xF1E4, 0x76B2},+    {0xF1E5, 0x76B4},+    {0xF1E6, 0x77DC},+    {0xF1E7, 0x8012},+    {0xF1E8, 0x8014},+    {0xF1E9, 0x8016},+    {0xF1EA, 0x801C},+    {0xF1EB, 0x8020},+    {0xF1EC, 0x8022},+    {0xF1ED, 0x8025},+    {0xF1EE, 0x8026},+    {0xF1EF, 0x8027},+    {0xF1F0, 0x8029},+    {0xF1F1, 0x8028},+    {0xF1F2, 0x8031},+    {0xF1F3, 0x800B},+    {0xF1F4, 0x8035},+    {0xF1F5, 0x8043},+    {0xF1F6, 0x8046},+    {0xF1F7, 0x804D},+    {0xF1F8, 0x8052},+    {0xF1F9, 0x8069},+    {0xF1FA, 0x8071},+    {0xF1FB, 0x8983},+    {0xF1FC, 0x9878},+    {0xF1FD, 0x9880},+    {0xF1FE, 0x9883},+    {0xF2A1, 0x9889},+    {0xF2A2, 0x988C},+    {0xF2A3, 0x988D},+    {0xF2A4, 0x988F},+    {0xF2A5, 0x9894},+    {0xF2A6, 0x989A},+    {0xF2A7, 0x989B},+    {0xF2A8, 0x989E},+    {0xF2A9, 0x989F},+    {0xF2AA, 0x98A1},+    {0xF2AB, 0x98A2},+    {0xF2AC, 0x98A5},+    {0xF2AD, 0x98A6},+    {0xF2AE, 0x864D},+    {0xF2AF, 0x8654},+    {0xF2B0, 0x866C},+    {0xF2B1, 0x866E},+    {0xF2B2, 0x867F},+    {0xF2B3, 0x867A},+    {0xF2B4, 0x867C},+    {0xF2B5, 0x867B},+    {0xF2B6, 0x86A8},+    {0xF2B7, 0x868D},+    {0xF2B8, 0x868B},+    {0xF2B9, 0x86AC},+    {0xF2BA, 0x869D},+    {0xF2BB, 0x86A7},+    {0xF2BC, 0x86A3},+    {0xF2BD, 0x86AA},+    {0xF2BE, 0x8693},+    {0xF2BF, 0x86A9},+    {0xF2C0, 0x86B6},+    {0xF2C1, 0x86C4},+    {0xF2C2, 0x86B5},+    {0xF2C3, 0x86CE},+    {0xF2C4, 0x86B0},+    {0xF2C5, 0x86BA},+    {0xF2C6, 0x86B1},+    {0xF2C7, 0x86AF},+    {0xF2C8, 0x86C9},+    {0xF2C9, 0x86CF},+    {0xF2CA, 0x86B4},+    {0xF2CB, 0x86E9},+    {0xF2CC, 0x86F1},+    {0xF2CD, 0x86F2},+    {0xF2CE, 0x86ED},+    {0xF2CF, 0x86F3},+    {0xF2D0, 0x86D0},+    {0xF2D1, 0x8713},+    {0xF2D2, 0x86DE},+    {0xF2D3, 0x86F4},+    {0xF2D4, 0x86DF},+    {0xF2D5, 0x86D8},+    {0xF2D6, 0x86D1},+    {0xF2D7, 0x8703},+    {0xF2D8, 0x8707},+    {0xF2D9, 0x86F8},+    {0xF2DA, 0x8708},+    {0xF2DB, 0x870A},+    {0xF2DC, 0x870D},+    {0xF2DD, 0x8709},+    {0xF2DE, 0x8723},+    {0xF2DF, 0x873B},+    {0xF2E0, 0x871E},+    {0xF2E1, 0x8725},+    {0xF2E2, 0x872E},+    {0xF2E3, 0x871A},+    {0xF2E4, 0x873E},+    {0xF2E5, 0x8748},+    {0xF2E6, 0x8734},+    {0xF2E7, 0x8731},+    {0xF2E8, 0x8729},+    {0xF2E9, 0x8737},+    {0xF2EA, 0x873F},+    {0xF2EB, 0x8782},+    {0xF2EC, 0x8722},+    {0xF2ED, 0x877D},+    {0xF2EE, 0x877E},+    {0xF2EF, 0x877B},+    {0xF2F0, 0x8760},+    {0xF2F1, 0x8770},+    {0xF2F2, 0x874C},+    {0xF2F3, 0x876E},+    {0xF2F4, 0x878B},+    {0xF2F5, 0x8753},+    {0xF2F6, 0x8763},+    {0xF2F7, 0x877C},+    {0xF2F8, 0x8764},+    {0xF2F9, 0x8759},+    {0xF2FA, 0x8765},+    {0xF2FB, 0x8793},+    {0xF2FC, 0x87AF},+    {0xF2FD, 0x87A8},+    {0xF2FE, 0x87D2},+    {0xF3A1, 0x87C6},+    {0xF3A2, 0x8788},+    {0xF3A3, 0x8785},+    {0xF3A4, 0x87AD},+    {0xF3A5, 0x8797},+    {0xF3A6, 0x8783},+    {0xF3A7, 0x87AB},+    {0xF3A8, 0x87E5},+    {0xF3A9, 0x87AC},+    {0xF3AA, 0x87B5},+    {0xF3AB, 0x87B3},+    {0xF3AC, 0x87CB},+    {0xF3AD, 0x87D3},+    {0xF3AE, 0x87BD},+    {0xF3AF, 0x87D1},+    {0xF3B0, 0x87C0},+    {0xF3B1, 0x87CA},+    {0xF3B2, 0x87DB},+    {0xF3B3, 0x87EA},+    {0xF3B4, 0x87E0},+    {0xF3B5, 0x87EE},+    {0xF3B6, 0x8816},+    {0xF3B7, 0x8813},+    {0xF3B8, 0x87FE},+    {0xF3B9, 0x880A},+    {0xF3BA, 0x881B},+    {0xF3BB, 0x8821},+    {0xF3BC, 0x8839},+    {0xF3BD, 0x883C},+    {0xF3BE, 0x7F36},+    {0xF3BF, 0x7F42},+    {0xF3C0, 0x7F44},+    {0xF3C1, 0x7F45},+    {0xF3C2, 0x8210},+    {0xF3C3, 0x7AFA},+    {0xF3C4, 0x7AFD},+    {0xF3C5, 0x7B08},+    {0xF3C6, 0x7B03},+    {0xF3C7, 0x7B04},+    {0xF3C8, 0x7B15},+    {0xF3C9, 0x7B0A},+    {0xF3CA, 0x7B2B},+    {0xF3CB, 0x7B0F},+    {0xF3CC, 0x7B47},+    {0xF3CD, 0x7B38},+    {0xF3CE, 0x7B2A},+    {0xF3CF, 0x7B19},+    {0xF3D0, 0x7B2E},+    {0xF3D1, 0x7B31},+    {0xF3D2, 0x7B20},+    {0xF3D3, 0x7B25},+    {0xF3D4, 0x7B24},+    {0xF3D5, 0x7B33},+    {0xF3D6, 0x7B3E},+    {0xF3D7, 0x7B1E},+    {0xF3D8, 0x7B58},+    {0xF3D9, 0x7B5A},+    {0xF3DA, 0x7B45},+    {0xF3DB, 0x7B75},+    {0xF3DC, 0x7B4C},+    {0xF3DD, 0x7B5D},+    {0xF3DE, 0x7B60},+    {0xF3DF, 0x7B6E},+    {0xF3E0, 0x7B7B},+    {0xF3E1, 0x7B62},+    {0xF3E2, 0x7B72},+    {0xF3E3, 0x7B71},+    {0xF3E4, 0x7B90},+    {0xF3E5, 0x7BA6},+    {0xF3E6, 0x7BA7},+    {0xF3E7, 0x7BB8},+    {0xF3E8, 0x7BAC},+    {0xF3E9, 0x7B9D},+    {0xF3EA, 0x7BA8},+    {0xF3EB, 0x7B85},+    {0xF3EC, 0x7BAA},+    {0xF3ED, 0x7B9C},+    {0xF3EE, 0x7BA2},+    {0xF3EF, 0x7BAB},+    {0xF3F0, 0x7BB4},+    {0xF3F1, 0x7BD1},+    {0xF3F2, 0x7BC1},+    {0xF3F3, 0x7BCC},+    {0xF3F4, 0x7BDD},+    {0xF3F5, 0x7BDA},+    {0xF3F6, 0x7BE5},+    {0xF3F7, 0x7BE6},+    {0xF3F8, 0x7BEA},+    {0xF3F9, 0x7C0C},+    {0xF3FA, 0x7BFE},+    {0xF3FB, 0x7BFC},+    {0xF3FC, 0x7C0F},+    {0xF3FD, 0x7C16},+    {0xF3FE, 0x7C0B},+    {0xF4A1, 0x7C1F},+    {0xF4A2, 0x7C2A},+    {0xF4A3, 0x7C26},+    {0xF4A4, 0x7C38},+    {0xF4A5, 0x7C41},+    {0xF4A6, 0x7C40},+    {0xF4A7, 0x81FE},+    {0xF4A8, 0x8201},+    {0xF4A9, 0x8202},+    {0xF4AA, 0x8204},+    {0xF4AB, 0x81EC},+    {0xF4AC, 0x8844},+    {0xF4AD, 0x8221},+    {0xF4AE, 0x8222},+    {0xF4AF, 0x8223},+    {0xF4B0, 0x822D},+    {0xF4B1, 0x822F},+    {0xF4B2, 0x8228},+    {0xF4B3, 0x822B},+    {0xF4B4, 0x8238},+    {0xF4B5, 0x823B},+    {0xF4B6, 0x8233},+    {0xF4B7, 0x8234},+    {0xF4B8, 0x823E},+    {0xF4B9, 0x8244},+    {0xF4BA, 0x8249},+    {0xF4BB, 0x824B},+    {0xF4BC, 0x824F},+    {0xF4BD, 0x825A},+    {0xF4BE, 0x825F},+    {0xF4BF, 0x8268},+    {0xF4C0, 0x887E},+    {0xF4C1, 0x8885},+    {0xF4C2, 0x8888},+    {0xF4C3, 0x88D8},+    {0xF4C4, 0x88DF},+    {0xF4C5, 0x895E},+    {0xF4C6, 0x7F9D},+    {0xF4C7, 0x7F9F},+    {0xF4C8, 0x7FA7},+    {0xF4C9, 0x7FAF},+    {0xF4CA, 0x7FB0},+    {0xF4CB, 0x7FB2},+    {0xF4CC, 0x7C7C},+    {0xF4CD, 0x6549},+    {0xF4CE, 0x7C91},+    {0xF4CF, 0x7C9D},+    {0xF4D0, 0x7C9C},+    {0xF4D1, 0x7C9E},+    {0xF4D2, 0x7CA2},+    {0xF4D3, 0x7CB2},+    {0xF4D4, 0x7CBC},+    {0xF4D5, 0x7CBD},+    {0xF4D6, 0x7CC1},+    {0xF4D7, 0x7CC7},+    {0xF4D8, 0x7CCC},+    {0xF4D9, 0x7CCD},+    {0xF4DA, 0x7CC8},+    {0xF4DB, 0x7CC5},+    {0xF4DC, 0x7CD7},+    {0xF4DD, 0x7CE8},+    {0xF4DE, 0x826E},+    {0xF4DF, 0x66A8},+    {0xF4E0, 0x7FBF},+    {0xF4E1, 0x7FCE},+    {0xF4E2, 0x7FD5},+    {0xF4E3, 0x7FE5},+    {0xF4E4, 0x7FE1},+    {0xF4E5, 0x7FE6},+    {0xF4E6, 0x7FE9},+    {0xF4E7, 0x7FEE},+    {0xF4E8, 0x7FF3},+    {0xF4E9, 0x7CF8},+    {0xF4EA, 0x7D77},+    {0xF4EB, 0x7DA6},+    {0xF4EC, 0x7DAE},+    {0xF4ED, 0x7E47},+    {0xF4EE, 0x7E9B},+    {0xF4EF, 0x9EB8},+    {0xF4F0, 0x9EB4},+    {0xF4F1, 0x8D73},+    {0xF4F2, 0x8D84},+    {0xF4F3, 0x8D94},+    {0xF4F4, 0x8D91},+    {0xF4F5, 0x8DB1},+    {0xF4F6, 0x8D67},+    {0xF4F7, 0x8D6D},+    {0xF4F8, 0x8C47},+    {0xF4F9, 0x8C49},+    {0xF4FA, 0x914A},+    {0xF4FB, 0x9150},+    {0xF4FC, 0x914E},+    {0xF4FD, 0x914F},+    {0xF4FE, 0x9164},+    {0xF5A1, 0x9162},+    {0xF5A2, 0x9161},+    {0xF5A3, 0x9170},+    {0xF5A4, 0x9169},+    {0xF5A5, 0x916F},+    {0xF5A6, 0x917D},+    {0xF5A7, 0x917E},+    {0xF5A8, 0x9172},+    {0xF5A9, 0x9174},+    {0xF5AA, 0x9179},+    {0xF5AB, 0x918C},+    {0xF5AC, 0x9185},+    {0xF5AD, 0x9190},+    {0xF5AE, 0x918D},+    {0xF5AF, 0x9191},+    {0xF5B0, 0x91A2},+    {0xF5B1, 0x91A3},+    {0xF5B2, 0x91AA},+    {0xF5B3, 0x91AD},+    {0xF5B4, 0x91AE},+    {0xF5B5, 0x91AF},+    {0xF5B6, 0x91B5},+    {0xF5B7, 0x91B4},+    {0xF5B8, 0x91BA},+    {0xF5B9, 0x8C55},+    {0xF5BA, 0x9E7E},+    {0xF5BB, 0x8DB8},+    {0xF5BC, 0x8DEB},+    {0xF5BD, 0x8E05},+    {0xF5BE, 0x8E59},+    {0xF5BF, 0x8E69},+    {0xF5C0, 0x8DB5},+    {0xF5C1, 0x8DBF},+    {0xF5C2, 0x8DBC},+    {0xF5C3, 0x8DBA},+    {0xF5C4, 0x8DC4},+    {0xF5C5, 0x8DD6},+    {0xF5C6, 0x8DD7},+    {0xF5C7, 0x8DDA},+    {0xF5C8, 0x8DDE},+    {0xF5C9, 0x8DCE},+    {0xF5CA, 0x8DCF},+    {0xF5CB, 0x8DDB},+    {0xF5CC, 0x8DC6},+    {0xF5CD, 0x8DEC},+    {0xF5CE, 0x8DF7},+    {0xF5CF, 0x8DF8},+    {0xF5D0, 0x8DE3},+    {0xF5D1, 0x8DF9},+    {0xF5D2, 0x8DFB},+    {0xF5D3, 0x8DE4},+    {0xF5D4, 0x8E09},+    {0xF5D5, 0x8DFD},+    {0xF5D6, 0x8E14},+    {0xF5D7, 0x8E1D},+    {0xF5D8, 0x8E1F},+    {0xF5D9, 0x8E2C},+    {0xF5DA, 0x8E2E},+    {0xF5DB, 0x8E23},+    {0xF5DC, 0x8E2F},+    {0xF5DD, 0x8E3A},+    {0xF5DE, 0x8E40},+    {0xF5DF, 0x8E39},+    {0xF5E0, 0x8E35},+    {0xF5E1, 0x8E3D},+    {0xF5E2, 0x8E31},+    {0xF5E3, 0x8E49},+    {0xF5E4, 0x8E41},+    {0xF5E5, 0x8E42},+    {0xF5E6, 0x8E51},+    {0xF5E7, 0x8E52},+    {0xF5E8, 0x8E4A},+    {0xF5E9, 0x8E70},+    {0xF5EA, 0x8E76},+    {0xF5EB, 0x8E7C},+    {0xF5EC, 0x8E6F},+    {0xF5ED, 0x8E74},+    {0xF5EE, 0x8E85},+    {0xF5EF, 0x8E8F},+    {0xF5F0, 0x8E94},+    {0xF5F1, 0x8E90},+    {0xF5F2, 0x8E9C},+    {0xF5F3, 0x8E9E},+    {0xF5F4, 0x8C78},+    {0xF5F5, 0x8C82},+    {0xF5F6, 0x8C8A},+    {0xF5F7, 0x8C85},+    {0xF5F8, 0x8C98},+    {0xF5F9, 0x8C94},+    {0xF5FA, 0x659B},+    {0xF5FB, 0x89D6},+    {0xF5FC, 0x89DE},+    {0xF5FD, 0x89DA},+    {0xF5FE, 0x89DC},+    {0xF6A1, 0x89E5},+    {0xF6A2, 0x89EB},+    {0xF6A3, 0x89EF},+    {0xF6A4, 0x8A3E},+    {0xF6A5, 0x8B26},+    {0xF6A6, 0x9753},+    {0xF6A7, 0x96E9},+    {0xF6A8, 0x96F3},+    {0xF6A9, 0x96EF},+    {0xF6AA, 0x9706},+    {0xF6AB, 0x9701},+    {0xF6AC, 0x9708},+    {0xF6AD, 0x970F},+    {0xF6AE, 0x970E},+    {0xF6AF, 0x972A},+    {0xF6B0, 0x972D},+    {0xF6B1, 0x9730},+    {0xF6B2, 0x973E},+    {0xF6B3, 0x9F80},+    {0xF6B4, 0x9F83},+    {0xF6B5, 0x9F85},+    {0xF6B6, 0x9F86},+    {0xF6B7, 0x9F87},+    {0xF6B8, 0x9F88},+    {0xF6B9, 0x9F89},+    {0xF6BA, 0x9F8A},+    {0xF6BB, 0x9F8C},+    {0xF6BC, 0x9EFE},+    {0xF6BD, 0x9F0B},+    {0xF6BE, 0x9F0D},+    {0xF6BF, 0x96B9},+    {0xF6C0, 0x96BC},+    {0xF6C1, 0x96BD},+    {0xF6C2, 0x96CE},+    {0xF6C3, 0x96D2},+    {0xF6C4, 0x77BF},+    {0xF6C5, 0x96E0},+    {0xF6C6, 0x928E},+    {0xF6C7, 0x92AE},+    {0xF6C8, 0x92C8},+    {0xF6C9, 0x933E},+    {0xF6CA, 0x936A},+    {0xF6CB, 0x93CA},+    {0xF6CC, 0x938F},+    {0xF6CD, 0x943E},+    {0xF6CE, 0x946B},+    {0xF6CF, 0x9C7F},+    {0xF6D0, 0x9C82},+    {0xF6D1, 0x9C85},+    {0xF6D2, 0x9C86},+    {0xF6D3, 0x9C87},+    {0xF6D4, 0x9C88},+    {0xF6D5, 0x7A23},+    {0xF6D6, 0x9C8B},+    {0xF6D7, 0x9C8E},+    {0xF6D8, 0x9C90},+    {0xF6D9, 0x9C91},+    {0xF6DA, 0x9C92},+    {0xF6DB, 0x9C94},+    {0xF6DC, 0x9C95},+    {0xF6DD, 0x9C9A},+    {0xF6DE, 0x9C9B},+    {0xF6DF, 0x9C9E},+    {0xF6E0, 0x9C9F},+    {0xF6E1, 0x9CA0},+    {0xF6E2, 0x9CA1},+    {0xF6E3, 0x9CA2},+    {0xF6E4, 0x9CA3},+    {0xF6E5, 0x9CA5},+    {0xF6E6, 0x9CA6},+    {0xF6E7, 0x9CA7},+    {0xF6E8, 0x9CA8},+    {0xF6E9, 0x9CA9},+    {0xF6EA, 0x9CAB},+    {0xF6EB, 0x9CAD},+    {0xF6EC, 0x9CAE},+    {0xF6ED, 0x9CB0},+    {0xF6EE, 0x9CB1},+    {0xF6EF, 0x9CB2},+    {0xF6F0, 0x9CB3},+    {0xF6F1, 0x9CB4},+    {0xF6F2, 0x9CB5},+    {0xF6F3, 0x9CB6},+    {0xF6F4, 0x9CB7},+    {0xF6F5, 0x9CBA},+    {0xF6F6, 0x9CBB},+    {0xF6F7, 0x9CBC},+    {0xF6F8, 0x9CBD},+    {0xF6F9, 0x9CC4},+    {0xF6FA, 0x9CC5},+    {0xF6FB, 0x9CC6},+    {0xF6FC, 0x9CC7},+    {0xF6FD, 0x9CCA},+    {0xF6FE, 0x9CCB},+    {0xF7A1, 0x9CCC},+    {0xF7A2, 0x9CCD},+    {0xF7A3, 0x9CCE},+    {0xF7A4, 0x9CCF},+    {0xF7A5, 0x9CD0},+    {0xF7A6, 0x9CD3},+    {0xF7A7, 0x9CD4},+    {0xF7A8, 0x9CD5},+    {0xF7A9, 0x9CD7},+    {0xF7AA, 0x9CD8},+    {0xF7AB, 0x9CD9},+    {0xF7AC, 0x9CDC},+    {0xF7AD, 0x9CDD},+    {0xF7AE, 0x9CDF},+    {0xF7AF, 0x9CE2},+    {0xF7B0, 0x977C},+    {0xF7B1, 0x9785},+    {0xF7B2, 0x9791},+    {0xF7B3, 0x9792},+    {0xF7B4, 0x9794},+    {0xF7B5, 0x97AF},+    {0xF7B6, 0x97AB},+    {0xF7B7, 0x97A3},+    {0xF7B8, 0x97B2},+    {0xF7B9, 0x97B4},+    {0xF7BA, 0x9AB1},+    {0xF7BB, 0x9AB0},+    {0xF7BC, 0x9AB7},+    {0xF7BD, 0x9E58},+    {0xF7BE, 0x9AB6},+    {0xF7BF, 0x9ABA},+    {0xF7C0, 0x9ABC},+    {0xF7C1, 0x9AC1},+    {0xF7C2, 0x9AC0},+    {0xF7C3, 0x9AC5},+    {0xF7C4, 0x9AC2},+    {0xF7C5, 0x9ACB},+    {0xF7C6, 0x9ACC},+    {0xF7C7, 0x9AD1},+    {0xF7C8, 0x9B45},+    {0xF7C9, 0x9B43},+    {0xF7CA, 0x9B47},+    {0xF7CB, 0x9B49},+    {0xF7CC, 0x9B48},+    {0xF7CD, 0x9B4D},+    {0xF7CE, 0x9B51},+    {0xF7CF, 0x98E8},+    {0xF7D0, 0x990D},+    {0xF7D1, 0x992E},+    {0xF7D2, 0x9955},+    {0xF7D3, 0x9954},+    {0xF7D4, 0x9ADF},+    {0xF7D5, 0x9AE1},+    {0xF7D6, 0x9AE6},+    {0xF7D7, 0x9AEF},+    {0xF7D8, 0x9AEB},+    {0xF7D9, 0x9AFB},+    {0xF7DA, 0x9AED},+    {0xF7DB, 0x9AF9},+    {0xF7DC, 0x9B08},+    {0xF7DD, 0x9B0F},+    {0xF7DE, 0x9B13},+    {0xF7DF, 0x9B1F},+    {0xF7E0, 0x9B23},+    {0xF7E1, 0x9EBD},+    {0xF7E2, 0x9EBE},+    {0xF7E3, 0x7E3B},+    {0xF7E4, 0x9E82},+    {0xF7E5, 0x9E87},+    {0xF7E6, 0x9E88},+    {0xF7E7, 0x9E8B},+    {0xF7E8, 0x9E92},+    {0xF7E9, 0x93D6},+    {0xF7EA, 0x9E9D},+    {0xF7EB, 0x9E9F},+    {0xF7EC, 0x9EDB},+    {0xF7ED, 0x9EDC},+    {0xF7EE, 0x9EDD},+    {0xF7EF, 0x9EE0},+    {0xF7F0, 0x9EDF},+    {0xF7F1, 0x9EE2},+    {0xF7F2, 0x9EE9},+    {0xF7F3, 0x9EE7},+    {0xF7F4, 0x9EE5},+    {0xF7F5, 0x9EEA},+    {0xF7F6, 0x9EEF},+    {0xF7F7, 0x9F22},+    {0xF7F8, 0x9F2C},+    {0xF7F9, 0x9F2F},+    {0xF7FA, 0x9F39},+    {0xF7FB, 0x9F37},+    {0xF7FC, 0x9F3D},+    {0xF7FD, 0x9F3E},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_GBK_EUC_H[] = {+    {0x20, 0x20, 7716},+    {0x21, 0x7E, 814},+    {0x8140, 0x8178, 10072},+    {0x8179, 0x8179, 8281},+    {0x817A, 0x817E, 10129},+    {0x8180, 0x8185, 10134},+    {0x8186, 0x8186, 8689},+    {0x8187, 0x81EC, 10140},+    {0x81ED, 0x81ED, 8178},+    {0x81EE, 0x81F5, 10242},+    {0x81F6, 0x81F6, 8285},+    {0x81F7, 0x81FE, 10250},+    {0x8240, 0x8252, 10258},+    {0x8253, 0x8253, 9884},+    {0x8254, 0x8261, 10277},+    {0x8262, 0x8262, 8629},+    {0x8263, 0x8273, 10291},+    {0x8274, 0x8274, 8908},+    {0x8275, 0x8279, 10308},+    {0x827A, 0x827A, 8214},+    {0x827B, 0x827C, 10313},+    {0x827D, 0x827D, 7778},+    {0x827E, 0x827E, 10315},+    {0x8280, 0x8280, 7968},+    {0x8281, 0x8282, 10316},+    {0x8283, 0x8283, 8319},+    {0x8284, 0x828F, 10318},+    {0x8290, 0x8290, 8284},+    {0x8291, 0x82A4, 10330},+    {0x82A5, 0x82A5, 8596},+    {0x82A6, 0x82C7, 10350},+    {0x82C8, 0x82C8, 7781},+    {0x82C9, 0x82C9, 8833},+    {0x82CA, 0x82E0, 10384},+    {0x82E1, 0x82E1, 8909},+    {0x82E2, 0x82E2, 10407},+    {0x82E3, 0x82E3, 8458},+    {0x82E4, 0x82E4, 7742},+    {0x82E5, 0x82EC, 10408},+    {0x82ED, 0x82ED, 9855},+    {0x82EE, 0x82F1, 10416},+    {0x82F2, 0x82F2, 8750},+    {0x82F3, 0x82F6, 10420},+    {0x82F7, 0x82F7, 7830},+    {0x82F8, 0x82F8, 8907},+    {0x82F9, 0x82F9, 8812},+    {0x82FA, 0x82FA, 10424},+    {0x82FB, 0x82FB, 8471},+    {0x82FC, 0x82FE, 10425},+    {0x8340, 0x8340, 10428},+    {0x8341, 0x8341, 8424},+    {0x8342, 0x8344, 10429},+    {0x8345, 0x8345, 8916},+    {0x8346, 0x8347, 10432},+    {0x8348, 0x8348, 8121},+    {0x8349, 0x834B, 10434},+    {0x834C, 0x834C, 8920},+    {0x834D, 0x8352, 10437},+    {0x8353, 0x8353, 8415},+    {0x8354, 0x8356, 10443},+    {0x8357, 0x8357, 8386},+    {0x8358, 0x835D, 10446},+    {0x835E, 0x835E, 8597},+    {0x835F, 0x8364, 10452},+    {0x8365, 0x8365, 8108},+    {0x8366, 0x8366, 8915},+    {0x8367, 0x8371, 10458},+    {0x8372, 0x8372, 8065},+    {0x8373, 0x8377, 10469},+    {0x8378, 0x8378, 8720},+    {0x8379, 0x8379, 10474},+    {0x837A, 0x837A, 8911},+    {0x837B, 0x837B, 10475},+    {0x837C, 0x837C, 8723},+    {0x837D, 0x837D, 10476},+    {0x837E, 0x837E, 8164},+    {0x8380, 0x8380, 8080},+    {0x8381, 0x8385, 10477},+    {0x8386, 0x8386, 8918},+    {0x8387, 0x8388, 10482},+    {0x8389, 0x8389, 8912},+    {0x838A, 0x838A, 8910},+    {0x838B, 0x838C, 10484},+    {0x838D, 0x838D, 9857},+    {0x838E, 0x8393, 10486},+    {0x8394, 0x8394, 7798},+    {0x8395, 0x839D, 10492},+    {0x839E, 0x839E, 8753},+    {0x839F, 0x83A5, 10501},+    {0x83A6, 0x83A6, 7827},+    {0x83A7, 0x83AA, 10508},+    {0x83AB, 0x83AB, 8914},+    {0x83AC, 0x83AD, 10512},+    {0x83AE, 0x83AE, 8919},+    {0x83AF, 0x83AF, 8917},+    {0x83B0, 0x83B0, 8913},+    {0x83B1, 0x83B9, 10514},+    {0x83BA, 0x83BA, 7909},+    {0x83BB, 0x83C8, 10523},+    {0x83C9, 0x83C9, 8229},+    {0x83CA, 0x83F5, 10537},+    {0x83F6, 0x83F6, 7887},+    {0x83F7, 0x83FE, 10581},+    {0x8440, 0x844F, 10589},+    {0x8450, 0x8450, 8153},+    {0x8451, 0x8470, 10605},+    {0x8471, 0x8471, 8904},+    {0x8472, 0x8473, 10637},+    {0x8474, 0x8474, 8803},+    {0x8475, 0x8476, 10639},+    {0x8477, 0x8477, 9859},+    {0x8478, 0x847E, 10641},+    {0x8480, 0x8481, 10648},+    {0x8482, 0x8482, 7959},+    {0x8483, 0x848D, 10650},+    {0x848E, 0x848E, 7979},+    {0x848F, 0x8491, 10661},+    {0x8492, 0x8492, 8906},+    {0x8493, 0x8493, 7833},+    {0x8494, 0x849C, 10664},+    {0x849D, 0x849D, 8015},+    {0x849E, 0x84A0, 10673},+    {0x84A1, 0x84A1, 8143},+    {0x84A2, 0x84A2, 8246},+    {0x84A3, 0x84A3, 7994},+    {0x84A4, 0x84A4, 10676},+    {0x84A5, 0x84A5, 8905},+    {0x84A6, 0x84A6, 8089},+    {0x84A7, 0x84A8, 10677},+    {0x84A9, 0x84A9, 8053},+    {0x84AA, 0x84C4, 10679},+    {0x84C5, 0x84C5, 8126},+    {0x84C6, 0x84D2, 10706},+    {0x84D3, 0x84D3, 7885},+    {0x84D4, 0x84D4, 10719},+    {0x84D5, 0x84D5, 8617},+    {0x84D6, 0x84D6, 10720},+    {0x84D7, 0x84D7, 8678},+    {0x84D8, 0x84D8, 10721},+    {0x84D9, 0x84D9, 8487},+    {0x84DA, 0x84DA, 8195},+    {0x84DB, 0x84DC, 10722},+    {0x84DD, 0x84DD, 8498},+    {0x84DE, 0x84E9, 10724},+    {0x84EA, 0x84EA, 8995},+    {0x84EB, 0x84ED, 10736},+    {0x84EE, 0x84EE, 8209},+    {0x84EF, 0x84F0, 10739},+    {0x84F1, 0x84F1, 8437},+    {0x84F2, 0x84FE, 10741},+    {0x8540, 0x8550, 10754},+    {0x8551, 0x8551, 8901},+    {0x8552, 0x8552, 8030},+    {0x8553, 0x8553, 10771},+    {0x8554, 0x8554, 8902},+    {0x8555, 0x855D, 10772},+    {0x855E, 0x855E, 8431},+    {0x855F, 0x8565, 10781},+    {0x8566, 0x8566, 8656},+    {0x8567, 0x857E, 10788},+    {0x8580, 0x8586, 10812},+    {0x8587, 0x8587, 8897},+    {0x8588, 0x858A, 10819},+    {0x858B, 0x858B, 7780},+    {0x858C, 0x8591, 10822},+    {0x8592, 0x8592, 8697},+    {0x8593, 0x8595, 10828},+    {0x8596, 0x8596, 8208},+    {0x8597, 0x8597, 10831},+    {0x8598, 0x8598, 8898},+    {0x8599, 0x85A1, 10832},+    {0x85A2, 0x85A2, 7770},+    {0x85A3, 0x85B1, 10841},+    {0x85B2, 0x85B2, 7842},+    {0x85B3, 0x85FE, 10856},+    {0x8640, 0x8649, 10932},+    {0x864A, 0x864A, 9069},+    {0x864B, 0x8653, 10942},+    {0x8654, 0x8654, 8775},+    {0x8655, 0x8667, 10951},+    {0x8668, 0x8668, 9068},+    {0x8669, 0x867E, 10970},+    {0x8680, 0x8695, 10992},+    {0x8696, 0x8696, 8604},+    {0x8697, 0x8698, 11014},+    {0x8699, 0x8699, 8393},+    {0x869A, 0x86A0, 11016},+    {0x86A1, 0x86A1, 8688},+    {0x86A2, 0x86C9, 11023},+    {0x86CA, 0x86CA, 8459},+    {0x86CB, 0x86CB, 11063},+    {0x86CC, 0x86CC, 8414},+    {0x86CD, 0x86CD, 11064},+    {0x86CE, 0x86CE, 7850},+    {0x86CF, 0x86D0, 11065},+    {0x86D1, 0x86D1, 8748},+    {0x86D2, 0x86DB, 11067},+    {0x86DC, 0x86DC, 8408},+    {0x86DD, 0x86DD, 8896},+    {0x86DE, 0x86E0, 11077},+    {0x86E1, 0x86E1, 8303},+    {0x86E2, 0x86E7, 11080},+    {0x86E8, 0x86E8, 8609},+    {0x86E9, 0x86ED, 11086},+    {0x86EE, 0x86EE, 9081},+    {0x86EF, 0x86F3, 11091},+    {0x86F4, 0x86F4, 9074},+    {0x86F5, 0x86FE, 11096},+    {0x8740, 0x8740, 8554},+    {0x8741, 0x8743, 11106},+    {0x8744, 0x8744, 9084},+    {0x8745, 0x8748, 11109},+    {0x8749, 0x8749, 8368},+    {0x874A, 0x874A, 11113},+    {0x874B, 0x874B, 9082},+    {0x874C, 0x874C, 7796},+    {0x874D, 0x874E, 11114},+    {0x874F, 0x874F, 9079},+    {0x8750, 0x8756, 11116},+    {0x8757, 0x8757, 8012},+    {0x8758, 0x8759, 11123},+    {0x875A, 0x875A, 9080},+    {0x875B, 0x875B, 8655},+    {0x875C, 0x875C, 9064},+    {0x875D, 0x875D, 11125},+    {0x875E, 0x875E, 9073},+    {0x875F, 0x875F, 11126},+    {0x8760, 0x8760, 9065},+    {0x8761, 0x8765, 11127},+    {0x8766, 0x8766, 9844},+    {0x8767, 0x8779, 11132},+    {0x877A, 0x877A, 9071},+    {0x877B, 0x877C, 11151},+    {0x877D, 0x877D, 9072},+    {0x877E, 0x877E, 11153},+    {0x8780, 0x8780, 11154},+    {0x8781, 0x8781, 9078},+    {0x8782, 0x8782, 9075},+    {0x8783, 0x8785, 11155},+    {0x8786, 0x8786, 9087},+    {0x8787, 0x8787, 11158},+    {0x8788, 0x8788, 9076},+    {0x8789, 0x8789, 11159},+    {0x878A, 0x878A, 8373},+    {0x878B, 0x878C, 11160},+    {0x878D, 0x878D, 7899},+    {0x878E, 0x878E, 9842},+    {0x878F, 0x8792, 11162},+    {0x8793, 0x8793, 9070},+    {0x8794, 0x8797, 11166},+    {0x8798, 0x8798, 8631},+    {0x8799, 0x879C, 11170},+    {0x879D, 0x879D, 9077},+    {0x879E, 0x87A2, 11174},+    {0x87A3, 0x87A3, 9090},+    {0x87A4, 0x87A6, 11179},+    {0x87A7, 0x87A7, 8350},+    {0x87A8, 0x87B2, 11182},+    {0x87B3, 0x87B3, 9067},+    {0x87B4, 0x87B4, 11193},+    {0x87B5, 0x87B5, 8249},+    {0x87B6, 0x87BA, 11194},+    {0x87BB, 0x87BB, 9887},+    {0x87BC, 0x87BE, 11199},+    {0x87BF, 0x87BF, 9085},+    {0x87C0, 0x87C0, 8693},+    {0x87C1, 0x87C1, 11202},+    {0x87C2, 0x87C2, 9089},+    {0x87C3, 0x87C9, 11203},+    {0x87CA, 0x87CA, 9083},+    {0x87CB, 0x87CB, 9086},+    {0x87CC, 0x87CC, 8652},+    {0x87CD, 0x87CE, 11210},+    {0x87CF, 0x87CF, 8923},+    {0x87D0, 0x87D1, 11212},+    {0x87D2, 0x87D2, 9066},+    {0x87D3, 0x87D3, 9865},+    {0x87D4, 0x87D4, 11214},+    {0x87D5, 0x87D5, 9879},+    {0x87D6, 0x87D9, 11215},+    {0x87DA, 0x87DA, 8865},+    {0x87DB, 0x87F6, 11219},+    {0x87F7, 0x87F7, 9091},+    {0x87F8, 0x87F8, 7997},+    {0x87F9, 0x87F9, 11247},+    {0x87FA, 0x87FA, 8591},+    {0x87FB, 0x87FE, 11248},+    {0x8840, 0x8840, 8774},+    {0x8841, 0x8841, 8776},+    {0x8842, 0x8843, 11252},+    {0x8844, 0x8844, 8574},+    {0x8845, 0x8845, 11254},+    {0x8846, 0x8846, 8576},+    {0x8847, 0x887E, 11255},+    {0x8880, 0x88B9, 11311},+    {0x88BA, 0x88BA, 9002},+    {0x88BB, 0x88CB, 11369},+    {0x88CC, 0x88CC, 8843},+    {0x88CD, 0x88D3, 11386},+    {0x88D4, 0x88D4, 8069},+    {0x88D5, 0x88D6, 11393},+    {0x88D7, 0x88D7, 8997},+    {0x88D8, 0x88DE, 11395},+    {0x88DF, 0x88DF, 9004},+    {0x88E0, 0x88E4, 11402},+    {0x88E5, 0x88E5, 9006},+    {0x88E6, 0x88F1, 11407},+    {0x88F2, 0x88F2, 8709},+    {0x88F3, 0x88F3, 7736},+    {0x88F4, 0x88F5, 11419},+    {0x88F6, 0x88F6, 7795},+    {0x88F7, 0x88FE, 11421},+    {0x8940, 0x894A, 11429},+    {0x894B, 0x894B, 8163},+    {0x894C, 0x894C, 9017},+    {0x894D, 0x894D, 11440},+    {0x894E, 0x894E, 9003},+    {0x894F, 0x894F, 11441},+    {0x8950, 0x8950, 9005},+    {0x8951, 0x8953, 11442},+    {0x8954, 0x8954, 8575},+    {0x8955, 0x895C, 11445},+    {0x895D, 0x895D, 8615},+    {0x895E, 0x895E, 11453},+    {0x895F, 0x895F, 9007},+    {0x8960, 0x896C, 11454},+    {0x896D, 0x896D, 7805},+    {0x896E, 0x8970, 11467},+    {0x8971, 0x8971, 8406},+    {0x8972, 0x897B, 11470},+    {0x897C, 0x897C, 7874},+    {0x897D, 0x897E, 11480},+    {0x8980, 0x898A, 11482},+    {0x898B, 0x898B, 8882},+    {0x898C, 0x8998, 11493},+    {0x8999, 0x8999, 7903},+    {0x899A, 0x899D, 11506},+    {0x899E, 0x899E, 7929},+    {0x899F, 0x89A5, 11510},+    {0x89A6, 0x89A6, 8409},+    {0x89A7, 0x89A7, 11517},+    {0x89A8, 0x89A8, 8157},+    {0x89A9, 0x89AE, 11518},+    {0x89AF, 0x89AF, 8551},+    {0x89B0, 0x89B9, 11524},+    {0x89BA, 0x89BA, 8685},+    {0x89BB, 0x89BD, 11534},+    {0x89BE, 0x89BE, 8199},+    {0x89BF, 0x89BF, 8998},+    {0x89C0, 0x89C0, 9001},+    {0x89C1, 0x89C3, 11537},+    {0x89C4, 0x89C4, 8018},+    {0x89C5, 0x89C5, 8251},+    {0x89C6, 0x89C6, 9000},+    {0x89C7, 0x89C7, 11540},+    {0x89C8, 0x89C8, 8999},+    {0x89C9, 0x89CD, 11541},+    {0x89CE, 0x89CE, 7723},+    {0x89CF, 0x89D0, 11546},+    {0x89D1, 0x89D1, 8878},+    {0x89D2, 0x89D7, 11548},+    {0x89D8, 0x89D8, 8009},+    {0x89D9, 0x89DA, 11554},+    {0x89DB, 0x89DB, 8504},+    {0x89DC, 0x89F3, 11556},+    {0x89F4, 0x89F4, 8321},+    {0x89F5, 0x89FE, 11580},+    {0x8A40, 0x8A40, 11590},+    {0x8A41, 0x8A41, 8060},+    {0x8A42, 0x8A58, 11591},+    {0x8A59, 0x8A59, 9051},+    {0x8A5A, 0x8A5A, 7902},+    {0x8A5B, 0x8A5B, 11614},+    {0x8A5C, 0x8A5C, 8098},+    {0x8A5D, 0x8A5D, 11615},+    {0x8A5E, 0x8A5E, 7930},+    {0x8A5F, 0x8A78, 11616},+    {0x8A79, 0x8A79, 8877},+    {0x8A7A, 0x8A7E, 11642},+    {0x8A80, 0x8AE3, 11647},+    {0x8AE4, 0x8AE4, 8255},+    {0x8AE5, 0x8AFE, 11747},+    {0x8B40, 0x8B43, 11773},+    {0x8B44, 0x8B44, 7950},+    {0x8B45, 0x8B48, 11777},+    {0x8B49, 0x8B49, 9209},+    {0x8B4A, 0x8B79, 11781},+    {0x8B7A, 0x8B7A, 9212},+    {0x8B7B, 0x8B7E, 11829},+    {0x8B80, 0x8B8B, 11833},+    {0x8B8C, 0x8B8C, 8297},+    {0x8B8D, 0x8B9D, 11845},+    {0x8B9E, 0x8B9E, 9207},+    {0x8B9F, 0x8BB2, 11862},+    {0x8BB3, 0x8BB3, 9206},+    {0x8BB4, 0x8BB8, 11882},+    {0x8BB9, 0x8BB9, 9213},+    {0x8BBA, 0x8BBD, 11887},+    {0x8BBE, 0x8BBE, 9208},+    {0x8BBF, 0x8BC5, 11891},+    {0x8BC6, 0x8BC6, 9210},+    {0x8BC7, 0x8BC7, 11898},+    {0x8BC8, 0x8BC8, 9214},+    {0x8BC9, 0x8BC9, 8104},+    {0x8BCA, 0x8BD3, 11899},+    {0x8BD4, 0x8BD4, 9217},+    {0x8BD5, 0x8BDB, 11909},+    {0x8BDC, 0x8BDC, 9215},+    {0x8BDD, 0x8BE4, 11916},+    {0x8BE5, 0x8BE5, 9216},+    {0x8BE6, 0x8BEA, 11924},+    {0x8BEB, 0x8BEB, 8737},+    {0x8BEC, 0x8BEF, 11929},+    {0x8BF0, 0x8BF0, 8482},+    {0x8BF1, 0x8BFE, 11933},+    {0x8C40, 0x8C43, 11947},+    {0x8C44, 0x8C44, 9211},+    {0x8C45, 0x8C4E, 11951},+    {0x8C4F, 0x8C4F, 8538},+    {0x8C50, 0x8C56, 11961},+    {0x8C57, 0x8C57, 8677},+    {0x8C58, 0x8C5B, 11968},+    {0x8C5C, 0x8C5C, 8279},+    {0x8C5D, 0x8C7E, 11972},+    {0x8C80, 0x8C8A, 12006},+    {0x8C8B, 0x8C8B, 8421},+    {0x8C8C, 0x8C8C, 12017},+    {0x8C8D, 0x8C8D, 8495},+    {0x8C8E, 0x8C8E, 8355},+    {0x8C8F, 0x8C8F, 8481},+    {0x8C90, 0x8C90, 12018},+    {0x8C91, 0x8C91, 8660},+    {0x8C92, 0x8C92, 8165},+    {0x8C93, 0x8C98, 12019},+    {0x8C99, 0x8C99, 7818},+    {0x8C9A, 0x8C9A, 7735},+    {0x8C9B, 0x8CA1, 12025},+    {0x8CA2, 0x8CA2, 8094},+    {0x8CA3, 0x8CA3, 8870},+    {0x8CA4, 0x8CA4, 8680},+    {0x8CA5, 0x8CA5, 12032},+    {0x8CA6, 0x8CA6, 7898},+    {0x8CA7, 0x8CA7, 7865},+    {0x8CA8, 0x8CBF, 12033},+    {0x8CC0, 0x8CC0, 9052},+    {0x8CC1, 0x8CD1, 12057},+    {0x8CD2, 0x8CD2, 8272},+    {0x8CD3, 0x8CD3, 7783},+    {0x8CD4, 0x8CD4, 12074},+    {0x8CD5, 0x8CD5, 9204},+    {0x8CD6, 0x8CD8, 12075},+    {0x8CD9, 0x8CD9, 8510},+    {0x8CDA, 0x8CF8, 12078},+    {0x8CF9, 0x8CF9, 7958},+    {0x8CFA, 0x8CFE, 12109},+    {0x8D40, 0x8D72, 12114},+    {0x8D73, 0x8D73, 9097},+    {0x8D74, 0x8D74, 12165},+    {0x8D75, 0x8D75, 7863},+    {0x8D76, 0x8D7A, 12166},+    {0x8D7B, 0x8D7B, 8628},+    {0x8D7C, 0x8D7E, 12171},+    {0x8D80, 0x8D87, 12174},+    {0x8D88, 0x8D88, 9103},+    {0x8D89, 0x8D8E, 12182},+    {0x8D8F, 0x8D8F, 7962},+    {0x8D90, 0x8D9D, 12188},+    {0x8D9E, 0x8D9E, 9099},+    {0x8D9F, 0x8DB8, 12202},+    {0x8DB9, 0x8DB9, 9098},+    {0x8DBA, 0x8DE1, 12228},+    {0x8DE2, 0x8DE2, 9105},+    {0x8DE3, 0x8DE3, 12268},+    {0x8DE4, 0x8DE4, 8817},+    {0x8DE5, 0x8DE6, 12269},+    {0x8DE7, 0x8DE7, 9096},+    {0x8DE8, 0x8DF6, 12271},+    {0x8DF7, 0x8DF7, 9102},+    {0x8DF8, 0x8DFD, 12286},+    {0x8DFE, 0x8DFE, 9101},+    {0x8E40, 0x8E45, 12292},+    {0x8E46, 0x8E46, 9100},+    {0x8E47, 0x8E55, 12298},+    {0x8E56, 0x8E56, 9104},+    {0x8E57, 0x8E57, 12313},+    {0x8E58, 0x8E58, 8243},+    {0x8E59, 0x8E59, 12314},+    {0x8E5A, 0x8E5A, 8764},+    {0x8E5B, 0x8E67, 12315},+    {0x8E68, 0x8E68, 8169},+    {0x8E69, 0x8E6D, 12328},+    {0x8E6E, 0x8E6E, 8277},+    {0x8E6F, 0x8E6F, 12333},+    {0x8E70, 0x8E70, 9106},+    {0x8E71, 0x8E7E, 12334},+    {0x8E80, 0x8E80, 8996},+    {0x8E81, 0x8E9A, 12348},+    {0x8E9B, 0x8E9B, 8515},+    {0x8E9C, 0x8E9E, 12374},+    {0x8E9F, 0x8E9F, 8489},+    {0x8EA0, 0x8EA3, 12377},+    {0x8EA4, 0x8EA4, 8823},+    {0x8EA5, 0x8EA6, 12381},+    {0x8EA7, 0x8EA7, 7847},+    {0x8EA8, 0x8EAB, 12383},+    {0x8EAC, 0x8EAC, 8837},+    {0x8EAD, 0x8EAD, 12387},+    {0x8EAE, 0x8EAE, 9092},+    {0x8EAF, 0x8EBC, 12388},+    {0x8EBD, 0x8EBD, 9095},+    {0x8EBE, 0x8EBE, 9094},+    {0x8EBF, 0x8EC2, 12402},+    {0x8EC3, 0x8EC3, 8848},+    {0x8EC4, 0x8EC4, 12406},+    {0x8EC5, 0x8EC5, 7748},+    {0x8EC6, 0x8ECC, 12407},+    {0x8ECD, 0x8ECD, 7730},+    {0x8ECE, 0x8ECE, 9093},+    {0x8ECF, 0x8ED5, 12414},+    {0x8ED6, 0x8ED6, 7955},+    {0x8ED7, 0x8ED7, 8051},+    {0x8ED8, 0x8EEB, 12421},+    {0x8EEC, 0x8EEC, 8160},+    {0x8EED, 0x8EFE, 12441},+    {0x8F40, 0x8F51, 12459},+    {0x8F52, 0x8F52, 8327},+    {0x8F53, 0x8F53, 7800},+    {0x8F54, 0x8F54, 9134},+    {0x8F55, 0x8F55, 7926},+    {0x8F56, 0x8F56, 7985},+    {0x8F57, 0x8F5C, 12477},+    {0x8F5D, 0x8F5D, 8261},+    {0x8F5E, 0x8F63, 12483},+    {0x8F64, 0x8F64, 8568},+    {0x8F65, 0x8F7E, 12489},+    {0x8F80, 0x8F85, 12515},+    {0x8F86, 0x8F86, 9205},+    {0x8F87, 0x8F87, 12521},+    {0x8F88, 0x8F88, 8821},+    {0x8F89, 0x8F94, 12522},+    {0x8F95, 0x8F95, 9838},+    {0x8F96, 0x8F96, 12534},+    {0x8F97, 0x8F97, 7856},+    {0x8F98, 0x8F9A, 12535},+    {0x8F9B, 0x8F9B, 8323},+    {0x8F9C, 0x8F9C, 12538},+    {0x8F9D, 0x8F9D, 8584},+    {0x8F9E, 0x8FA0, 12539},+    {0x8FA1, 0x8FA1, 9852},+    {0x8FA2, 0x8FBC, 12542},+    {0x8FBD, 0x8FBD, 8133},+    {0x8FBE, 0x8FC3, 12569},+    {0x8FC4, 0x8FC4, 7841},+    {0x8FC5, 0x8FC5, 12575},+    {0x8FC6, 0x8FC6, 9107},+    {0x8FC7, 0x8FCC, 12576},+    {0x8FCD, 0x8FCD, 7947},+    {0x8FCE, 0x8FD7, 12582},+    {0x8FD8, 0x8FD8, 7804},+    {0x8FD9, 0x8FFE, 12592},+    {0x9040, 0x907E, 12630},+    {0x9080, 0x909C, 12693},+    {0x909D, 0x909D, 9140},+    {0x909E, 0x909E, 8318},+    {0x909F, 0x90B9, 12722},+    {0x90BA, 0x90BA, 7907},+    {0x90BB, 0x90BF, 12749},+    {0x90C0, 0x90C0, 8341},+    {0x90C1, 0x90C1, 9147},+    {0x90C2, 0x90C4, 12754},+    {0x90C5, 0x90C5, 9145},+    {0x90C6, 0x90DA, 12757},+    {0x90DB, 0x90DB, 7720},+    {0x90DC, 0x90DC, 9149},+    {0x90DD, 0x90EC, 12778},+    {0x90ED, 0x90ED, 9141},+    {0x90EE, 0x90EF, 12794},+    {0x90F0, 0x90F0, 9146},+    {0x90F1, 0x90F6, 12796},+    {0x90F7, 0x90F7, 9139},+    {0x90F8, 0x90FE, 12802},+    {0x9140, 0x9141, 12809},+    {0x9142, 0x9142, 8546},+    {0x9143, 0x914A, 12811},+    {0x914B, 0x914B, 7774},+    {0x914C, 0x914C, 12819},+    {0x914D, 0x914D, 7773},+    {0x914E, 0x9150, 12820},+    {0x9151, 0x9151, 9143},+    {0x9152, 0x9153, 12823},+    {0x9154, 0x9154, 7983},+    {0x9155, 0x9155, 9439},+    {0x9156, 0x9158, 12825},+    {0x9159, 0x9159, 9138},+    {0x915A, 0x915A, 8526},+    {0x915B, 0x915C, 12828},+    {0x915D, 0x915D, 8274},+    {0x915E, 0x9160, 12830},+    {0x9161, 0x9161, 9148},+    {0x9162, 0x9162, 12833},+    {0x9163, 0x9163, 8427},+    {0x9164, 0x916D, 12834},+    {0x916E, 0x916E, 8754},+    {0x916F, 0x9175, 12844},+    {0x9176, 0x9176, 7743},+    {0x9177, 0x9179, 12851},+    {0x917A, 0x917A, 8219},+    {0x917B, 0x917B, 8380},+    {0x917C, 0x917C, 9150},+    {0x917D, 0x917E, 12854},+    {0x9180, 0x9183, 12856},+    {0x9184, 0x9184, 7854},+    {0x9185, 0x918C, 12860},+    {0x918D, 0x918D, 7931},+    {0x918E, 0x9190, 12868},+    {0x9191, 0x9191, 8329},+    {0x9192, 0x9192, 12871},+    {0x9193, 0x9193, 9137},+    {0x9194, 0x9196, 12872},+    {0x9197, 0x9197, 8644},+    {0x9198, 0x919A, 12875},+    {0x919B, 0x919B, 8724},+    {0x919C, 0x91A8, 12878},+    {0x91A9, 0x91A9, 8158},+    {0x91AA, 0x91AA, 8739},+    {0x91AB, 0x91AB, 9142},+    {0x91AC, 0x91B9, 12891},+    {0x91BA, 0x91BA, 9868},+    {0x91BB, 0x91BB, 9438},+    {0x91BC, 0x91BE, 12905},+    {0x91BF, 0x91BF, 9440},+    {0x91C0, 0x91C2, 12908},+    {0x91C3, 0x91C3, 9144},+    {0x91C4, 0x91CC, 12911},+    {0x91CD, 0x91CD, 7809},+    {0x91CE, 0x91CF, 12920},+    {0x91D0, 0x91D0, 8190},+    {0x91D1, 0x91D1, 8017},+    {0x91D2, 0x91D2, 8673},+    {0x91D3, 0x91D3, 12922},+    {0x91D4, 0x91D4, 9136},+    {0x91D5, 0x91D5, 12923},+    {0x91D6, 0x91D6, 8142},+    {0x91D7, 0x91D7, 12924},+    {0x91D8, 0x91D8, 8478},+    {0x91D9, 0x91D9, 8225},+    {0x91DA, 0x91DE, 12925},+    {0x91DF, 0x91DF, 9441},+    {0x91E0, 0x91E1, 12930},+    {0x91E2, 0x91E2, 9379},+    {0x91E3, 0x91E9, 12932},+    {0x91EA, 0x91EA, 9380},+    {0x91EB, 0x91EF, 12939},+    {0x91F0, 0x91F0, 8819},+    {0x91F1, 0x91F1, 12944},+    {0x91F2, 0x91F2, 8624},+    {0x91F3, 0x91FE, 12945},+    {0x9240, 0x927E, 12957},+    {0x9280, 0x92B5, 13020},+    {0x92B6, 0x92B6, 8657},+    {0x92B7, 0x92CD, 13074},+    {0x92CE, 0x92CE, 8476},+    {0x92CF, 0x92CF, 13097},+    {0x92D0, 0x92D0, 9053},+    {0x92D1, 0x92D3, 13098},+    {0x92D4, 0x92D4, 9858},+    {0x92D5, 0x92DE, 13101},+    {0x92DF, 0x92DF, 8461},+    {0x92E0, 0x92E0, 8282},+    {0x92E1, 0x92FD, 13111},+    {0x92FE, 0x92FE, 8077},+    {0x9340, 0x934F, 13140},+    {0x9350, 0x9350, 8703},+    {0x9351, 0x935C, 13156},+    {0x935D, 0x935D, 8024},+    {0x935E, 0x936F, 13168},+    {0x9370, 0x9370, 8539},+    {0x9371, 0x9375, 13186},+    {0x9376, 0x9376, 7862},+    {0x9377, 0x937E, 13191},+    {0x9380, 0x938B, 13199},+    {0x938C, 0x938C, 8411},+    {0x938D, 0x939C, 13211},+    {0x939D, 0x939D, 9056},+    {0x939E, 0x93A4, 13227},+    {0x93A5, 0x93A5, 9057},+    {0x93A6, 0x93A6, 13234},+    {0x93A7, 0x93A7, 8256},+    {0x93A8, 0x93B3, 13235},+    {0x93B4, 0x93B4, 8846},+    {0x93B5, 0x93B7, 13247},+    {0x93B8, 0x93B8, 8159},+    {0x93B9, 0x93BA, 13250},+    {0x93BB, 0x93BB, 9054},+    {0x93BC, 0x93BC, 13252},+    {0x93BD, 0x93BD, 7786},+    {0x93BE, 0x93C5, 13253},+    {0x93C6, 0x93C6, 8194},+    {0x93C7, 0x93CE, 13261},+    {0x93CF, 0x93CF, 8339},+    {0x93D0, 0x93D6, 13269},+    {0x93D7, 0x93D7, 9055},+    {0x93D8, 0x93DA, 13276},+    {0x93DB, 0x93DB, 7852},+    {0x93DC, 0x93DC, 7764},+    {0x93DD, 0x93E0, 13279},+    {0x93E1, 0x93E1, 7944},+    {0x93E2, 0x93E3, 13283},+    {0x93E4, 0x93E4, 8384},+    {0x93E5, 0x93E5, 9058},+    {0x93E6, 0x93E8, 13285},+    {0x93E9, 0x93E9, 8544},+    {0x93EA, 0x93EA, 13288},+    {0x93EB, 0x93EB, 8605},+    {0x93EC, 0x93EC, 8078},+    {0x93ED, 0x93ED, 8749},+    {0x93EE, 0x93EE, 13289},+    {0x93EF, 0x93EF, 8263},+    {0x93F0, 0x93F0, 13290},+    {0x93F1, 0x93F1, 8802},+    {0x93F2, 0x93F3, 13291},+    {0x93F4, 0x93F4, 8039},+    {0x93F5, 0x93F5, 7858},+    {0x93F6, 0x93F9, 13293},+    {0x93FA, 0x93FA, 7849},+    {0x93FB, 0x93FD, 13297},+    {0x93FE, 0x93FE, 8140},+    {0x9440, 0x9443, 13300},+    {0x9444, 0x9444, 8050},+    {0x9445, 0x944C, 13304},+    {0x944D, 0x944D, 8344},+    {0x944E, 0x944F, 13312},+    {0x9450, 0x9450, 7762},+    {0x9451, 0x9451, 8356},+    {0x9452, 0x9452, 7964},+    {0x9453, 0x9453, 8847},+    {0x9454, 0x9454, 13314},+    {0x9455, 0x9455, 8173},+    {0x9456, 0x9457, 13315},+    {0x9458, 0x9458, 9061},+    {0x9459, 0x945A, 13317},+    {0x945B, 0x945B, 7725},+    {0x945C, 0x945C, 8530},+    {0x945D, 0x945D, 9062},+    {0x945E, 0x945E, 13319},+    {0x945F, 0x945F, 8442},+    {0x9460, 0x9463, 13320},+    {0x9464, 0x9464, 9059},+    {0x9465, 0x9465, 13324},+    {0x9466, 0x9466, 8346},+    {0x9467, 0x946D, 13325},+    {0x946E, 0x946E, 8252},+    {0x946F, 0x9471, 13332},+    {0x9472, 0x9472, 8182},+    {0x9473, 0x9473, 13335},+    {0x9474, 0x9474, 9060},+    {0x9475, 0x9475, 13336},+    {0x9476, 0x9476, 7785},+    {0x9477, 0x9477, 13337},+    {0x9478, 0x9478, 9063},+    {0x9479, 0x9479, 13338},+    {0x947A, 0x947A, 8477},+    {0x947B, 0x947E, 13339},+    {0x9480, 0x9480, 8793},+    {0x9481, 0x9481, 8278},+    {0x9482, 0x9482, 8547},+    {0x9483, 0x9486, 13343},+    {0x9487, 0x9487, 8105},+    {0x9488, 0x9488, 8188},+    {0x9489, 0x94A0, 13347},+    {0x94A1, 0x94A1, 7726},+    {0x94A2, 0x94B2, 13371},+    {0x94B3, 0x94B3, 7868},+    {0x94B4, 0x94B4, 13388},+    {0x94B5, 0x94B5, 8514},+    {0x94B6, 0x94BE, 13389},+    {0x94BF, 0x94BF, 8222},+    {0x94C0, 0x94C0, 7747},+    {0x94C1, 0x94CB, 13398},+    {0x94CC, 0x94CC, 9428},+    {0x94CD, 0x94D7, 13409},+    {0x94D8, 0x94D8, 8815},+    {0x94D9, 0x94DF, 13420},+    {0x94E0, 0x94E0, 7895},+    {0x94E1, 0x94FE, 13427},+    {0x9540, 0x9571, 13457},+    {0x9572, 0x9572, 8493},+    {0x9573, 0x957E, 13507},+    {0x9580, 0x9582, 13519},+    {0x9583, 0x9583, 8859},+    {0x9584, 0x959D, 13522},+    {0x959E, 0x959E, 8790},+    {0x959F, 0x959F, 9384},+    {0x95A0, 0x95B2, 13548},+    {0x95B3, 0x95B3, 7801},+    {0x95B4, 0x95B9, 13567},+    {0x95BA, 0x95BA, 8794},+    {0x95BB, 0x95CE, 13573},+    {0x95CF, 0x95CF, 9383},+    {0x95D0, 0x95D0, 13593},+    {0x95D1, 0x95D1, 9862},+    {0x95D2, 0x95D2, 9382},+    {0x95D3, 0x95D3, 13594},+    {0x95D4, 0x95D4, 8654},+    {0x95D5, 0x95E0, 13595},+    {0x95E1, 0x95E1, 9385},+    {0x95E2, 0x95E6, 13607},+    {0x95E7, 0x95E7, 8167},+    {0x95E8, 0x95F0, 13612},+    {0x95F1, 0x95F1, 8466},+    {0x95F2, 0x95F7, 13621},+    {0x95F8, 0x95F8, 8508},+    {0x95F9, 0x95FD, 13627},+    {0x95FE, 0x95FE, 8028},+    {0x9640, 0x9655, 13632},+    {0x9656, 0x9656, 9412},+    {0x9657, 0x967B, 13654},+    {0x967C, 0x967C, 7884},+    {0x967D, 0x967E, 13691},+    {0x9680, 0x96FE, 13693},+    {0x9740, 0x9766, 13820},+    {0x9767, 0x9767, 9322},+    {0x9768, 0x976B, 13859},+    {0x976C, 0x976C, 8565},+    {0x976D, 0x976D, 13863},+    {0x976E, 0x976E, 9325},+    {0x976F, 0x977E, 13864},+    {0x9780, 0x9795, 13880},+    {0x9796, 0x9796, 9323},+    {0x9797, 0x9797, 8799},+    {0x9798, 0x979C, 13902},+    {0x979D, 0x979D, 7886},+    {0x979E, 0x97A2, 13907},+    {0x97A3, 0x97A3, 8818},+    {0x97A4, 0x97BE, 13912},+    {0x97BF, 0x97BF, 9331},+    {0x97C0, 0x97ED, 13939},+    {0x97EE, 0x97EE, 8702},+    {0x97EF, 0x97F6, 13985},+    {0x97F7, 0x97F7, 7934},+    {0x97F8, 0x97FE, 13993},+    {0x9840, 0x9844, 14000},+    {0x9845, 0x9845, 9333},+    {0x9846, 0x9848, 14005},+    {0x9849, 0x9849, 8714},+    {0x984A, 0x984E, 14008},+    {0x984F, 0x984F, 8047},+    {0x9850, 0x9870, 14013},+    {0x9871, 0x9871, 9320},+    {0x9872, 0x9872, 14046},+    {0x9873, 0x9873, 8448},+    {0x9874, 0x987E, 14047},+    {0x9880, 0x9880, 14058},+    {0x9881, 0x9881, 9334},+    {0x9882, 0x988A, 14059},+    {0x988B, 0x988B, 7975},+    {0x988C, 0x988C, 8407},+    {0x988D, 0x989F, 14068},+    {0x98A0, 0x98A0, 9340},+    {0x98A1, 0x98A9, 14087},+    {0x98AA, 0x98AA, 8097},+    {0x98AB, 0x98B5, 14096},+    {0x98B6, 0x98B6, 8874},+    {0x98B7, 0x98B7, 8197},+    {0x98B8, 0x98B9, 14107},+    {0x98BA, 0x98BA, 9324},+    {0x98BB, 0x98C6, 14109},+    {0x98C7, 0x98C7, 8254},+    {0x98C8, 0x98CA, 14121},+    {0x98CB, 0x98CB, 7756},+    {0x98CC, 0x98CF, 14124},+    {0x98D0, 0x98D0, 8506},+    {0x98D1, 0x98D2, 14128},+    {0x98D3, 0x98D3, 8708},+    {0x98D4, 0x98E2, 14130},+    {0x98E3, 0x98E3, 8387},+    {0x98E4, 0x98E4, 8512},+    {0x98E5, 0x98E5, 9335},+    {0x98E6, 0x98EE, 14145},+    {0x98EF, 0x98EF, 9332},+    {0x98F0, 0x98F1, 14154},+    {0x98F2, 0x98F2, 8413},+    {0x98F3, 0x98FE, 14156},+    {0x9940, 0x9942, 14168},+    {0x9943, 0x9943, 8040},+    {0x9944, 0x9944, 14171},+    {0x9945, 0x9945, 8581},+    {0x9946, 0x9965, 14172},+    {0x9966, 0x9966, 9330},+    {0x9967, 0x996D, 14204},+    {0x996E, 0x996E, 7861},+    {0x996F, 0x9974, 14211},+    {0x9975, 0x9975, 9336},+    {0x9976, 0x9979, 14217},+    {0x997A, 0x997A, 8075},+    {0x997B, 0x997B, 9348},+    {0x997C, 0x997E, 14221},+    {0x9980, 0x9984, 14224},+    {0x9985, 0x9985, 9881},+    {0x9986, 0x9988, 14229},+    {0x9989, 0x9989, 9346},+    {0x998A, 0x998D, 14232},+    {0x998E, 0x998E, 8353},+    {0x998F, 0x9990, 14236},+    {0x9991, 0x9991, 8082},+    {0x9992, 0x9998, 14238},+    {0x9999, 0x9999, 7992},+    {0x999A, 0x99A8, 14245},+    {0x99A9, 0x99A9, 9349},+    {0x99AA, 0x99AF, 14260},+    {0x99B0, 0x99B0, 9344},+    {0x99B1, 0x99B1, 9326},+    {0x99B2, 0x99B2, 14266},+    {0x99B3, 0x99B3, 9339},+    {0x99B4, 0x99B4, 9350},+    {0x99B5, 0x99B5, 9329},+    {0x99B6, 0x99BC, 14267},+    {0x99BD, 0x99BD, 9347},+    {0x99BE, 0x99BE, 9328},+    {0x99BF, 0x99BF, 14274},+    {0x99C0, 0x99C0, 9321},+    {0x99C1, 0x99C1, 14275},+    {0x99C2, 0x99C2, 9343},+    {0x99C3, 0x99C8, 14276},+    {0x99C9, 0x99C9, 9327},+    {0x99CA, 0x99CD, 14282},+    {0x99CE, 0x99CE, 9345},+    {0x99CF, 0x99D0, 14286},+    {0x99D1, 0x99D1, 8736},+    {0x99D2, 0x99D9, 14288},+    {0x99DA, 0x99DA, 8181},+    {0x99DB, 0x99DF, 14296},+    {0x99E0, 0x99E0, 8436},+    {0x99E1, 0x99E4, 14301},+    {0x99E5, 0x99E5, 9341},+    {0x99E6, 0x99E7, 14305},+    {0x99E8, 0x99E8, 9337},+    {0x99E9, 0x99EB, 14307},+    {0x99EC, 0x99EC, 9342},+    {0x99ED, 0x99F3, 14310},+    {0x99F4, 0x99F4, 9338},+    {0x99F5, 0x99FE, 14317},+    {0x9A40, 0x9A49, 14327},+    {0x9A4A, 0x9A4A, 8419},+    {0x9A4B, 0x9A56, 14337},+    {0x9A57, 0x9A57, 8365},+    {0x9A58, 0x9A64, 14349},+    {0x9A65, 0x9A65, 9419},+    {0x9A66, 0x9A66, 14362},+    {0x9A67, 0x9A67, 8019},+    {0x9A68, 0x9A70, 14363},+    {0x9A71, 0x9A71, 8537},+    {0x9A72, 0x9A75, 14372},+    {0x9A76, 0x9A76, 8211},+    {0x9A77, 0x9A77, 7987},+    {0x9A78, 0x9A7E, 14376},+    {0x9A80, 0x9A87, 14383},+    {0x9A88, 0x9A88, 7772},+    {0x9A89, 0x9A8B, 14391},+    {0x9A8C, 0x9A8C, 9352},+    {0x9A8D, 0x9A90, 14394},+    {0x9A91, 0x9A91, 9351},+    {0x9A92, 0x9A96, 14398},+    {0x9A97, 0x9A97, 9354},+    {0x9A98, 0x9A99, 14403},+    {0x9A9A, 0x9A9A, 9353},+    {0x9A9B, 0x9A9B, 9355},+    {0x9A9C, 0x9A9D, 14405},+    {0x9A9E, 0x9A9E, 8067},+    {0x9A9F, 0x9AA1, 14407},+    {0x9AA2, 0x9AA2, 8463},+    {0x9AA3, 0x9AA3, 8155},+    {0x9AA4, 0x9AA9, 14410},+    {0x9AAA, 0x9AAA, 8367},+    {0x9AAB, 0x9ACF, 14416},+    {0x9AD0, 0x9AD0, 9408},+    {0x9AD1, 0x9AD5, 14453},+    {0x9AD6, 0x9AD6, 8813},+    {0x9AD7, 0x9AD9, 14458},+    {0x9ADA, 0x9ADA, 9409},+    {0x9ADB, 0x9AE1, 14461},+    {0x9AE2, 0x9AE2, 8394},+    {0x9AE3, 0x9AE3, 14468},+    {0x9AE4, 0x9AE4, 8423},+    {0x9AE5, 0x9AE5, 9410},+    {0x9AE6, 0x9AFE, 14469},+    {0x9B40, 0x9B7E, 14494},+    {0x9B80, 0x9BD0, 14557},+    {0x9BD1, 0x9BD1, 9180},+    {0x9BD2, 0x9BDB, 14638},+    {0x9BDC, 0x9BDC, 9179},+    {0x9BDD, 0x9BFE, 14648},+    {0x9C40, 0x9C52, 14682},+    {0x9C53, 0x9C53, 8286},+    {0x9C54, 0x9C58, 14701},+    {0x9C59, 0x9C59, 8772},+    {0x9C5A, 0x9C5A, 9186},+    {0x9C5B, 0x9C5B, 14706},+    {0x9C5C, 0x9C5C, 8404},+    {0x9C5D, 0x9C74, 14707},+    {0x9C75, 0x9C75, 8607},+    {0x9C76, 0x9C78, 14731},+    {0x9C79, 0x9C79, 7782},+    {0x9C7A, 0x9C7E, 14734},+    {0x9C80, 0x9C85, 14739},+    {0x9C86, 0x9C86, 8035},+    {0x9C87, 0x9C9C, 14745},+    {0x9C9D, 0x9C9D, 9181},+    {0x9C9E, 0x9CAA, 14767},+    {0x9CAB, 0x9CAB, 8555},+    {0x9CAC, 0x9CC9, 14780},+    {0x9CCA, 0x9CCA, 8885},+    {0x9CCB, 0x9CCE, 14810},+    {0x9CCF, 0x9CCF, 7974},+    {0x9CD0, 0x9CE5, 14814},+    {0x9CE6, 0x9CE6, 7779},+    {0x9CE7, 0x9CE7, 8328},+    {0x9CE8, 0x9CEB, 14836},+    {0x9CEC, 0x9CEC, 7869},+    {0x9CED, 0x9CED, 14840},+    {0x9CEE, 0x9CEE, 9025},+    {0x9CEF, 0x9CFA, 14841},+    {0x9CFB, 0x9CFB, 8011},+    {0x9CFC, 0x9CFD, 14853},+    {0x9CFE, 0x9CFE, 8850},+    {0x9D40, 0x9D41, 14855},+    {0x9D42, 0x9D42, 8484},+    {0x9D43, 0x9D45, 14857},+    {0x9D46, 0x9D46, 8264},+    {0x9D47, 0x9D47, 9184},+    {0x9D48, 0x9D4C, 14860},+    {0x9D4D, 0x9D4D, 8311},+    {0x9D4E, 0x9D4E, 14865},+    {0x9D4F, 0x9D4F, 8762},+    {0x9D50, 0x9D60, 14866},+    {0x9D61, 0x9D61, 8369},+    {0x9D62, 0x9D67, 14883},+    {0x9D68, 0x9D68, 8001},+    {0x9D69, 0x9D69, 8220},+    {0x9D6A, 0x9D6D, 14889},+    {0x9D6E, 0x9D6E, 8888},+    {0x9D6F, 0x9D70, 14893},+    {0x9D71, 0x9D71, 8822},+    {0x9D72, 0x9D74, 14895},+    {0x9D75, 0x9D75, 8091},+    {0x9D76, 0x9D7A, 14898},+    {0x9D7B, 0x9D7B, 8095},+    {0x9D7C, 0x9D7C, 14903},+    {0x9D7D, 0x9D7D, 9674},+    {0x9D7E, 0x9D7E, 14904},+    {0x9D80, 0x9D89, 14905},+    {0x9D8A, 0x9D8A, 8382},+    {0x9D8B, 0x9D8C, 14915},+    {0x9D8D, 0x9D8D, 8116},+    {0x9D8E, 0x9D90, 14917},+    {0x9D91, 0x9D91, 9175},+    {0x9D92, 0x9D98, 14920},+    {0x9D99, 0x9D99, 8453},+    {0x9D9A, 0x9DA0, 14927},+    {0x9DA1, 0x9DA1, 9185},+    {0x9DA2, 0x9DA2, 8172},+    {0x9DA3, 0x9DA6, 14934},+    {0x9DA7, 0x9DA7, 9194},+    {0x9DA8, 0x9DAB, 14938},+    {0x9DAC, 0x9DAC, 9187},+    {0x9DAD, 0x9DAD, 8462},+    {0x9DAE, 0x9DB1, 14942},+    {0x9DB2, 0x9DB2, 8102},+    {0x9DB3, 0x9DB3, 8196},+    {0x9DB4, 0x9DBD, 14946},+    {0x9DBE, 0x9DBE, 8093},+    {0x9DBF, 0x9DC5, 14956},+    {0x9DC6, 0x9DC6, 9189},+    {0x9DC7, 0x9DC8, 14963},+    {0x9DC9, 0x9DC9, 8804},+    {0x9DCA, 0x9DCC, 14965},+    {0x9DCD, 0x9DCD, 9442},+    {0x9DCE, 0x9DD1, 14968},+    {0x9DD2, 0x9DD2, 9182},+    {0x9DD3, 0x9DD4, 14972},+    {0x9DD5, 0x9DD5, 7876},+    {0x9DD6, 0x9DE0, 14974},+    {0x9DE1, 0x9DE1, 8886},+    {0x9DE2, 0x9DE2, 8361},+    {0x9DE3, 0x9DF0, 14985},+    {0x9DF1, 0x9DF1, 8491},+    {0x9DF2, 0x9DF3, 14999},+    {0x9DF4, 0x9DF4, 8357},+    {0x9DF5, 0x9DF6, 15001},+    {0x9DF7, 0x9DF7, 9867},+    {0x9DF8, 0x9DF9, 15003},+    {0x9DFA, 0x9DFA, 8054},+    {0x9DFB, 0x9DFC, 15005},+    {0x9DFD, 0x9DFD, 8557},+    {0x9DFE, 0x9DFE, 15007},+    {0x9E40, 0x9E44, 15008},+    {0x9E45, 0x9E45, 8193},+    {0x9E46, 0x9E47, 15013},+    {0x9E48, 0x9E48, 8593},+    {0x9E49, 0x9E49, 7760},+    {0x9E4A, 0x9E51, 15015},+    {0x9E52, 0x9E52, 8092},+    {0x9E53, 0x9E53, 15023},+    {0x9E54, 0x9E54, 9178},+    {0x9E55, 0x9E55, 15024},+    {0x9E56, 0x9E56, 8275},+    {0x9E57, 0x9E5C, 15025},+    {0x9E5D, 0x9E5D, 9193},+    {0x9E5E, 0x9E5E, 9188},+    {0x9E5F, 0x9E60, 15031},+    {0x9E61, 0x9E61, 8661},+    {0x9E62, 0x9E62, 15033},+    {0x9E63, 0x9E63, 9190},+    {0x9E64, 0x9E66, 15034},+    {0x9E67, 0x9E67, 9183},+    {0x9E68, 0x9E6B, 15037},+    {0x9E6C, 0x9E6C, 7759},+    {0x9E6D, 0x9E6E, 15041},+    {0x9E6F, 0x9E6F, 9177},+    {0x9E70, 0x9E71, 15043},+    {0x9E72, 0x9E72, 8212},+    {0x9E73, 0x9E73, 15045},+    {0x9E74, 0x9E74, 9196},+    {0x9E75, 0x9E75, 9195},+    {0x9E76, 0x9E7A, 15046},+    {0x9E7B, 0x9E7B, 9176},+    {0x9E7C, 0x9E7C, 9198},+    {0x9E7D, 0x9E7E, 15051},+    {0x9E80, 0x9E84, 15053},+    {0x9E85, 0x9E85, 9870},+    {0x9E86, 0x9E86, 15058},+    {0x9E87, 0x9E87, 9197},+    {0x9E88, 0x9E90, 15059},+    {0x9E91, 0x9E91, 8186},+    {0x9E92, 0x9E95, 15068},+    {0x9E96, 0x9E96, 9174},+    {0x9E97, 0x9E97, 9192},+    {0x9E98, 0x9EA1, 15072},+    {0x9EA2, 0x9EA2, 8454},+    {0x9EA3, 0x9EA5, 15082},+    {0x9EA6, 0x9EA6, 8203},+    {0x9EA7, 0x9EA8, 15085},+    {0x9EA9, 0x9EA9, 8550},+    {0x9EAA, 0x9EAD, 15087},+    {0x9EAE, 0x9EAE, 9199},+    {0x9EAF, 0x9EB2, 15091},+    {0x9EB3, 0x9EB3, 8585},+    {0x9EB4, 0x9EB4, 8280},+    {0x9EB5, 0x9EB6, 15095},+    {0x9EB7, 0x9EB7, 9191},+    {0x9EB8, 0x9EF4, 15097},+    {0x9EF5, 0x9EF5, 8611},+    {0x9EF6, 0x9EFE, 15158},+    {0x9F40, 0x9F4D, 15167},+    {0x9F4E, 0x9F4E, 8570},+    {0x9F4F, 0x9F6E, 15181},+    {0x9F6F, 0x9F6F, 8613},+    {0x9F70, 0x9F7E, 15213},+    {0x9F80, 0x9F91, 15228},+    {0x9F92, 0x9F92, 8226},+    {0x9F93, 0x9F97, 15246},+    {0x9F98, 0x9F98, 9430},+    {0x9F99, 0x9FA5, 15251},+    {0x9FA6, 0x9FA6, 9018},+    {0x9FA7, 0x9FA8, 15264},+    {0x9FA9, 0x9FA9, 7918},+    {0x9FAA, 0x9FAB, 15266},+    {0x9FAC, 0x9FAC, 9429},+    {0x9FAD, 0x9FC8, 15268},+    {0x9FC9, 0x9FC9, 8744},+    {0x9FCA, 0x9FCC, 15296},+    {0x9FCD, 0x9FCD, 9431},+    {0x9FCE, 0x9FE0, 15299},+    {0x9FE1, 0x9FE1, 8444},+    {0x9FE2, 0x9FEA, 15318},+    {0x9FEB, 0x9FEB, 7815},+    {0x9FEC, 0x9FED, 15327},+    {0x9FEE, 0x9FEE, 9432},+    {0x9FEF, 0x9FF3, 15329},+    {0x9FF4, 0x9FF4, 7866},+    {0x9FF5, 0x9FFC, 15334},+    {0x9FFD, 0x9FFD, 8473},+    {0x9FFE, 0x9FFE, 15342},+    {0xA040, 0xA042, 15343},+    {0xA043, 0xA043, 8556},+    {0xA044, 0xA045, 15346},+    {0xA046, 0xA046, 9433},+    {0xA047, 0xA048, 15348},+    {0xA049, 0xA049, 8743},+    {0xA04A, 0xA04D, 15350},+    {0xA04E, 0xA04E, 7775},+    {0xA04F, 0xA053, 15354},+    {0xA054, 0xA054, 8863},+    {0xA055, 0xA059, 15359},+    {0xA05A, 0xA05A, 8029},+    {0xA05B, 0xA060, 15364},+    {0xA061, 0xA061, 8124},+    {0xA062, 0xA062, 15370},+    {0xA063, 0xA063, 9434},+    {0xA064, 0xA070, 15371},+    {0xA071, 0xA071, 8521},+    {0xA072, 0xA073, 15384},+    {0xA074, 0xA074, 8262},+    {0xA075, 0xA07E, 15386},+    {0xA080, 0xA080, 8192},+    {0xA081, 0xA090, 15396},+    {0xA091, 0xA091, 8592},+    {0xA092, 0xA093, 15412},+    {0xA094, 0xA094, 8712},+    {0xA095, 0xA095, 15414},+    {0xA096, 0xA096, 7910},+    {0xA097, 0xA0A8, 15415},+    {0xA0A9, 0xA0A9, 9411},+    {0xA0AA, 0xA0BE, 15433},+    {0xA0BF, 0xA0BF, 8396},+    {0xA0C0, 0xA0CD, 15454},+    {0xA0CE, 0xA0CE, 9024},+    {0xA0CF, 0xA0D8, 15468},+    {0xA0D9, 0xA0D9, 7889},+    {0xA0DA, 0xA0DD, 15478},+    {0xA0DE, 0xA0DE, 8620},+    {0xA0DF, 0xA0ED, 15482},+    {0xA0EE, 0xA0EE, 8879},+    {0xA0EF, 0xA0FE, 15497},+    {0xA1A1, 0xA1FE, 96},+    {0xA2A1, 0xA2AA, 9897},+    {0xA2B1, 0xA2E2, 190},+    {0xA2E5, 0xA2EE, 240},+    {0xA2F1, 0xA2FC, 250},+    {0xA3A1, 0xA3FE, 262},+    {0xA4A1, 0xA4F3, 356},+    {0xA5A1, 0xA5F6, 439},+    {0xA6A1, 0xA6B8, 525},+    {0xA6C1, 0xA6F5, 549},+    {0xA7A1, 0xA7C1, 602},+    {0xA7D1, 0xA7F1, 635},+    {0xA840, 0xA87E, 9907},+    {0xA880, 0xA895, 9970},+    {0xA8A1, 0xA8C0, 668},+    {0xA8C5, 0xA8EA, 700},+    {0xA940, 0xA957, 9992},+    {0xA959, 0xA95A, 10016},+    {0xA95C, 0xA95C, 10018},+    {0xA960, 0xA97E, 10019},+    {0xA980, 0xA995, 10050},+    {0xA996, 0xA996, 7703},+    {0xA9A4, 0xA9EF, 738},+    {0xAA40, 0xAA4C, 15513},+    {0xAA4D, 0xAA4D, 8630},+    {0xAA4E, 0xAA4E, 7741},+    {0xAA4F, 0xAA70, 15526},+    {0xAA71, 0xAA71, 8757},+    {0xAA72, 0xAA72, 15560},+    {0xAA73, 0xAA73, 9111},+    {0xAA74, 0xAA76, 15561},+    {0xAA77, 0xAA77, 9109},+    {0xAA78, 0xAA79, 15564},+    {0xAA7A, 0xAA7A, 8767},+    {0xAA7B, 0xAA7B, 8490},+    {0xAA7C, 0xAA7E, 15566},+    {0xAA80, 0xAA99, 15569},+    {0xAA9A, 0xAA9A, 7890},+    {0xAA9B, 0xAA9B, 15595},+    {0xAA9C, 0xAA9C, 9110},+    {0xAA9D, 0xAA9D, 9112},+    {0xAA9E, 0xAA9E, 15596},+    {0xAA9F, 0xAA9F, 8354},+    {0xAAA0, 0xAAA0, 15597},+    {0xAAA1, 0xAAFE, 814},+    {0xAB40, 0xAB40, 8036},+    {0xAB41, 0xAB42, 15598},+    {0xAB43, 0xAB43, 8235},+    {0xAB44, 0xAB44, 15600},+    {0xAB45, 0xAB45, 9108},+    {0xAB46, 0xAB46, 8505},+    {0xAB47, 0xAB47, 15601},+    {0xAB48, 0xAB48, 8543},+    {0xAB49, 0xAB49, 8641},+    {0xAB4A, 0xAB4A, 9114},+    {0xAB4B, 0xAB4C, 15602},+    {0xAB4D, 0xAB4D, 9113},+    {0xAB4E, 0xAB7E, 15604},+    {0xAB80, 0xABA0, 15653},+    {0xABA1, 0xABC0, 908},+    {0xAC40, 0xAC45, 15686},+    {0xAC46, 0xAC46, 8640},+    {0xAC47, 0xAC70, 15692},+    {0xAC71, 0xAC71, 9312},+    {0xAC72, 0xAC7B, 15734},+    {0xAC7C, 0xAC7C, 9308},+    {0xAC7D, 0xAC7E, 15744},+    {0xAC80, 0xAC8C, 15746},+    {0xAC8D, 0xAC8D, 8541},+    {0xAC8E, 0xAC92, 15759},+    {0xAC93, 0xAC93, 8741},+    {0xAC94, 0xAC94, 8298},+    {0xAC95, 0xACA0, 15764},+    {0xAD40, 0xAD48, 15776},+    {0xAD49, 0xAD49, 9313},+    {0xAD4A, 0xAD5D, 15785},+    {0xAD5E, 0xAD5E, 9307},+    {0xAD5F, 0xAD60, 15805},+    {0xAD61, 0xAD61, 9314},+    {0xAD62, 0xAD67, 15807},+    {0xAD68, 0xAD68, 8020},+    {0xAD69, 0xAD73, 15813},+    {0xAD74, 0xAD74, 9311},+    {0xAD75, 0xAD7E, 15824},+    {0xAD80, 0xAD81, 15834},+    {0xAD82, 0xAD82, 8428},+    {0xAD83, 0xAD86, 15836},+    {0xAD87, 0xAD87, 9309},+    {0xAD88, 0xAD8A, 15840},+    {0xAD8B, 0xAD8B, 9315},+    {0xAD8C, 0xAD90, 15843},+    {0xAD91, 0xAD91, 9316},+    {0xAD92, 0xADA0, 15848},+    {0xAE40, 0xAE53, 15863},+    {0xAE54, 0xAE54, 9381},+    {0xAE55, 0xAE61, 15883},+    {0xAE62, 0xAE62, 7792},+    {0xAE63, 0xAE7E, 15896},+    {0xAE80, 0xAE80, 8335},+    {0xAE81, 0xAE84, 15924},+    {0xAE85, 0xAE85, 7746},+    {0xAE86, 0xAE8A, 15928},+    {0xAE8B, 0xAE8B, 8014},+    {0xAE8C, 0xAE93, 15933},+    {0xAE94, 0xAE94, 7857},+    {0xAE95, 0xAE9F, 15941},+    {0xAEA0, 0xAEA0, 7819},+    {0xAF40, 0xAF63, 15952},+    {0xAF64, 0xAF64, 8134},+    {0xAF65, 0xAF7A, 15988},+    {0xAF7B, 0xAF7B, 9646},+    {0xAF7C, 0xAF7E, 16010},+    {0xAF80, 0xAF81, 16013},+    {0xAF82, 0xAF82, 7937},+    {0xAF83, 0xAF83, 8704},+    {0xAF84, 0xAF8D, 16015},+    {0xAF8E, 0xAF8E, 9650},+    {0xAF8F, 0xAF8F, 7831},+    {0xAF90, 0xAF90, 16025},+    {0xAF91, 0xAF91, 8363},+    {0xAF92, 0xAF9B, 16026},+    {0xAF9C, 0xAF9C, 9651},+    {0xAF9D, 0xAF9E, 16036},+    {0xAF9F, 0xAF9F, 8232},+    {0xAFA0, 0xAFA0, 16038},+    {0xB040, 0xB040, 16039},+    {0xB041, 0xB042, 9647},+    {0xB043, 0xB043, 16040},+    {0xB044, 0xB044, 9649},+    {0xB045, 0xB04E, 16041},+    {0xB04F, 0xB04F, 9644},+    {0xB050, 0xB053, 16051},+    {0xB054, 0xB054, 7758},+    {0xB055, 0xB056, 16055},+    {0xB057, 0xB057, 8706},+    {0xB058, 0xB058, 9643},+    {0xB059, 0xB059, 8838},+    {0xB05A, 0xB05A, 16057},+    {0xB05B, 0xB05B, 9645},+    {0xB05C, 0xB05C, 16058},+    {0xB05D, 0xB05D, 9654},+    {0xB05E, 0xB05E, 16059},+    {0xB05F, 0xB05F, 8675},+    {0xB060, 0xB061, 9652},+    {0xB062, 0xB062, 8751},+    {0xB063, 0xB063, 8549},+    {0xB064, 0xB064, 9655},+    {0xB065, 0xB06B, 16060},+    {0xB06C, 0xB06C, 7913},+    {0xB06D, 0xB07C, 16067},+    {0xB07D, 0xB07D, 7717},+    {0xB07E, 0xB07E, 16083},+    {0xB080, 0xB096, 16084},+    {0xB097, 0xB097, 9664},+    {0xB098, 0xB098, 16107},+    {0xB099, 0xB099, 8858},+    {0xB09A, 0xB0A0, 16108},+    {0xB0A1, 0xB0FE, 940},+    {0xB140, 0xB14A, 16115},+    {0xB14B, 0xB14B, 8814},+    {0xB14C, 0xB14C, 16126},+    {0xB14D, 0xB14D, 8125},+    {0xB14E, 0xB14E, 16127},+    {0xB14F, 0xB14F, 8068},+    {0xB150, 0xB150, 8370},+    {0xB151, 0xB151, 16128},+    {0xB152, 0xB152, 8259},+    {0xB153, 0xB17E, 16129},+    {0xB180, 0xB196, 16173},+    {0xB197, 0xB197, 9860},+    {0xB198, 0xB1A0, 16196},+    {0xB1A1, 0xB1FE, 1034},+    {0xB240, 0xB240, 16205},+    {0xB241, 0xB241, 9455},+    {0xB242, 0xB266, 16206},+    {0xB267, 0xB267, 9454},+    {0xB268, 0xB26C, 16243},+    {0xB26D, 0xB26D, 8308},+    {0xB26E, 0xB273, 16248},+    {0xB274, 0xB274, 9863},+    {0xB275, 0xB27E, 16254},+    {0xB280, 0xB280, 9456},+    {0xB281, 0xB288, 16264},+    {0xB289, 0xB289, 9869},+    {0xB28A, 0xB299, 16272},+    {0xB29A, 0xB29A, 8864},+    {0xB29B, 0xB2A0, 16288},+    {0xB2A1, 0xB2FE, 1128},+    {0xB340, 0xB342, 16294},+    {0xB343, 0xB343, 8107},+    {0xB344, 0xB36F, 16297},+    {0xB370, 0xB370, 9896},+    {0xB371, 0xB37E, 16341},+    {0xB380, 0xB387, 16355},+    {0xB388, 0xB388, 9449},+    {0xB389, 0xB38B, 16363},+    {0xB38C, 0xB38C, 9445},+    {0xB38D, 0xB38D, 16366},+    {0xB38E, 0xB38E, 8698},+    {0xB38F, 0xB3A0, 16367},+    {0xB3A1, 0xB3FE, 1222},+    {0xB440, 0xB453, 16385},+    {0xB454, 0xB454, 8520},+    {0xB455, 0xB457, 16405},+    {0xB458, 0xB458, 9444},+    {0xB459, 0xB45D, 16408},+    {0xB45E, 0xB45E, 9446},+    {0xB45F, 0xB45F, 8439},+    {0xB460, 0xB460, 16413},+    {0xB461, 0xB461, 8299},+    {0xB462, 0xB474, 16414},+    {0xB475, 0xB475, 8871},+    {0xB476, 0xB47D, 16433},+    {0xB47E, 0xB47E, 9452},+    {0xB480, 0xB482, 16441},+    {0xB483, 0xB483, 9451},+    {0xB484, 0xB488, 16444},+    {0xB489, 0xB489, 9443},+    {0xB48A, 0xB492, 16449},+    {0xB493, 0xB493, 9450},+    {0xB494, 0xB4A0, 16458},+    {0xB4A1, 0xB4FE, 1316},+    {0xB540, 0xB540, 16471},+    {0xB541, 0xB541, 7826},+    {0xB542, 0xB54A, 16472},+    {0xB54B, 0xB54B, 7719},+    {0xB54C, 0xB555, 16481},+    {0xB556, 0xB556, 8166},+    {0xB557, 0xB559, 16491},+    {0xB55A, 0xB55A, 9447},+    {0xB55B, 0xB55B, 8210},+    {0xB55C, 0xB55C, 7916},+    {0xB55D, 0xB560, 16494},+    {0xB561, 0xB561, 9448},+    {0xB562, 0xB57E, 16498},+    {0xB580, 0xB59B, 16527},+    {0xB59C, 0xB59C, 8038},+    {0xB59D, 0xB59D, 9436},+    {0xB59E, 0xB5A0, 16555},+    {0xB5A1, 0xB5FE, 1410},+    {0xB640, 0xB651, 16558},+    {0xB652, 0xB652, 9890},+    {0xB653, 0xB654, 16576},+    {0xB655, 0xB655, 9437},+    {0xB656, 0xB658, 16578},+    {0xB659, 0xB659, 8206},+    {0xB65A, 0xB65A, 16581},+    {0xB65B, 0xB65B, 9435},+    {0xB65C, 0xB65C, 7864},+    {0xB65D, 0xB67E, 16582},+    {0xB680, 0xB6A0, 16616},+    {0xB6A1, 0xB6FE, 1504},+    {0xB740, 0xB74D, 16649},+    {0xB74E, 0xB74E, 8853},+    {0xB74F, 0xB750, 16663},+    {0xB751, 0xB751, 7808},+    {0xB752, 0xB758, 16665},+    {0xB759, 0xB759, 9847},+    {0xB75A, 0xB763, 16672},+    {0xB764, 0xB764, 9764},+    {0xB765, 0xB765, 8041},+    {0xB766, 0xB766, 8747},+    {0xB767, 0xB776, 16682},+    {0xB777, 0xB777, 9599},+    {0xB778, 0xB778, 8027},+    {0xB779, 0xB77E, 16698},+    {0xB780, 0xB780, 8603},+    {0xB781, 0xB781, 16704},+    {0xB782, 0xB782, 9853},+    {0xB783, 0xB7A0, 16705},+    {0xB7A1, 0xB7FE, 1598},+    {0xB840, 0xB842, 16735},+    {0xB843, 0xB843, 8608},+    {0xB844, 0xB844, 8582},+    {0xB845, 0xB845, 16738},+    {0xB846, 0xB846, 8429},+    {0xB847, 0xB84C, 16739},+    {0xB84D, 0xB84D, 9657},+    {0xB84E, 0xB850, 16745},+    {0xB851, 0xB851, 8170},+    {0xB852, 0xB859, 16748},+    {0xB85A, 0xB85A, 7844},+    {0xB85B, 0xB85B, 8417},+    {0xB85C, 0xB85C, 16756},+    {0xB85D, 0xB85D, 9656},+    {0xB85E, 0xB85E, 8800},+    {0xB85F, 0xB85F, 16757},+    {0xB860, 0xB860, 8418},+    {0xB861, 0xB876, 16758},+    {0xB877, 0xB877, 8513},+    {0xB878, 0xB87E, 16780},+    {0xB880, 0xB881, 16787},+    {0xB882, 0xB882, 8135},+    {0xB883, 0xB8A0, 16789},+    {0xB8A1, 0xB8FE, 1692},+    {0xB940, 0xB94F, 16819},+    {0xB950, 0xB950, 7745},+    {0xB951, 0xB960, 16835},+    {0xB961, 0xB961, 9700},+    {0xB962, 0xB97A, 16851},+    {0xB97B, 0xB97B, 8070},+    {0xB97C, 0xB97E, 16876},+    {0xB980, 0xB99C, 16879},+    {0xB99D, 0xB99D, 8115},+    {0xB99E, 0xB99F, 16908},+    {0xB9A0, 0xB9A0, 7919},+    {0xB9A1, 0xB9FE, 1786},+    {0xBA40, 0xBA41, 16910},+    {0xBA42, 0xBA42, 8868},+    {0xBA43, 0xBA43, 16912},+    {0xBA44, 0xBA44, 9704},+    {0xBA45, 0xBA55, 16913},+    {0xBA56, 0xBA56, 9699},+    {0xBA57, 0xBA58, 16930},+    {0xBA59, 0xBA59, 8465},+    {0xBA5A, 0xBA5F, 16932},+    {0xBA60, 0xBA60, 9702},+    {0xBA61, 0xBA69, 16938},+    {0xBA6A, 0xBA6A, 9703},+    {0xBA6B, 0xBA73, 16947},+    {0xBA74, 0xBA74, 8257},+    {0xBA75, 0xBA7E, 16956},+    {0xBA80, 0xBA83, 16966},+    {0xBA84, 0xBA84, 9706},+    {0xBA85, 0xBA85, 16970},+    {0xBA86, 0xBA86, 8079},+    {0xBA87, 0xBA87, 16971},+    {0xBA88, 0xBA88, 9708},+    {0xBA89, 0xBA8C, 16972},+    {0xBA8D, 0xBA8D, 9707},+    {0xBA8E, 0xBA9D, 16976},+    {0xBA9E, 0xBA9E, 8400},+    {0xBA9F, 0xBA9F, 8221},+    {0xBAA0, 0xBAA0, 16992},+    {0xBAA1, 0xBAFE, 1880},+    {0xBB40, 0xBB40, 8183},+    {0xBB41, 0xBB48, 16993},+    {0xBB49, 0xBB49, 7821},+    {0xBB4A, 0xBB57, 17001},+    {0xBB58, 0xBB58, 9705},+    {0xBB59, 0xBB5A, 17015},+    {0xBB5B, 0xBB5B, 9710},+    {0xBB5C, 0xBB5C, 8250},+    {0xBB5D, 0xBB5F, 17017},+    {0xBB60, 0xBB60, 9875},+    {0xBB61, 0xBB64, 17020},+    {0xBB65, 0xBB65, 9701},+    {0xBB66, 0xBB66, 9709},+    {0xBB67, 0xBB67, 17024},+    {0xBB68, 0xBB68, 8201},+    {0xBB69, 0xBB69, 17025},+    {0xBB6A, 0xBB6A, 8293},+    {0xBB6B, 0xBB6D, 17026},+    {0xBB6E, 0xBB6E, 9891},+    {0xBB6F, 0xBB7E, 17029},+    {0xBB80, 0xBBA0, 17045},+    {0xBBA1, 0xBBFE, 1974},+    {0xBC40, 0xBC51, 17078},+    {0xBC52, 0xBC52, 9717},+    {0xBC53, 0xBC53, 7932},+    {0xBC54, 0xBC59, 17096},+    {0xBC5A, 0xBC5A, 8228},+    {0xBC5B, 0xBC60, 17102},+    {0xBC61, 0xBC61, 9883},+    {0xBC62, 0xBC62, 17108},+    {0xBC63, 0xBC63, 9715},+    {0xBC64, 0xBC64, 17109},+    {0xBC65, 0xBC65, 8921},+    {0xBC66, 0xBC66, 17110},+    {0xBC67, 0xBC67, 9716},+    {0xBC68, 0xBC68, 17111},+    {0xBC69, 0xBC69, 9243},+    {0xBC6A, 0xBC6C, 17112},+    {0xBC6D, 0xBC6D, 8136},+    {0xBC6E, 0xBC6E, 17115},+    {0xBC6F, 0xBC6F, 8059},+    {0xBC70, 0xBC70, 17116},+    {0xBC71, 0xBC71, 9245},+    {0xBC72, 0xBC72, 17117},+    {0xBC73, 0xBC73, 8780},+    {0xBC74, 0xBC74, 8008},+    {0xBC75, 0xBC75, 9244},+    {0xBC76, 0xBC77, 9246},+    {0xBC78, 0xBC78, 8447},+    {0xBC79, 0xBC79, 8602},+    {0xBC7A, 0xBC7A, 17118},+    {0xBC7B, 0xBC7B, 8337},+    {0xBC7C, 0xBC7D, 17119},+    {0xBC7E, 0xBC7E, 8359},+    {0xBC80, 0xBC81, 17121},+    {0xBC82, 0xBC82, 9251},+    {0xBC83, 0xBC83, 7835},+    {0xBC84, 0xBC84, 9250},+    {0xBC85, 0xBC85, 17123},+    {0xBC86, 0xBC86, 8464},+    {0xBC87, 0xBC87, 17124},+    {0xBC88, 0xBC88, 8845},+    {0xBC89, 0xBC89, 8049},+    {0xBC8A, 0xBC8A, 7928},+    {0xBC8B, 0xBC8B, 9249},+    {0xBC8C, 0xBC8E, 17125},+    {0xBC8F, 0xBC8F, 7923},+    {0xBC90, 0xBC99, 17128},+    {0xBC9A, 0xBC9A, 8625},+    {0xBC9B, 0xBC9B, 9254},+    {0xBC9C, 0xBC9C, 9253},+    {0xBC9D, 0xBC9D, 8480},+    {0xBC9E, 0xBCA0, 17138},+    {0xBCA1, 0xBCFE, 2068},+    {0xBD40, 0xBD41, 17141},+    {0xBD42, 0xBD42, 8474},+    {0xBD43, 0xBD43, 9252},+    {0xBD44, 0xBD44, 17143},+    {0xBD45, 0xBD45, 9256},+    {0xBD46, 0xBD47, 17144},+    {0xBD48, 0xBD48, 9258},+    {0xBD49, 0xBD49, 9257},+    {0xBD4A, 0xBD4A, 17146},+    {0xBD4B, 0xBD4B, 8852},+    {0xBD4C, 0xBD4C, 17147},+    {0xBD4D, 0xBD4D, 8894},+    {0xBD4E, 0xBD4E, 17148},+    {0xBD4F, 0xBD4F, 7729},+    {0xBD50, 0xBD56, 17149},+    {0xBD57, 0xBD57, 9260},+    {0xBD58, 0xBD58, 17156},+    {0xBD59, 0xBD59, 8117},+    {0xBD5A, 0xBD65, 17157},+    {0xBD66, 0xBD66, 9259},+    {0xBD67, 0xBD67, 8111},+    {0xBD68, 0xBD69, 17169},+    {0xBD6A, 0xBD6A, 8296},+    {0xBD6B, 0xBD6B, 8676},+    {0xBD6C, 0xBD6E, 17171},+    {0xBD6F, 0xBD6F, 7969},+    {0xBD70, 0xBD70, 17174},+    {0xBD71, 0xBD71, 8449},+    {0xBD72, 0xBD78, 17175},+    {0xBD79, 0xBD79, 8572},+    {0xBD7A, 0xBD7A, 8522},+    {0xBD7B, 0xBD7B, 9261},+    {0xBD7C, 0xBD7D, 17182},+    {0xBD7E, 0xBD7E, 8148},+    {0xBD80, 0xBD80, 17184},+    {0xBD81, 0xBD81, 8145},+    {0xBD82, 0xBD88, 17185},+    {0xBD89, 0xBD89, 7731},+    {0xBD8A, 0xBD8A, 17192},+    {0xBD8B, 0xBD8B, 9263},+    {0xBD8C, 0xBD8D, 17193},+    {0xBD8E, 0xBD8E, 9262},+    {0xBD8F, 0xBD8F, 17195},+    {0xBD90, 0xBD90, 9264},+    {0xBD91, 0xBD91, 8667},+    {0xBD92, 0xBD96, 17196},+    {0xBD97, 0xBD97, 8536},+    {0xBD98, 0xBD9A, 17201},+    {0xBD9B, 0xBD9B, 8130},+    {0xBD9C, 0xBDA0, 17204},+    {0xBDA1, 0xBDFE, 2162},+    {0xBE40, 0xBE42, 17209},+    {0xBE43, 0xBE43, 8889},+    {0xBE44, 0xBE44, 17212},+    {0xBE45, 0xBE45, 9270},+    {0xBE46, 0xBE48, 17213},+    {0xBE49, 0xBE49, 7822},+    {0xBE4A, 0xBE4A, 9273},+    {0xBE4B, 0xBE50, 17216},+    {0xBE51, 0xBE51, 8645},+    {0xBE52, 0xBE52, 9271},+    {0xBE53, 0xBE53, 8594},+    {0xBE54, 0xBE54, 17222},+    {0xBE55, 0xBE55, 9274},+    {0xBE56, 0xBE56, 7961},+    {0xBE57, 0xBE57, 8588},+    {0xBE58, 0xBE58, 7744},+    {0xBE59, 0xBE59, 8883},+    {0xBE5A, 0xBE5C, 17223},+    {0xBE5D, 0xBE5D, 8287},+    {0xBE5E, 0xBE5E, 9272},+    {0xBE5F, 0xBE5F, 9266},+    {0xBE60, 0xBE60, 8820},+    {0xBE61, 0xBE61, 17226},+    {0xBE62, 0xBE62, 7836},+    {0xBE63, 0xBE63, 9265},+    {0xBE64, 0xBE64, 8325},+    {0xBE65, 0xBE68, 17227},+    {0xBE69, 0xBE69, 9269},+    {0xBE6A, 0xBE6B, 17231},+    {0xBE6C, 0xBE6C, 9275},+    {0xBE6D, 0xBE6E, 17233},+    {0xBE6F, 0xBE6F, 8119},+    {0xBE70, 0xBE70, 9267},+    {0xBE71, 0xBE75, 17235},+    {0xBE76, 0xBE76, 8276},+    {0xBE77, 0xBE77, 8670},+    {0xBE78, 0xBE78, 17240},+    {0xBE79, 0xBE79, 9268},+    {0xBE7A, 0xBE7B, 17241},+    {0xBE7C, 0xBE7C, 9277},+    {0xBE7D, 0xBE7D, 8073},+    {0xBE7E, 0xBE7E, 9276},+    {0xBE80, 0xBE82, 17243},+    {0xBE83, 0xBE83, 8046},+    {0xBE84, 0xBE84, 7896},+    {0xBE85, 0xBE85, 17246},+    {0xBE86, 0xBE86, 7871},+    {0xBE87, 0xBE87, 9285},+    {0xBE88, 0xBE88, 17247},+    {0xBE89, 0xBE89, 8777},+    {0xBE8A, 0xBE8B, 17248},+    {0xBE8C, 0xBE8C, 9281},+    {0xBE8D, 0xBE8D, 17250},+    {0xBE8E, 0xBE8E, 7751},+    {0xBE8F, 0xBE8F, 8022},+    {0xBE90, 0xBE91, 17251},+    {0xBE92, 0xBE92, 8326},+    {0xBE93, 0xBE94, 17253},+    {0xBE95, 0xBE95, 8598},+    {0xBE96, 0xBE96, 17255},+    {0xBE97, 0xBE97, 9283},+    {0xBE98, 0xBE98, 9279},+    {0xBE99, 0xBE99, 17256},+    {0xBE9A, 0xBE9A, 8227},+    {0xBE9B, 0xBE9B, 17257},+    {0xBE9C, 0xBE9C, 9282},+    {0xBE9D, 0xBE9E, 17258},+    {0xBE9F, 0xBE9F, 9278},+    {0xBEA0, 0xBEA0, 17260},+    {0xBEA1, 0xBEFE, 2256},+    {0xBF40, 0xBF40, 9894},+    {0xBF41, 0xBF4C, 17261},+    {0xBF4D, 0xBF4D, 9038},+    {0xBF4E, 0xBF4E, 9286},+    {0xBF4F, 0xBF4F, 9291},+    {0xBF50, 0xBF50, 9284},+    {0xBF51, 0xBF54, 17273},+    {0xBF55, 0xBF55, 9255},+    {0xBF56, 0xBF56, 9292},+    {0xBF57, 0xBF5F, 17277},+    {0xBF60, 0xBF60, 7951},+    {0xBF61, 0xBF61, 17286},+    {0xBF62, 0xBF62, 9287},+    {0xBF63, 0xBF63, 9289},+    {0xBF64, 0xBF64, 9288},+    {0xBF65, 0xBF67, 17287},+    {0xBF68, 0xBF68, 8642},+    {0xBF69, 0xBF6B, 17290},+    {0xBF6C, 0xBF6C, 8558},+    {0xBF6D, 0xBF6F, 17293},+    {0xBF70, 0xBF70, 7939},+    {0xBF71, 0xBF71, 17296},+    {0xBF72, 0xBF72, 9290},+    {0xBF73, 0xBF73, 8540},+    {0xBF74, 0xBF75, 17297},+    {0xBF76, 0xBF76, 8891},+    {0xBF77, 0xBF77, 9296},+    {0xBF78, 0xBF78, 17299},+    {0xBF79, 0xBF79, 9876},+    {0xBF7A, 0xBF7A, 9295},+    {0xBF7B, 0xBF7B, 9718},+    {0xBF7C, 0xBF7C, 8273},+    {0xBF7D, 0xBF7D, 17300},+    {0xBF7E, 0xBF7E, 9294},+    {0xBF80, 0xBF81, 17301},+    {0xBF82, 0xBF82, 8890},+    {0xBF83, 0xBF83, 8045},+    {0xBF84, 0xBF88, 17303},+    {0xBF89, 0xBF89, 9298},+    {0xBF8A, 0xBF8A, 9297},+    {0xBF8B, 0xBF94, 17308},+    {0xBF95, 0xBF95, 9301},+    {0xBF96, 0xBF96, 17318},+    {0xBF97, 0xBF97, 8841},+    {0xBF98, 0xBF98, 8470},+    {0xBF99, 0xBF9C, 17319},+    {0xBF9D, 0xBF9D, 9300},+    {0xBF9E, 0xBFA0, 17323},+    {0xBFA1, 0xBFFE, 2350},+    {0xC040, 0xC040, 8443},+    {0xC041, 0xC043, 17326},+    {0xC044, 0xC044, 9280},+    {0xC045, 0xC04A, 17329},+    {0xC04B, 0xC04B, 8486},+    {0xC04C, 0xC04C, 8033},+    {0xC04D, 0xC04D, 9885},+    {0xC04E, 0xC04E, 17335},+    {0xC04F, 0xC04F, 8074},+    {0xC050, 0xC050, 9302},+    {0xC051, 0xC051, 9305},+    {0xC052, 0xC052, 9304},+    {0xC053, 0xC054, 17336},+    {0xC055, 0xC055, 8110},+    {0xC056, 0xC05A, 17338},+    {0xC05B, 0xC05B, 8730},+    {0xC05C, 0xC05D, 17343},+    {0xC05E, 0xC05E, 8058},+    {0xC05F, 0xC05F, 9293},+    {0xC060, 0xC060, 9303},+    {0xC061, 0xC068, 17345},+    {0xC069, 0xC069, 9299},+    {0xC06A, 0xC06A, 17353},+    {0xC06B, 0xC06B, 9248},+    {0xC06C, 0xC06C, 17354},+    {0xC06D, 0xC06D, 8671},+    {0xC06E, 0xC06E, 9861},+    {0xC06F, 0xC06F, 17355},+    {0xC070, 0xC070, 7790},+    {0xC071, 0xC073, 17356},+    {0xC074, 0xC074, 8740},+    {0xC075, 0xC075, 9840},+    {0xC076, 0xC076, 17359},+    {0xC077, 0xC077, 8634},+    {0xC078, 0xC078, 17360},+    {0xC079, 0xC079, 9306},+    {0xC07A, 0xC07B, 17361},+    {0xC07C, 0xC07C, 8191},+    {0xC07D, 0xC07E, 17363},+    {0xC080, 0xC09A, 17365},+    {0xC09B, 0xC09B, 9698},+    {0xC09C, 0xC09C, 17392},+    {0xC09D, 0xC09D, 9882},+    {0xC09E, 0xC0A0, 17393},+    {0xC0A1, 0xC0FE, 2444},+    {0xC140, 0xC14F, 17396},+    {0xC150, 0xC150, 7914},+    {0xC151, 0xC153, 17412},+    {0xC154, 0xC154, 7724},+    {0xC155, 0xC15E, 17415},+    {0xC15F, 0xC15F, 8290},+    {0xC160, 0xC160, 9457},+    {0xC161, 0xC161, 17425},+    {0xC162, 0xC162, 9458},+    {0xC163, 0xC174, 17426},+    {0xC175, 0xC175, 9714},+    {0xC176, 0xC177, 17444},+    {0xC178, 0xC178, 8725},+    {0xC179, 0xC17E, 17446},+    {0xC180, 0xC194, 17452},+    {0xC195, 0xC195, 8622},+    {0xC196, 0xC1A0, 17473},+    {0xC1A1, 0xC1FE, 2538},+    {0xC240, 0xC24D, 17484},+    {0xC24E, 0xC24E, 8416},+    {0xC24F, 0xC264, 17498},+    {0xC265, 0xC265, 9666},+    {0xC266, 0xC266, 17520},+    {0xC267, 0xC267, 9665},+    {0xC268, 0xC27C, 17521},+    {0xC27D, 0xC27D, 8488},+    {0xC27E, 0xC27E, 17542},+    {0xC280, 0xC283, 17543},+    {0xC284, 0xC284, 8601},+    {0xC285, 0xC292, 17547},+    {0xC293, 0xC293, 8215},+    {0xC294, 0xC294, 7840},+    {0xC295, 0xC295, 8485},+    {0xC296, 0xC296, 8525},+    {0xC297, 0xC297, 17561},+    {0xC298, 0xC298, 9668},+    {0xC299, 0xC299, 8349},+    {0xC29A, 0xC29A, 8842},+    {0xC29B, 0xC29B, 17562},+    {0xC29C, 0xC29C, 9667},+    {0xC29D, 0xC29F, 17563},+    {0xC2A0, 0xC2A0, 8569},+    {0xC2A1, 0xC2FE, 2632},+    {0xC340, 0xC340, 8248},+    {0xC341, 0xC342, 17566},+    {0xC343, 0xC343, 8533},+    {0xC344, 0xC37A, 17568},+    {0xC37B, 0xC37B, 8658},+    {0xC37C, 0xC37E, 17623},+    {0xC380, 0xC383, 17626},+    {0xC384, 0xC384, 9415},+    {0xC385, 0xC39A, 17630},+    {0xC39B, 0xC39B, 8825},+    {0xC39C, 0xC3A0, 17652},+    {0xC3A1, 0xC3FE, 2726},+    {0xC440, 0xC448, 17657},+    {0xC449, 0xC449, 8483},+    {0xC44A, 0xC44B, 17666},+    {0xC44C, 0xC44C, 9413},+    {0xC44D, 0xC453, 17668},+    {0xC454, 0xC454, 9417},+    {0xC455, 0xC457, 17675},+    {0xC458, 0xC458, 8340},+    {0xC459, 0xC45A, 17678},+    {0xC45B, 0xC45B, 8854},+    {0xC45C, 0xC462, 17680},+    {0xC463, 0xC463, 7799},+    {0xC464, 0xC476, 17687},+    {0xC477, 0xC477, 7942},+    {0xC478, 0xC479, 17706},+    {0xC47A, 0xC47A, 8101},+    {0xC47B, 0xC47E, 17708},+    {0xC480, 0xC480, 17712},+    {0xC481, 0xC481, 8345},+    {0xC482, 0xC490, 17713},+    {0xC491, 0xC491, 7853},+    {0xC492, 0xC492, 9416},+    {0xC493, 0xC493, 8360},+    {0xC494, 0xC497, 17728},+    {0xC498, 0xC498, 8223},+    {0xC499, 0xC499, 17732},+    {0xC49A, 0xC49A, 8389},+    {0xC49B, 0xC49B, 17733},+    {0xC49C, 0xC49C, 9418},+    {0xC49D, 0xC4A0, 17734},+    {0xC4A1, 0xC4FE, 2820},+    {0xC540, 0xC543, 17738},+    {0xC544, 0xC544, 8176},+    {0xC545, 0xC545, 17742},+    {0xC546, 0xC546, 9414},+    {0xC547, 0xC54A, 17743},+    {0xC54B, 0xC54B, 8797},+    {0xC54C, 0xC54C, 8926},+    {0xC54D, 0xC551, 17747},+    {0xC552, 0xC552, 8236},+    {0xC553, 0xC55E, 17752},+    {0xC55F, 0xC55F, 8545},+    {0xC560, 0xC562, 17764},+    {0xC563, 0xC563, 8763},+    {0xC564, 0xC564, 8665},+    {0xC565, 0xC565, 8139},+    {0xC566, 0xC566, 8137},+    {0xC567, 0xC57E, 17767},+    {0xC580, 0xC592, 17791},+    {0xC593, 0xC593, 7777},+    {0xC594, 0xC59B, 17810},+    {0xC59C, 0xC59C, 9711},+    {0xC59D, 0xC59D, 17818},+    {0xC59E, 0xC59E, 8088},+    {0xC59F, 0xC5A0, 17819},+    {0xC5A1, 0xC5FE, 2914},+    {0xC640, 0xC640, 17821},+    {0xC641, 0xC641, 9712},+    {0xC642, 0xC643, 17822},+    {0xC644, 0xC644, 8072},+    {0xC645, 0xC646, 17824},+    {0xC647, 0xC647, 8696},+    {0xC648, 0xC662, 17826},+    {0xC663, 0xC663, 8994},+    {0xC664, 0xC671, 17853},+    {0xC672, 0xC672, 9014},+    {0xC673, 0xC67E, 17867},+    {0xC680, 0xC6A0, 17879},+    {0xC6A1, 0xC6FE, 3008},+    {0xC740, 0xC765, 17912},+    {0xC766, 0xC766, 8875},+    {0xC767, 0xC76E, 17950},+    {0xC76F, 0xC76F, 8127},+    {0xC770, 0xC775, 17958},+    {0xC776, 0xC776, 8061},+    {0xC777, 0xC77A, 17964},+    {0xC77B, 0xC77B, 9011},+    {0xC77C, 0xC77E, 17968},+    {0xC780, 0xC7A0, 17971},+    {0xC7A1, 0xC7FE, 3102},+    {0xC840, 0xC840, 18004},+    {0xC841, 0xC841, 8013},+    {0xC842, 0xC84E, 18005},+    {0xC84F, 0xC84F, 9012},+    {0xC850, 0xC851, 18018},+    {0xC852, 0xC852, 8177},+    {0xC853, 0xC865, 18020},+    {0xC866, 0xC866, 8587},+    {0xC867, 0xC86D, 18039},+    {0xC86E, 0xC86E, 9033},+    {0xC86F, 0xC87D, 18046},+    {0xC87E, 0xC87E, 8715},+    {0xC880, 0xC886, 18061},+    {0xC887, 0xC887, 9030},+    {0xC888, 0xC891, 18068},+    {0xC892, 0xC892, 9031},+    {0xC893, 0xC893, 18078},+    {0xC894, 0xC894, 8595},+    {0xC895, 0xC898, 18079},+    {0xC899, 0xC899, 9889},+    {0xC89A, 0xC89C, 18083},+    {0xC89D, 0xC89D, 8034},+    {0xC89E, 0xC8A0, 18086},+    {0xC8A1, 0xC8FE, 3196},+    {0xC940, 0xC94E, 18089},+    {0xC94F, 0xC94F, 9037},+    {0xC950, 0xC950, 9032},+    {0xC951, 0xC96D, 18104},+    {0xC96E, 0xC96E, 7776},+    {0xC96F, 0xC96F, 18133},+    {0xC970, 0xC970, 9029},+    {0xC971, 0xC976, 18134},+    {0xC977, 0xC977, 7954},+    {0xC978, 0xC97E, 18140},+    {0xC980, 0xC98E, 18147},+    {0xC98F, 0xC98F, 8216},+    {0xC990, 0xC990, 9013},+    {0xC991, 0xC99B, 18162},+    {0xC99C, 0xC99C, 9020},+    {0xC99D, 0xC9A0, 18173},+    {0xC9A1, 0xC9FE, 3290},+    {0xCA40, 0xCA4D, 18177},+    {0xCA4E, 0xCA4E, 9839},+    {0xCA4F, 0xCA55, 18191},+    {0xCA56, 0xCA56, 9041},+    {0xCA57, 0xCA58, 18198},+    {0xCA59, 0xCA59, 8096},+    {0xCA5A, 0xCA5B, 18200},+    {0xCA5C, 0xCA5C, 9016},+    {0xCA5D, 0xCA60, 18202},+    {0xCA61, 0xCA61, 8731},+    {0xCA62, 0xCA6D, 18206},+    {0xCA6E, 0xCA6E, 9026},+    {0xCA6F, 0xCA71, 18218},+    {0xCA72, 0xCA72, 9039},+    {0xCA73, 0xCA76, 18221},+    {0xCA77, 0xCA77, 9021},+    {0xCA78, 0xCA7A, 18225},+    {0xCA7B, 0xCA7B, 9028},+    {0xCA7C, 0xCA7C, 9009},+    {0xCA7D, 0xCA7D, 18228},+    {0xCA7E, 0xCA7E, 9035},+    {0xCA80, 0xCA80, 18229},+    {0xCA81, 0xCA81, 9019},+    {0xCA82, 0xCA88, 18230},+    {0xCA89, 0xCA89, 9040},+    {0xCA8A, 0xCA8D, 18237},+    {0xCA8E, 0xCA8E, 7860},+    {0xCA8F, 0xCA8F, 8614},+    {0xCA90, 0xCA91, 18241},+    {0xCA92, 0xCA92, 8651},+    {0xCA93, 0xCA99, 18243},+    {0xCA9A, 0xCA9A, 9045},+    {0xCA9B, 0xCAA0, 18250},+    {0xCAA1, 0xCAFE, 3384},+    {0xCB40, 0xCB42, 18256},+    {0xCB43, 0xCB43, 9022},+    {0xCB44, 0xCB44, 18259},+    {0xCB45, 0xCB45, 8052},+    {0xCB46, 0xCB46, 18260},+    {0xCB47, 0xCB47, 9008},+    {0xCB48, 0xCB4A, 18261},+    {0xCB4B, 0xCB4B, 9856},+    {0xCB4C, 0xCB4D, 18264},+    {0xCB4E, 0xCB4E, 8410},+    {0xCB4F, 0xCB56, 18266},+    {0xCB57, 0xCB57, 9034},+    {0xCB58, 0xCB5C, 18274},+    {0xCB5D, 0xCB5D, 8081},+    {0xCB5E, 0xCB5E, 18279},+    {0xCB5F, 0xCB5F, 8455},+    {0xCB60, 0xCB69, 18280},+    {0xCB6A, 0xCB6A, 9023},+    {0xCB6B, 0xCB7A, 18290},+    {0xCB7B, 0xCB7B, 8180},+    {0xCB7C, 0xCB7C, 9027},+    {0xCB7D, 0xCB7E, 18306},+    {0xCB80, 0xCB86, 18308},+    {0xCB87, 0xCB87, 8722},+    {0xCB88, 0xCB8D, 18315},+    {0xCB8E, 0xCB8E, 8711},+    {0xCB8F, 0xCB91, 18321},+    {0xCB92, 0xCB92, 9049},+    {0xCB93, 0xCB9B, 18324},+    {0xCB9C, 0xCB9C, 8788},+    {0xCB9D, 0xCB9D, 18333},+    {0xCB9E, 0xCB9E, 9010},+    {0xCB9F, 0xCBA0, 18334},+    {0xCBA1, 0xCBFE, 3478},+    {0xCC40, 0xCC40, 7718},+    {0xCC41, 0xCC41, 9047},+    {0xCC42, 0xCC48, 18336},+    {0xCC49, 0xCC49, 9048},+    {0xCC4A, 0xCC4A, 8258},+    {0xCC4B, 0xCC4B, 8531},+    {0xCC4C, 0xCC4E, 18343},+    {0xCC4F, 0xCC4F, 8379},+    {0xCC50, 0xCC5B, 18346},+    {0xCC5C, 0xCC5C, 9050},+    {0xCC5D, 0xCC5F, 18358},+    {0xCC60, 0xCC60, 9046},+    {0xCC61, 0xCC63, 18361},+    {0xCC64, 0xCC64, 9015},+    {0xCC65, 0xCC6C, 18364},+    {0xCC6D, 0xCC6D, 8185},+    {0xCC6E, 0xCC78, 18372},+    {0xCC79, 0xCC79, 9043},+    {0xCC7A, 0xCC7C, 18383},+    {0xCC7D, 0xCC7D, 8289},+    {0xCC7E, 0xCC7E, 18386},+    {0xCC80, 0xCC8D, 18387},+    {0xCC8E, 0xCC8E, 7829},+    {0xCC8F, 0xCC93, 18401},+    {0xCC94, 0xCC94, 8265},+    {0xCC95, 0xCC95, 18406},+    {0xCC96, 0xCC96, 8002},+    {0xCC97, 0xCC9C, 18407},+    {0xCC9D, 0xCC9D, 8168},+    {0xCC9E, 0xCCA0, 18413},+    {0xCCA1, 0xCCFE, 3572},+    {0xCD40, 0xCD7E, 18416},+    {0xCD80, 0xCD8F, 18479},+    {0xCD90, 0xCD90, 9690},+    {0xCD91, 0xCD97, 18495},+    {0xCD98, 0xCD98, 9687},+    {0xCD99, 0xCDA0, 18502},+    {0xCDA1, 0xCDFE, 3666},+    {0xCE40, 0xCE66, 18510},+    {0xCE67, 0xCE67, 8494},+    {0xCE68, 0xCE71, 18549},+    {0xCE72, 0xCE72, 8626},+    {0xCE73, 0xCE7E, 18559},+    {0xCE80, 0xCE80, 18571},+    {0xCE81, 0xCE81, 8606},+    {0xCE82, 0xCE86, 18572},+    {0xCE87, 0xCE87, 9692},+    {0xCE88, 0xCE9A, 18577},+    {0xCE9B, 0xCE9B, 8300},+    {0xCE9C, 0xCE9D, 18596},+    {0xCE9E, 0xCE9E, 8742},+    {0xCE9F, 0xCEA0, 18598},+    {0xCEA1, 0xCEFE, 3760},+    {0xCF40, 0xCF4D, 18600},+    {0xCF4E, 0xCF4E, 9696},+    {0xCF4F, 0xCF54, 18614},+    {0xCF55, 0xCF55, 8827},+    {0xCF56, 0xCF57, 18620},+    {0xCF58, 0xCF58, 9694},+    {0xCF59, 0xCF5B, 18622},+    {0xCF5C, 0xCF5C, 9697},+    {0xCF5D, 0xCF6B, 18625},+    {0xCF6C, 0xCF6C, 9685},+    {0xCF6D, 0xCF72, 18640},+    {0xCF73, 0xCF73, 7787},+    {0xCF74, 0xCF74, 18646},+    {0xCF75, 0xCF75, 9691},+    {0xCF76, 0xCF77, 18647},+    {0xCF78, 0xCF78, 7817},+    {0xCF79, 0xCF7B, 18649},+    {0xCF7C, 0xCF7C, 9689},+    {0xCF7D, 0xCF7E, 18652},+    {0xCF80, 0xCF80, 18654},+    {0xCF81, 0xCF81, 8721},+    {0xCF82, 0xCF88, 18655},+    {0xCF89, 0xCF89, 8745},+    {0xCF8A, 0xCF8A, 9686},+    {0xCF8B, 0xCF92, 18662},+    {0xCF93, 0xCF93, 9693},+    {0xCF94, 0xCF94, 9695},+    {0xCF95, 0xCF9D, 18670},+    {0xCF9E, 0xCF9E, 8175},+    {0xCF9F, 0xCF9F, 18679},+    {0xCFA0, 0xCFA0, 9688},+    {0xCFA1, 0xCFFE, 3854},+    {0xD040, 0xD04C, 18680},+    {0xD04D, 0xD04D, 7977},+    {0xD04E, 0xD050, 18693},+    {0xD051, 0xD051, 7771},+    {0xD052, 0xD054, 18696},+    {0xD055, 0xD055, 8310},+    {0xD056, 0xD05B, 18699},+    {0xD05C, 0xD05C, 8855},+    {0xD05D, 0xD05F, 18705},+    {0xD060, 0xD060, 9872},+    {0xD061, 0xD066, 18708},+    {0xD067, 0xD067, 8511},+    {0xD068, 0xD06B, 18714},+    {0xD06C, 0xD06C, 8600},+    {0xD06D, 0xD06D, 18718},+    {0xD06E, 0xD06E, 7816},+    {0xD06F, 0xD07C, 18719},+    {0xD07D, 0xD07D, 8844},+    {0xD07E, 0xD07E, 18733},+    {0xD080, 0xD0A0, 18734},+    {0xD0A1, 0xD0FE, 3948},+    {0xD140, 0xD154, 18767},+    {0xD155, 0xD155, 9713},+    {0xD156, 0xD158, 18788},+    {0xD159, 0xD159, 8204},+    {0xD15A, 0xD160, 18791},+    {0xD161, 0xD161, 7768},+    {0xD162, 0xD162, 8876},+    {0xD163, 0xD174, 18798},+    {0xD175, 0xD175, 9895},+    {0xD176, 0xD17C, 18816},+    {0xD17D, 0xD17D, 9846},+    {0xD17E, 0xD17E, 18823},+    {0xD180, 0xD19C, 18824},+    {0xD19D, 0xD19D, 8161},+    {0xD19E, 0xD19E, 9659},+    {0xD19F, 0xD1A0, 18853},+    {0xD1A1, 0xD1FE, 4042},+    {0xD240, 0xD240, 9662},+    {0xD241, 0xD242, 18855},+    {0xD243, 0xD243, 8925},+    {0xD244, 0xD24C, 18857},+    {0xD24D, 0xD24D, 9661},+    {0xD24E, 0xD25B, 18866},+    {0xD25C, 0xD25C, 7722},+    {0xD25D, 0xD262, 18880},+    {0xD263, 0xD263, 9660},+    {0xD264, 0xD264, 9658},+    {0xD265, 0xD267, 18886},+    {0xD268, 0xD268, 9663},+    {0xD269, 0xD26C, 18889},+    {0xD26D, 0xD26D, 8583},+    {0xD26E, 0xD26E, 18893},+    {0xD26F, 0xD26F, 9835},+    {0xD270, 0xD271, 18894},+    {0xD272, 0xD272, 7807},+    {0xD273, 0xD274, 18896},+    {0xD275, 0xD275, 8621},+    {0xD276, 0xD27E, 18898},+    {0xD280, 0xD289, 18907},+    {0xD28A, 0xD28A, 8086},+    {0xD28B, 0xD28D, 18917},+    {0xD28E, 0xD28E, 7986},+    {0xD28F, 0xD291, 18920},+    {0xD292, 0xD292, 8324},+    {0xD293, 0xD294, 18923},+    {0xD295, 0xD295, 8502},+    {0xD296, 0xD296, 18925},+    {0xD297, 0xD297, 9400},+    {0xD298, 0xD29F, 18926},+    {0xD2A0, 0xD2A0, 9402},+    {0xD2A1, 0xD2FE, 4136},+    {0xD340, 0xD343, 18934},+    {0xD344, 0xD344, 9404},+    {0xD345, 0xD347, 18938},+    {0xD348, 0xD348, 8420},+    {0xD349, 0xD349, 18941},+    {0xD34A, 0xD34A, 9401},+    {0xD34B, 0xD34C, 18942},+    {0xD34D, 0xD34D, 9405},+    {0xD34E, 0xD34F, 18944},+    {0xD350, 0xD350, 9406},+    {0xD351, 0xD354, 18946},+    {0xD355, 0xD355, 9407},+    {0xD356, 0xD357, 18950},+    {0xD358, 0xD358, 8146},+    {0xD359, 0xD35A, 18952},+    {0xD35B, 0xD35B, 8189},+    {0xD35C, 0xD35C, 18954},+    {0xD35D, 0xD35D, 9403},+    {0xD35E, 0xD35E, 7981},+    {0xD35F, 0xD377, 18955},+    {0xD378, 0xD378, 9737},+    {0xD379, 0xD379, 18980},+    {0xD37A, 0xD37A, 9738},+    {0xD37B, 0xD37B, 18981},+    {0xD37C, 0xD37C, 7828},+    {0xD37D, 0xD37E, 18982},+    {0xD380, 0xD384, 18984},+    {0xD385, 0xD385, 8927},+    {0xD386, 0xD386, 7883},+    {0xD387, 0xD387, 7949},+    {0xD388, 0xD38A, 18989},+    {0xD38B, 0xD38B, 8055},+    {0xD38C, 0xD38C, 18992},+    {0xD38D, 0xD38D, 8683},+    {0xD38E, 0xD38E, 18993},+    {0xD38F, 0xD38F, 8929},+    {0xD390, 0xD390, 18994},+    {0xD391, 0xD391, 8559},+    {0xD392, 0xD392, 18995},+    {0xD393, 0xD393, 8928},+    {0xD394, 0xD395, 18996},+    {0xD396, 0xD396, 8682},+    {0xD397, 0xD397, 18998},+    {0xD398, 0xD398, 8930},+    {0xD399, 0xD399, 8395},+    {0xD39A, 0xD39A, 18999},+    {0xD39B, 0xD39B, 8056},+    {0xD39C, 0xD39D, 19000},+    {0xD39E, 0xD39E, 7906},+    {0xD39F, 0xD39F, 19002},+    {0xD3A0, 0xD3A0, 8690},+    {0xD3A1, 0xD3FE, 4230},+    {0xD440, 0xD440, 19003},+    {0xD441, 0xD441, 8528},+    {0xD442, 0xD444, 19004},+    {0xD445, 0xD445, 8147},+    {0xD446, 0xD446, 19007},+    {0xD447, 0xD447, 8933},+    {0xD448, 0xD44B, 19008},+    {0xD44C, 0xD44C, 7922},+    {0xD44D, 0xD44E, 19012},+    {0xD44F, 0xD44F, 8479},+    {0xD450, 0xD452, 19014},+    {0xD453, 0xD453, 8669},+    {0xD454, 0xD455, 19017},+    {0xD456, 0xD456, 8532},+    {0xD457, 0xD457, 19019},+    {0xD458, 0xD458, 8935},+    {0xD459, 0xD45B, 19020},+    {0xD45C, 0xD45C, 8834},+    {0xD45D, 0xD461, 19023},+    {0xD462, 0xD462, 8934},+    {0xD463, 0xD466, 19028},+    {0xD467, 0xD467, 8936},+    {0xD468, 0xD46D, 19032},+    {0xD46E, 0xD46E, 8932},+    {0xD46F, 0xD46F, 19038},+    {0xD470, 0xD470, 8810},+    {0xD471, 0xD471, 19039},+    {0xD472, 0xD472, 8939},+    {0xD473, 0xD473, 19040},+    {0xD474, 0xD474, 8937},+    {0xD475, 0xD475, 8381},+    {0xD476, 0xD477, 19041},+    {0xD478, 0xD478, 8938},+    {0xD479, 0xD47A, 19043},+    {0xD47B, 0xD47B, 8893},+    {0xD47C, 0xD47D, 19045},+    {0xD47E, 0xD47E, 7838},+    {0xD480, 0xD481, 19047},+    {0xD482, 0xD482, 8950},+    {0xD483, 0xD483, 8679},+    {0xD484, 0xD484, 8726},+    {0xD485, 0xD486, 19049},+    {0xD487, 0xD487, 8503},+    {0xD488, 0xD489, 19051},+    {0xD48A, 0xD48A, 8492},+    {0xD48B, 0xD48B, 19053},+    {0xD48C, 0xD48C, 7784},+    {0xD48D, 0xD48D, 8946},+    {0xD48E, 0xD48E, 7991},+    {0xD48F, 0xD48F, 8947},+    {0xD490, 0xD490, 19054},+    {0xD491, 0xD491, 8943},+    {0xD492, 0xD492, 8016},+    {0xD493, 0xD493, 7952},+    {0xD494, 0xD494, 8648},+    {0xD495, 0xD495, 19055},+    {0xD496, 0xD496, 8945},+    {0xD497, 0xD49B, 19056},+    {0xD49C, 0xD49C, 8944},+    {0xD49D, 0xD49E, 19061},+    {0xD49F, 0xD49F, 8942},+    {0xD4A0, 0xD4A0, 19063},+    {0xD4A1, 0xD4FE, 4324},+    {0xD540, 0xD542, 19064},+    {0xD543, 0xD543, 8941},+    {0xD544, 0xD544, 8862},+    {0xD545, 0xD545, 8940},+    {0xD546, 0xD546, 8162},+    {0xD547, 0xD549, 19067},+    {0xD54A, 0xD54A, 8446},+    {0xD54B, 0xD54D, 19070},+    {0xD54E, 0xD54F, 8953},+    {0xD550, 0xD550, 19073},+    {0xD551, 0xD551, 7855},+    {0xD552, 0xD553, 19074},+    {0xD554, 0xD554, 8758},+    {0xD555, 0xD555, 19076},+    {0xD556, 0xD556, 8951},+    {0xD557, 0xD559, 19077},+    {0xD55A, 0xD55A, 8765},+    {0xD55B, 0xD55B, 19080},+    {0xD55C, 0xD55C, 7810},+    {0xD55D, 0xD55D, 8118},+    {0xD55E, 0xD55E, 19081},+    {0xD55F, 0xD55F, 8612},+    {0xD560, 0xD560, 8618},+    {0xD561, 0xD561, 8952},+    {0xD562, 0xD562, 8529},+    {0xD563, 0xD563, 19082},+    {0xD564, 0xD564, 8032},+    {0xD565, 0xD567, 19083},+    {0xD568, 0xD568, 8519},+    {0xD569, 0xD56B, 19086},+    {0xD56C, 0xD56C, 8517},+    {0xD56D, 0xD56D, 19089},+    {0xD56E, 0xD56E, 8156},+    {0xD56F, 0xD571, 19090},+    {0xD572, 0xD572, 8961},+    {0xD573, 0xD574, 19093},+    {0xD575, 0xD575, 7925},+    {0xD576, 0xD577, 19095},+    {0xD578, 0xD578, 8728},+    {0xD579, 0xD57A, 19097},+    {0xD57B, 0xD57B, 7878},+    {0xD57C, 0xD57D, 19099},+    {0xD57E, 0xD57E, 8960},+    {0xD580, 0xD580, 19101},+    {0xD581, 0xD581, 8884},+    {0xD582, 0xD583, 19102},+    {0xD584, 0xD584, 8553},+    {0xD585, 0xD585, 19104},+    {0xD586, 0xD586, 8957},+    {0xD587, 0xD587, 19105},+    {0xD588, 0xD588, 8426},+    {0xD589, 0xD589, 19106},+    {0xD58A, 0xD58A, 8948},+    {0xD58B, 0xD58B, 19107},+    {0xD58C, 0xD58C, 8955},+    {0xD58D, 0xD58D, 19108},+    {0xD58E, 0xD58E, 8956},+    {0xD58F, 0xD58F, 8231},+    {0xD590, 0xD592, 19109},+    {0xD593, 0xD593, 8288},+    {0xD594, 0xD594, 8959},+    {0xD595, 0xD597, 19112},+    {0xD598, 0xD598, 8958},+    {0xD599, 0xD599, 7879},+    {0xD59A, 0xD59A, 19115},+    {0xD59B, 0xD59B, 8972},+    {0xD59C, 0xD59E, 19116},+    {0xD59F, 0xD59F, 8949},+    {0xD5A0, 0xD5A0, 19119},+    {0xD5A1, 0xD5FE, 4418},+    {0xD640, 0xD640, 8966},+    {0xD641, 0xD641, 19120},+    {0xD642, 0xD642, 8970},+    {0xD643, 0xD643, 8659},+    {0xD644, 0xD646, 19121},+    {0xD647, 0xD647, 8963},+    {0xD648, 0xD648, 19124},+    {0xD649, 0xD649, 8967},+    {0xD64A, 0xD64A, 8971},+    {0xD64B, 0xD64C, 19125},+    {0xD64D, 0xD64D, 8031},+    {0xD64E, 0xD64E, 19127},+    {0xD64F, 0xD64F, 8969},+    {0xD650, 0xD651, 19128},+    {0xD652, 0xD652, 8962},+    {0xD653, 0xD653, 7940},+    {0xD654, 0xD654, 8861},+    {0xD655, 0xD655, 19130},+    {0xD656, 0xD656, 8699},+    {0xD657, 0xD657, 19131},+    {0xD658, 0xD658, 8968},+    {0xD659, 0xD659, 19132},+    {0xD65A, 0xD65A, 8364},+    {0xD65B, 0xD65B, 19133},+    {0xD65C, 0xD65C, 8334},+    {0xD65D, 0xD65D, 8965},+    {0xD65E, 0xD65E, 8599},+    {0xD65F, 0xD65F, 19134},+    {0xD660, 0xD660, 8561},+    {0xD661, 0xD661, 8856},+    {0xD662, 0xD664, 19135},+    {0xD665, 0xD665, 8023},+    {0xD666, 0xD668, 19138},+    {0xD669, 0xD669, 8322},+    {0xD66A, 0xD66A, 19141},+    {0xD66B, 0xD66B, 8977},+    {0xD66C, 0xD66E, 19142},+    {0xD66F, 0xD66F, 8964},+    {0xD670, 0xD670, 19145},+    {0xD671, 0xD671, 8975},+    {0xD672, 0xD672, 7733},+    {0xD673, 0xD673, 19146},+    {0xD674, 0xD674, 8401},+    {0xD675, 0xD675, 8976},+    {0xD676, 0xD676, 8099},+    {0xD677, 0xD677, 19147},+    {0xD678, 0xD678, 8662},+    {0xD679, 0xD67B, 19148},+    {0xD67C, 0xD67C, 8710},+    {0xD67D, 0xD67E, 19151},+    {0xD680, 0xD682, 19153},+    {0xD683, 0xD683, 8973},+    {0xD684, 0xD685, 19156},+    {0xD686, 0xD686, 8978},+    {0xD687, 0xD687, 8333},+    {0xD688, 0xD688, 8979},+    {0xD689, 0xD68D, 19158},+    {0xD68E, 0xD68E, 8931},+    {0xD68F, 0xD693, 19163},+    {0xD694, 0xD694, 8122},+    {0xD695, 0xD698, 19168},+    {0xD699, 0xD699, 8312},+    {0xD69A, 0xD6A0, 19172},+    {0xD6A1, 0xD6FE, 4512},+    {0xD740, 0xD742, 19179},+    {0xD743, 0xD743, 8840},+    {0xD744, 0xD747, 19182},+    {0xD748, 0xD748, 8982},+    {0xD749, 0xD749, 8043},+    {0xD74A, 0xD74F, 19186},+    {0xD750, 0xD750, 8980},+    {0xD751, 0xD751, 19192},+    {0xD752, 0xD752, 8496},+    {0xD753, 0xD753, 8981},+    {0xD754, 0xD754, 8552},+    {0xD755, 0xD755, 19193},+    {0xD756, 0xD756, 8388},+    {0xD757, 0xD763, 19194},+    {0xD764, 0xD764, 8984},+    {0xD765, 0xD766, 19207},+    {0xD767, 0xD767, 8729},+    {0xD768, 0xD768, 8727},+    {0xD769, 0xD76B, 19209},+    {0xD76C, 0xD76C, 8405},+    {0xD76D, 0xD76E, 19212},+    {0xD76F, 0xD76F, 8010},+    {0xD770, 0xD774, 19214},+    {0xD775, 0xD775, 8768},+    {0xD776, 0xD777, 19219},+    {0xD778, 0xD778, 7891},+    {0xD779, 0xD77E, 19221},+    {0xD780, 0xD782, 19227},+    {0xD783, 0xD783, 7753},+    {0xD784, 0xD786, 19230},+    {0xD787, 0xD787, 9755},+    {0xD788, 0xD78A, 19233},+    {0xD78B, 0xD78B, 7789},+    {0xD78C, 0xD78C, 8440},+    {0xD78D, 0xD78D, 19236},+    {0xD78E, 0xD78E, 8187},+    {0xD78F, 0xD78F, 8985},+    {0xD790, 0xD794, 19237},+    {0xD795, 0xD795, 8974},+    {0xD796, 0xD796, 19242},+    {0xD797, 0xD797, 8983},+    {0xD798, 0xD7A0, 19243},+    {0xD7A1, 0xD7F9, 4606},+    {0xD840, 0xD84C, 19252},+    {0xD84D, 0xD84D, 8392},+    {0xD84E, 0xD852, 19265},+    {0xD853, 0xD853, 7933},+    {0xD854, 0xD87E, 19270},+    {0xD880, 0xD88F, 19313},+    {0xD890, 0xD890, 7739},+    {0xD891, 0xD891, 8831},+    {0xD892, 0xD892, 19329},+    {0xD893, 0xD893, 7948},+    {0xD894, 0xD894, 7769},+    {0xD895, 0xD895, 7972},+    {0xD896, 0xD899, 19330},+    {0xD89A, 0xD89A, 8378},+    {0xD89B, 0xD89B, 8037},+    {0xD89C, 0xD89C, 7920},+    {0xD89D, 0xD89D, 8548},+    {0xD89E, 0xD89E, 7984},+    {0xD89F, 0xD89F, 8801},+    {0xD8A0, 0xD8A0, 19334},+    {0xD8A1, 0xD8FE, 4695},+    {0xD940, 0xD940, 19335},+    {0xD941, 0xD941, 8866},+    {0xD942, 0xD942, 9387},+    {0xD943, 0xD943, 19336},+    {0xD944, 0xD944, 9391},+    {0xD945, 0xD945, 7912},+    {0xD946, 0xD946, 7993},+    {0xD947, 0xD947, 19337},+    {0xD948, 0xD948, 7752},+    {0xD949, 0xD949, 8304},+    {0xD94A, 0xD94A, 7848},+    {0xD94B, 0xD94B, 19338},+    {0xD94C, 0xD94C, 9388},+    {0xD94D, 0xD94D, 7927},+    {0xD94E, 0xD94E, 8566},+    {0xD94F, 0xD94F, 9389},+    {0xD950, 0xD950, 19339},+    {0xD951, 0xD951, 8315},+    {0xD952, 0xD952, 8005},+    {0xD953, 0xD953, 9386},+    {0xD954, 0xD954, 8267},+    {0xD955, 0xD955, 8239},+    {0xD956, 0xD956, 8026},+    {0xD957, 0xD957, 9392},+    {0xD958, 0xD958, 19340},+    {0xD959, 0xD959, 8887},+    {0xD95A, 0xD95A, 8063},+    {0xD95B, 0xD95B, 19341},+    {0xD95C, 0xD95C, 8805},+    {0xD95D, 0xD962, 19342},+    {0xD963, 0xD963, 9394},+    {0xD964, 0xD964, 8475},+    {0xD965, 0xD965, 7761},+    {0xD966, 0xD966, 19348},+    {0xD967, 0xD967, 9396},+    {0xD968, 0xD96B, 19349},+    {0xD96C, 0xD96C, 9395},+    {0xD96D, 0xD96D, 19353},+    {0xD96E, 0xD96E, 7839},+    {0xD96F, 0xD96F, 19354},+    {0xD970, 0xD970, 8472},+    {0xD971, 0xD971, 19355},+    {0xD972, 0xD972, 8372},+    {0xD973, 0xD973, 9135},+    {0xD974, 0xD974, 8635},+    {0xD975, 0xD975, 8306},+    {0xD976, 0xD976, 8085},+    {0xD977, 0xD977, 19356},+    {0xD978, 0xD978, 7946},+    {0xD979, 0xD979, 9398},+    {0xD97A, 0xD97B, 19357},+    {0xD97C, 0xD97C, 8849},+    {0xD97D, 0xD97D, 9397},+    {0xD97E, 0xD97E, 8824},+    {0xD980, 0xD980, 7892},+    {0xD981, 0xD986, 19359},+    {0xD987, 0xD987, 8179},+    {0xD988, 0xD98C, 19365},+    {0xD98D, 0xD98D, 8873},+    {0xD98E, 0xD98E, 9399},+    {0xD98F, 0xD98F, 7976},+    {0xD990, 0xD990, 8457},+    {0xD991, 0xD991, 8903},+    {0xD992, 0xD996, 19370},+    {0xD997, 0xD997, 9390},+    {0xD998, 0xD998, 8881},+    {0xD999, 0xD99A, 19375},+    {0xD99B, 0xD99B, 8806},+    {0xD99C, 0xD99C, 19377},+    {0xD99D, 0xD99D, 8795},+    {0xD99E, 0xD99E, 8900},+    {0xD99F, 0xD99F, 19378},+    {0xD9A0, 0xD9A0, 8469},+    {0xD9A1, 0xD9FE, 4789},+    {0xDA40, 0xDA40, 19379},+    {0xDA41, 0xDA41, 8746},+    {0xDA42, 0xDA42, 9393},+    {0xDA43, 0xDA47, 19380},+    {0xDA48, 0xDA48, 8509},+    {0xDA49, 0xDA4C, 19385},+    {0xDA4D, 0xDA4D, 7957},+    {0xDA4E, 0xDA4E, 8796},+    {0xDA4F, 0xDA72, 19389},+    {0xDA73, 0xDA73, 7956},+    {0xDA74, 0xDA76, 19425},+    {0xDA77, 0xDA77, 8826},+    {0xDA78, 0xDA7E, 19428},+    {0xDA80, 0xDA84, 19435},+    {0xDA85, 0xDA85, 8430},+    {0xDA86, 0xDA8D, 19440},+    {0xDA8E, 0xDA8E, 9720},+    {0xDA8F, 0xDAA0, 19448},+    {0xDAA1, 0xDAFE, 4883},+    {0xDB40, 0xDB5F, 19466},+    {0xDB60, 0xDB60, 8084},+    {0xDB61, 0xDB77, 19498},+    {0xDB78, 0xDB78, 8752},+    {0xDB79, 0xDB7E, 19521},+    {0xDB80, 0xDB83, 19527},+    {0xDB84, 0xDB84, 9725},+    {0xDB85, 0xDB8A, 19531},+    {0xDB8B, 0xDB8B, 9728},+    {0xDB8C, 0xDB97, 19537},+    {0xDB98, 0xDB98, 9734},+    {0xDB99, 0xDBA0, 19549},+    {0xDBA1, 0xDBFE, 4977},+    {0xDC40, 0xDC44, 19557},+    {0xDC45, 0xDC45, 9727},+    {0xDC46, 0xDC4E, 19562},+    {0xDC4F, 0xDC4F, 9724},+    {0xDC50, 0xDC50, 7820},+    {0xDC51, 0xDC51, 9730},+    {0xDC52, 0xDC52, 19571},+    {0xDC53, 0xDC53, 8781},+    {0xDC54, 0xDC54, 19572},+    {0xDC55, 0xDC55, 9732},+    {0xDC56, 0xDC56, 9726},+    {0xDC57, 0xDC57, 9731},+    {0xDC58, 0xDC5C, 19573},+    {0xDC5D, 0xDC5D, 9729},+    {0xDC5E, 0xDC61, 19578},+    {0xDC62, 0xDC62, 9733},+    {0xDC63, 0xDC65, 19582},+    {0xDC66, 0xDC66, 7843},+    {0xDC67, 0xDC67, 9736},+    {0xDC68, 0xDC6A, 19585},+    {0xDC6B, 0xDC6B, 9735},+    {0xDC6C, 0xDC7B, 19588},+    {0xDC7C, 0xDC7C, 8432},+    {0xDC7D, 0xDC7E, 19604},+    {0xDC80, 0xDC86, 19606},+    {0xDC87, 0xDC87, 7803},+    {0xDC88, 0xDC88, 8807},+    {0xDC89, 0xDC89, 7990},+    {0xDC8A, 0xDC8A, 8150},+    {0xDC8B, 0xDC8D, 19613},+    {0xDC8E, 0xDC8E, 8672},+    {0xDC8F, 0xDC8F, 19616},+    {0xDC90, 0xDC90, 9356},+    {0xDC91, 0xDC96, 19617},+    {0xDC97, 0xDC97, 9357},+    {0xDC98, 0xDC9A, 19623},+    {0xDC9B, 0xDC9B, 8450},+    {0xDC9C, 0xDC9F, 19626},+    {0xDCA0, 0xDCA0, 9364},+    {0xDCA1, 0xDCFE, 5071},+    {0xDD40, 0xDD45, 19630},+    {0xDD46, 0xDD46, 9363},+    {0xDD47, 0xDD4C, 19636},+    {0xDD4D, 0xDD4D, 9358},+    {0xDD4E, 0xDD52, 19642},+    {0xDD53, 0xDD53, 8857},+    {0xDD54, 0xDD54, 9361},+    {0xDD55, 0xDD55, 9366},+    {0xDD56, 0xDD56, 9359},+    {0xDD57, 0xDD57, 9362},+    {0xDD58, 0xDD58, 19647},+    {0xDD59, 0xDD59, 9367},+    {0xDD5A, 0xDD5D, 19648},+    {0xDD5E, 0xDD5E, 8113},+    {0xDD5F, 0xDD5F, 19652},+    {0xDD60, 0xDD60, 9370},+    {0xDD61, 0xDD61, 19653},+    {0xDD62, 0xDD62, 9369},+    {0xDD63, 0xDD63, 19654},+    {0xDD64, 0xDD64, 8792},+    {0xDD65, 0xDD65, 9368},+    {0xDD66, 0xDD6C, 19655},+    {0xDD6D, 0xDD6D, 9371},+    {0xDD6E, 0xDD6E, 19662},+    {0xDD6F, 0xDD6F, 7945},+    {0xDD70, 0xDD70, 8422},+    {0xDD71, 0xDD75, 19663},+    {0xDD76, 0xDD76, 8230},+    {0xDD77, 0xDD77, 9375},+    {0xDD78, 0xDD78, 8025},+    {0xDD79, 0xDD7A, 9373},+    {0xDD7B, 0xDD7E, 19668},+    {0xDD80, 0xDD80, 19672},+    {0xDD81, 0xDD81, 7995},+    {0xDD82, 0xDD82, 9372},+    {0xDD83, 0xDD84, 19673},+    {0xDD85, 0xDD85, 7738},+    {0xDD86, 0xDD86, 8283},+    {0xDD87, 0xDD8A, 19675},+    {0xDD8B, 0xDD8B, 8048},+    {0xDD8C, 0xDD8E, 19679},+    {0xDD8F, 0xDD8F, 9376},+    {0xDD90, 0xDD93, 19682},+    {0xDD94, 0xDD94, 8507},+    {0xDD95, 0xDD96, 19686},+    {0xDD97, 0xDD97, 7943},+    {0xDD98, 0xDD99, 19688},+    {0xDD9A, 0xDD9A, 8816},+    {0xDD9B, 0xDD9B, 8759},+    {0xDD9C, 0xDD9D, 19690},+    {0xDD9E, 0xDD9E, 9426},+    {0xDD9F, 0xDD9F, 19692},+    {0xDDA0, 0xDDA0, 8627},+    {0xDDA1, 0xDDFE, 5165},+    {0xDE40, 0xDE40, 8773},+    {0xDE41, 0xDE41, 9377},+    {0xDE42, 0xDE43, 19693},+    {0xDE44, 0xDE44, 8872},+    {0xDE45, 0xDE47, 19695},+    {0xDE48, 0xDE48, 8828},+    {0xDE49, 0xDE49, 8112},+    {0xDE4A, 0xDE4E, 19698},+    {0xDE4F, 0xDE4F, 9378},+    {0xDE50, 0xDE59, 19703},+    {0xDE5A, 0xDE5A, 8006},+    {0xDE5B, 0xDE5B, 19713},+    {0xDE5C, 0xDE5C, 9088},+    {0xDE5D, 0xDE5D, 9365},+    {0xDE5E, 0xDE5E, 19714},+    {0xDE5F, 0xDE5F, 9360},+    {0xDE60, 0xDE6A, 19715},+    {0xDE6B, 0xDE6B, 7728},+    {0xDE6C, 0xDE6E, 19726},+    {0xDE6F, 0xDE6F, 7837},+    {0xDE70, 0xDE70, 7755},+    {0xDE71, 0xDE71, 7754},+    {0xDE72, 0xDE72, 8362},+    {0xDE73, 0xDE7E, 19729},+    {0xDE80, 0xDE91, 19741},+    {0xDE92, 0xDE92, 9851},+    {0xDE93, 0xDE9E, 19759},+    {0xDE9F, 0xDE9F, 9202},+    {0xDEA0, 0xDEA0, 19771},+    {0xDEA1, 0xDEFE, 5259},+    {0xDF40, 0xDF40, 8830},+    {0xDF41, 0xDF41, 19772},+    {0xDF42, 0xDF42, 8217},+    {0xDF43, 0xDF4C, 19773},+    {0xDF4D, 0xDF4D, 8123},+    {0xDF4E, 0xDF5B, 19783},+    {0xDF5C, 0xDF5C, 8787},+    {0xDF5D, 0xDF5D, 19797},+    {0xDF5E, 0xDF5E, 7998},+    {0xDF5F, 0xDF5F, 7846},+    {0xDF60, 0xDF60, 8590},+    {0xDF61, 0xDF63, 19798},+    {0xDF64, 0xDF64, 8684},+    {0xDF65, 0xDF65, 19801},+    {0xDF66, 0xDF66, 7870},+    {0xDF67, 0xDF67, 19802},+    {0xDF68, 0xDF68, 8778},+    {0xDF69, 0xDF6C, 19803},+    {0xDF6D, 0xDF6D, 8499},+    {0xDF6E, 0xDF73, 19807},+    {0xDF74, 0xDF74, 7812},+    {0xDF75, 0xDF76, 19813},+    {0xDF77, 0xDF77, 8399},+    {0xDF78, 0xDF78, 8674},+    {0xDF79, 0xDF79, 19815},+    {0xDF7A, 0xDF7A, 8719},+    {0xDF7B, 0xDF7B, 19816},+    {0xDF7C, 0xDF7C, 8233},+    {0xDF7D, 0xDF7D, 19817},+    {0xDF7E, 0xDF7E, 8307},+    {0xDF80, 0xDF80, 8021},+    {0xDF81, 0xDF82, 19818},+    {0xDF83, 0xDF83, 9201},+    {0xDF84, 0xDF84, 19820},+    {0xDF85, 0xDF85, 7750},+    {0xDF86, 0xDF88, 19821},+    {0xDF89, 0xDF89, 8291},+    {0xDF8A, 0xDF8A, 9203},+    {0xDF8B, 0xDFA0, 19824},+    {0xDFA1, 0xDFFE, 5353},+    {0xE040, 0xE04F, 19846},+    {0xE050, 0xE050, 8990},+    {0xE051, 0xE05C, 19862},+    {0xE05D, 0xE05D, 8755},+    {0xE05E, 0xE068, 19874},+    {0xE069, 0xE069, 8992},+    {0xE06A, 0xE06B, 19885},+    {0xE06C, 0xE06C, 8647},+    {0xE06D, 0xE074, 19887},+    {0xE075, 0xE075, 8892},+    {0xE076, 0xE076, 19895},+    {0xE077, 0xE077, 8988},+    {0xE078, 0xE078, 19896},+    {0xE079, 0xE079, 8785},+    {0xE07A, 0xE07E, 19897},+    {0xE080, 0xE086, 19902},+    {0xE087, 0xE087, 7867},+    {0xE088, 0xE08C, 19909},+    {0xE08D, 0xE08D, 8839},+    {0xE08E, 0xE08E, 19914},+    {0xE08F, 0xE08F, 8237},+    {0xE090, 0xE090, 7851},+    {0xE091, 0xE091, 19915},+    {0xE092, 0xE092, 8989},+    {0xE093, 0xE093, 19916},+    {0xE094, 0xE094, 8991},+    {0xE095, 0xE096, 19917},+    {0xE097, 0xE097, 8987},+    {0xE098, 0xE0A0, 19919},+    {0xE0A1, 0xE0FE, 5447},+    {0xE140, 0xE141, 19928},+    {0xE142, 0xE142, 8993},+    {0xE143, 0xE163, 19930},+    {0xE164, 0xE164, 8789},+    {0xE165, 0xE167, 19963},+    {0xE168, 0xE168, 7823},+    {0xE169, 0xE173, 19966},+    {0xE174, 0xE174, 8716},+    {0xE175, 0xE175, 8100},+    {0xE176, 0xE17E, 19977},+    {0xE180, 0xE183, 19986},+    {0xE184, 0xE184, 8347},+    {0xE185, 0xE185, 8664},+    {0xE186, 0xE186, 19990},+    {0xE187, 0xE187, 9722},+    {0xE188, 0xE188, 19991},+    {0xE189, 0xE189, 9721},+    {0xE18A, 0xE18B, 19992},+    {0xE18C, 0xE18C, 8500},+    {0xE18D, 0xE18D, 19994},+    {0xE18E, 0xE190, 9459},+    {0xE191, 0xE191, 9464},+    {0xE192, 0xE192, 19995},+    {0xE193, 0xE193, 9463},+    {0xE194, 0xE194, 7880},+    {0xE195, 0xE195, 9462},+    {0xE196, 0xE197, 19996},+    {0xE198, 0xE198, 8832},+    {0xE199, 0xE19D, 19998},+    {0xE19E, 0xE19E, 7877},+    {0xE19F, 0xE19F, 9467},+    {0xE1A0, 0xE1A0, 20003},+    {0xE1A1, 0xE1FE, 5541},+    {0xE240, 0xE240, 20004},+    {0xE241, 0xE241, 9466},+    {0xE242, 0xE242, 20005},+    {0xE243, 0xE243, 7917},+    {0xE244, 0xE24E, 20006},+    {0xE24F, 0xE24F, 9469},+    {0xE250, 0xE250, 20017},+    {0xE251, 0xE251, 9465},+    {0xE252, 0xE252, 20018},+    {0xE253, 0xE253, 9470},+    {0xE254, 0xE254, 8397},+    {0xE255, 0xE259, 20019},+    {0xE25A, 0xE25A, 9480},+    {0xE25B, 0xE25B, 9476},+    {0xE25C, 0xE25D, 20024},+    {0xE25E, 0xE25E, 9478},+    {0xE25F, 0xE261, 20026},+    {0xE262, 0xE262, 9471},+    {0xE263, 0xE263, 8336},+    {0xE264, 0xE266, 20029},+    {0xE267, 0xE267, 7901},+    {0xE268, 0xE268, 7973},+    {0xE269, 0xE269, 20032},+    {0xE26A, 0xE26A, 9475},+    {0xE26B, 0xE26B, 9474},+    {0xE26C, 0xE26D, 20033},+    {0xE26E, 0xE26E, 7802},+    {0xE26F, 0xE26F, 8358},+    {0xE270, 0xE277, 20035},+    {0xE278, 0xE278, 8149},+    {0xE279, 0xE27C, 20043},+    {0xE27D, 0xE27D, 7953},+    {0xE27E, 0xE27E, 20047},+    {0xE280, 0xE280, 9479},+    {0xE281, 0xE281, 9472},+    {0xE282, 0xE282, 9477},+    {0xE283, 0xE288, 20048},+    {0xE289, 0xE289, 9497},+    {0xE28A, 0xE28A, 20054},+    {0xE28B, 0xE28B, 9493},+    {0xE28C, 0xE28D, 20055},+    {0xE28E, 0xE28E, 9484},+    {0xE28F, 0xE28F, 8241},+    {0xE290, 0xE291, 20057},+    {0xE292, 0xE292, 9483},+    {0xE293, 0xE293, 9487},+    {0xE294, 0xE294, 9498},+    {0xE295, 0xE295, 9481},+    {0xE296, 0xE297, 20059},+    {0xE298, 0xE298, 9486},+    {0xE299, 0xE299, 8756},+    {0xE29A, 0xE29A, 9491},+    {0xE29B, 0xE29B, 8064},+    {0xE29C, 0xE29F, 20061},+    {0xE2A0, 0xE2A0, 9473},+    {0xE2A1, 0xE2FE, 5635},+    {0xE340, 0xE341, 20065},+    {0xE342, 0xE342, 9495},+    {0xE343, 0xE343, 9494},+    {0xE344, 0xE346, 20067},+    {0xE347, 0xE347, 9496},+    {0xE348, 0xE34A, 20070},+    {0xE34B, 0xE34B, 7766},+    {0xE34C, 0xE34E, 20073},+    {0xE34F, 0xE34F, 9485},+    {0xE350, 0xE350, 20076},+    {0xE351, 0xE351, 8403},+    {0xE352, 0xE353, 20077},+    {0xE354, 0xE354, 8314},+    {0xE355, 0xE355, 8398},+    {0xE356, 0xE357, 20079},+    {0xE358, 0xE358, 9488},+    {0xE359, 0xE35B, 20081},+    {0xE35C, 0xE35C, 7765},+    {0xE35D, 0xE35F, 20084},+    {0xE360, 0xE360, 9482},+    {0xE361, 0xE365, 20087},+    {0xE366, 0xE367, 9489},+    {0xE368, 0xE370, 20092},+    {0xE371, 0xE371, 8106},+    {0xE372, 0xE372, 20101},+    {0xE373, 0xE373, 9502},+    {0xE374, 0xE374, 7967},+    {0xE375, 0xE377, 20102},+    {0xE378, 0xE378, 9517},+    {0xE379, 0xE379, 8733},+    {0xE37A, 0xE37B, 20105},+    {0xE37C, 0xE37C, 9522},+    {0xE37D, 0xE37D, 20107},+    {0xE37E, 0xE37E, 8571},+    {0xE380, 0xE389, 20108},+    {0xE38A, 0xE38A, 8623},+    {0xE38B, 0xE38B, 20118},+    {0xE38C, 0xE38C, 9516},+    {0xE38D, 0xE38E, 20119},+    {0xE38F, 0xE38F, 9512},+    {0xE390, 0xE390, 20121},+    {0xE391, 0xE391, 8332},+    {0xE392, 0xE392, 20122},+    {0xE393, 0xE393, 9519},+    {0xE394, 0xE394, 20123},+    {0xE395, 0xE395, 8636},+    {0xE396, 0xE398, 20124},+    {0xE399, 0xE399, 9501},+    {0xE39A, 0xE39B, 20127},+    {0xE39C, 0xE39C, 9525},+    {0xE39D, 0xE39D, 20129},+    {0xE39E, 0xE39E, 8717},+    {0xE39F, 0xE39F, 9510},+    {0xE3A0, 0xE3A0, 20130},+    {0xE3A1, 0xE3FE, 5729},+    {0xE440, 0xE440, 9524},+    {0xE441, 0xE441, 9514},+    {0xE442, 0xE442, 9503},+    {0xE443, 0xE443, 9521},+    {0xE444, 0xE444, 9500},+    {0xE445, 0xE447, 20131},+    {0xE448, 0xE448, 9509},+    {0xE449, 0xE44D, 20134},+    {0xE44E, 0xE44E, 8653},+    {0xE44F, 0xE44F, 20139},+    {0xE450, 0xE450, 8666},+    {0xE451, 0xE451, 20140},+    {0xE452, 0xE452, 8562},+    {0xE453, 0xE453, 9534},+    {0xE454, 0xE457, 20141},+    {0xE458, 0xE458, 8271},+    {0xE459, 0xE459, 20145},+    {0xE45A, 0xE45A, 9539},+    {0xE45B, 0xE45B, 20146},+    {0xE45C, 0xE45C, 8663},+    {0xE45D, 0xE45D, 20147},+    {0xE45E, 0xE45E, 7740},+    {0xE45F, 0xE461, 20148},+    {0xE462, 0xE462, 9513},+    {0xE463, 0xE464, 20151},+    {0xE465, 0xE465, 9505},+    {0xE466, 0xE467, 20153},+    {0xE468, 0xE468, 7935},+    {0xE469, 0xE472, 20155},+    {0xE473, 0xE473, 9535},+    {0xE474, 0xE474, 20165},+    {0xE475, 0xE475, 9540},+    {0xE476, 0xE478, 20166},+    {0xE479, 0xE479, 9507},+    {0xE47A, 0xE47A, 7824},+    {0xE47B, 0xE47B, 9530},+    {0xE47C, 0xE47C, 9541},+    {0xE47D, 0xE47D, 20169},+    {0xE47E, 0xE47E, 9533},+    {0xE480, 0xE480, 20170},+    {0xE481, 0xE481, 8385},+    {0xE482, 0xE483, 20171},+    {0xE484, 0xE484, 8451},+    {0xE485, 0xE485, 9504},+    {0xE486, 0xE486, 9532},+    {0xE487, 0xE487, 9531},+    {0xE488, 0xE488, 9528},+    {0xE489, 0xE48C, 20173},+    {0xE48D, 0xE48D, 9536},+    {0xE48E, 0xE48E, 20177},+    {0xE48F, 0xE48F, 8141},+    {0xE490, 0xE492, 20178},+    {0xE493, 0xE493, 7960},+    {0xE494, 0xE497, 20181},+    {0xE498, 0xE498, 9547},+    {0xE499, 0xE49C, 20185},+    {0xE49D, 0xE49D, 9543},+    {0xE49E, 0xE49F, 9551},+    {0xE4A0, 0xE4A0, 20189},+    {0xE4A1, 0xE4FE, 5823},+    {0xE540, 0xE545, 20190},+    {0xE546, 0xE546, 8880},+    {0xE547, 0xE547, 20196},+    {0xE548, 0xE548, 9542},+    {0xE549, 0xE54A, 20197},+    {0xE54B, 0xE54B, 9548},+    {0xE54C, 0xE54D, 20199},+    {0xE54E, 0xE54E, 7834},+    {0xE54F, 0xE54F, 9554},+    {0xE550, 0xE550, 9520},+    {0xE551, 0xE551, 9545},+    {0xE552, 0xE554, 20201},+    {0xE555, 0xE555, 9553},+    {0xE556, 0xE556, 7882},+    {0xE557, 0xE557, 20204},+    {0xE558, 0xE558, 8402},+    {0xE559, 0xE55B, 20205},+    {0xE55C, 0xE55C, 8120},+    {0xE55D, 0xE55D, 20208},+    {0xE55E, 0xE55E, 8313},+    {0xE55F, 0xE560, 20209},+    {0xE561, 0xE561, 8619},+    {0xE562, 0xE563, 20211},+    {0xE564, 0xE564, 9549},+    {0xE565, 0xE565, 7845},+    {0xE566, 0xE567, 20213},+    {0xE568, 0xE568, 8268},+    {0xE569, 0xE569, 8320},+    {0xE56A, 0xE56B, 20215},+    {0xE56C, 0xE56C, 9837},+    {0xE56D, 0xE56D, 20217},+    {0xE56E, 0xE56E, 9527},+    {0xE56F, 0xE574, 20218},+    {0xE575, 0xE575, 9546},+    {0xE576, 0xE576, 8632},+    {0xE577, 0xE577, 20224},+    {0xE578, 0xE578, 9550},+    {0xE579, 0xE57A, 20225},+    {0xE57B, 0xE57B, 9468},+    {0xE57C, 0xE57C, 9556},+    {0xE57D, 0xE57E, 20227},+    {0xE580, 0xE580, 20229},+    {0xE581, 0xE581, 7996},+    {0xE582, 0xE582, 20230},+    {0xE583, 0xE583, 7893},+    {0xE584, 0xE589, 20231},+    {0xE58A, 0xE58A, 9558},+    {0xE58B, 0xE58D, 20237},+    {0xE58E, 0xE58E, 8808},+    {0xE58F, 0xE590, 20240},+    {0xE591, 0xE591, 7894},+    {0xE592, 0xE599, 20242},+    {0xE59A, 0xE59A, 9559},+    {0xE59B, 0xE59B, 9555},+    {0xE59C, 0xE59E, 20250},+    {0xE59F, 0xE59F, 9544},+    {0xE5A0, 0xE5A0, 20253},+    {0xE5A1, 0xE5FE, 5917},+    {0xE640, 0xE640, 8412},+    {0xE641, 0xE643, 20254},+    {0xE644, 0xE644, 9561},+    {0xE645, 0xE648, 20257},+    {0xE649, 0xE649, 8087},+    {0xE64A, 0xE64A, 9557},+    {0xE64B, 0xE64D, 20261},+    {0xE64E, 0xE64E, 8829},+    {0xE64F, 0xE651, 20264},+    {0xE652, 0xE652, 9598},+    {0xE653, 0xE655, 20267},+    {0xE656, 0xE656, 8316},+    {0xE657, 0xE657, 20270},+    {0xE658, 0xE658, 9562},+    {0xE659, 0xE65A, 20271},+    {0xE65B, 0xE65B, 9566},+    {0xE65C, 0xE65D, 20273},+    {0xE65E, 0xE65E, 7732},+    {0xE65F, 0xE668, 20275},+    {0xE669, 0xE669, 8542},+    {0xE66A, 0xE66A, 20285},+    {0xE66B, 0xE66B, 9568},+    {0xE66C, 0xE674, 20286},+    {0xE675, 0xE675, 8610},+    {0xE676, 0xE676, 9044},+    {0xE677, 0xE678, 20295},+    {0xE679, 0xE679, 9571},+    {0xE67A, 0xE67A, 9511},+    {0xE67B, 0xE67B, 20297},+    {0xE67C, 0xE67C, 9518},+    {0xE67D, 0xE67D, 9560},+    {0xE67E, 0xE67E, 20298},+    {0xE680, 0xE680, 7963},+    {0xE681, 0xE681, 20299},+    {0xE682, 0xE682, 8835},+    {0xE683, 0xE683, 20300},+    {0xE684, 0xE684, 9572},+    {0xE685, 0xE686, 20301},+    {0xE687, 0xE687, 8352},+    {0xE688, 0xE688, 20303},+    {0xE689, 0xE689, 9573},+    {0xE68A, 0xE68B, 20304},+    {0xE68C, 0xE68C, 9569},+    {0xE68D, 0xE692, 20306},+    {0xE693, 0xE693, 9570},+    {0xE694, 0xE696, 20312},+    {0xE697, 0xE697, 9580},+    {0xE698, 0xE69A, 20315},+    {0xE69B, 0xE69B, 9581},+    {0xE69C, 0xE69C, 8224},+    {0xE69D, 0xE69E, 20318},+    {0xE69F, 0xE69F, 9567},+    {0xE6A0, 0xE6A0, 9578},+    {0xE6A1, 0xE6FE, 6011},+    {0xE740, 0xE742, 20320},+    {0xE743, 0xE743, 9582},+    {0xE744, 0xE747, 20323},+    {0xE748, 0xE748, 9529},+    {0xE749, 0xE749, 9564},+    {0xE74A, 0xE74C, 20327},+    {0xE74D, 0xE74E, 9576},+    {0xE74F, 0xE74F, 9579},+    {0xE750, 0xE750, 7791},+    {0xE751, 0xE751, 20330},+    {0xE752, 0xE752, 8132},+    {0xE753, 0xE753, 9575},+    {0xE754, 0xE754, 20331},+    {0xE755, 0xE755, 9563},+    {0xE756, 0xE758, 20332},+    {0xE759, 0xE759, 9757},+    {0xE75A, 0xE765, 20335},+    {0xE766, 0xE766, 9515},+    {0xE767, 0xE767, 20347},+    {0xE768, 0xE768, 9585},+    {0xE769, 0xE769, 20348},+    {0xE76A, 0xE76A, 9591},+    {0xE76B, 0xE773, 20349},+    {0xE774, 0xE774, 9506},+    {0xE775, 0xE77B, 20358},+    {0xE77C, 0xE77C, 9523},+    {0xE77D, 0xE77E, 20365},+    {0xE780, 0xE781, 20367},+    {0xE782, 0xE782, 8234},+    {0xE783, 0xE783, 20369},+    {0xE784, 0xE784, 9526},+    {0xE785, 0xE785, 9587},+    {0xE786, 0xE786, 9583},+    {0xE787, 0xE789, 20370},+    {0xE78A, 0xE78A, 8851},+    {0xE78B, 0xE78B, 9592},+    {0xE78C, 0xE78E, 20373},+    {0xE78F, 0xE78F, 9584},+    {0xE790, 0xE791, 20376},+    {0xE792, 0xE792, 9589},+    {0xE793, 0xE797, 20378},+    {0xE798, 0xE799, 9537},+    {0xE79A, 0xE79A, 9565},+    {0xE79B, 0xE79F, 20383},+    {0xE7A0, 0xE7A0, 8218},+    {0xE7A1, 0xE7FE, 6105},+    {0xE840, 0xE842, 20388},+    {0xE843, 0xE843, 9594},+    {0xE844, 0xE844, 8198},+    {0xE845, 0xE845, 20391},+    {0xE846, 0xE846, 8567},+    {0xE847, 0xE848, 20392},+    {0xE849, 0xE849, 9499},+    {0xE84A, 0xE84A, 20394},+    {0xE84B, 0xE84B, 9508},+    {0xE84C, 0xE84E, 20395},+    {0xE84F, 0xE84F, 9595},+    {0xE850, 0xE853, 20398},+    {0xE854, 0xE854, 8867},+    {0xE855, 0xE859, 20402},+    {0xE85A, 0xE85A, 9593},+    {0xE85B, 0xE85B, 20407},+    {0xE85C, 0xE85C, 9574},+    {0xE85D, 0xE861, 20408},+    {0xE862, 0xE862, 8083},+    {0xE863, 0xE863, 20413},+    {0xE864, 0xE864, 9596},+    {0xE865, 0xE86F, 20414},+    {0xE870, 0xE870, 9492},+    {0xE871, 0xE872, 20425},+    {0xE873, 0xE873, 9597},+    {0xE874, 0xE874, 20427},+    {0xE875, 0xE875, 9586},+    {0xE876, 0xE87B, 20428},+    {0xE87C, 0xE87C, 9588},+    {0xE87D, 0xE87E, 20434},+    {0xE880, 0xE880, 8782},+    {0xE881, 0xE881, 20436},+    {0xE882, 0xE882, 8646},+    {0xE883, 0xE886, 20437},+    {0xE887, 0xE887, 8351},+    {0xE888, 0xE888, 20441},+    {0xE889, 0xE889, 9590},+    {0xE88A, 0xE88B, 20442},+    {0xE88C, 0xE88C, 8292},+    {0xE88D, 0xE88D, 8895},+    {0xE88E, 0xE88E, 9756},+    {0xE88F, 0xE88F, 8798},+    {0xE890, 0xE8A0, 20444},+    {0xE8A1, 0xE8FE, 6199},+    {0xE940, 0xE94B, 20461},+    {0xE94C, 0xE94C, 7797},+    {0xE94D, 0xE953, 20473},+    {0xE954, 0xE954, 8317},+    {0xE955, 0xE955, 20480},+    {0xE956, 0xE956, 9151},+    {0xE957, 0xE957, 8467},+    {0xE958, 0xE959, 20481},+    {0xE95A, 0xE95A, 9152},+    {0xE95B, 0xE95C, 20483},+    {0xE95D, 0xE95D, 7749},+    {0xE95E, 0xE95E, 20485},+    {0xE95F, 0xE95F, 8152},+    {0xE960, 0xE960, 9156},+    {0xE961, 0xE961, 20486},+    {0xE962, 0xE962, 9154},+    {0xE963, 0xE963, 8452},+    {0xE964, 0xE964, 20487},+    {0xE965, 0xE965, 8637},+    {0xE966, 0xE966, 20488},+    {0xE967, 0xE967, 8071},+    {0xE968, 0xE968, 9155},+    {0xE969, 0xE96B, 20489},+    {0xE96C, 0xE96C, 8809},+    {0xE96D, 0xE974, 20492},+    {0xE975, 0xE975, 8003},+    {0xE976, 0xE976, 20500},+    {0xE977, 0xE977, 7966},+    {0xE978, 0xE978, 9849},+    {0xE979, 0xE979, 7915},+    {0xE97A, 0xE97B, 20501},+    {0xE97C, 0xE97C, 7989},+    {0xE97D, 0xE97D, 8330},+    {0xE97E, 0xE97E, 20503},+    {0xE980, 0xE980, 9159},+    {0xE981, 0xE981, 9161},+    {0xE982, 0xE982, 9158},+    {0xE983, 0xE986, 20504},+    {0xE987, 0xE987, 8783},+    {0xE988, 0xE98A, 20508},+    {0xE98B, 0xE98B, 9163},+    {0xE98C, 0xE98D, 20511},+    {0xE98E, 0xE98E, 8691},+    {0xE98F, 0xE98F, 20513},+    {0xE990, 0xE990, 8695},+    {0xE991, 0xE991, 9167},+    {0xE992, 0xE992, 9166},+    {0xE993, 0xE993, 9162},+    {0xE994, 0xE994, 9165},+    {0xE995, 0xE997, 20514},+    {0xE998, 0xE998, 9168},+    {0xE999, 0xE99A, 20517},+    {0xE99B, 0xE99B, 9836},+    {0xE99C, 0xE99C, 20519},+    {0xE99D, 0xE99D, 9153},+    {0xE99E, 0xE99E, 20520},+    {0xE99F, 0xE99F, 8174},+    {0xE9A0, 0xE9A0, 9169},+    {0xE9A1, 0xE9FE, 6293},+    {0xEA40, 0xEA40, 8184},+    {0xEA41, 0xEA43, 20521},+    {0xEA44, 0xEA44, 9171},+    {0xEA45, 0xEA47, 20524},+    {0xEA48, 0xEA48, 9170},+    {0xEA49, 0xEA49, 9172},+    {0xEA4A, 0xEA4A, 7832},+    {0xEA4B, 0xEA4F, 20527},+    {0xEA50, 0xEA50, 7980},+    {0xEA51, 0xEA51, 20532},+    {0xEA52, 0xEA52, 9173},+    {0xEA53, 0xEA54, 20533},+    {0xEA55, 0xEA55, 7793},+    {0xEA56, 0xEA56, 9873},+    {0xEA57, 0xEA58, 20535},+    {0xEA59, 0xEA59, 9157},+    {0xEA5A, 0xEA7E, 20537},+    {0xEA80, 0xEA80, 8986},+    {0xEA81, 0xEA83, 20574},+    {0xEA84, 0xEA84, 8468},+    {0xEA85, 0xEA86, 20577},+    {0xEA87, 0xEA87, 8836},+    {0xEA88, 0xEA8D, 20579},+    {0xEA8E, 0xEA8E, 8732},+    {0xEA8F, 0xEA8F, 20585},+    {0xEA90, 0xEA90, 7806},+    {0xEA91, 0xEA91, 8269},+    {0xEA92, 0xEA95, 20586},+    {0xEA96, 0xEA96, 8705},+    {0xEA97, 0xEA9F, 20590},+    {0xEAA0, 0xEAA0, 7897},+    {0xEAA1, 0xEAFE, 6387},+    {0xEB40, 0xEB40, 20599},+    {0xEB41, 0xEB41, 8114},+    {0xEB42, 0xEB44, 20600},+    {0xEB45, 0xEB45, 8786},+    {0xEB46, 0xEB47, 20603},+    {0xEB48, 0xEB48, 8057},+    {0xEB49, 0xEB52, 20605},+    {0xEB53, 0xEB53, 8535},+    {0xEB54, 0xEB54, 20615},+    {0xEB55, 0xEB55, 8639},+    {0xEB56, 0xEB5A, 20616},+    {0xEB5B, 0xEB5B, 8735},+    {0xEB5C, 0xEB5C, 20621},+    {0xEB5D, 0xEB5D, 8253},+    {0xEB5E, 0xEB5F, 20622},+    {0xEB60, 0xEB60, 8213},+    {0xEB61, 0xEB61, 20624},+    {0xEB62, 0xEB62, 9893},+    {0xEB63, 0xEB6C, 20625},+    {0xEB6D, 0xEB6D, 8534},+    {0xEB6E, 0xEB6F, 20635},+    {0xEB70, 0xEB70, 8516},+    {0xEB71, 0xEB71, 20637},+    {0xEB72, 0xEB72, 7825},+    {0xEB73, 0xEB73, 8791},+    {0xEB74, 0xEB77, 20638},+    {0xEB78, 0xEB78, 8202},+    {0xEB79, 0xEB79, 8338},+    {0xEB7A, 0xEB7E, 20642},+    {0xEB80, 0xEB84, 20647},+    {0xEB85, 0xEB85, 8784},+    {0xEB86, 0xEB89, 20652},+    {0xEB8A, 0xEB8A, 7875},+    {0xEB8B, 0xEBA0, 20656},+    {0xEBA1, 0xEBFE, 6481},+    {0xEC40, 0xEC45, 20678},+    {0xEC46, 0xEC46, 8616},+    {0xEC47, 0xEC55, 20684},+    {0xEC56, 0xEC56, 9741},+    {0xEC57, 0xEC59, 20699},+    {0xEC5A, 0xEC5A, 9740},+    {0xEC5B, 0xEC5B, 20702},+    {0xEC5C, 0xEC5C, 9742},+    {0xEC5D, 0xEC5F, 20703},+    {0xEC60, 0xEC60, 8242},+    {0xEC61, 0xEC6D, 20706},+    {0xEC6E, 0xEC6E, 9739},+    {0xEC6F, 0xEC75, 20719},+    {0xEC76, 0xEC76, 8899},+    {0xEC77, 0xEC7E, 20726},+    {0xEC80, 0xEC95, 20734},+    {0xEC96, 0xEC96, 7971},+    {0xEC97, 0xECA0, 20756},+    {0xECA1, 0xECFE, 6575},+    {0xED40, 0xED45, 20766},+    {0xED46, 0xED46, 9877},+    {0xED47, 0xED57, 20772},+    {0xED58, 0xED58, 9822},+    {0xED59, 0xED5D, 20789},+    {0xED5E, 0xED5E, 9821},+    {0xED5F, 0xED60, 20794},+    {0xED61, 0xED61, 9874},+    {0xED62, 0xED63, 20796},+    {0xED64, 0xED64, 9823},+    {0xED65, 0xED65, 20798},+    {0xED66, 0xED66, 8589},+    {0xED67, 0xED67, 8445},+    {0xED68, 0xED6D, 20799},+    {0xED6E, 0xED6E, 8000},+    {0xED6F, 0xED73, 20805},+    {0xED74, 0xED74, 9317},+    {0xED75, 0xED76, 20810},+    {0xED77, 0xED77, 9319},+    {0xED78, 0xED78, 20812},+    {0xED79, 0xED79, 9318},+    {0xED7A, 0xED7E, 20813},+    {0xED80, 0xED90, 20818},+    {0xED91, 0xED91, 8649},+    {0xED92, 0xED92, 20835},+    {0xED93, 0xED93, 8713},+    {0xED94, 0xED94, 7881},+    {0xED95, 0xED95, 8425},+    {0xED96, 0xED96, 20836},+    {0xED97, 0xED97, 8650},+    {0xED98, 0xED98, 8518},+    {0xED99, 0xED99, 9669},+    {0xED9A, 0xED9A, 8668},+    {0xED9B, 0xED9B, 20837},+    {0xED9C, 0xED9C, 9310},+    {0xED9D, 0xED9D, 20838},+    {0xED9E, 0xED9E, 8527},+    {0xED9F, 0xED9F, 20839},+    {0xEDA0, 0xEDA0, 9670},+    {0xEDA1, 0xEDFE, 6669},+    {0xEE40, 0xEE40, 9671},+    {0xEE41, 0xEE41, 8769},+    {0xEE42, 0xEE42, 8586},+    {0xEE43, 0xEE43, 7727},+    {0xEE44, 0xEE44, 7900},+    {0xEE45, 0xEE47, 20840},+    {0xEE48, 0xEE48, 8383},+    {0xEE49, 0xEE49, 8244},+    {0xEE4A, 0xEE4C, 20843},+    {0xEE4D, 0xEE4D, 9673},+    {0xEE4E, 0xEE51, 20846},+    {0xEE52, 0xEE52, 9672},+    {0xEE53, 0xEE54, 20850},+    {0xEE55, 0xEE55, 8718},+    {0xEE56, 0xEE56, 20852},+    {0xEE57, 0xEE57, 9675},+    {0xEE58, 0xEE5D, 20853},+    {0xEE5E, 0xEE5E, 8573},+    {0xEE5F, 0xEE60, 20859},+    {0xEE61, 0xEE61, 8062},+    {0xEE62, 0xEE67, 20861},+    {0xEE68, 0xEE68, 9676},+    {0xEE69, 0xEE69, 8131},+    {0xEE6A, 0xEE6B, 20867},+    {0xEE6C, 0xEE6C, 8377},+    {0xEE6D, 0xEE6D, 20869},+    {0xEE6E, 0xEE6E, 8577},+    {0xEE6F, 0xEE76, 20870},+    {0xEE77, 0xEE77, 8154},+    {0xEE78, 0xEE7C, 20878},+    {0xEE7D, 0xEE7D, 8563},+    {0xEE7E, 0xEE7E, 7905},+    {0xEE80, 0xEE80, 9677},+    {0xEE81, 0xEE84, 20883},+    {0xEE85, 0xEE85, 9678},+    {0xEE86, 0xEE86, 8694},+    {0xEE87, 0xEE89, 20887},+    {0xEE8A, 0xEE8A, 8779},+    {0xEE8B, 0xEE8B, 9681},+    {0xEE8C, 0xEE8C, 20890},+    {0xEE8D, 0xEE8D, 7872},+    {0xEE8E, 0xEE8F, 20891},+    {0xEE90, 0xEE90, 8200},+    {0xEE91, 0xEE93, 20893},+    {0xEE94, 0xEE94, 9680},+    {0xEE95, 0xEE96, 20896},+    {0xEE97, 0xEE97, 9682},+    {0xEE98, 0xEE98, 20898},+    {0xEE99, 0xEE99, 7978},+    {0xEE9A, 0xEE9C, 20899},+    {0xEE9D, 0xEE9D, 7794},+    {0xEE9E, 0xEE9E, 9683},+    {0xEE9F, 0xEEA0, 20902},+    {0xEEA1, 0xEEFE, 6763},+    {0xEF40, 0xEF40, 8638},+    {0xEF41, 0xEF41, 9684},+    {0xEF42, 0xEF42, 8260},+    {0xEF43, 0xEF43, 20904},+    {0xEF44, 0xEF44, 9679},+    {0xEF45, 0xEF45, 8435},+    {0xEF46, 0xEF4B, 20905},+    {0xEF4C, 0xEF4C, 7936},+    {0xEF4D, 0xEF51, 20911},+    {0xEF52, 0xEF53, 9420},+    {0xEF54, 0xEF54, 20916},+    {0xEF55, 0xEF55, 9880},+    {0xEF56, 0xEF56, 20917},+    {0xEF57, 0xEF57, 9848},+    {0xEF58, 0xEF59, 20918},+    {0xEF5A, 0xEF5A, 9422},+    {0xEF5B, 0xEF5F, 20920},+    {0xEF60, 0xEF60, 9423},+    {0xEF61, 0xEF67, 20925},+    {0xEF68, 0xEF68, 8376},+    {0xEF69, 0xEF69, 20932},+    {0xEF6A, 0xEF6A, 9424},+    {0xEF6B, 0xEF6B, 20933},+    {0xEF6C, 0xEF6C, 9425},+    {0xEF6D, 0xEF76, 20934},+    {0xEF77, 0xEF77, 7924},+    {0xEF78, 0xEF79, 20944},+    {0xEF7A, 0xEF7A, 9115},+    {0xEF7B, 0xEF7B, 20946},+    {0xEF7C, 0xEF7C, 9854},+    {0xEF7D, 0xEF7E, 20947},+    {0xEF80, 0xEF81, 20949},+    {0xEF82, 0xEF82, 9117},+    {0xEF83, 0xEF84, 9119},+    {0xEF85, 0xEF85, 20951},+    {0xEF86, 0xEF86, 9121},+    {0xEF87, 0xEF87, 20952},+    {0xEF88, 0xEF88, 7921},+    {0xEF89, 0xEF8A, 20953},+    {0xEF8B, 0xEF8B, 8734},+    {0xEF8C, 0xEF8C, 20955},+    {0xEF8D, 0xEF8D, 9122},+    {0xEF8E, 0xEF94, 20956},+    {0xEF95, 0xEF95, 8523},+    {0xEF96, 0xEF96, 7734},+    {0xEF97, 0xEF97, 8501},+    {0xEF98, 0xEF9B, 20963},+    {0xEF9C, 0xEF9C, 8109},+    {0xEF9D, 0xEF9D, 20967},+    {0xEF9E, 0xEF9E, 7763},+    {0xEF9F, 0xEFA0, 20968},+    {0xEFA1, 0xEFFE, 6857},+    {0xF040, 0xF040, 20970},+    {0xF041, 0xF041, 9123},+    {0xF042, 0xF042, 8707},+    {0xF043, 0xF043, 20971},+    {0xF044, 0xF044, 7911},+    {0xF045, 0xF046, 20972},+    {0xF047, 0xF047, 9124},+    {0xF048, 0xF048, 8343},+    {0xF049, 0xF049, 7908},+    {0xF04A, 0xF04D, 20974},+    {0xF04E, 0xF04E, 8760},+    {0xF04F, 0xF050, 20978},+    {0xF051, 0xF051, 9125},+    {0xF052, 0xF053, 20980},+    {0xF054, 0xF054, 8090},+    {0xF055, 0xF056, 20982},+    {0xF057, 0xF057, 8643},+    {0xF058, 0xF05D, 20984},+    {0xF05E, 0xF05E, 7982},+    {0xF05F, 0xF067, 20990},+    {0xF068, 0xF068, 9116},+    {0xF069, 0xF06B, 20999},+    {0xF06C, 0xF06C, 9126},+    {0xF06D, 0xF070, 21002},+    {0xF071, 0xF071, 9118},+    {0xF072, 0xF072, 21006},+    {0xF073, 0xF073, 8245},+    {0xF074, 0xF074, 9127},+    {0xF075, 0xF077, 21007},+    {0xF078, 0xF078, 9128},+    {0xF079, 0xF079, 21010},+    {0xF07A, 0xF07A, 8309},+    {0xF07B, 0xF07C, 21011},+    {0xF07D, 0xF07E, 9129},+    {0xF080, 0xF080, 9131},+    {0xF081, 0xF081, 8171},+    {0xF082, 0xF082, 9132},+    {0xF083, 0xF086, 21013},+    {0xF087, 0xF087, 8042},+    {0xF088, 0xF088, 8441},+    {0xF089, 0xF08A, 21017},+    {0xF08B, 0xF08B, 9830},+    {0xF08C, 0xF08F, 21019},+    {0xF090, 0xF090, 9831},+    {0xF091, 0xF091, 21023},+    {0xF092, 0xF092, 7788},+    {0xF093, 0xF095, 21024},+    {0xF096, 0xF096, 9133},+    {0xF097, 0xF0A0, 21027},+    {0xF0A1, 0xF0FE, 6951},+    {0xF140, 0xF151, 21037},+    {0xF152, 0xF152, 8301},+    {0xF153, 0xF153, 8770},+    {0xF154, 0xF154, 7938},+    {0xF155, 0xF156, 21055},+    {0xF157, 0xF157, 8579},+    {0xF158, 0xF158, 21057},+    {0xF159, 0xF159, 7813},+    {0xF15A, 0xF15A, 8681},+    {0xF15B, 0xF166, 21058},+    {0xF167, 0xF167, 7767},+    {0xF168, 0xF175, 21070},+    {0xF176, 0xF176, 8869},+    {0xF177, 0xF177, 9223},+    {0xF178, 0xF178, 8138},+    {0xF179, 0xF179, 21084},+    {0xF17A, 0xF17A, 9218},+    {0xF17B, 0xF17B, 8066},+    {0xF17C, 0xF17D, 21085},+    {0xF17E, 0xF17E, 9224},+    {0xF180, 0xF180, 9220},+    {0xF181, 0xF181, 21087},+    {0xF182, 0xF182, 8497},+    {0xF183, 0xF183, 21088},+    {0xF184, 0xF184, 8580},+    {0xF185, 0xF185, 21089},+    {0xF186, 0xF186, 9219},+    {0xF187, 0xF187, 21090},+    {0xF188, 0xF188, 8302},+    {0xF189, 0xF189, 9227},+    {0xF18A, 0xF193, 21091},+    {0xF194, 0xF194, 7999},+    {0xF195, 0xF197, 21101},+    {0xF198, 0xF198, 8295},+    {0xF199, 0xF1A0, 21104},+    {0xF1A1, 0xF1FE, 7045},+    {0xF240, 0xF244, 21112},+    {0xF245, 0xF245, 8151},+    {0xF246, 0xF246, 21117},+    {0xF247, 0xF247, 7811},+    {0xF248, 0xF24A, 21118},+    {0xF24B, 0xF24B, 9231},+    {0xF24C, 0xF252, 21121},+    {0xF253, 0xF253, 9230},+    {0xF254, 0xF254, 8391},+    {0xF255, 0xF255, 9229},+    {0xF256, 0xF25B, 21128},+    {0xF25C, 0xF25C, 9234},+    {0xF25D, 0xF25E, 21134},+    {0xF25F, 0xF25F, 8375},+    {0xF260, 0xF270, 21136},+    {0xF271, 0xF271, 9200},+    {0xF272, 0xF272, 21153},+    {0xF273, 0xF273, 9233},+    {0xF274, 0xF274, 9236},+    {0xF275, 0xF275, 21154},+    {0xF276, 0xF276, 8560},+    {0xF277, 0xF27B, 21155},+    {0xF27C, 0xF27C, 9221},+    {0xF27D, 0xF27D, 8460},+    {0xF27E, 0xF27E, 9237},+    {0xF280, 0xF284, 21160},+    {0xF285, 0xF285, 8294},+    {0xF286, 0xF286, 21165},+    {0xF287, 0xF287, 9042},+    {0xF288, 0xF288, 9235},+    {0xF289, 0xF289, 9232},+    {0xF28A, 0xF28B, 9238},+    {0xF28C, 0xF28C, 8433},+    {0xF28D, 0xF290, 21166},+    {0xF291, 0xF291, 9226},+    {0xF292, 0xF293, 21170},+    {0xF294, 0xF294, 9225},+    {0xF295, 0xF295, 21172},+    {0xF296, 0xF296, 9240},+    {0xF297, 0xF29B, 21173},+    {0xF29C, 0xF29C, 8103},+    {0xF29D, 0xF29D, 21178},+    {0xF29E, 0xF29E, 8700},+    {0xF29F, 0xF2A0, 21179},+    {0xF2A1, 0xF2FE, 7139},+    {0xF340, 0xF340, 8129},+    {0xF341, 0xF341, 9222},+    {0xF342, 0xF344, 21181},+    {0xF345, 0xF345, 8860},+    {0xF346, 0xF347, 21184},+    {0xF348, 0xF348, 8270},+    {0xF349, 0xF349, 21186},+    {0xF34A, 0xF34A, 9242},+    {0xF34B, 0xF34B, 9241},+    {0xF34C, 0xF34F, 21187},+    {0xF350, 0xF350, 9228},+    {0xF351, 0xF360, 21191},+    {0xF361, 0xF361, 7721},+    {0xF362, 0xF373, 21207},+    {0xF374, 0xF374, 9825},+    {0xF375, 0xF375, 21225},+    {0xF376, 0xF376, 9892},+    {0xF377, 0xF377, 8564},+    {0xF378, 0xF378, 9827},+    {0xF379, 0xF379, 9826},+    {0xF37A, 0xF37E, 21226},+    {0xF380, 0xF38B, 21231},+    {0xF38C, 0xF38C, 9845},+    {0xF38D, 0xF39F, 21243},+    {0xF3A0, 0xF3A0, 8524},+    {0xF3A1, 0xF3FE, 7233},+    {0xF440, 0xF444, 21262},+    {0xF445, 0xF445, 9850},+    {0xF446, 0xF44F, 21267},+    {0xF450, 0xF450, 9888},+    {0xF451, 0xF456, 21277},+    {0xF457, 0xF457, 9832},+    {0xF458, 0xF458, 21283},+    {0xF459, 0xF459, 7888},+    {0xF45A, 0xF45A, 21284},+    {0xF45B, 0xF45B, 8342},+    {0xF45C, 0xF45C, 21285},+    {0xF45D, 0xF45D, 9164},+    {0xF45E, 0xF461, 21286},+    {0xF462, 0xF462, 9160},+    {0xF463, 0xF463, 21290},+    {0xF464, 0xF464, 8766},+    {0xF465, 0xF474, 21291},+    {0xF475, 0xF475, 9829},+    {0xF476, 0xF47B, 21307},+    {0xF47C, 0xF47C, 9828},+    {0xF47D, 0xF47D, 21313},+    {0xF47E, 0xF47E, 8761},+    {0xF480, 0xF493, 21314},+    {0xF494, 0xF494, 8266},+    {0xF495, 0xF498, 21334},+    {0xF499, 0xF499, 9759},+    {0xF49A, 0xF49B, 21338},+    {0xF49C, 0xF49C, 9758},+    {0xF49D, 0xF4A0, 21340},+    {0xF4A1, 0xF4FE, 7327},+    {0xF540, 0xF544, 21344},+    {0xF545, 0xF545, 9760},+    {0xF546, 0xF546, 21349},+    {0xF547, 0xF547, 9761},+    {0xF548, 0xF551, 21350},+    {0xF552, 0xF552, 9762},+    {0xF553, 0xF553, 21360},+    {0xF554, 0xF554, 9767},+    {0xF555, 0xF555, 7737},+    {0xF556, 0xF556, 9765},+    {0xF557, 0xF55D, 21361},+    {0xF55E, 0xF55E, 9769},+    {0xF55F, 0xF560, 21368},+    {0xF561, 0xF561, 9774},+    {0xF562, 0xF562, 9771},+    {0xF563, 0xF56D, 21370},+    {0xF56E, 0xF56E, 9770},+    {0xF56F, 0xF56F, 9773},+    {0xF570, 0xF570, 21381},+    {0xF571, 0xF571, 9768},+    {0xF572, 0xF572, 8633},+    {0xF573, 0xF57E, 21382},+    {0xF580, 0xF584, 21394},+    {0xF585, 0xF585, 9782},+    {0xF586, 0xF586, 9776},+    {0xF587, 0xF58B, 21399},+    {0xF58C, 0xF58C, 9784},+    {0xF58D, 0xF58D, 21404},+    {0xF58E, 0xF58E, 8205},+    {0xF58F, 0xF58F, 9783},+    {0xF590, 0xF598, 21405},+    {0xF599, 0xF599, 9797},+    {0xF59A, 0xF59A, 21414},+    {0xF59B, 0xF59B, 9786},+    {0xF59C, 0xF59F, 21415},+    {0xF5A0, 0xF5A0, 9795},+    {0xF5A1, 0xF5FE, 7421},+    {0xF640, 0xF640, 21419},+    {0xF641, 0xF641, 9792},+    {0xF642, 0xF644, 21420},+    {0xF645, 0xF645, 9789},+    {0xF646, 0xF646, 9793},+    {0xF647, 0xF647, 21423},+    {0xF648, 0xF648, 9790},+    {0xF649, 0xF64A, 21424},+    {0xF64B, 0xF64B, 9791},+    {0xF64C, 0xF64C, 8128},+    {0xF64D, 0xF64D, 21426},+    {0xF64E, 0xF64F, 9787},+    {0xF650, 0xF653, 21427},+    {0xF654, 0xF654, 9794},+    {0xF655, 0xF657, 21431},+    {0xF658, 0xF658, 9796},+    {0xF659, 0xF660, 21434},+    {0xF661, 0xF661, 9785},+    {0xF662, 0xF662, 21442},+    {0xF663, 0xF663, 9804},+    {0xF664, 0xF66B, 21443},+    {0xF66C, 0xF66C, 9799},+    {0xF66D, 0xF66D, 9803},+    {0xF66E, 0xF670, 21451},+    {0xF671, 0xF671, 9801},+    {0xF672, 0xF673, 21454},+    {0xF674, 0xF674, 9800},+    {0xF675, 0xF675, 21456},+    {0xF676, 0xF676, 9802},+    {0xF677, 0xF677, 8456},+    {0xF678, 0xF67E, 21457},+    {0xF680, 0xF684, 21464},+    {0xF685, 0xF685, 9805},+    {0xF686, 0xF687, 21469},+    {0xF688, 0xF688, 9780},+    {0xF689, 0xF689, 21471},+    {0xF68A, 0xF68A, 9809},+    {0xF68B, 0xF68C, 21472},+    {0xF68D, 0xF68D, 9808},+    {0xF68E, 0xF68E, 9810},+    {0xF68F, 0xF691, 21474},+    {0xF692, 0xF692, 9807},+    {0xF693, 0xF695, 21477},+    {0xF696, 0xF696, 9778},+    {0xF697, 0xF697, 9806},+    {0xF698, 0xF698, 9811},+    {0xF699, 0xF699, 21480},+    {0xF69A, 0xF69A, 9815},+    {0xF69B, 0xF69B, 21481},+    {0xF69C, 0xF69C, 9781},+    {0xF69D, 0xF69D, 21482},+    {0xF69E, 0xF69E, 9779},+    {0xF69F, 0xF69F, 21483},+    {0xF6A0, 0xF6A0, 9814},+    {0xF6A1, 0xF6FE, 7515},+    {0xF740, 0xF741, 21484},+    {0xF742, 0xF742, 9812},+    {0xF743, 0xF748, 21486},+    {0xF749, 0xF749, 9816},+    {0xF74A, 0xF74B, 21492},+    {0xF74C, 0xF74C, 9813},+    {0xF74D, 0xF74D, 7757},+    {0xF74E, 0xF755, 21494},+    {0xF756, 0xF756, 9819},+    {0xF757, 0xF757, 21502},+    {0xF758, 0xF758, 9818},+    {0xF759, 0xF759, 21503},+    {0xF75A, 0xF75A, 9817},+    {0xF75B, 0xF75B, 8238},+    {0xF75C, 0xF75C, 9775},+    {0xF75D, 0xF760, 21504},+    {0xF761, 0xF761, 9798},+    {0xF762, 0xF762, 21508},+    {0xF763, 0xF763, 9766},+    {0xF764, 0xF76A, 21509},+    {0xF76B, 0xF76B, 9820},+    {0xF76C, 0xF770, 21516},+    {0xF771, 0xF771, 9772},+    {0xF772, 0xF77B, 21521},+    {0xF77C, 0xF77C, 9763},+    {0xF77D, 0xF77D, 21531},+    {0xF77E, 0xF77E, 9777},+    {0xF780, 0xF7A0, 21532},+    {0xF7A1, 0xF7FE, 7609},+    {0xF840, 0xF841, 21565},+    {0xF842, 0xF842, 8348},+    {0xF843, 0xF845, 21567},+    {0xF846, 0xF846, 9600},+    {0xF847, 0xF848, 21570},+    {0xF849, 0xF849, 8924},+    {0xF84A, 0xF84F, 21572},+    {0xF850, 0xF850, 7941},+    {0xF851, 0xF851, 8331},+    {0xF852, 0xF852, 21578},+    {0xF853, 0xF853, 9601},+    {0xF854, 0xF862, 21579},+    {0xF863, 0xF863, 9603},+    {0xF864, 0xF864, 9602},+    {0xF865, 0xF865, 21594},+    {0xF866, 0xF866, 8686},+    {0xF867, 0xF871, 21595},+    {0xF872, 0xF872, 8578},+    {0xF873, 0xF877, 21606},+    {0xF878, 0xF878, 8771},+    {0xF879, 0xF879, 21611},+    {0xF87A, 0xF87A, 9607},+    {0xF87B, 0xF87B, 21612},+    {0xF87C, 0xF87C, 9608},+    {0xF87D, 0xF87E, 21613},+    {0xF880, 0xF880, 21615},+    {0xF881, 0xF881, 9604},+    {0xF882, 0xF883, 21616},+    {0xF884, 0xF884, 8701},+    {0xF885, 0xF885, 21618},+    {0xF886, 0xF886, 8687},+    {0xF887, 0xF88C, 21619},+    {0xF88D, 0xF88D, 9610},+    {0xF88E, 0xF88E, 9612},+    {0xF88F, 0xF898, 21625},+    {0xF899, 0xF899, 8007},+    {0xF89A, 0xF89C, 21635},+    {0xF89D, 0xF89D, 7965},+    {0xF89E, 0xF89F, 21638},+    {0xF8A0, 0xF8A0, 9613},+    {0xF940, 0xF94D, 21640},+    {0xF94E, 0xF94E, 8144},+    {0xF94F, 0xF94F, 9618},+    {0xF950, 0xF950, 9615},+    {0xF951, 0xF958, 21654},+    {0xF959, 0xF959, 9620},+    {0xF95A, 0xF95A, 7904},+    {0xF95B, 0xF95C, 21662},+    {0xF95D, 0xF95D, 9617},+    {0xF95E, 0xF95E, 9621},+    {0xF95F, 0xF966, 21664},+    {0xF967, 0xF967, 9623},+    {0xF968, 0xF968, 21672},+    {0xF969, 0xF969, 8374},+    {0xF96A, 0xF96B, 21673},+    {0xF96C, 0xF96C, 9624},+    {0xF96D, 0xF96E, 21675},+    {0xF96F, 0xF96F, 8438},+    {0xF970, 0xF97E, 21677},+    {0xF980, 0xF984, 21692},+    {0xF985, 0xF985, 9605},+    {0xF986, 0xF986, 21697},+    {0xF987, 0xF987, 9625},+    {0xF988, 0xF990, 21698},+    {0xF991, 0xF991, 9622},+    {0xF992, 0xF995, 21707},+    {0xF996, 0xF996, 9626},+    {0xF997, 0xF997, 21711},+    {0xF998, 0xF998, 9627},+    {0xF999, 0xF9A0, 21712},+    {0xFA40, 0xFA41, 21720},+    {0xFA42, 0xFA42, 9629},+    {0xFA43, 0xFA45, 21722},+    {0xFA46, 0xFA46, 9630},+    {0xFA47, 0xFA4B, 21725},+    {0xFA4C, 0xFA4C, 9036},+    {0xFA4D, 0xFA50, 21730},+    {0xFA51, 0xFA51, 8004},+    {0xFA52, 0xFA57, 21734},+    {0xFA58, 0xFA58, 9824},+    {0xFA59, 0xFA59, 9632},+    {0xFA5A, 0xFA5C, 21740},+    {0xFA5D, 0xFA5D, 9628},+    {0xFA5E, 0xFA5E, 21743},+    {0xFA5F, 0xFA5F, 9631},+    {0xFA60, 0xFA60, 21744},+    {0xFA61, 0xFA61, 8044},+    {0xFA62, 0xFA6F, 21745},+    {0xFA70, 0xFA70, 9634},+    {0xFA71, 0xFA73, 21759},+    {0xFA74, 0xFA74, 8366},+    {0xFA75, 0xFA75, 21762},+    {0xFA76, 0xFA76, 9611},+    {0xFA77, 0xFA77, 9635},+    {0xFA78, 0xFA7E, 21763},+    {0xFA80, 0xFA82, 21770},+    {0xFA83, 0xFA83, 9609},+    {0xFA84, 0xFA84, 9637},+    {0xFA85, 0xFA8C, 21773},+    {0xFA8D, 0xFA8D, 9636},+    {0xFA8E, 0xFA8F, 21781},+    {0xFA90, 0xFA90, 9638},+    {0xFA91, 0xFA91, 9619},+    {0xFA92, 0xFA95, 21783},+    {0xFA96, 0xFA96, 9639},+    {0xFA97, 0xFA97, 8738},+    {0xFA98, 0xFA98, 9641},+    {0xFA99, 0xFAA0, 21787},+    {0xFB40, 0xFB48, 21795},+    {0xFB49, 0xFB49, 9640},+    {0xFB4A, 0xFB51, 21804},+    {0xFB52, 0xFB52, 9606},+    {0xFB53, 0xFB56, 21812},+    {0xFB57, 0xFB57, 9633},+    {0xFB58, 0xFB58, 9642},+    {0xFB59, 0xFB59, 21816},+    {0xFB5A, 0xFB5A, 9616},+    {0xFB5B, 0xFB5B, 9614},+    {0xFB5C, 0xFB74, 21817},+    {0xFB75, 0xFB75, 9864},+    {0xFB76, 0xFB78, 21842},+    {0xFB79, 0xFB79, 9886},+    {0xFB7A, 0xFB7A, 9723},+    {0xFB7B, 0xFB7B, 21845},+    {0xFB7C, 0xFB7C, 8076},+    {0xFB7D, 0xFB7D, 8692},+    {0xFB7E, 0xFB7E, 21846},+    {0xFB80, 0xFB8F, 21847},+    {0xFB90, 0xFB90, 8207},+    {0xFB91, 0xFB9B, 21863},+    {0xFB9C, 0xFB9C, 8305},+    {0xFB9D, 0xFB9E, 21874},+    {0xFB9F, 0xFB9F, 9719},+    {0xFBA0, 0xFBA0, 21876},+    {0xFC40, 0xFC43, 21877},+    {0xFC44, 0xFC44, 9878},+    {0xFC45, 0xFC48, 21881},+    {0xFC49, 0xFC49, 9871},+    {0xFC4A, 0xFC59, 21885},+    {0xFC5A, 0xFC5A, 8922},+    {0xFC5B, 0xFC62, 21901},+    {0xFC63, 0xFC63, 7873},+    {0xFC64, 0xFC67, 21909},+    {0xFC68, 0xFC68, 7859},+    {0xFC69, 0xFC6E, 21913},+    {0xFC6F, 0xFC6F, 9834},+    {0xFC70, 0xFC70, 21919},+    {0xFC71, 0xFC71, 9866},+    {0xFC72, 0xFC73, 21920},+    {0xFC74, 0xFC74, 9833},+    {0xFC75, 0xFC76, 21922},+    {0xFC77, 0xFC78, 9752},+    {0xFC79, 0xFC7E, 21924},+    {0xFC80, 0xFC82, 21930},+    {0xFC83, 0xFC83, 9754},+    {0xFC84, 0xFC89, 21933},+    {0xFC8A, 0xFC8A, 9843},+    {0xFC8B, 0xFCA0, 21939},+    {0xFD40, 0xFD51, 21961},+    {0xFD52, 0xFD52, 8390},+    {0xFD53, 0xFD53, 8811},+    {0xFD54, 0xFD56, 21979},+    {0xFD57, 0xFD57, 9427},+    {0xFD58, 0xFD58, 7814},+    {0xFD59, 0xFD59, 21982},+    {0xFD5A, 0xFD5A, 9743},+    {0xFD5B, 0xFD5E, 21983},+    {0xFD5F, 0xFD5F, 9745},+    {0xFD60, 0xFD61, 21987},+    {0xFD62, 0xFD62, 9747},+    {0xFD63, 0xFD64, 21989},+    {0xFD65, 0xFD65, 9744},+    {0xFD66, 0xFD66, 9746},+    {0xFD67, 0xFD67, 8240},+    {0xFD68, 0xFD68, 21991},+    {0xFD69, 0xFD69, 9841},+    {0xFD6A, 0xFD6B, 21992},+    {0xFD6C, 0xFD6C, 9748},+    {0xFD6D, 0xFD6F, 21994},+    {0xFD70, 0xFD70, 9750},+    {0xFD71, 0xFD71, 21997},+    {0xFD72, 0xFD72, 9749},+    {0xFD73, 0xFD77, 21998},+    {0xFD78, 0xFD78, 8434},+    {0xFD79, 0xFD7C, 22003},+    {0xFD7D, 0xFD7D, 9751},+    {0xFD7E, 0xFD7E, 22007},+    {0xFD80, 0xFD87, 22008},+    {0xFD88, 0xFD88, 8247},+    {0xFD89, 0xFD8A, 22016},+    {0xFD8B, 0xFD8B, 8371},+    {0xFD8C, 0xFD8E, 22018},+    {0xFD8F, 0xFD8F, 7970},+    {0xFD90, 0xFD90, 9453},+    {0xFD91, 0xFD93, 22021},+    {0xFD94, 0xFD94, 7988},+    {0xFD95, 0xFD9C, 22024},+    {0xFD9D, 0xFD9D, 2562},+    {0xFD9E, 0xFD9E, 16595},+    {0xFD9F, 0xFD9F, 8204},+    {0xFDA0, 0xFDA0, 20611},+    {0xFE40, 0xFE40, 4697},+    {0xFE41, 0xFE7E, 22032},+    {0xFE80, 0xFEA0, 22094},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_GBK_EUC_V[] = {+    {0xA1A2, 0xA1A2, 575},+    {0xA1A3, 0xA1A3, 574},+    {0xA1AA, 0xA1AA, 598},+    {0xA1AB, 0xA1AC, 7704},+    {0xA1AD, 0xA1AD, 599},+    {0xA1B2, 0xA1BF, 582},+    {0xA1FE, 0xA1FE, 7706},+    {0xA3A1, 0xA3A1, 578},+    {0xA3A8, 0xA3A9, 580},+    {0xA3AC, 0xA3AC, 573},+    {0xA3AE, 0xA3AE, 7707},+    {0xA3BA, 0xA3BB, 576},+    {0xA3BD, 0xA3BD, 7708},+    {0xA3BF, 0xA3BF, 579},+    {0xA3DB, 0xA3DB, 7709},+    {0xA3DD, 0xA3DD, 7710},+    {0xA3DF, 0xA3DF, 600},+    {0xA3FB, 0xA3FB, 596},+    {0xA3FD, 0xA3FD, 597},+    {0xA3FE, 0xA3FE, 7711},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_GB_EUC_H[] = {+    {0x20, 0x20, 7716},+    {0x21, 0x7E, 814},+    {0xA1A1, 0xA1FE, 96},+    {0xA2B1, 0xA2E2, 190},+    {0xA2E5, 0xA2EE, 240},+    {0xA2F1, 0xA2FC, 250},+    {0xA3A1, 0xA3FE, 262},+    {0xA4A1, 0xA4F3, 356},+    {0xA5A1, 0xA5F6, 439},+    {0xA6A1, 0xA6B8, 525},+    {0xA6C1, 0xA6F5, 549},+    {0xA7A1, 0xA7C1, 602},+    {0xA7D1, 0xA7F1, 635},+    {0xA8A1, 0xA8C0, 668},+    {0xA8C5, 0xA8EA, 700},+    {0xA9A4, 0xA9EF, 738},+    {0xAAA1, 0xAAFE, 814},+    {0xABA1, 0xABC0, 908},+    {0xB0A1, 0xB0FE, 940},+    {0xB1A1, 0xB1FE, 1034},+    {0xB2A1, 0xB2FE, 1128},+    {0xB3A1, 0xB3FE, 1222},+    {0xB4A1, 0xB4FE, 1316},+    {0xB5A1, 0xB5FE, 1410},+    {0xB6A1, 0xB6FE, 1504},+    {0xB7A1, 0xB7FE, 1598},+    {0xB8A1, 0xB8FE, 1692},+    {0xB9A1, 0xB9FE, 1786},+    {0xBAA1, 0xBAFE, 1880},+    {0xBBA1, 0xBBFE, 1974},+    {0xBCA1, 0xBCFE, 2068},+    {0xBDA1, 0xBDFE, 2162},+    {0xBEA1, 0xBEFE, 2256},+    {0xBFA1, 0xBFFE, 2350},+    {0xC0A1, 0xC0FE, 2444},+    {0xC1A1, 0xC1FE, 2538},+    {0xC2A1, 0xC2FE, 2632},+    {0xC3A1, 0xC3FE, 2726},+    {0xC4A1, 0xC4FE, 2820},+    {0xC5A1, 0xC5FE, 2914},+    {0xC6A1, 0xC6FE, 3008},+    {0xC7A1, 0xC7FE, 3102},+    {0xC8A1, 0xC8FE, 3196},+    {0xC9A1, 0xC9FE, 3290},+    {0xCAA1, 0xCAFE, 3384},+    {0xCBA1, 0xCBFE, 3478},+    {0xCCA1, 0xCCFE, 3572},+    {0xCDA1, 0xCDFE, 3666},+    {0xCEA1, 0xCEFE, 3760},+    {0xCFA1, 0xCFFE, 3854},+    {0xD0A1, 0xD0FE, 3948},+    {0xD1A1, 0xD1FE, 4042},+    {0xD2A1, 0xD2FE, 4136},+    {0xD3A1, 0xD3FE, 4230},+    {0xD4A1, 0xD4FE, 4324},+    {0xD5A1, 0xD5FE, 4418},+    {0xD6A1, 0xD6FE, 4512},+    {0xD7A1, 0xD7F9, 4606},+    {0xD8A1, 0xD8FE, 4695},+    {0xD9A1, 0xD9FE, 4789},+    {0xDAA1, 0xDAFE, 4883},+    {0xDBA1, 0xDBFE, 4977},+    {0xDCA1, 0xDCFE, 5071},+    {0xDDA1, 0xDDFE, 5165},+    {0xDEA1, 0xDEFE, 5259},+    {0xDFA1, 0xDFFE, 5353},+    {0xE0A1, 0xE0FE, 5447},+    {0xE1A1, 0xE1FE, 5541},+    {0xE2A1, 0xE2FE, 5635},+    {0xE3A1, 0xE3FE, 5729},+    {0xE4A1, 0xE4FE, 5823},+    {0xE5A1, 0xE5FE, 5917},+    {0xE6A1, 0xE6FE, 6011},+    {0xE7A1, 0xE7FE, 6105},+    {0xE8A1, 0xE8FE, 6199},+    {0xE9A1, 0xE9FE, 6293},+    {0xEAA1, 0xEAFE, 6387},+    {0xEBA1, 0xEBFE, 6481},+    {0xECA1, 0xECFE, 6575},+    {0xEDA1, 0xEDFE, 6669},+    {0xEEA1, 0xEEFE, 6763},+    {0xEFA1, 0xEFFE, 6857},+    {0xF0A1, 0xF0FE, 6951},+    {0xF1A1, 0xF1FE, 7045},+    {0xF2A1, 0xF2FE, 7139},+    {0xF3A1, 0xF3FE, 7233},+    {0xF4A1, 0xF4FE, 7327},+    {0xF5A1, 0xF5FE, 7421},+    {0xF6A1, 0xF6FE, 7515},+    {0xF7A1, 0xF7FE, 7609},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_GB_EUC_V[] = {+    {0xA1A2, 0xA1A2, 575},+    {0xA1A3, 0xA1A3, 574},+    {0xA1AA, 0xA1AA, 598},+    {0xA1AB, 0xA1AC, 7704},+    {0xA1AD, 0xA1AD, 599},+    {0xA1B2, 0xA1BF, 582},+    {0xA1FE, 0xA1FE, 7706},+    {0xA3A1, 0xA3A1, 578},+    {0xA3A8, 0xA3A9, 580},+    {0xA3AC, 0xA3AC, 573},+    {0xA3AE, 0xA3AE, 7707},+    {0xA3BA, 0xA3BB, 576},+    {0xA3BD, 0xA3BD, 7708},+    {0xA3BF, 0xA3BF, 579},+    {0xA3DB, 0xA3DB, 7709},+    {0xA3DD, 0xA3DD, 7710},+    {0xA3DF, 0xA3DF, 600},+    {0xA3FB, 0xA3FB, 596},+    {0xA3FD, 0xA3FD, 597},+    {0xA3FE, 0xA3FE, 7711},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec GBK_EUC_NOTDEF_RANGE = {0x00, 0x1F, 7716};++static const HPDF_CidRange_Rec GB_EUC_NOTDEF_RANGE = {0x00, 0x1F, 7716};+++static HPDF_BOOL+GBK_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                     HPDF_BYTE       b);+++static HPDF_BOOL+GBK_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                      HPDF_BYTE       b);+++static HPDF_STATUS+GBK_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+GBK_EUC_H_Init  (HPDF_Encoder    encoder);+++static HPDF_STATUS+GBK_EUC_V_Init  (HPDF_Encoder    encoder);+++static HPDF_BOOL+GB_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                    HPDF_BYTE       b);+++static HPDF_BOOL+GB_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                     HPDF_BYTE       b);+++static HPDF_STATUS+GB_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+GB_EUC_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+GB_EUC_V_Init  (HPDF_Encoder  encoder);+++/*--------------------------------------------------------------------------*/++static HPDF_BOOL+GBK_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b)+{+    return ((b >= 0x81 && b <= 0xfe));+}+++static HPDF_BOOL+GBK_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0x40 && b <= 0xfe);+}+++static HPDF_STATUS+GBK_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0x8140, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+GBK_EUC_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GBK_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = GBK_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, GBK_EUC_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP936_UNICODE_ARRAY);++    attr->is_lead_byte_fn = GBK_EUC_IsLeadByte;+    attr->is_trial_byte_fn = GBK_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "GB1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 2;+    attr->uid_offset = -1;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25377;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+GBK_EUC_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GBK_EUC_H)) !=+            HPDF_OK)+        return ret;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GBK_EUC_V)) !=+            HPDF_OK)+        return ret;++    if ((ret = GBK_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, GBK_EUC_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP936_UNICODE_ARRAY);++    attr->is_lead_byte_fn = GBK_EUC_IsLeadByte;+    attr->is_trial_byte_fn = GBK_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "GB1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 2;+    attr->uid_offset = -1;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25378;++    attr->writing_mode = HPDF_WMODE_VERTICAL;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_BOOL+GB_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0xa1 && b <= 0xfe);+}+++static HPDF_BOOL+GB_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                    HPDF_BYTE       b)+{+    return (b >= 0xa1 && b <= 0xfe);+}+++static HPDF_STATUS+GB_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0xA1A1, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+GB_EUC_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GB_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = GB_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, GB_EUC_NOTDEF_RANGE) !=+                HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, EUC_CN_UNICODE_ARRAY);++    attr->is_lead_byte_fn = GB_EUC_IsLeadByte;+    attr->is_trial_byte_fn = GB_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "GB1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->uid_offset = 100;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25360;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+GB_EUC_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GB_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_GB_EUC_V) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = GB_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, GB_EUC_NOTDEF_RANGE) !=+                HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, EUC_CN_UNICODE_ARRAY);++    attr->is_lead_byte_fn = GB_EUC_IsLeadByte;+    attr->is_trial_byte_fn = GB_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "GB1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->writing_mode = HPDF_WMODE_VERTICAL;+    attr->uid_offset = 310;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25361;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++/*--------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNSEncodings   (HPDF_Doc   pdf)+{+    HPDF_Encoder encoder;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* Microsoft Code Page 936 (lfCharSet 0x86) GBK encoding */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "GBK-EUC-H",+                GBK_EUC_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* Microsoft Code Page 936 (lfCharSet 0x86) GBK encoding+     * (vertical writing) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "GBK-EUC-V",+                GBK_EUC_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* EUC-CN encoding */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "GB-EUC-H",+                GB_EUC_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* EUC-CN encoding (vertical writing) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "GB-EUC-V",+                GB_EUC_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;+++    return HPDF_OK;+}+
+ haru/hpdf_encoder_cnt.c view
@@ -0,0 +1,15307 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encoder_cnt.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encoder.h"+#include "hpdf.h"++static const HPDF_UnicodeMap_Rec CP950_UNICODE_ARRAY[] = {+    {0x0000, 0x0000},+    {0x0001, 0x0001},+    {0x0002, 0x0002},+    {0x0003, 0x0003},+    {0x0004, 0x0004},+    {0x0005, 0x0005},+    {0x0006, 0x0006},+    {0x0007, 0x0007},+    {0x0008, 0x0008},+    {0x0009, 0x0009},+    {0x000A, 0x000A},+    {0x000B, 0x000B},+    {0x000C, 0x000C},+    {0x000D, 0x000D},+    {0x000E, 0x000E},+    {0x000F, 0x000F},+    {0x0010, 0x0010},+    {0x0011, 0x0011},+    {0x0012, 0x0012},+    {0x0013, 0x0013},+    {0x0014, 0x0014},+    {0x0015, 0x0015},+    {0x0016, 0x0016},+    {0x0017, 0x0017},+    {0x0018, 0x0018},+    {0x0019, 0x0019},+    {0x001A, 0x001A},+    {0x001B, 0x001B},+    {0x001C, 0x001C},+    {0x001D, 0x001D},+    {0x001E, 0x001E},+    {0x001F, 0x001F},+    {0x0020, 0x0020},+    {0x0021, 0x0021},+    {0x0022, 0x0022},+    {0x0023, 0x0023},+    {0x0024, 0x0024},+    {0x0025, 0x0025},+    {0x0026, 0x0026},+    {0x0027, 0x0027},+    {0x0028, 0x0028},+    {0x0029, 0x0029},+    {0x002A, 0x002A},+    {0x002B, 0x002B},+    {0x002C, 0x002C},+    {0x002D, 0x002D},+    {0x002E, 0x002E},+    {0x002F, 0x002F},+    {0x0030, 0x0030},+    {0x0031, 0x0031},+    {0x0032, 0x0032},+    {0x0033, 0x0033},+    {0x0034, 0x0034},+    {0x0035, 0x0035},+    {0x0036, 0x0036},+    {0x0037, 0x0037},+    {0x0038, 0x0038},+    {0x0039, 0x0039},+    {0x003A, 0x003A},+    {0x003B, 0x003B},+    {0x003C, 0x003C},+    {0x003D, 0x003D},+    {0x003E, 0x003E},+    {0x003F, 0x003F},+    {0x0040, 0x0040},+    {0x0041, 0x0041},+    {0x0042, 0x0042},+    {0x0043, 0x0043},+    {0x0044, 0x0044},+    {0x0045, 0x0045},+    {0x0046, 0x0046},+    {0x0047, 0x0047},+    {0x0048, 0x0048},+    {0x0049, 0x0049},+    {0x004A, 0x004A},+    {0x004B, 0x004B},+    {0x004C, 0x004C},+    {0x004D, 0x004D},+    {0x004E, 0x004E},+    {0x004F, 0x004F},+    {0x0050, 0x0050},+    {0x0051, 0x0051},+    {0x0052, 0x0052},+    {0x0053, 0x0053},+    {0x0054, 0x0054},+    {0x0055, 0x0055},+    {0x0056, 0x0056},+    {0x0057, 0x0057},+    {0x0058, 0x0058},+    {0x0059, 0x0059},+    {0x005A, 0x005A},+    {0x005B, 0x005B},+    {0x005C, 0x005C},+    {0x005D, 0x005D},+    {0x005E, 0x005E},+    {0x005F, 0x005F},+    {0x0060, 0x0060},+    {0x0061, 0x0061},+    {0x0062, 0x0062},+    {0x0063, 0x0063},+    {0x0064, 0x0064},+    {0x0065, 0x0065},+    {0x0066, 0x0066},+    {0x0067, 0x0067},+    {0x0068, 0x0068},+    {0x0069, 0x0069},+    {0x006A, 0x006A},+    {0x006B, 0x006B},+    {0x006C, 0x006C},+    {0x006D, 0x006D},+    {0x006E, 0x006E},+    {0x006F, 0x006F},+    {0x0070, 0x0070},+    {0x0071, 0x0071},+    {0x0072, 0x0072},+    {0x0073, 0x0073},+    {0x0074, 0x0074},+    {0x0075, 0x0075},+    {0x0076, 0x0076},+    {0x0077, 0x0077},+    {0x0078, 0x0078},+    {0x0079, 0x0079},+    {0x007A, 0x007A},+    {0x007B, 0x007B},+    {0x007C, 0x007C},+    {0x007D, 0x007D},+    {0x007E, 0x007E},+    {0x007F, 0x007F},+    {0x0080, 0x0080},+    {0x00FF, 0xF8F8},+    {0xA140, 0x3000},+    {0xA141, 0xFF0C},+    {0xA142, 0x3001},+    {0xA143, 0x3002},+    {0xA144, 0xFF0E},+    {0xA145, 0x2027},+    {0xA146, 0xFF1B},+    {0xA147, 0xFF1A},+    {0xA148, 0xFF1F},+    {0xA149, 0xFF01},+    {0xA14A, 0xFE30},+    {0xA14B, 0x2026},+    {0xA14C, 0x2025},+    {0xA14D, 0xFE50},+    {0xA14E, 0xFE51},+    {0xA14F, 0xFE52},+    {0xA150, 0x00B7},+    {0xA151, 0xFE54},+    {0xA152, 0xFE55},+    {0xA153, 0xFE56},+    {0xA154, 0xFE57},+    {0xA155, 0xFF5C},+    {0xA156, 0x2013},+    {0xA157, 0xFE31},+    {0xA158, 0x2014},+    {0xA159, 0xFE33},+    {0xA15A, 0x2574},+    {0xA15B, 0xFE34},+    {0xA15C, 0xFE4F},+    {0xA15D, 0xFF08},+    {0xA15E, 0xFF09},+    {0xA15F, 0xFE35},+    {0xA160, 0xFE36},+    {0xA161, 0xFF5B},+    {0xA162, 0xFF5D},+    {0xA163, 0xFE37},+    {0xA164, 0xFE38},+    {0xA165, 0x3014},+    {0xA166, 0x3015},+    {0xA167, 0xFE39},+    {0xA168, 0xFE3A},+    {0xA169, 0x3010},+    {0xA16A, 0x3011},+    {0xA16B, 0xFE3B},+    {0xA16C, 0xFE3C},+    {0xA16D, 0x300A},+    {0xA16E, 0x300B},+    {0xA16F, 0xFE3D},+    {0xA170, 0xFE3E},+    {0xA171, 0x3008},+    {0xA172, 0x3009},+    {0xA173, 0xFE3F},+    {0xA174, 0xFE40},+    {0xA175, 0x300C},+    {0xA176, 0x300D},+    {0xA177, 0xFE41},+    {0xA178, 0xFE42},+    {0xA179, 0x300E},+    {0xA17A, 0x300F},+    {0xA17B, 0xFE43},+    {0xA17C, 0xFE44},+    {0xA17D, 0xFE59},+    {0xA17E, 0xFE5A},+    {0xA1A1, 0xFE5B},+    {0xA1A2, 0xFE5C},+    {0xA1A3, 0xFE5D},+    {0xA1A4, 0xFE5E},+    {0xA1A5, 0x2018},+    {0xA1A6, 0x2019},+    {0xA1A7, 0x201C},+    {0xA1A8, 0x201D},+    {0xA1A9, 0x301D},+    {0xA1AA, 0x301E},+    {0xA1AB, 0x2035},+    {0xA1AC, 0x2032},+    {0xA1AD, 0xFF03},+    {0xA1AE, 0xFF06},+    {0xA1AF, 0xFF0A},+    {0xA1B0, 0x203B},+    {0xA1B1, 0x00A7},+    {0xA1B2, 0x3003},+    {0xA1B3, 0x25CB},+    {0xA1B4, 0x25CF},+    {0xA1B5, 0x25B3},+    {0xA1B6, 0x25B2},+    {0xA1B7, 0x25CE},+    {0xA1B8, 0x2606},+    {0xA1B9, 0x2605},+    {0xA1BA, 0x25C7},+    {0xA1BB, 0x25C6},+    {0xA1BC, 0x25A1},+    {0xA1BD, 0x25A0},+    {0xA1BE, 0x25BD},+    {0xA1BF, 0x25BC},+    {0xA1C0, 0x32A3},+    {0xA1C1, 0x2105},+    {0xA1C2, 0x00AF},+    {0xA1C3, 0xFFE3},+    {0xA1C4, 0xFF3F},+    {0xA1C5, 0x02CD},+    {0xA1C6, 0xFE49},+    {0xA1C7, 0xFE4A},+    {0xA1C8, 0xFE4D},+    {0xA1C9, 0xFE4E},+    {0xA1CA, 0xFE4B},+    {0xA1CB, 0xFE4C},+    {0xA1CC, 0xFE5F},+    {0xA1CD, 0xFE60},+    {0xA1CE, 0xFE61},+    {0xA1CF, 0xFF0B},+    {0xA1D0, 0xFF0D},+    {0xA1D1, 0x00D7},+    {0xA1D2, 0x00F7},+    {0xA1D3, 0x00B1},+    {0xA1D4, 0x221A},+    {0xA1D5, 0xFF1C},+    {0xA1D6, 0xFF1E},+    {0xA1D7, 0xFF1D},+    {0xA1D8, 0x2266},+    {0xA1D9, 0x2267},+    {0xA1DA, 0x2260},+    {0xA1DB, 0x221E},+    {0xA1DC, 0x2252},+    {0xA1DD, 0x2261},+    {0xA1DE, 0xFE62},+    {0xA1DF, 0xFE63},+    {0xA1E0, 0xFE64},+    {0xA1E1, 0xFE65},+    {0xA1E2, 0xFE66},+    {0xA1E3, 0x223C},+    {0xA1E4, 0x2229},+    {0xA1E5, 0x222A},+    {0xA1E6, 0x22A5},+    {0xA1E7, 0x2220},+    {0xA1E8, 0x221F},+    {0xA1E9, 0x22BF},+    {0xA1EA, 0x33D2},+    {0xA1EB, 0x33D1},+    {0xA1EC, 0x222B},+    {0xA1ED, 0x222E},+    {0xA1EE, 0x2235},+    {0xA1EF, 0x2234},+    {0xA1F0, 0x2640},+    {0xA1F1, 0x2642},+    {0xA1F2, 0x2295},+    {0xA1F3, 0x2299},+    {0xA1F4, 0x2191},+    {0xA1F5, 0x2193},+    {0xA1F6, 0x2190},+    {0xA1F7, 0x2192},+    {0xA1F8, 0x2196},+    {0xA1F9, 0x2197},+    {0xA1FA, 0x2199},+    {0xA1FB, 0x2198},+    {0xA1FC, 0x2225},+    {0xA1FD, 0x2223},+    {0xA1FE, 0xFF0F},+    {0xA240, 0xFF3C},+    {0xA241, 0x2215},+    {0xA242, 0xFE68},+    {0xA243, 0xFF04},+    {0xA244, 0xFFE5},+    {0xA245, 0x3012},+    {0xA246, 0xFFE0},+    {0xA247, 0xFFE1},+    {0xA248, 0xFF05},+    {0xA249, 0xFF20},+    {0xA24A, 0x2103},+    {0xA24B, 0x2109},+    {0xA24C, 0xFE69},+    {0xA24D, 0xFE6A},+    {0xA24E, 0xFE6B},+    {0xA24F, 0x33D5},+    {0xA250, 0x339C},+    {0xA251, 0x339D},+    {0xA252, 0x339E},+    {0xA253, 0x33CE},+    {0xA254, 0x33A1},+    {0xA255, 0x338E},+    {0xA256, 0x338F},+    {0xA257, 0x33C4},+    {0xA258, 0x00B0},+    {0xA259, 0x5159},+    {0xA25A, 0x515B},+    {0xA25B, 0x515E},+    {0xA25C, 0x515D},+    {0xA25D, 0x5161},+    {0xA25E, 0x5163},+    {0xA25F, 0x55E7},+    {0xA260, 0x74E9},+    {0xA261, 0x7CCE},+    {0xA262, 0x2581},+    {0xA263, 0x2582},+    {0xA264, 0x2583},+    {0xA265, 0x2584},+    {0xA266, 0x2585},+    {0xA267, 0x2586},+    {0xA268, 0x2587},+    {0xA269, 0x2588},+    {0xA26A, 0x258F},+    {0xA26B, 0x258E},+    {0xA26C, 0x258D},+    {0xA26D, 0x258C},+    {0xA26E, 0x258B},+    {0xA26F, 0x258A},+    {0xA270, 0x2589},+    {0xA271, 0x253C},+    {0xA272, 0x2534},+    {0xA273, 0x252C},+    {0xA274, 0x2524},+    {0xA275, 0x251C},+    {0xA276, 0x2594},+    {0xA277, 0x2500},+    {0xA278, 0x2502},+    {0xA279, 0x2595},+    {0xA27A, 0x250C},+    {0xA27B, 0x2510},+    {0xA27C, 0x2514},+    {0xA27D, 0x2518},+    {0xA27E, 0x256D},+    {0xA2A1, 0x256E},+    {0xA2A2, 0x2570},+    {0xA2A3, 0x256F},+    {0xA2A4, 0x2550},+    {0xA2A5, 0x255E},+    {0xA2A6, 0x256A},+    {0xA2A7, 0x2561},+    {0xA2A8, 0x25E2},+    {0xA2A9, 0x25E3},+    {0xA2AA, 0x25E5},+    {0xA2AB, 0x25E4},+    {0xA2AC, 0x2571},+    {0xA2AD, 0x2572},+    {0xA2AE, 0x2573},+    {0xA2AF, 0xFF10},+    {0xA2B0, 0xFF11},+    {0xA2B1, 0xFF12},+    {0xA2B2, 0xFF13},+    {0xA2B3, 0xFF14},+    {0xA2B4, 0xFF15},+    {0xA2B5, 0xFF16},+    {0xA2B6, 0xFF17},+    {0xA2B7, 0xFF18},+    {0xA2B8, 0xFF19},+    {0xA2B9, 0x2160},+    {0xA2BA, 0x2161},+    {0xA2BB, 0x2162},+    {0xA2BC, 0x2163},+    {0xA2BD, 0x2164},+    {0xA2BE, 0x2165},+    {0xA2BF, 0x2166},+    {0xA2C0, 0x2167},+    {0xA2C1, 0x2168},+    {0xA2C2, 0x2169},+    {0xA2C3, 0x3021},+    {0xA2C4, 0x3022},+    {0xA2C5, 0x3023},+    {0xA2C6, 0x3024},+    {0xA2C7, 0x3025},+    {0xA2C8, 0x3026},+    {0xA2C9, 0x3027},+    {0xA2CA, 0x3028},+    {0xA2CB, 0x3029},+    {0xA2CC, 0x5341},+    {0xA2CD, 0x5344},+    {0xA2CE, 0x5345},+    {0xA2CF, 0xFF21},+    {0xA2D0, 0xFF22},+    {0xA2D1, 0xFF23},+    {0xA2D2, 0xFF24},+    {0xA2D3, 0xFF25},+    {0xA2D4, 0xFF26},+    {0xA2D5, 0xFF27},+    {0xA2D6, 0xFF28},+    {0xA2D7, 0xFF29},+    {0xA2D8, 0xFF2A},+    {0xA2D9, 0xFF2B},+    {0xA2DA, 0xFF2C},+    {0xA2DB, 0xFF2D},+    {0xA2DC, 0xFF2E},+    {0xA2DD, 0xFF2F},+    {0xA2DE, 0xFF30},+    {0xA2DF, 0xFF31},+    {0xA2E0, 0xFF32},+    {0xA2E1, 0xFF33},+    {0xA2E2, 0xFF34},+    {0xA2E3, 0xFF35},+    {0xA2E4, 0xFF36},+    {0xA2E5, 0xFF37},+    {0xA2E6, 0xFF38},+    {0xA2E7, 0xFF39},+    {0xA2E8, 0xFF3A},+    {0xA2E9, 0xFF41},+    {0xA2EA, 0xFF42},+    {0xA2EB, 0xFF43},+    {0xA2EC, 0xFF44},+    {0xA2ED, 0xFF45},+    {0xA2EE, 0xFF46},+    {0xA2EF, 0xFF47},+    {0xA2F0, 0xFF48},+    {0xA2F1, 0xFF49},+    {0xA2F2, 0xFF4A},+    {0xA2F3, 0xFF4B},+    {0xA2F4, 0xFF4C},+    {0xA2F5, 0xFF4D},+    {0xA2F6, 0xFF4E},+    {0xA2F7, 0xFF4F},+    {0xA2F8, 0xFF50},+    {0xA2F9, 0xFF51},+    {0xA2FA, 0xFF52},+    {0xA2FB, 0xFF53},+    {0xA2FC, 0xFF54},+    {0xA2FD, 0xFF55},+    {0xA2FE, 0xFF56},+    {0xA340, 0xFF57},+    {0xA341, 0xFF58},+    {0xA342, 0xFF59},+    {0xA343, 0xFF5A},+    {0xA344, 0x0391},+    {0xA345, 0x0392},+    {0xA346, 0x0393},+    {0xA347, 0x0394},+    {0xA348, 0x0395},+    {0xA349, 0x0396},+    {0xA34A, 0x0397},+    {0xA34B, 0x0398},+    {0xA34C, 0x0399},+    {0xA34D, 0x039A},+    {0xA34E, 0x039B},+    {0xA34F, 0x039C},+    {0xA350, 0x039D},+    {0xA351, 0x039E},+    {0xA352, 0x039F},+    {0xA353, 0x03A0},+    {0xA354, 0x03A1},+    {0xA355, 0x03A3},+    {0xA356, 0x03A4},+    {0xA357, 0x03A5},+    {0xA358, 0x03A6},+    {0xA359, 0x03A7},+    {0xA35A, 0x03A8},+    {0xA35B, 0x03A9},+    {0xA35C, 0x03B1},+    {0xA35D, 0x03B2},+    {0xA35E, 0x03B3},+    {0xA35F, 0x03B4},+    {0xA360, 0x03B5},+    {0xA361, 0x03B6},+    {0xA362, 0x03B7},+    {0xA363, 0x03B8},+    {0xA364, 0x03B9},+    {0xA365, 0x03BA},+    {0xA366, 0x03BB},+    {0xA367, 0x03BC},+    {0xA368, 0x03BD},+    {0xA369, 0x03BE},+    {0xA36A, 0x03BF},+    {0xA36B, 0x03C0},+    {0xA36C, 0x03C1},+    {0xA36D, 0x03C3},+    {0xA36E, 0x03C4},+    {0xA36F, 0x03C5},+    {0xA370, 0x03C6},+    {0xA371, 0x03C7},+    {0xA372, 0x03C8},+    {0xA373, 0x03C9},+    {0xA374, 0x3105},+    {0xA375, 0x3106},+    {0xA376, 0x3107},+    {0xA377, 0x3108},+    {0xA378, 0x3109},+    {0xA379, 0x310A},+    {0xA37A, 0x310B},+    {0xA37B, 0x310C},+    {0xA37C, 0x310D},+    {0xA37D, 0x310E},+    {0xA37E, 0x310F},+    {0xA3A1, 0x3110},+    {0xA3A2, 0x3111},+    {0xA3A3, 0x3112},+    {0xA3A4, 0x3113},+    {0xA3A5, 0x3114},+    {0xA3A6, 0x3115},+    {0xA3A7, 0x3116},+    {0xA3A8, 0x3117},+    {0xA3A9, 0x3118},+    {0xA3AA, 0x3119},+    {0xA3AB, 0x311A},+    {0xA3AC, 0x311B},+    {0xA3AD, 0x311C},+    {0xA3AE, 0x311D},+    {0xA3AF, 0x311E},+    {0xA3B0, 0x311F},+    {0xA3B1, 0x3120},+    {0xA3B2, 0x3121},+    {0xA3B3, 0x3122},+    {0xA3B4, 0x3123},+    {0xA3B5, 0x3124},+    {0xA3B6, 0x3125},+    {0xA3B7, 0x3126},+    {0xA3B8, 0x3127},+    {0xA3B9, 0x3128},+    {0xA3BA, 0x3129},+    {0xA3BB, 0x02D9},+    {0xA3BC, 0x02C9},+    {0xA3BD, 0x02CA},+    {0xA3BE, 0x02C7},+    {0xA3BF, 0x02CB},+    {0xA440, 0x4E00},+    {0xA441, 0x4E59},+    {0xA442, 0x4E01},+    {0xA443, 0x4E03},+    {0xA444, 0x4E43},+    {0xA445, 0x4E5D},+    {0xA446, 0x4E86},+    {0xA447, 0x4E8C},+    {0xA448, 0x4EBA},+    {0xA449, 0x513F},+    {0xA44A, 0x5165},+    {0xA44B, 0x516B},+    {0xA44C, 0x51E0},+    {0xA44D, 0x5200},+    {0xA44E, 0x5201},+    {0xA44F, 0x529B},+    {0xA450, 0x5315},+    {0xA451, 0x5341},+    {0xA452, 0x535C},+    {0xA453, 0x53C8},+    {0xA454, 0x4E09},+    {0xA455, 0x4E0B},+    {0xA456, 0x4E08},+    {0xA457, 0x4E0A},+    {0xA458, 0x4E2B},+    {0xA459, 0x4E38},+    {0xA45A, 0x51E1},+    {0xA45B, 0x4E45},+    {0xA45C, 0x4E48},+    {0xA45D, 0x4E5F},+    {0xA45E, 0x4E5E},+    {0xA45F, 0x4E8E},+    {0xA460, 0x4EA1},+    {0xA461, 0x5140},+    {0xA462, 0x5203},+    {0xA463, 0x52FA},+    {0xA464, 0x5343},+    {0xA465, 0x53C9},+    {0xA466, 0x53E3},+    {0xA467, 0x571F},+    {0xA468, 0x58EB},+    {0xA469, 0x5915},+    {0xA46A, 0x5927},+    {0xA46B, 0x5973},+    {0xA46C, 0x5B50},+    {0xA46D, 0x5B51},+    {0xA46E, 0x5B53},+    {0xA46F, 0x5BF8},+    {0xA470, 0x5C0F},+    {0xA471, 0x5C22},+    {0xA472, 0x5C38},+    {0xA473, 0x5C71},+    {0xA474, 0x5DDD},+    {0xA475, 0x5DE5},+    {0xA476, 0x5DF1},+    {0xA477, 0x5DF2},+    {0xA478, 0x5DF3},+    {0xA479, 0x5DFE},+    {0xA47A, 0x5E72},+    {0xA47B, 0x5EFE},+    {0xA47C, 0x5F0B},+    {0xA47D, 0x5F13},+    {0xA47E, 0x624D},+    {0xA4A1, 0x4E11},+    {0xA4A2, 0x4E10},+    {0xA4A3, 0x4E0D},+    {0xA4A4, 0x4E2D},+    {0xA4A5, 0x4E30},+    {0xA4A6, 0x4E39},+    {0xA4A7, 0x4E4B},+    {0xA4A8, 0x5C39},+    {0xA4A9, 0x4E88},+    {0xA4AA, 0x4E91},+    {0xA4AB, 0x4E95},+    {0xA4AC, 0x4E92},+    {0xA4AD, 0x4E94},+    {0xA4AE, 0x4EA2},+    {0xA4AF, 0x4EC1},+    {0xA4B0, 0x4EC0},+    {0xA4B1, 0x4EC3},+    {0xA4B2, 0x4EC6},+    {0xA4B3, 0x4EC7},+    {0xA4B4, 0x4ECD},+    {0xA4B5, 0x4ECA},+    {0xA4B6, 0x4ECB},+    {0xA4B7, 0x4EC4},+    {0xA4B8, 0x5143},+    {0xA4B9, 0x5141},+    {0xA4BA, 0x5167},+    {0xA4BB, 0x516D},+    {0xA4BC, 0x516E},+    {0xA4BD, 0x516C},+    {0xA4BE, 0x5197},+    {0xA4BF, 0x51F6},+    {0xA4C0, 0x5206},+    {0xA4C1, 0x5207},+    {0xA4C2, 0x5208},+    {0xA4C3, 0x52FB},+    {0xA4C4, 0x52FE},+    {0xA4C5, 0x52FF},+    {0xA4C6, 0x5316},+    {0xA4C7, 0x5339},+    {0xA4C8, 0x5348},+    {0xA4C9, 0x5347},+    {0xA4CA, 0x5345},+    {0xA4CB, 0x535E},+    {0xA4CC, 0x5384},+    {0xA4CD, 0x53CB},+    {0xA4CE, 0x53CA},+    {0xA4CF, 0x53CD},+    {0xA4D0, 0x58EC},+    {0xA4D1, 0x5929},+    {0xA4D2, 0x592B},+    {0xA4D3, 0x592A},+    {0xA4D4, 0x592D},+    {0xA4D5, 0x5B54},+    {0xA4D6, 0x5C11},+    {0xA4D7, 0x5C24},+    {0xA4D8, 0x5C3A},+    {0xA4D9, 0x5C6F},+    {0xA4DA, 0x5DF4},+    {0xA4DB, 0x5E7B},+    {0xA4DC, 0x5EFF},+    {0xA4DD, 0x5F14},+    {0xA4DE, 0x5F15},+    {0xA4DF, 0x5FC3},+    {0xA4E0, 0x6208},+    {0xA4E1, 0x6236},+    {0xA4E2, 0x624B},+    {0xA4E3, 0x624E},+    {0xA4E4, 0x652F},+    {0xA4E5, 0x6587},+    {0xA4E6, 0x6597},+    {0xA4E7, 0x65A4},+    {0xA4E8, 0x65B9},+    {0xA4E9, 0x65E5},+    {0xA4EA, 0x66F0},+    {0xA4EB, 0x6708},+    {0xA4EC, 0x6728},+    {0xA4ED, 0x6B20},+    {0xA4EE, 0x6B62},+    {0xA4EF, 0x6B79},+    {0xA4F0, 0x6BCB},+    {0xA4F1, 0x6BD4},+    {0xA4F2, 0x6BDB},+    {0xA4F3, 0x6C0F},+    {0xA4F4, 0x6C34},+    {0xA4F5, 0x706B},+    {0xA4F6, 0x722A},+    {0xA4F7, 0x7236},+    {0xA4F8, 0x723B},+    {0xA4F9, 0x7247},+    {0xA4FA, 0x7259},+    {0xA4FB, 0x725B},+    {0xA4FC, 0x72AC},+    {0xA4FD, 0x738B},+    {0xA4FE, 0x4E19},+    {0xA540, 0x4E16},+    {0xA541, 0x4E15},+    {0xA542, 0x4E14},+    {0xA543, 0x4E18},+    {0xA544, 0x4E3B},+    {0xA545, 0x4E4D},+    {0xA546, 0x4E4F},+    {0xA547, 0x4E4E},+    {0xA548, 0x4EE5},+    {0xA549, 0x4ED8},+    {0xA54A, 0x4ED4},+    {0xA54B, 0x4ED5},+    {0xA54C, 0x4ED6},+    {0xA54D, 0x4ED7},+    {0xA54E, 0x4EE3},+    {0xA54F, 0x4EE4},+    {0xA550, 0x4ED9},+    {0xA551, 0x4EDE},+    {0xA552, 0x5145},+    {0xA553, 0x5144},+    {0xA554, 0x5189},+    {0xA555, 0x518A},+    {0xA556, 0x51AC},+    {0xA557, 0x51F9},+    {0xA558, 0x51FA},+    {0xA559, 0x51F8},+    {0xA55A, 0x520A},+    {0xA55B, 0x52A0},+    {0xA55C, 0x529F},+    {0xA55D, 0x5305},+    {0xA55E, 0x5306},+    {0xA55F, 0x5317},+    {0xA560, 0x531D},+    {0xA561, 0x4EDF},+    {0xA562, 0x534A},+    {0xA563, 0x5349},+    {0xA564, 0x5361},+    {0xA565, 0x5360},+    {0xA566, 0x536F},+    {0xA567, 0x536E},+    {0xA568, 0x53BB},+    {0xA569, 0x53EF},+    {0xA56A, 0x53E4},+    {0xA56B, 0x53F3},+    {0xA56C, 0x53EC},+    {0xA56D, 0x53EE},+    {0xA56E, 0x53E9},+    {0xA56F, 0x53E8},+    {0xA570, 0x53FC},+    {0xA571, 0x53F8},+    {0xA572, 0x53F5},+    {0xA573, 0x53EB},+    {0xA574, 0x53E6},+    {0xA575, 0x53EA},+    {0xA576, 0x53F2},+    {0xA577, 0x53F1},+    {0xA578, 0x53F0},+    {0xA579, 0x53E5},+    {0xA57A, 0x53ED},+    {0xA57B, 0x53FB},+    {0xA57C, 0x56DB},+    {0xA57D, 0x56DA},+    {0xA57E, 0x5916},+    {0xA5A1, 0x592E},+    {0xA5A2, 0x5931},+    {0xA5A3, 0x5974},+    {0xA5A4, 0x5976},+    {0xA5A5, 0x5B55},+    {0xA5A6, 0x5B83},+    {0xA5A7, 0x5C3C},+    {0xA5A8, 0x5DE8},+    {0xA5A9, 0x5DE7},+    {0xA5AA, 0x5DE6},+    {0xA5AB, 0x5E02},+    {0xA5AC, 0x5E03},+    {0xA5AD, 0x5E73},+    {0xA5AE, 0x5E7C},+    {0xA5AF, 0x5F01},+    {0xA5B0, 0x5F18},+    {0xA5B1, 0x5F17},+    {0xA5B2, 0x5FC5},+    {0xA5B3, 0x620A},+    {0xA5B4, 0x6253},+    {0xA5B5, 0x6254},+    {0xA5B6, 0x6252},+    {0xA5B7, 0x6251},+    {0xA5B8, 0x65A5},+    {0xA5B9, 0x65E6},+    {0xA5BA, 0x672E},+    {0xA5BB, 0x672C},+    {0xA5BC, 0x672A},+    {0xA5BD, 0x672B},+    {0xA5BE, 0x672D},+    {0xA5BF, 0x6B63},+    {0xA5C0, 0x6BCD},+    {0xA5C1, 0x6C11},+    {0xA5C2, 0x6C10},+    {0xA5C3, 0x6C38},+    {0xA5C4, 0x6C41},+    {0xA5C5, 0x6C40},+    {0xA5C6, 0x6C3E},+    {0xA5C7, 0x72AF},+    {0xA5C8, 0x7384},+    {0xA5C9, 0x7389},+    {0xA5CA, 0x74DC},+    {0xA5CB, 0x74E6},+    {0xA5CC, 0x7518},+    {0xA5CD, 0x751F},+    {0xA5CE, 0x7528},+    {0xA5CF, 0x7529},+    {0xA5D0, 0x7530},+    {0xA5D1, 0x7531},+    {0xA5D2, 0x7532},+    {0xA5D3, 0x7533},+    {0xA5D4, 0x758B},+    {0xA5D5, 0x767D},+    {0xA5D6, 0x76AE},+    {0xA5D7, 0x76BF},+    {0xA5D8, 0x76EE},+    {0xA5D9, 0x77DB},+    {0xA5DA, 0x77E2},+    {0xA5DB, 0x77F3},+    {0xA5DC, 0x793A},+    {0xA5DD, 0x79BE},+    {0xA5DE, 0x7A74},+    {0xA5DF, 0x7ACB},+    {0xA5E0, 0x4E1E},+    {0xA5E1, 0x4E1F},+    {0xA5E2, 0x4E52},+    {0xA5E3, 0x4E53},+    {0xA5E4, 0x4E69},+    {0xA5E5, 0x4E99},+    {0xA5E6, 0x4EA4},+    {0xA5E7, 0x4EA6},+    {0xA5E8, 0x4EA5},+    {0xA5E9, 0x4EFF},+    {0xA5EA, 0x4F09},+    {0xA5EB, 0x4F19},+    {0xA5EC, 0x4F0A},+    {0xA5ED, 0x4F15},+    {0xA5EE, 0x4F0D},+    {0xA5EF, 0x4F10},+    {0xA5F0, 0x4F11},+    {0xA5F1, 0x4F0F},+    {0xA5F2, 0x4EF2},+    {0xA5F3, 0x4EF6},+    {0xA5F4, 0x4EFB},+    {0xA5F5, 0x4EF0},+    {0xA5F6, 0x4EF3},+    {0xA5F7, 0x4EFD},+    {0xA5F8, 0x4F01},+    {0xA5F9, 0x4F0B},+    {0xA5FA, 0x5149},+    {0xA5FB, 0x5147},+    {0xA5FC, 0x5146},+    {0xA5FD, 0x5148},+    {0xA5FE, 0x5168},+    {0xA640, 0x5171},+    {0xA641, 0x518D},+    {0xA642, 0x51B0},+    {0xA643, 0x5217},+    {0xA644, 0x5211},+    {0xA645, 0x5212},+    {0xA646, 0x520E},+    {0xA647, 0x5216},+    {0xA648, 0x52A3},+    {0xA649, 0x5308},+    {0xA64A, 0x5321},+    {0xA64B, 0x5320},+    {0xA64C, 0x5370},+    {0xA64D, 0x5371},+    {0xA64E, 0x5409},+    {0xA64F, 0x540F},+    {0xA650, 0x540C},+    {0xA651, 0x540A},+    {0xA652, 0x5410},+    {0xA653, 0x5401},+    {0xA654, 0x540B},+    {0xA655, 0x5404},+    {0xA656, 0x5411},+    {0xA657, 0x540D},+    {0xA658, 0x5408},+    {0xA659, 0x5403},+    {0xA65A, 0x540E},+    {0xA65B, 0x5406},+    {0xA65C, 0x5412},+    {0xA65D, 0x56E0},+    {0xA65E, 0x56DE},+    {0xA65F, 0x56DD},+    {0xA660, 0x5733},+    {0xA661, 0x5730},+    {0xA662, 0x5728},+    {0xA663, 0x572D},+    {0xA664, 0x572C},+    {0xA665, 0x572F},+    {0xA666, 0x5729},+    {0xA667, 0x5919},+    {0xA668, 0x591A},+    {0xA669, 0x5937},+    {0xA66A, 0x5938},+    {0xA66B, 0x5984},+    {0xA66C, 0x5978},+    {0xA66D, 0x5983},+    {0xA66E, 0x597D},+    {0xA66F, 0x5979},+    {0xA670, 0x5982},+    {0xA671, 0x5981},+    {0xA672, 0x5B57},+    {0xA673, 0x5B58},+    {0xA674, 0x5B87},+    {0xA675, 0x5B88},+    {0xA676, 0x5B85},+    {0xA677, 0x5B89},+    {0xA678, 0x5BFA},+    {0xA679, 0x5C16},+    {0xA67A, 0x5C79},+    {0xA67B, 0x5DDE},+    {0xA67C, 0x5E06},+    {0xA67D, 0x5E76},+    {0xA67E, 0x5E74},+    {0xA6A1, 0x5F0F},+    {0xA6A2, 0x5F1B},+    {0xA6A3, 0x5FD9},+    {0xA6A4, 0x5FD6},+    {0xA6A5, 0x620E},+    {0xA6A6, 0x620C},+    {0xA6A7, 0x620D},+    {0xA6A8, 0x6210},+    {0xA6A9, 0x6263},+    {0xA6AA, 0x625B},+    {0xA6AB, 0x6258},+    {0xA6AC, 0x6536},+    {0xA6AD, 0x65E9},+    {0xA6AE, 0x65E8},+    {0xA6AF, 0x65EC},+    {0xA6B0, 0x65ED},+    {0xA6B1, 0x66F2},+    {0xA6B2, 0x66F3},+    {0xA6B3, 0x6709},+    {0xA6B4, 0x673D},+    {0xA6B5, 0x6734},+    {0xA6B6, 0x6731},+    {0xA6B7, 0x6735},+    {0xA6B8, 0x6B21},+    {0xA6B9, 0x6B64},+    {0xA6BA, 0x6B7B},+    {0xA6BB, 0x6C16},+    {0xA6BC, 0x6C5D},+    {0xA6BD, 0x6C57},+    {0xA6BE, 0x6C59},+    {0xA6BF, 0x6C5F},+    {0xA6C0, 0x6C60},+    {0xA6C1, 0x6C50},+    {0xA6C2, 0x6C55},+    {0xA6C3, 0x6C61},+    {0xA6C4, 0x6C5B},+    {0xA6C5, 0x6C4D},+    {0xA6C6, 0x6C4E},+    {0xA6C7, 0x7070},+    {0xA6C8, 0x725F},+    {0xA6C9, 0x725D},+    {0xA6CA, 0x767E},+    {0xA6CB, 0x7AF9},+    {0xA6CC, 0x7C73},+    {0xA6CD, 0x7CF8},+    {0xA6CE, 0x7F36},+    {0xA6CF, 0x7F8A},+    {0xA6D0, 0x7FBD},+    {0xA6D1, 0x8001},+    {0xA6D2, 0x8003},+    {0xA6D3, 0x800C},+    {0xA6D4, 0x8012},+    {0xA6D5, 0x8033},+    {0xA6D6, 0x807F},+    {0xA6D7, 0x8089},+    {0xA6D8, 0x808B},+    {0xA6D9, 0x808C},+    {0xA6DA, 0x81E3},+    {0xA6DB, 0x81EA},+    {0xA6DC, 0x81F3},+    {0xA6DD, 0x81FC},+    {0xA6DE, 0x820C},+    {0xA6DF, 0x821B},+    {0xA6E0, 0x821F},+    {0xA6E1, 0x826E},+    {0xA6E2, 0x8272},+    {0xA6E3, 0x827E},+    {0xA6E4, 0x866B},+    {0xA6E5, 0x8840},+    {0xA6E6, 0x884C},+    {0xA6E7, 0x8863},+    {0xA6E8, 0x897F},+    {0xA6E9, 0x9621},+    {0xA6EA, 0x4E32},+    {0xA6EB, 0x4EA8},+    {0xA6EC, 0x4F4D},+    {0xA6ED, 0x4F4F},+    {0xA6EE, 0x4F47},+    {0xA6EF, 0x4F57},+    {0xA6F0, 0x4F5E},+    {0xA6F1, 0x4F34},+    {0xA6F2, 0x4F5B},+    {0xA6F3, 0x4F55},+    {0xA6F4, 0x4F30},+    {0xA6F5, 0x4F50},+    {0xA6F6, 0x4F51},+    {0xA6F7, 0x4F3D},+    {0xA6F8, 0x4F3A},+    {0xA6F9, 0x4F38},+    {0xA6FA, 0x4F43},+    {0xA6FB, 0x4F54},+    {0xA6FC, 0x4F3C},+    {0xA6FD, 0x4F46},+    {0xA6FE, 0x4F63},+    {0xA740, 0x4F5C},+    {0xA741, 0x4F60},+    {0xA742, 0x4F2F},+    {0xA743, 0x4F4E},+    {0xA744, 0x4F36},+    {0xA745, 0x4F59},+    {0xA746, 0x4F5D},+    {0xA747, 0x4F48},+    {0xA748, 0x4F5A},+    {0xA749, 0x514C},+    {0xA74A, 0x514B},+    {0xA74B, 0x514D},+    {0xA74C, 0x5175},+    {0xA74D, 0x51B6},+    {0xA74E, 0x51B7},+    {0xA74F, 0x5225},+    {0xA750, 0x5224},+    {0xA751, 0x5229},+    {0xA752, 0x522A},+    {0xA753, 0x5228},+    {0xA754, 0x52AB},+    {0xA755, 0x52A9},+    {0xA756, 0x52AA},+    {0xA757, 0x52AC},+    {0xA758, 0x5323},+    {0xA759, 0x5373},+    {0xA75A, 0x5375},+    {0xA75B, 0x541D},+    {0xA75C, 0x542D},+    {0xA75D, 0x541E},+    {0xA75E, 0x543E},+    {0xA75F, 0x5426},+    {0xA760, 0x544E},+    {0xA761, 0x5427},+    {0xA762, 0x5446},+    {0xA763, 0x5443},+    {0xA764, 0x5433},+    {0xA765, 0x5448},+    {0xA766, 0x5442},+    {0xA767, 0x541B},+    {0xA768, 0x5429},+    {0xA769, 0x544A},+    {0xA76A, 0x5439},+    {0xA76B, 0x543B},+    {0xA76C, 0x5438},+    {0xA76D, 0x542E},+    {0xA76E, 0x5435},+    {0xA76F, 0x5436},+    {0xA770, 0x5420},+    {0xA771, 0x543C},+    {0xA772, 0x5440},+    {0xA773, 0x5431},+    {0xA774, 0x542B},+    {0xA775, 0x541F},+    {0xA776, 0x542C},+    {0xA777, 0x56EA},+    {0xA778, 0x56F0},+    {0xA779, 0x56E4},+    {0xA77A, 0x56EB},+    {0xA77B, 0x574A},+    {0xA77C, 0x5751},+    {0xA77D, 0x5740},+    {0xA77E, 0x574D},+    {0xA7A1, 0x5747},+    {0xA7A2, 0x574E},+    {0xA7A3, 0x573E},+    {0xA7A4, 0x5750},+    {0xA7A5, 0x574F},+    {0xA7A6, 0x573B},+    {0xA7A7, 0x58EF},+    {0xA7A8, 0x593E},+    {0xA7A9, 0x599D},+    {0xA7AA, 0x5992},+    {0xA7AB, 0x59A8},+    {0xA7AC, 0x599E},+    {0xA7AD, 0x59A3},+    {0xA7AE, 0x5999},+    {0xA7AF, 0x5996},+    {0xA7B0, 0x598D},+    {0xA7B1, 0x59A4},+    {0xA7B2, 0x5993},+    {0xA7B3, 0x598A},+    {0xA7B4, 0x59A5},+    {0xA7B5, 0x5B5D},+    {0xA7B6, 0x5B5C},+    {0xA7B7, 0x5B5A},+    {0xA7B8, 0x5B5B},+    {0xA7B9, 0x5B8C},+    {0xA7BA, 0x5B8B},+    {0xA7BB, 0x5B8F},+    {0xA7BC, 0x5C2C},+    {0xA7BD, 0x5C40},+    {0xA7BE, 0x5C41},+    {0xA7BF, 0x5C3F},+    {0xA7C0, 0x5C3E},+    {0xA7C1, 0x5C90},+    {0xA7C2, 0x5C91},+    {0xA7C3, 0x5C94},+    {0xA7C4, 0x5C8C},+    {0xA7C5, 0x5DEB},+    {0xA7C6, 0x5E0C},+    {0xA7C7, 0x5E8F},+    {0xA7C8, 0x5E87},+    {0xA7C9, 0x5E8A},+    {0xA7CA, 0x5EF7},+    {0xA7CB, 0x5F04},+    {0xA7CC, 0x5F1F},+    {0xA7CD, 0x5F64},+    {0xA7CE, 0x5F62},+    {0xA7CF, 0x5F77},+    {0xA7D0, 0x5F79},+    {0xA7D1, 0x5FD8},+    {0xA7D2, 0x5FCC},+    {0xA7D3, 0x5FD7},+    {0xA7D4, 0x5FCD},+    {0xA7D5, 0x5FF1},+    {0xA7D6, 0x5FEB},+    {0xA7D7, 0x5FF8},+    {0xA7D8, 0x5FEA},+    {0xA7D9, 0x6212},+    {0xA7DA, 0x6211},+    {0xA7DB, 0x6284},+    {0xA7DC, 0x6297},+    {0xA7DD, 0x6296},+    {0xA7DE, 0x6280},+    {0xA7DF, 0x6276},+    {0xA7E0, 0x6289},+    {0xA7E1, 0x626D},+    {0xA7E2, 0x628A},+    {0xA7E3, 0x627C},+    {0xA7E4, 0x627E},+    {0xA7E5, 0x6279},+    {0xA7E6, 0x6273},+    {0xA7E7, 0x6292},+    {0xA7E8, 0x626F},+    {0xA7E9, 0x6298},+    {0xA7EA, 0x626E},+    {0xA7EB, 0x6295},+    {0xA7EC, 0x6293},+    {0xA7ED, 0x6291},+    {0xA7EE, 0x6286},+    {0xA7EF, 0x6539},+    {0xA7F0, 0x653B},+    {0xA7F1, 0x6538},+    {0xA7F2, 0x65F1},+    {0xA7F3, 0x66F4},+    {0xA7F4, 0x675F},+    {0xA7F5, 0x674E},+    {0xA7F6, 0x674F},+    {0xA7F7, 0x6750},+    {0xA7F8, 0x6751},+    {0xA7F9, 0x675C},+    {0xA7FA, 0x6756},+    {0xA7FB, 0x675E},+    {0xA7FC, 0x6749},+    {0xA7FD, 0x6746},+    {0xA7FE, 0x6760},+    {0xA840, 0x6753},+    {0xA841, 0x6757},+    {0xA842, 0x6B65},+    {0xA843, 0x6BCF},+    {0xA844, 0x6C42},+    {0xA845, 0x6C5E},+    {0xA846, 0x6C99},+    {0xA847, 0x6C81},+    {0xA848, 0x6C88},+    {0xA849, 0x6C89},+    {0xA84A, 0x6C85},+    {0xA84B, 0x6C9B},+    {0xA84C, 0x6C6A},+    {0xA84D, 0x6C7A},+    {0xA84E, 0x6C90},+    {0xA84F, 0x6C70},+    {0xA850, 0x6C8C},+    {0xA851, 0x6C68},+    {0xA852, 0x6C96},+    {0xA853, 0x6C92},+    {0xA854, 0x6C7D},+    {0xA855, 0x6C83},+    {0xA856, 0x6C72},+    {0xA857, 0x6C7E},+    {0xA858, 0x6C74},+    {0xA859, 0x6C86},+    {0xA85A, 0x6C76},+    {0xA85B, 0x6C8D},+    {0xA85C, 0x6C94},+    {0xA85D, 0x6C98},+    {0xA85E, 0x6C82},+    {0xA85F, 0x7076},+    {0xA860, 0x707C},+    {0xA861, 0x707D},+    {0xA862, 0x7078},+    {0xA863, 0x7262},+    {0xA864, 0x7261},+    {0xA865, 0x7260},+    {0xA866, 0x72C4},+    {0xA867, 0x72C2},+    {0xA868, 0x7396},+    {0xA869, 0x752C},+    {0xA86A, 0x752B},+    {0xA86B, 0x7537},+    {0xA86C, 0x7538},+    {0xA86D, 0x7682},+    {0xA86E, 0x76EF},+    {0xA86F, 0x77E3},+    {0xA870, 0x79C1},+    {0xA871, 0x79C0},+    {0xA872, 0x79BF},+    {0xA873, 0x7A76},+    {0xA874, 0x7CFB},+    {0xA875, 0x7F55},+    {0xA876, 0x8096},+    {0xA877, 0x8093},+    {0xA878, 0x809D},+    {0xA879, 0x8098},+    {0xA87A, 0x809B},+    {0xA87B, 0x809A},+    {0xA87C, 0x80B2},+    {0xA87D, 0x826F},+    {0xA87E, 0x8292},+    {0xA8A1, 0x828B},+    {0xA8A2, 0x828D},+    {0xA8A3, 0x898B},+    {0xA8A4, 0x89D2},+    {0xA8A5, 0x8A00},+    {0xA8A6, 0x8C37},+    {0xA8A7, 0x8C46},+    {0xA8A8, 0x8C55},+    {0xA8A9, 0x8C9D},+    {0xA8AA, 0x8D64},+    {0xA8AB, 0x8D70},+    {0xA8AC, 0x8DB3},+    {0xA8AD, 0x8EAB},+    {0xA8AE, 0x8ECA},+    {0xA8AF, 0x8F9B},+    {0xA8B0, 0x8FB0},+    {0xA8B1, 0x8FC2},+    {0xA8B2, 0x8FC6},+    {0xA8B3, 0x8FC5},+    {0xA8B4, 0x8FC4},+    {0xA8B5, 0x5DE1},+    {0xA8B6, 0x9091},+    {0xA8B7, 0x90A2},+    {0xA8B8, 0x90AA},+    {0xA8B9, 0x90A6},+    {0xA8BA, 0x90A3},+    {0xA8BB, 0x9149},+    {0xA8BC, 0x91C6},+    {0xA8BD, 0x91CC},+    {0xA8BE, 0x9632},+    {0xA8BF, 0x962E},+    {0xA8C0, 0x9631},+    {0xA8C1, 0x962A},+    {0xA8C2, 0x962C},+    {0xA8C3, 0x4E26},+    {0xA8C4, 0x4E56},+    {0xA8C5, 0x4E73},+    {0xA8C6, 0x4E8B},+    {0xA8C7, 0x4E9B},+    {0xA8C8, 0x4E9E},+    {0xA8C9, 0x4EAB},+    {0xA8CA, 0x4EAC},+    {0xA8CB, 0x4F6F},+    {0xA8CC, 0x4F9D},+    {0xA8CD, 0x4F8D},+    {0xA8CE, 0x4F73},+    {0xA8CF, 0x4F7F},+    {0xA8D0, 0x4F6C},+    {0xA8D1, 0x4F9B},+    {0xA8D2, 0x4F8B},+    {0xA8D3, 0x4F86},+    {0xA8D4, 0x4F83},+    {0xA8D5, 0x4F70},+    {0xA8D6, 0x4F75},+    {0xA8D7, 0x4F88},+    {0xA8D8, 0x4F69},+    {0xA8D9, 0x4F7B},+    {0xA8DA, 0x4F96},+    {0xA8DB, 0x4F7E},+    {0xA8DC, 0x4F8F},+    {0xA8DD, 0x4F91},+    {0xA8DE, 0x4F7A},+    {0xA8DF, 0x5154},+    {0xA8E0, 0x5152},+    {0xA8E1, 0x5155},+    {0xA8E2, 0x5169},+    {0xA8E3, 0x5177},+    {0xA8E4, 0x5176},+    {0xA8E5, 0x5178},+    {0xA8E6, 0x51BD},+    {0xA8E7, 0x51FD},+    {0xA8E8, 0x523B},+    {0xA8E9, 0x5238},+    {0xA8EA, 0x5237},+    {0xA8EB, 0x523A},+    {0xA8EC, 0x5230},+    {0xA8ED, 0x522E},+    {0xA8EE, 0x5236},+    {0xA8EF, 0x5241},+    {0xA8F0, 0x52BE},+    {0xA8F1, 0x52BB},+    {0xA8F2, 0x5352},+    {0xA8F3, 0x5354},+    {0xA8F4, 0x5353},+    {0xA8F5, 0x5351},+    {0xA8F6, 0x5366},+    {0xA8F7, 0x5377},+    {0xA8F8, 0x5378},+    {0xA8F9, 0x5379},+    {0xA8FA, 0x53D6},+    {0xA8FB, 0x53D4},+    {0xA8FC, 0x53D7},+    {0xA8FD, 0x5473},+    {0xA8FE, 0x5475},+    {0xA940, 0x5496},+    {0xA941, 0x5478},+    {0xA942, 0x5495},+    {0xA943, 0x5480},+    {0xA944, 0x547B},+    {0xA945, 0x5477},+    {0xA946, 0x5484},+    {0xA947, 0x5492},+    {0xA948, 0x5486},+    {0xA949, 0x547C},+    {0xA94A, 0x5490},+    {0xA94B, 0x5471},+    {0xA94C, 0x5476},+    {0xA94D, 0x548C},+    {0xA94E, 0x549A},+    {0xA94F, 0x5462},+    {0xA950, 0x5468},+    {0xA951, 0x548B},+    {0xA952, 0x547D},+    {0xA953, 0x548E},+    {0xA954, 0x56FA},+    {0xA955, 0x5783},+    {0xA956, 0x5777},+    {0xA957, 0x576A},+    {0xA958, 0x5769},+    {0xA959, 0x5761},+    {0xA95A, 0x5766},+    {0xA95B, 0x5764},+    {0xA95C, 0x577C},+    {0xA95D, 0x591C},+    {0xA95E, 0x5949},+    {0xA95F, 0x5947},+    {0xA960, 0x5948},+    {0xA961, 0x5944},+    {0xA962, 0x5954},+    {0xA963, 0x59BE},+    {0xA964, 0x59BB},+    {0xA965, 0x59D4},+    {0xA966, 0x59B9},+    {0xA967, 0x59AE},+    {0xA968, 0x59D1},+    {0xA969, 0x59C6},+    {0xA96A, 0x59D0},+    {0xA96B, 0x59CD},+    {0xA96C, 0x59CB},+    {0xA96D, 0x59D3},+    {0xA96E, 0x59CA},+    {0xA96F, 0x59AF},+    {0xA970, 0x59B3},+    {0xA971, 0x59D2},+    {0xA972, 0x59C5},+    {0xA973, 0x5B5F},+    {0xA974, 0x5B64},+    {0xA975, 0x5B63},+    {0xA976, 0x5B97},+    {0xA977, 0x5B9A},+    {0xA978, 0x5B98},+    {0xA979, 0x5B9C},+    {0xA97A, 0x5B99},+    {0xA97B, 0x5B9B},+    {0xA97C, 0x5C1A},+    {0xA97D, 0x5C48},+    {0xA97E, 0x5C45},+    {0xA9A1, 0x5C46},+    {0xA9A2, 0x5CB7},+    {0xA9A3, 0x5CA1},+    {0xA9A4, 0x5CB8},+    {0xA9A5, 0x5CA9},+    {0xA9A6, 0x5CAB},+    {0xA9A7, 0x5CB1},+    {0xA9A8, 0x5CB3},+    {0xA9A9, 0x5E18},+    {0xA9AA, 0x5E1A},+    {0xA9AB, 0x5E16},+    {0xA9AC, 0x5E15},+    {0xA9AD, 0x5E1B},+    {0xA9AE, 0x5E11},+    {0xA9AF, 0x5E78},+    {0xA9B0, 0x5E9A},+    {0xA9B1, 0x5E97},+    {0xA9B2, 0x5E9C},+    {0xA9B3, 0x5E95},+    {0xA9B4, 0x5E96},+    {0xA9B5, 0x5EF6},+    {0xA9B6, 0x5F26},+    {0xA9B7, 0x5F27},+    {0xA9B8, 0x5F29},+    {0xA9B9, 0x5F80},+    {0xA9BA, 0x5F81},+    {0xA9BB, 0x5F7F},+    {0xA9BC, 0x5F7C},+    {0xA9BD, 0x5FDD},+    {0xA9BE, 0x5FE0},+    {0xA9BF, 0x5FFD},+    {0xA9C0, 0x5FF5},+    {0xA9C1, 0x5FFF},+    {0xA9C2, 0x600F},+    {0xA9C3, 0x6014},+    {0xA9C4, 0x602F},+    {0xA9C5, 0x6035},+    {0xA9C6, 0x6016},+    {0xA9C7, 0x602A},+    {0xA9C8, 0x6015},+    {0xA9C9, 0x6021},+    {0xA9CA, 0x6027},+    {0xA9CB, 0x6029},+    {0xA9CC, 0x602B},+    {0xA9CD, 0x601B},+    {0xA9CE, 0x6216},+    {0xA9CF, 0x6215},+    {0xA9D0, 0x623F},+    {0xA9D1, 0x623E},+    {0xA9D2, 0x6240},+    {0xA9D3, 0x627F},+    {0xA9D4, 0x62C9},+    {0xA9D5, 0x62CC},+    {0xA9D6, 0x62C4},+    {0xA9D7, 0x62BF},+    {0xA9D8, 0x62C2},+    {0xA9D9, 0x62B9},+    {0xA9DA, 0x62D2},+    {0xA9DB, 0x62DB},+    {0xA9DC, 0x62AB},+    {0xA9DD, 0x62D3},+    {0xA9DE, 0x62D4},+    {0xA9DF, 0x62CB},+    {0xA9E0, 0x62C8},+    {0xA9E1, 0x62A8},+    {0xA9E2, 0x62BD},+    {0xA9E3, 0x62BC},+    {0xA9E4, 0x62D0},+    {0xA9E5, 0x62D9},+    {0xA9E6, 0x62C7},+    {0xA9E7, 0x62CD},+    {0xA9E8, 0x62B5},+    {0xA9E9, 0x62DA},+    {0xA9EA, 0x62B1},+    {0xA9EB, 0x62D8},+    {0xA9EC, 0x62D6},+    {0xA9ED, 0x62D7},+    {0xA9EE, 0x62C6},+    {0xA9EF, 0x62AC},+    {0xA9F0, 0x62CE},+    {0xA9F1, 0x653E},+    {0xA9F2, 0x65A7},+    {0xA9F3, 0x65BC},+    {0xA9F4, 0x65FA},+    {0xA9F5, 0x6614},+    {0xA9F6, 0x6613},+    {0xA9F7, 0x660C},+    {0xA9F8, 0x6606},+    {0xA9F9, 0x6602},+    {0xA9FA, 0x660E},+    {0xA9FB, 0x6600},+    {0xA9FC, 0x660F},+    {0xA9FD, 0x6615},+    {0xA9FE, 0x660A},+    {0xAA40, 0x6607},+    {0xAA41, 0x670D},+    {0xAA42, 0x670B},+    {0xAA43, 0x676D},+    {0xAA44, 0x678B},+    {0xAA45, 0x6795},+    {0xAA46, 0x6771},+    {0xAA47, 0x679C},+    {0xAA48, 0x6773},+    {0xAA49, 0x6777},+    {0xAA4A, 0x6787},+    {0xAA4B, 0x679D},+    {0xAA4C, 0x6797},+    {0xAA4D, 0x676F},+    {0xAA4E, 0x6770},+    {0xAA4F, 0x677F},+    {0xAA50, 0x6789},+    {0xAA51, 0x677E},+    {0xAA52, 0x6790},+    {0xAA53, 0x6775},+    {0xAA54, 0x679A},+    {0xAA55, 0x6793},+    {0xAA56, 0x677C},+    {0xAA57, 0x676A},+    {0xAA58, 0x6772},+    {0xAA59, 0x6B23},+    {0xAA5A, 0x6B66},+    {0xAA5B, 0x6B67},+    {0xAA5C, 0x6B7F},+    {0xAA5D, 0x6C13},+    {0xAA5E, 0x6C1B},+    {0xAA5F, 0x6CE3},+    {0xAA60, 0x6CE8},+    {0xAA61, 0x6CF3},+    {0xAA62, 0x6CB1},+    {0xAA63, 0x6CCC},+    {0xAA64, 0x6CE5},+    {0xAA65, 0x6CB3},+    {0xAA66, 0x6CBD},+    {0xAA67, 0x6CBE},+    {0xAA68, 0x6CBC},+    {0xAA69, 0x6CE2},+    {0xAA6A, 0x6CAB},+    {0xAA6B, 0x6CD5},+    {0xAA6C, 0x6CD3},+    {0xAA6D, 0x6CB8},+    {0xAA6E, 0x6CC4},+    {0xAA6F, 0x6CB9},+    {0xAA70, 0x6CC1},+    {0xAA71, 0x6CAE},+    {0xAA72, 0x6CD7},+    {0xAA73, 0x6CC5},+    {0xAA74, 0x6CF1},+    {0xAA75, 0x6CBF},+    {0xAA76, 0x6CBB},+    {0xAA77, 0x6CE1},+    {0xAA78, 0x6CDB},+    {0xAA79, 0x6CCA},+    {0xAA7A, 0x6CAC},+    {0xAA7B, 0x6CEF},+    {0xAA7C, 0x6CDC},+    {0xAA7D, 0x6CD6},+    {0xAA7E, 0x6CE0},+    {0xAAA1, 0x7095},+    {0xAAA2, 0x708E},+    {0xAAA3, 0x7092},+    {0xAAA4, 0x708A},+    {0xAAA5, 0x7099},+    {0xAAA6, 0x722C},+    {0xAAA7, 0x722D},+    {0xAAA8, 0x7238},+    {0xAAA9, 0x7248},+    {0xAAAA, 0x7267},+    {0xAAAB, 0x7269},+    {0xAAAC, 0x72C0},+    {0xAAAD, 0x72CE},+    {0xAAAE, 0x72D9},+    {0xAAAF, 0x72D7},+    {0xAAB0, 0x72D0},+    {0xAAB1, 0x73A9},+    {0xAAB2, 0x73A8},+    {0xAAB3, 0x739F},+    {0xAAB4, 0x73AB},+    {0xAAB5, 0x73A5},+    {0xAAB6, 0x753D},+    {0xAAB7, 0x759D},+    {0xAAB8, 0x7599},+    {0xAAB9, 0x759A},+    {0xAABA, 0x7684},+    {0xAABB, 0x76C2},+    {0xAABC, 0x76F2},+    {0xAABD, 0x76F4},+    {0xAABE, 0x77E5},+    {0xAABF, 0x77FD},+    {0xAAC0, 0x793E},+    {0xAAC1, 0x7940},+    {0xAAC2, 0x7941},+    {0xAAC3, 0x79C9},+    {0xAAC4, 0x79C8},+    {0xAAC5, 0x7A7A},+    {0xAAC6, 0x7A79},+    {0xAAC7, 0x7AFA},+    {0xAAC8, 0x7CFE},+    {0xAAC9, 0x7F54},+    {0xAACA, 0x7F8C},+    {0xAACB, 0x7F8B},+    {0xAACC, 0x8005},+    {0xAACD, 0x80BA},+    {0xAACE, 0x80A5},+    {0xAACF, 0x80A2},+    {0xAAD0, 0x80B1},+    {0xAAD1, 0x80A1},+    {0xAAD2, 0x80AB},+    {0xAAD3, 0x80A9},+    {0xAAD4, 0x80B4},+    {0xAAD5, 0x80AA},+    {0xAAD6, 0x80AF},+    {0xAAD7, 0x81E5},+    {0xAAD8, 0x81FE},+    {0xAAD9, 0x820D},+    {0xAADA, 0x82B3},+    {0xAADB, 0x829D},+    {0xAADC, 0x8299},+    {0xAADD, 0x82AD},+    {0xAADE, 0x82BD},+    {0xAADF, 0x829F},+    {0xAAE0, 0x82B9},+    {0xAAE1, 0x82B1},+    {0xAAE2, 0x82AC},+    {0xAAE3, 0x82A5},+    {0xAAE4, 0x82AF},+    {0xAAE5, 0x82B8},+    {0xAAE6, 0x82A3},+    {0xAAE7, 0x82B0},+    {0xAAE8, 0x82BE},+    {0xAAE9, 0x82B7},+    {0xAAEA, 0x864E},+    {0xAAEB, 0x8671},+    {0xAAEC, 0x521D},+    {0xAAED, 0x8868},+    {0xAAEE, 0x8ECB},+    {0xAAEF, 0x8FCE},+    {0xAAF0, 0x8FD4},+    {0xAAF1, 0x8FD1},+    {0xAAF2, 0x90B5},+    {0xAAF3, 0x90B8},+    {0xAAF4, 0x90B1},+    {0xAAF5, 0x90B6},+    {0xAAF6, 0x91C7},+    {0xAAF7, 0x91D1},+    {0xAAF8, 0x9577},+    {0xAAF9, 0x9580},+    {0xAAFA, 0x961C},+    {0xAAFB, 0x9640},+    {0xAAFC, 0x963F},+    {0xAAFD, 0x963B},+    {0xAAFE, 0x9644},+    {0xAB40, 0x9642},+    {0xAB41, 0x96B9},+    {0xAB42, 0x96E8},+    {0xAB43, 0x9752},+    {0xAB44, 0x975E},+    {0xAB45, 0x4E9F},+    {0xAB46, 0x4EAD},+    {0xAB47, 0x4EAE},+    {0xAB48, 0x4FE1},+    {0xAB49, 0x4FB5},+    {0xAB4A, 0x4FAF},+    {0xAB4B, 0x4FBF},+    {0xAB4C, 0x4FE0},+    {0xAB4D, 0x4FD1},+    {0xAB4E, 0x4FCF},+    {0xAB4F, 0x4FDD},+    {0xAB50, 0x4FC3},+    {0xAB51, 0x4FB6},+    {0xAB52, 0x4FD8},+    {0xAB53, 0x4FDF},+    {0xAB54, 0x4FCA},+    {0xAB55, 0x4FD7},+    {0xAB56, 0x4FAE},+    {0xAB57, 0x4FD0},+    {0xAB58, 0x4FC4},+    {0xAB59, 0x4FC2},+    {0xAB5A, 0x4FDA},+    {0xAB5B, 0x4FCE},+    {0xAB5C, 0x4FDE},+    {0xAB5D, 0x4FB7},+    {0xAB5E, 0x5157},+    {0xAB5F, 0x5192},+    {0xAB60, 0x5191},+    {0xAB61, 0x51A0},+    {0xAB62, 0x524E},+    {0xAB63, 0x5243},+    {0xAB64, 0x524A},+    {0xAB65, 0x524D},+    {0xAB66, 0x524C},+    {0xAB67, 0x524B},+    {0xAB68, 0x5247},+    {0xAB69, 0x52C7},+    {0xAB6A, 0x52C9},+    {0xAB6B, 0x52C3},+    {0xAB6C, 0x52C1},+    {0xAB6D, 0x530D},+    {0xAB6E, 0x5357},+    {0xAB6F, 0x537B},+    {0xAB70, 0x539A},+    {0xAB71, 0x53DB},+    {0xAB72, 0x54AC},+    {0xAB73, 0x54C0},+    {0xAB74, 0x54A8},+    {0xAB75, 0x54CE},+    {0xAB76, 0x54C9},+    {0xAB77, 0x54B8},+    {0xAB78, 0x54A6},+    {0xAB79, 0x54B3},+    {0xAB7A, 0x54C7},+    {0xAB7B, 0x54C2},+    {0xAB7C, 0x54BD},+    {0xAB7D, 0x54AA},+    {0xAB7E, 0x54C1},+    {0xABA1, 0x54C4},+    {0xABA2, 0x54C8},+    {0xABA3, 0x54AF},+    {0xABA4, 0x54AB},+    {0xABA5, 0x54B1},+    {0xABA6, 0x54BB},+    {0xABA7, 0x54A9},+    {0xABA8, 0x54A7},+    {0xABA9, 0x54BF},+    {0xABAA, 0x56FF},+    {0xABAB, 0x5782},+    {0xABAC, 0x578B},+    {0xABAD, 0x57A0},+    {0xABAE, 0x57A3},+    {0xABAF, 0x57A2},+    {0xABB0, 0x57CE},+    {0xABB1, 0x57AE},+    {0xABB2, 0x5793},+    {0xABB3, 0x5955},+    {0xABB4, 0x5951},+    {0xABB5, 0x594F},+    {0xABB6, 0x594E},+    {0xABB7, 0x5950},+    {0xABB8, 0x59DC},+    {0xABB9, 0x59D8},+    {0xABBA, 0x59FF},+    {0xABBB, 0x59E3},+    {0xABBC, 0x59E8},+    {0xABBD, 0x5A03},+    {0xABBE, 0x59E5},+    {0xABBF, 0x59EA},+    {0xABC0, 0x59DA},+    {0xABC1, 0x59E6},+    {0xABC2, 0x5A01},+    {0xABC3, 0x59FB},+    {0xABC4, 0x5B69},+    {0xABC5, 0x5BA3},+    {0xABC6, 0x5BA6},+    {0xABC7, 0x5BA4},+    {0xABC8, 0x5BA2},+    {0xABC9, 0x5BA5},+    {0xABCA, 0x5C01},+    {0xABCB, 0x5C4E},+    {0xABCC, 0x5C4F},+    {0xABCD, 0x5C4D},+    {0xABCE, 0x5C4B},+    {0xABCF, 0x5CD9},+    {0xABD0, 0x5CD2},+    {0xABD1, 0x5DF7},+    {0xABD2, 0x5E1D},+    {0xABD3, 0x5E25},+    {0xABD4, 0x5E1F},+    {0xABD5, 0x5E7D},+    {0xABD6, 0x5EA0},+    {0xABD7, 0x5EA6},+    {0xABD8, 0x5EFA},+    {0xABD9, 0x5F08},+    {0xABDA, 0x5F2D},+    {0xABDB, 0x5F65},+    {0xABDC, 0x5F88},+    {0xABDD, 0x5F85},+    {0xABDE, 0x5F8A},+    {0xABDF, 0x5F8B},+    {0xABE0, 0x5F87},+    {0xABE1, 0x5F8C},+    {0xABE2, 0x5F89},+    {0xABE3, 0x6012},+    {0xABE4, 0x601D},+    {0xABE5, 0x6020},+    {0xABE6, 0x6025},+    {0xABE7, 0x600E},+    {0xABE8, 0x6028},+    {0xABE9, 0x604D},+    {0xABEA, 0x6070},+    {0xABEB, 0x6068},+    {0xABEC, 0x6062},+    {0xABED, 0x6046},+    {0xABEE, 0x6043},+    {0xABEF, 0x606C},+    {0xABF0, 0x606B},+    {0xABF1, 0x606A},+    {0xABF2, 0x6064},+    {0xABF3, 0x6241},+    {0xABF4, 0x62DC},+    {0xABF5, 0x6316},+    {0xABF6, 0x6309},+    {0xABF7, 0x62FC},+    {0xABF8, 0x62ED},+    {0xABF9, 0x6301},+    {0xABFA, 0x62EE},+    {0xABFB, 0x62FD},+    {0xABFC, 0x6307},+    {0xABFD, 0x62F1},+    {0xABFE, 0x62F7},+    {0xAC40, 0x62EF},+    {0xAC41, 0x62EC},+    {0xAC42, 0x62FE},+    {0xAC43, 0x62F4},+    {0xAC44, 0x6311},+    {0xAC45, 0x6302},+    {0xAC46, 0x653F},+    {0xAC47, 0x6545},+    {0xAC48, 0x65AB},+    {0xAC49, 0x65BD},+    {0xAC4A, 0x65E2},+    {0xAC4B, 0x6625},+    {0xAC4C, 0x662D},+    {0xAC4D, 0x6620},+    {0xAC4E, 0x6627},+    {0xAC4F, 0x662F},+    {0xAC50, 0x661F},+    {0xAC51, 0x6628},+    {0xAC52, 0x6631},+    {0xAC53, 0x6624},+    {0xAC54, 0x66F7},+    {0xAC55, 0x67FF},+    {0xAC56, 0x67D3},+    {0xAC57, 0x67F1},+    {0xAC58, 0x67D4},+    {0xAC59, 0x67D0},+    {0xAC5A, 0x67EC},+    {0xAC5B, 0x67B6},+    {0xAC5C, 0x67AF},+    {0xAC5D, 0x67F5},+    {0xAC5E, 0x67E9},+    {0xAC5F, 0x67EF},+    {0xAC60, 0x67C4},+    {0xAC61, 0x67D1},+    {0xAC62, 0x67B4},+    {0xAC63, 0x67DA},+    {0xAC64, 0x67E5},+    {0xAC65, 0x67B8},+    {0xAC66, 0x67CF},+    {0xAC67, 0x67DE},+    {0xAC68, 0x67F3},+    {0xAC69, 0x67B0},+    {0xAC6A, 0x67D9},+    {0xAC6B, 0x67E2},+    {0xAC6C, 0x67DD},+    {0xAC6D, 0x67D2},+    {0xAC6E, 0x6B6A},+    {0xAC6F, 0x6B83},+    {0xAC70, 0x6B86},+    {0xAC71, 0x6BB5},+    {0xAC72, 0x6BD2},+    {0xAC73, 0x6BD7},+    {0xAC74, 0x6C1F},+    {0xAC75, 0x6CC9},+    {0xAC76, 0x6D0B},+    {0xAC77, 0x6D32},+    {0xAC78, 0x6D2A},+    {0xAC79, 0x6D41},+    {0xAC7A, 0x6D25},+    {0xAC7B, 0x6D0C},+    {0xAC7C, 0x6D31},+    {0xAC7D, 0x6D1E},+    {0xAC7E, 0x6D17},+    {0xACA1, 0x6D3B},+    {0xACA2, 0x6D3D},+    {0xACA3, 0x6D3E},+    {0xACA4, 0x6D36},+    {0xACA5, 0x6D1B},+    {0xACA6, 0x6CF5},+    {0xACA7, 0x6D39},+    {0xACA8, 0x6D27},+    {0xACA9, 0x6D38},+    {0xACAA, 0x6D29},+    {0xACAB, 0x6D2E},+    {0xACAC, 0x6D35},+    {0xACAD, 0x6D0E},+    {0xACAE, 0x6D2B},+    {0xACAF, 0x70AB},+    {0xACB0, 0x70BA},+    {0xACB1, 0x70B3},+    {0xACB2, 0x70AC},+    {0xACB3, 0x70AF},+    {0xACB4, 0x70AD},+    {0xACB5, 0x70B8},+    {0xACB6, 0x70AE},+    {0xACB7, 0x70A4},+    {0xACB8, 0x7230},+    {0xACB9, 0x7272},+    {0xACBA, 0x726F},+    {0xACBB, 0x7274},+    {0xACBC, 0x72E9},+    {0xACBD, 0x72E0},+    {0xACBE, 0x72E1},+    {0xACBF, 0x73B7},+    {0xACC0, 0x73CA},+    {0xACC1, 0x73BB},+    {0xACC2, 0x73B2},+    {0xACC3, 0x73CD},+    {0xACC4, 0x73C0},+    {0xACC5, 0x73B3},+    {0xACC6, 0x751A},+    {0xACC7, 0x752D},+    {0xACC8, 0x754F},+    {0xACC9, 0x754C},+    {0xACCA, 0x754E},+    {0xACCB, 0x754B},+    {0xACCC, 0x75AB},+    {0xACCD, 0x75A4},+    {0xACCE, 0x75A5},+    {0xACCF, 0x75A2},+    {0xACD0, 0x75A3},+    {0xACD1, 0x7678},+    {0xACD2, 0x7686},+    {0xACD3, 0x7687},+    {0xACD4, 0x7688},+    {0xACD5, 0x76C8},+    {0xACD6, 0x76C6},+    {0xACD7, 0x76C3},+    {0xACD8, 0x76C5},+    {0xACD9, 0x7701},+    {0xACDA, 0x76F9},+    {0xACDB, 0x76F8},+    {0xACDC, 0x7709},+    {0xACDD, 0x770B},+    {0xACDE, 0x76FE},+    {0xACDF, 0x76FC},+    {0xACE0, 0x7707},+    {0xACE1, 0x77DC},+    {0xACE2, 0x7802},+    {0xACE3, 0x7814},+    {0xACE4, 0x780C},+    {0xACE5, 0x780D},+    {0xACE6, 0x7946},+    {0xACE7, 0x7949},+    {0xACE8, 0x7948},+    {0xACE9, 0x7947},+    {0xACEA, 0x79B9},+    {0xACEB, 0x79BA},+    {0xACEC, 0x79D1},+    {0xACED, 0x79D2},+    {0xACEE, 0x79CB},+    {0xACEF, 0x7A7F},+    {0xACF0, 0x7A81},+    {0xACF1, 0x7AFF},+    {0xACF2, 0x7AFD},+    {0xACF3, 0x7C7D},+    {0xACF4, 0x7D02},+    {0xACF5, 0x7D05},+    {0xACF6, 0x7D00},+    {0xACF7, 0x7D09},+    {0xACF8, 0x7D07},+    {0xACF9, 0x7D04},+    {0xACFA, 0x7D06},+    {0xACFB, 0x7F38},+    {0xACFC, 0x7F8E},+    {0xACFD, 0x7FBF},+    {0xACFE, 0x8004},+    {0xAD40, 0x8010},+    {0xAD41, 0x800D},+    {0xAD42, 0x8011},+    {0xAD43, 0x8036},+    {0xAD44, 0x80D6},+    {0xAD45, 0x80E5},+    {0xAD46, 0x80DA},+    {0xAD47, 0x80C3},+    {0xAD48, 0x80C4},+    {0xAD49, 0x80CC},+    {0xAD4A, 0x80E1},+    {0xAD4B, 0x80DB},+    {0xAD4C, 0x80CE},+    {0xAD4D, 0x80DE},+    {0xAD4E, 0x80E4},+    {0xAD4F, 0x80DD},+    {0xAD50, 0x81F4},+    {0xAD51, 0x8222},+    {0xAD52, 0x82E7},+    {0xAD53, 0x8303},+    {0xAD54, 0x8305},+    {0xAD55, 0x82E3},+    {0xAD56, 0x82DB},+    {0xAD57, 0x82E6},+    {0xAD58, 0x8304},+    {0xAD59, 0x82E5},+    {0xAD5A, 0x8302},+    {0xAD5B, 0x8309},+    {0xAD5C, 0x82D2},+    {0xAD5D, 0x82D7},+    {0xAD5E, 0x82F1},+    {0xAD5F, 0x8301},+    {0xAD60, 0x82DC},+    {0xAD61, 0x82D4},+    {0xAD62, 0x82D1},+    {0xAD63, 0x82DE},+    {0xAD64, 0x82D3},+    {0xAD65, 0x82DF},+    {0xAD66, 0x82EF},+    {0xAD67, 0x8306},+    {0xAD68, 0x8650},+    {0xAD69, 0x8679},+    {0xAD6A, 0x867B},+    {0xAD6B, 0x867A},+    {0xAD6C, 0x884D},+    {0xAD6D, 0x886B},+    {0xAD6E, 0x8981},+    {0xAD6F, 0x89D4},+    {0xAD70, 0x8A08},+    {0xAD71, 0x8A02},+    {0xAD72, 0x8A03},+    {0xAD73, 0x8C9E},+    {0xAD74, 0x8CA0},+    {0xAD75, 0x8D74},+    {0xAD76, 0x8D73},+    {0xAD77, 0x8DB4},+    {0xAD78, 0x8ECD},+    {0xAD79, 0x8ECC},+    {0xAD7A, 0x8FF0},+    {0xAD7B, 0x8FE6},+    {0xAD7C, 0x8FE2},+    {0xAD7D, 0x8FEA},+    {0xAD7E, 0x8FE5},+    {0xADA1, 0x8FED},+    {0xADA2, 0x8FEB},+    {0xADA3, 0x8FE4},+    {0xADA4, 0x8FE8},+    {0xADA5, 0x90CA},+    {0xADA6, 0x90CE},+    {0xADA7, 0x90C1},+    {0xADA8, 0x90C3},+    {0xADA9, 0x914B},+    {0xADAA, 0x914A},+    {0xADAB, 0x91CD},+    {0xADAC, 0x9582},+    {0xADAD, 0x9650},+    {0xADAE, 0x964B},+    {0xADAF, 0x964C},+    {0xADB0, 0x964D},+    {0xADB1, 0x9762},+    {0xADB2, 0x9769},+    {0xADB3, 0x97CB},+    {0xADB4, 0x97ED},+    {0xADB5, 0x97F3},+    {0xADB6, 0x9801},+    {0xADB7, 0x98A8},+    {0xADB8, 0x98DB},+    {0xADB9, 0x98DF},+    {0xADBA, 0x9996},+    {0xADBB, 0x9999},+    {0xADBC, 0x4E58},+    {0xADBD, 0x4EB3},+    {0xADBE, 0x500C},+    {0xADBF, 0x500D},+    {0xADC0, 0x5023},+    {0xADC1, 0x4FEF},+    {0xADC2, 0x5026},+    {0xADC3, 0x5025},+    {0xADC4, 0x4FF8},+    {0xADC5, 0x5029},+    {0xADC6, 0x5016},+    {0xADC7, 0x5006},+    {0xADC8, 0x503C},+    {0xADC9, 0x501F},+    {0xADCA, 0x501A},+    {0xADCB, 0x5012},+    {0xADCC, 0x5011},+    {0xADCD, 0x4FFA},+    {0xADCE, 0x5000},+    {0xADCF, 0x5014},+    {0xADD0, 0x5028},+    {0xADD1, 0x4FF1},+    {0xADD2, 0x5021},+    {0xADD3, 0x500B},+    {0xADD4, 0x5019},+    {0xADD5, 0x5018},+    {0xADD6, 0x4FF3},+    {0xADD7, 0x4FEE},+    {0xADD8, 0x502D},+    {0xADD9, 0x502A},+    {0xADDA, 0x4FFE},+    {0xADDB, 0x502B},+    {0xADDC, 0x5009},+    {0xADDD, 0x517C},+    {0xADDE, 0x51A4},+    {0xADDF, 0x51A5},+    {0xADE0, 0x51A2},+    {0xADE1, 0x51CD},+    {0xADE2, 0x51CC},+    {0xADE3, 0x51C6},+    {0xADE4, 0x51CB},+    {0xADE5, 0x5256},+    {0xADE6, 0x525C},+    {0xADE7, 0x5254},+    {0xADE8, 0x525B},+    {0xADE9, 0x525D},+    {0xADEA, 0x532A},+    {0xADEB, 0x537F},+    {0xADEC, 0x539F},+    {0xADED, 0x539D},+    {0xADEE, 0x53DF},+    {0xADEF, 0x54E8},+    {0xADF0, 0x5510},+    {0xADF1, 0x5501},+    {0xADF2, 0x5537},+    {0xADF3, 0x54FC},+    {0xADF4, 0x54E5},+    {0xADF5, 0x54F2},+    {0xADF6, 0x5506},+    {0xADF7, 0x54FA},+    {0xADF8, 0x5514},+    {0xADF9, 0x54E9},+    {0xADFA, 0x54ED},+    {0xADFB, 0x54E1},+    {0xADFC, 0x5509},+    {0xADFD, 0x54EE},+    {0xADFE, 0x54EA},+    {0xAE40, 0x54E6},+    {0xAE41, 0x5527},+    {0xAE42, 0x5507},+    {0xAE43, 0x54FD},+    {0xAE44, 0x550F},+    {0xAE45, 0x5703},+    {0xAE46, 0x5704},+    {0xAE47, 0x57C2},+    {0xAE48, 0x57D4},+    {0xAE49, 0x57CB},+    {0xAE4A, 0x57C3},+    {0xAE4B, 0x5809},+    {0xAE4C, 0x590F},+    {0xAE4D, 0x5957},+    {0xAE4E, 0x5958},+    {0xAE4F, 0x595A},+    {0xAE50, 0x5A11},+    {0xAE51, 0x5A18},+    {0xAE52, 0x5A1C},+    {0xAE53, 0x5A1F},+    {0xAE54, 0x5A1B},+    {0xAE55, 0x5A13},+    {0xAE56, 0x59EC},+    {0xAE57, 0x5A20},+    {0xAE58, 0x5A23},+    {0xAE59, 0x5A29},+    {0xAE5A, 0x5A25},+    {0xAE5B, 0x5A0C},+    {0xAE5C, 0x5A09},+    {0xAE5D, 0x5B6B},+    {0xAE5E, 0x5C58},+    {0xAE5F, 0x5BB0},+    {0xAE60, 0x5BB3},+    {0xAE61, 0x5BB6},+    {0xAE62, 0x5BB4},+    {0xAE63, 0x5BAE},+    {0xAE64, 0x5BB5},+    {0xAE65, 0x5BB9},+    {0xAE66, 0x5BB8},+    {0xAE67, 0x5C04},+    {0xAE68, 0x5C51},+    {0xAE69, 0x5C55},+    {0xAE6A, 0x5C50},+    {0xAE6B, 0x5CED},+    {0xAE6C, 0x5CFD},+    {0xAE6D, 0x5CFB},+    {0xAE6E, 0x5CEA},+    {0xAE6F, 0x5CE8},+    {0xAE70, 0x5CF0},+    {0xAE71, 0x5CF6},+    {0xAE72, 0x5D01},+    {0xAE73, 0x5CF4},+    {0xAE74, 0x5DEE},+    {0xAE75, 0x5E2D},+    {0xAE76, 0x5E2B},+    {0xAE77, 0x5EAB},+    {0xAE78, 0x5EAD},+    {0xAE79, 0x5EA7},+    {0xAE7A, 0x5F31},+    {0xAE7B, 0x5F92},+    {0xAE7C, 0x5F91},+    {0xAE7D, 0x5F90},+    {0xAE7E, 0x6059},+    {0xAEA1, 0x6063},+    {0xAEA2, 0x6065},+    {0xAEA3, 0x6050},+    {0xAEA4, 0x6055},+    {0xAEA5, 0x606D},+    {0xAEA6, 0x6069},+    {0xAEA7, 0x606F},+    {0xAEA8, 0x6084},+    {0xAEA9, 0x609F},+    {0xAEAA, 0x609A},+    {0xAEAB, 0x608D},+    {0xAEAC, 0x6094},+    {0xAEAD, 0x608C},+    {0xAEAE, 0x6085},+    {0xAEAF, 0x6096},+    {0xAEB0, 0x6247},+    {0xAEB1, 0x62F3},+    {0xAEB2, 0x6308},+    {0xAEB3, 0x62FF},+    {0xAEB4, 0x634E},+    {0xAEB5, 0x633E},+    {0xAEB6, 0x632F},+    {0xAEB7, 0x6355},+    {0xAEB8, 0x6342},+    {0xAEB9, 0x6346},+    {0xAEBA, 0x634F},+    {0xAEBB, 0x6349},+    {0xAEBC, 0x633A},+    {0xAEBD, 0x6350},+    {0xAEBE, 0x633D},+    {0xAEBF, 0x632A},+    {0xAEC0, 0x632B},+    {0xAEC1, 0x6328},+    {0xAEC2, 0x634D},+    {0xAEC3, 0x634C},+    {0xAEC4, 0x6548},+    {0xAEC5, 0x6549},+    {0xAEC6, 0x6599},+    {0xAEC7, 0x65C1},+    {0xAEC8, 0x65C5},+    {0xAEC9, 0x6642},+    {0xAECA, 0x6649},+    {0xAECB, 0x664F},+    {0xAECC, 0x6643},+    {0xAECD, 0x6652},+    {0xAECE, 0x664C},+    {0xAECF, 0x6645},+    {0xAED0, 0x6641},+    {0xAED1, 0x66F8},+    {0xAED2, 0x6714},+    {0xAED3, 0x6715},+    {0xAED4, 0x6717},+    {0xAED5, 0x6821},+    {0xAED6, 0x6838},+    {0xAED7, 0x6848},+    {0xAED8, 0x6846},+    {0xAED9, 0x6853},+    {0xAEDA, 0x6839},+    {0xAEDB, 0x6842},+    {0xAEDC, 0x6854},+    {0xAEDD, 0x6829},+    {0xAEDE, 0x68B3},+    {0xAEDF, 0x6817},+    {0xAEE0, 0x684C},+    {0xAEE1, 0x6851},+    {0xAEE2, 0x683D},+    {0xAEE3, 0x67F4},+    {0xAEE4, 0x6850},+    {0xAEE5, 0x6840},+    {0xAEE6, 0x683C},+    {0xAEE7, 0x6843},+    {0xAEE8, 0x682A},+    {0xAEE9, 0x6845},+    {0xAEEA, 0x6813},+    {0xAEEB, 0x6818},+    {0xAEEC, 0x6841},+    {0xAEED, 0x6B8A},+    {0xAEEE, 0x6B89},+    {0xAEEF, 0x6BB7},+    {0xAEF0, 0x6C23},+    {0xAEF1, 0x6C27},+    {0xAEF2, 0x6C28},+    {0xAEF3, 0x6C26},+    {0xAEF4, 0x6C24},+    {0xAEF5, 0x6CF0},+    {0xAEF6, 0x6D6A},+    {0xAEF7, 0x6D95},+    {0xAEF8, 0x6D88},+    {0xAEF9, 0x6D87},+    {0xAEFA, 0x6D66},+    {0xAEFB, 0x6D78},+    {0xAEFC, 0x6D77},+    {0xAEFD, 0x6D59},+    {0xAEFE, 0x6D93},+    {0xAF40, 0x6D6C},+    {0xAF41, 0x6D89},+    {0xAF42, 0x6D6E},+    {0xAF43, 0x6D5A},+    {0xAF44, 0x6D74},+    {0xAF45, 0x6D69},+    {0xAF46, 0x6D8C},+    {0xAF47, 0x6D8A},+    {0xAF48, 0x6D79},+    {0xAF49, 0x6D85},+    {0xAF4A, 0x6D65},+    {0xAF4B, 0x6D94},+    {0xAF4C, 0x70CA},+    {0xAF4D, 0x70D8},+    {0xAF4E, 0x70E4},+    {0xAF4F, 0x70D9},+    {0xAF50, 0x70C8},+    {0xAF51, 0x70CF},+    {0xAF52, 0x7239},+    {0xAF53, 0x7279},+    {0xAF54, 0x72FC},+    {0xAF55, 0x72F9},+    {0xAF56, 0x72FD},+    {0xAF57, 0x72F8},+    {0xAF58, 0x72F7},+    {0xAF59, 0x7386},+    {0xAF5A, 0x73ED},+    {0xAF5B, 0x7409},+    {0xAF5C, 0x73EE},+    {0xAF5D, 0x73E0},+    {0xAF5E, 0x73EA},+    {0xAF5F, 0x73DE},+    {0xAF60, 0x7554},+    {0xAF61, 0x755D},+    {0xAF62, 0x755C},+    {0xAF63, 0x755A},+    {0xAF64, 0x7559},+    {0xAF65, 0x75BE},+    {0xAF66, 0x75C5},+    {0xAF67, 0x75C7},+    {0xAF68, 0x75B2},+    {0xAF69, 0x75B3},+    {0xAF6A, 0x75BD},+    {0xAF6B, 0x75BC},+    {0xAF6C, 0x75B9},+    {0xAF6D, 0x75C2},+    {0xAF6E, 0x75B8},+    {0xAF6F, 0x768B},+    {0xAF70, 0x76B0},+    {0xAF71, 0x76CA},+    {0xAF72, 0x76CD},+    {0xAF73, 0x76CE},+    {0xAF74, 0x7729},+    {0xAF75, 0x771F},+    {0xAF76, 0x7720},+    {0xAF77, 0x7728},+    {0xAF78, 0x77E9},+    {0xAF79, 0x7830},+    {0xAF7A, 0x7827},+    {0xAF7B, 0x7838},+    {0xAF7C, 0x781D},+    {0xAF7D, 0x7834},+    {0xAF7E, 0x7837},+    {0xAFA1, 0x7825},+    {0xAFA2, 0x782D},+    {0xAFA3, 0x7820},+    {0xAFA4, 0x781F},+    {0xAFA5, 0x7832},+    {0xAFA6, 0x7955},+    {0xAFA7, 0x7950},+    {0xAFA8, 0x7960},+    {0xAFA9, 0x795F},+    {0xAFAA, 0x7956},+    {0xAFAB, 0x795E},+    {0xAFAC, 0x795D},+    {0xAFAD, 0x7957},+    {0xAFAE, 0x795A},+    {0xAFAF, 0x79E4},+    {0xAFB0, 0x79E3},+    {0xAFB1, 0x79E7},+    {0xAFB2, 0x79DF},+    {0xAFB3, 0x79E6},+    {0xAFB4, 0x79E9},+    {0xAFB5, 0x79D8},+    {0xAFB6, 0x7A84},+    {0xAFB7, 0x7A88},+    {0xAFB8, 0x7AD9},+    {0xAFB9, 0x7B06},+    {0xAFBA, 0x7B11},+    {0xAFBB, 0x7C89},+    {0xAFBC, 0x7D21},+    {0xAFBD, 0x7D17},+    {0xAFBE, 0x7D0B},+    {0xAFBF, 0x7D0A},+    {0xAFC0, 0x7D20},+    {0xAFC1, 0x7D22},+    {0xAFC2, 0x7D14},+    {0xAFC3, 0x7D10},+    {0xAFC4, 0x7D15},+    {0xAFC5, 0x7D1A},+    {0xAFC6, 0x7D1C},+    {0xAFC7, 0x7D0D},+    {0xAFC8, 0x7D19},+    {0xAFC9, 0x7D1B},+    {0xAFCA, 0x7F3A},+    {0xAFCB, 0x7F5F},+    {0xAFCC, 0x7F94},+    {0xAFCD, 0x7FC5},+    {0xAFCE, 0x7FC1},+    {0xAFCF, 0x8006},+    {0xAFD0, 0x8018},+    {0xAFD1, 0x8015},+    {0xAFD2, 0x8019},+    {0xAFD3, 0x8017},+    {0xAFD4, 0x803D},+    {0xAFD5, 0x803F},+    {0xAFD6, 0x80F1},+    {0xAFD7, 0x8102},+    {0xAFD8, 0x80F0},+    {0xAFD9, 0x8105},+    {0xAFDA, 0x80ED},+    {0xAFDB, 0x80F4},+    {0xAFDC, 0x8106},+    {0xAFDD, 0x80F8},+    {0xAFDE, 0x80F3},+    {0xAFDF, 0x8108},+    {0xAFE0, 0x80FD},+    {0xAFE1, 0x810A},+    {0xAFE2, 0x80FC},+    {0xAFE3, 0x80EF},+    {0xAFE4, 0x81ED},+    {0xAFE5, 0x81EC},+    {0xAFE6, 0x8200},+    {0xAFE7, 0x8210},+    {0xAFE8, 0x822A},+    {0xAFE9, 0x822B},+    {0xAFEA, 0x8228},+    {0xAFEB, 0x822C},+    {0xAFEC, 0x82BB},+    {0xAFED, 0x832B},+    {0xAFEE, 0x8352},+    {0xAFEF, 0x8354},+    {0xAFF0, 0x834A},+    {0xAFF1, 0x8338},+    {0xAFF2, 0x8350},+    {0xAFF3, 0x8349},+    {0xAFF4, 0x8335},+    {0xAFF5, 0x8334},+    {0xAFF6, 0x834F},+    {0xAFF7, 0x8332},+    {0xAFF8, 0x8339},+    {0xAFF9, 0x8336},+    {0xAFFA, 0x8317},+    {0xAFFB, 0x8340},+    {0xAFFC, 0x8331},+    {0xAFFD, 0x8328},+    {0xAFFE, 0x8343},+    {0xB040, 0x8654},+    {0xB041, 0x868A},+    {0xB042, 0x86AA},+    {0xB043, 0x8693},+    {0xB044, 0x86A4},+    {0xB045, 0x86A9},+    {0xB046, 0x868C},+    {0xB047, 0x86A3},+    {0xB048, 0x869C},+    {0xB049, 0x8870},+    {0xB04A, 0x8877},+    {0xB04B, 0x8881},+    {0xB04C, 0x8882},+    {0xB04D, 0x887D},+    {0xB04E, 0x8879},+    {0xB04F, 0x8A18},+    {0xB050, 0x8A10},+    {0xB051, 0x8A0E},+    {0xB052, 0x8A0C},+    {0xB053, 0x8A15},+    {0xB054, 0x8A0A},+    {0xB055, 0x8A17},+    {0xB056, 0x8A13},+    {0xB057, 0x8A16},+    {0xB058, 0x8A0F},+    {0xB059, 0x8A11},+    {0xB05A, 0x8C48},+    {0xB05B, 0x8C7A},+    {0xB05C, 0x8C79},+    {0xB05D, 0x8CA1},+    {0xB05E, 0x8CA2},+    {0xB05F, 0x8D77},+    {0xB060, 0x8EAC},+    {0xB061, 0x8ED2},+    {0xB062, 0x8ED4},+    {0xB063, 0x8ECF},+    {0xB064, 0x8FB1},+    {0xB065, 0x9001},+    {0xB066, 0x9006},+    {0xB067, 0x8FF7},+    {0xB068, 0x9000},+    {0xB069, 0x8FFA},+    {0xB06A, 0x8FF4},+    {0xB06B, 0x9003},+    {0xB06C, 0x8FFD},+    {0xB06D, 0x9005},+    {0xB06E, 0x8FF8},+    {0xB06F, 0x9095},+    {0xB070, 0x90E1},+    {0xB071, 0x90DD},+    {0xB072, 0x90E2},+    {0xB073, 0x9152},+    {0xB074, 0x914D},+    {0xB075, 0x914C},+    {0xB076, 0x91D8},+    {0xB077, 0x91DD},+    {0xB078, 0x91D7},+    {0xB079, 0x91DC},+    {0xB07A, 0x91D9},+    {0xB07B, 0x9583},+    {0xB07C, 0x9662},+    {0xB07D, 0x9663},+    {0xB07E, 0x9661},+    {0xB0A1, 0x965B},+    {0xB0A2, 0x965D},+    {0xB0A3, 0x9664},+    {0xB0A4, 0x9658},+    {0xB0A5, 0x965E},+    {0xB0A6, 0x96BB},+    {0xB0A7, 0x98E2},+    {0xB0A8, 0x99AC},+    {0xB0A9, 0x9AA8},+    {0xB0AA, 0x9AD8},+    {0xB0AB, 0x9B25},+    {0xB0AC, 0x9B32},+    {0xB0AD, 0x9B3C},+    {0xB0AE, 0x4E7E},+    {0xB0AF, 0x507A},+    {0xB0B0, 0x507D},+    {0xB0B1, 0x505C},+    {0xB0B2, 0x5047},+    {0xB0B3, 0x5043},+    {0xB0B4, 0x504C},+    {0xB0B5, 0x505A},+    {0xB0B6, 0x5049},+    {0xB0B7, 0x5065},+    {0xB0B8, 0x5076},+    {0xB0B9, 0x504E},+    {0xB0BA, 0x5055},+    {0xB0BB, 0x5075},+    {0xB0BC, 0x5074},+    {0xB0BD, 0x5077},+    {0xB0BE, 0x504F},+    {0xB0BF, 0x500F},+    {0xB0C0, 0x506F},+    {0xB0C1, 0x506D},+    {0xB0C2, 0x515C},+    {0xB0C3, 0x5195},+    {0xB0C4, 0x51F0},+    {0xB0C5, 0x526A},+    {0xB0C6, 0x526F},+    {0xB0C7, 0x52D2},+    {0xB0C8, 0x52D9},+    {0xB0C9, 0x52D8},+    {0xB0CA, 0x52D5},+    {0xB0CB, 0x5310},+    {0xB0CC, 0x530F},+    {0xB0CD, 0x5319},+    {0xB0CE, 0x533F},+    {0xB0CF, 0x5340},+    {0xB0D0, 0x533E},+    {0xB0D1, 0x53C3},+    {0xB0D2, 0x66FC},+    {0xB0D3, 0x5546},+    {0xB0D4, 0x556A},+    {0xB0D5, 0x5566},+    {0xB0D6, 0x5544},+    {0xB0D7, 0x555E},+    {0xB0D8, 0x5561},+    {0xB0D9, 0x5543},+    {0xB0DA, 0x554A},+    {0xB0DB, 0x5531},+    {0xB0DC, 0x5556},+    {0xB0DD, 0x554F},+    {0xB0DE, 0x5555},+    {0xB0DF, 0x552F},+    {0xB0E0, 0x5564},+    {0xB0E1, 0x5538},+    {0xB0E2, 0x552E},+    {0xB0E3, 0x555C},+    {0xB0E4, 0x552C},+    {0xB0E5, 0x5563},+    {0xB0E6, 0x5533},+    {0xB0E7, 0x5541},+    {0xB0E8, 0x5557},+    {0xB0E9, 0x5708},+    {0xB0EA, 0x570B},+    {0xB0EB, 0x5709},+    {0xB0EC, 0x57DF},+    {0xB0ED, 0x5805},+    {0xB0EE, 0x580A},+    {0xB0EF, 0x5806},+    {0xB0F0, 0x57E0},+    {0xB0F1, 0x57E4},+    {0xB0F2, 0x57FA},+    {0xB0F3, 0x5802},+    {0xB0F4, 0x5835},+    {0xB0F5, 0x57F7},+    {0xB0F6, 0x57F9},+    {0xB0F7, 0x5920},+    {0xB0F8, 0x5962},+    {0xB0F9, 0x5A36},+    {0xB0FA, 0x5A41},+    {0xB0FB, 0x5A49},+    {0xB0FC, 0x5A66},+    {0xB0FD, 0x5A6A},+    {0xB0FE, 0x5A40},+    {0xB140, 0x5A3C},+    {0xB141, 0x5A62},+    {0xB142, 0x5A5A},+    {0xB143, 0x5A46},+    {0xB144, 0x5A4A},+    {0xB145, 0x5B70},+    {0xB146, 0x5BC7},+    {0xB147, 0x5BC5},+    {0xB148, 0x5BC4},+    {0xB149, 0x5BC2},+    {0xB14A, 0x5BBF},+    {0xB14B, 0x5BC6},+    {0xB14C, 0x5C09},+    {0xB14D, 0x5C08},+    {0xB14E, 0x5C07},+    {0xB14F, 0x5C60},+    {0xB150, 0x5C5C},+    {0xB151, 0x5C5D},+    {0xB152, 0x5D07},+    {0xB153, 0x5D06},+    {0xB154, 0x5D0E},+    {0xB155, 0x5D1B},+    {0xB156, 0x5D16},+    {0xB157, 0x5D22},+    {0xB158, 0x5D11},+    {0xB159, 0x5D29},+    {0xB15A, 0x5D14},+    {0xB15B, 0x5D19},+    {0xB15C, 0x5D24},+    {0xB15D, 0x5D27},+    {0xB15E, 0x5D17},+    {0xB15F, 0x5DE2},+    {0xB160, 0x5E38},+    {0xB161, 0x5E36},+    {0xB162, 0x5E33},+    {0xB163, 0x5E37},+    {0xB164, 0x5EB7},+    {0xB165, 0x5EB8},+    {0xB166, 0x5EB6},+    {0xB167, 0x5EB5},+    {0xB168, 0x5EBE},+    {0xB169, 0x5F35},+    {0xB16A, 0x5F37},+    {0xB16B, 0x5F57},+    {0xB16C, 0x5F6C},+    {0xB16D, 0x5F69},+    {0xB16E, 0x5F6B},+    {0xB16F, 0x5F97},+    {0xB170, 0x5F99},+    {0xB171, 0x5F9E},+    {0xB172, 0x5F98},+    {0xB173, 0x5FA1},+    {0xB174, 0x5FA0},+    {0xB175, 0x5F9C},+    {0xB176, 0x607F},+    {0xB177, 0x60A3},+    {0xB178, 0x6089},+    {0xB179, 0x60A0},+    {0xB17A, 0x60A8},+    {0xB17B, 0x60CB},+    {0xB17C, 0x60B4},+    {0xB17D, 0x60E6},+    {0xB17E, 0x60BD},+    {0xB1A1, 0x60C5},+    {0xB1A2, 0x60BB},+    {0xB1A3, 0x60B5},+    {0xB1A4, 0x60DC},+    {0xB1A5, 0x60BC},+    {0xB1A6, 0x60D8},+    {0xB1A7, 0x60D5},+    {0xB1A8, 0x60C6},+    {0xB1A9, 0x60DF},+    {0xB1AA, 0x60B8},+    {0xB1AB, 0x60DA},+    {0xB1AC, 0x60C7},+    {0xB1AD, 0x621A},+    {0xB1AE, 0x621B},+    {0xB1AF, 0x6248},+    {0xB1B0, 0x63A0},+    {0xB1B1, 0x63A7},+    {0xB1B2, 0x6372},+    {0xB1B3, 0x6396},+    {0xB1B4, 0x63A2},+    {0xB1B5, 0x63A5},+    {0xB1B6, 0x6377},+    {0xB1B7, 0x6367},+    {0xB1B8, 0x6398},+    {0xB1B9, 0x63AA},+    {0xB1BA, 0x6371},+    {0xB1BB, 0x63A9},+    {0xB1BC, 0x6389},+    {0xB1BD, 0x6383},+    {0xB1BE, 0x639B},+    {0xB1BF, 0x636B},+    {0xB1C0, 0x63A8},+    {0xB1C1, 0x6384},+    {0xB1C2, 0x6388},+    {0xB1C3, 0x6399},+    {0xB1C4, 0x63A1},+    {0xB1C5, 0x63AC},+    {0xB1C6, 0x6392},+    {0xB1C7, 0x638F},+    {0xB1C8, 0x6380},+    {0xB1C9, 0x637B},+    {0xB1CA, 0x6369},+    {0xB1CB, 0x6368},+    {0xB1CC, 0x637A},+    {0xB1CD, 0x655D},+    {0xB1CE, 0x6556},+    {0xB1CF, 0x6551},+    {0xB1D0, 0x6559},+    {0xB1D1, 0x6557},+    {0xB1D2, 0x555F},+    {0xB1D3, 0x654F},+    {0xB1D4, 0x6558},+    {0xB1D5, 0x6555},+    {0xB1D6, 0x6554},+    {0xB1D7, 0x659C},+    {0xB1D8, 0x659B},+    {0xB1D9, 0x65AC},+    {0xB1DA, 0x65CF},+    {0xB1DB, 0x65CB},+    {0xB1DC, 0x65CC},+    {0xB1DD, 0x65CE},+    {0xB1DE, 0x665D},+    {0xB1DF, 0x665A},+    {0xB1E0, 0x6664},+    {0xB1E1, 0x6668},+    {0xB1E2, 0x6666},+    {0xB1E3, 0x665E},+    {0xB1E4, 0x66F9},+    {0xB1E5, 0x52D7},+    {0xB1E6, 0x671B},+    {0xB1E7, 0x6881},+    {0xB1E8, 0x68AF},+    {0xB1E9, 0x68A2},+    {0xB1EA, 0x6893},+    {0xB1EB, 0x68B5},+    {0xB1EC, 0x687F},+    {0xB1ED, 0x6876},+    {0xB1EE, 0x68B1},+    {0xB1EF, 0x68A7},+    {0xB1F0, 0x6897},+    {0xB1F1, 0x68B0},+    {0xB1F2, 0x6883},+    {0xB1F3, 0x68C4},+    {0xB1F4, 0x68AD},+    {0xB1F5, 0x6886},+    {0xB1F6, 0x6885},+    {0xB1F7, 0x6894},+    {0xB1F8, 0x689D},+    {0xB1F9, 0x68A8},+    {0xB1FA, 0x689F},+    {0xB1FB, 0x68A1},+    {0xB1FC, 0x6882},+    {0xB1FD, 0x6B32},+    {0xB1FE, 0x6BBA},+    {0xB240, 0x6BEB},+    {0xB241, 0x6BEC},+    {0xB242, 0x6C2B},+    {0xB243, 0x6D8E},+    {0xB244, 0x6DBC},+    {0xB245, 0x6DF3},+    {0xB246, 0x6DD9},+    {0xB247, 0x6DB2},+    {0xB248, 0x6DE1},+    {0xB249, 0x6DCC},+    {0xB24A, 0x6DE4},+    {0xB24B, 0x6DFB},+    {0xB24C, 0x6DFA},+    {0xB24D, 0x6E05},+    {0xB24E, 0x6DC7},+    {0xB24F, 0x6DCB},+    {0xB250, 0x6DAF},+    {0xB251, 0x6DD1},+    {0xB252, 0x6DAE},+    {0xB253, 0x6DDE},+    {0xB254, 0x6DF9},+    {0xB255, 0x6DB8},+    {0xB256, 0x6DF7},+    {0xB257, 0x6DF5},+    {0xB258, 0x6DC5},+    {0xB259, 0x6DD2},+    {0xB25A, 0x6E1A},+    {0xB25B, 0x6DB5},+    {0xB25C, 0x6DDA},+    {0xB25D, 0x6DEB},+    {0xB25E, 0x6DD8},+    {0xB25F, 0x6DEA},+    {0xB260, 0x6DF1},+    {0xB261, 0x6DEE},+    {0xB262, 0x6DE8},+    {0xB263, 0x6DC6},+    {0xB264, 0x6DC4},+    {0xB265, 0x6DAA},+    {0xB266, 0x6DEC},+    {0xB267, 0x6DBF},+    {0xB268, 0x6DE6},+    {0xB269, 0x70F9},+    {0xB26A, 0x7109},+    {0xB26B, 0x710A},+    {0xB26C, 0x70FD},+    {0xB26D, 0x70EF},+    {0xB26E, 0x723D},+    {0xB26F, 0x727D},+    {0xB270, 0x7281},+    {0xB271, 0x731C},+    {0xB272, 0x731B},+    {0xB273, 0x7316},+    {0xB274, 0x7313},+    {0xB275, 0x7319},+    {0xB276, 0x7387},+    {0xB277, 0x7405},+    {0xB278, 0x740A},+    {0xB279, 0x7403},+    {0xB27A, 0x7406},+    {0xB27B, 0x73FE},+    {0xB27C, 0x740D},+    {0xB27D, 0x74E0},+    {0xB27E, 0x74F6},+    {0xB2A1, 0x74F7},+    {0xB2A2, 0x751C},+    {0xB2A3, 0x7522},+    {0xB2A4, 0x7565},+    {0xB2A5, 0x7566},+    {0xB2A6, 0x7562},+    {0xB2A7, 0x7570},+    {0xB2A8, 0x758F},+    {0xB2A9, 0x75D4},+    {0xB2AA, 0x75D5},+    {0xB2AB, 0x75B5},+    {0xB2AC, 0x75CA},+    {0xB2AD, 0x75CD},+    {0xB2AE, 0x768E},+    {0xB2AF, 0x76D4},+    {0xB2B0, 0x76D2},+    {0xB2B1, 0x76DB},+    {0xB2B2, 0x7737},+    {0xB2B3, 0x773E},+    {0xB2B4, 0x773C},+    {0xB2B5, 0x7736},+    {0xB2B6, 0x7738},+    {0xB2B7, 0x773A},+    {0xB2B8, 0x786B},+    {0xB2B9, 0x7843},+    {0xB2BA, 0x784E},+    {0xB2BB, 0x7965},+    {0xB2BC, 0x7968},+    {0xB2BD, 0x796D},+    {0xB2BE, 0x79FB},+    {0xB2BF, 0x7A92},+    {0xB2C0, 0x7A95},+    {0xB2C1, 0x7B20},+    {0xB2C2, 0x7B28},+    {0xB2C3, 0x7B1B},+    {0xB2C4, 0x7B2C},+    {0xB2C5, 0x7B26},+    {0xB2C6, 0x7B19},+    {0xB2C7, 0x7B1E},+    {0xB2C8, 0x7B2E},+    {0xB2C9, 0x7C92},+    {0xB2CA, 0x7C97},+    {0xB2CB, 0x7C95},+    {0xB2CC, 0x7D46},+    {0xB2CD, 0x7D43},+    {0xB2CE, 0x7D71},+    {0xB2CF, 0x7D2E},+    {0xB2D0, 0x7D39},+    {0xB2D1, 0x7D3C},+    {0xB2D2, 0x7D40},+    {0xB2D3, 0x7D30},+    {0xB2D4, 0x7D33},+    {0xB2D5, 0x7D44},+    {0xB2D6, 0x7D2F},+    {0xB2D7, 0x7D42},+    {0xB2D8, 0x7D32},+    {0xB2D9, 0x7D31},+    {0xB2DA, 0x7F3D},+    {0xB2DB, 0x7F9E},+    {0xB2DC, 0x7F9A},+    {0xB2DD, 0x7FCC},+    {0xB2DE, 0x7FCE},+    {0xB2DF, 0x7FD2},+    {0xB2E0, 0x801C},+    {0xB2E1, 0x804A},+    {0xB2E2, 0x8046},+    {0xB2E3, 0x812F},+    {0xB2E4, 0x8116},+    {0xB2E5, 0x8123},+    {0xB2E6, 0x812B},+    {0xB2E7, 0x8129},+    {0xB2E8, 0x8130},+    {0xB2E9, 0x8124},+    {0xB2EA, 0x8202},+    {0xB2EB, 0x8235},+    {0xB2EC, 0x8237},+    {0xB2ED, 0x8236},+    {0xB2EE, 0x8239},+    {0xB2EF, 0x838E},+    {0xB2F0, 0x839E},+    {0xB2F1, 0x8398},+    {0xB2F2, 0x8378},+    {0xB2F3, 0x83A2},+    {0xB2F4, 0x8396},+    {0xB2F5, 0x83BD},+    {0xB2F6, 0x83AB},+    {0xB2F7, 0x8392},+    {0xB2F8, 0x838A},+    {0xB2F9, 0x8393},+    {0xB2FA, 0x8389},+    {0xB2FB, 0x83A0},+    {0xB2FC, 0x8377},+    {0xB2FD, 0x837B},+    {0xB2FE, 0x837C},+    {0xB340, 0x8386},+    {0xB341, 0x83A7},+    {0xB342, 0x8655},+    {0xB343, 0x5F6A},+    {0xB344, 0x86C7},+    {0xB345, 0x86C0},+    {0xB346, 0x86B6},+    {0xB347, 0x86C4},+    {0xB348, 0x86B5},+    {0xB349, 0x86C6},+    {0xB34A, 0x86CB},+    {0xB34B, 0x86B1},+    {0xB34C, 0x86AF},+    {0xB34D, 0x86C9},+    {0xB34E, 0x8853},+    {0xB34F, 0x889E},+    {0xB350, 0x8888},+    {0xB351, 0x88AB},+    {0xB352, 0x8892},+    {0xB353, 0x8896},+    {0xB354, 0x888D},+    {0xB355, 0x888B},+    {0xB356, 0x8993},+    {0xB357, 0x898F},+    {0xB358, 0x8A2A},+    {0xB359, 0x8A1D},+    {0xB35A, 0x8A23},+    {0xB35B, 0x8A25},+    {0xB35C, 0x8A31},+    {0xB35D, 0x8A2D},+    {0xB35E, 0x8A1F},+    {0xB35F, 0x8A1B},+    {0xB360, 0x8A22},+    {0xB361, 0x8C49},+    {0xB362, 0x8C5A},+    {0xB363, 0x8CA9},+    {0xB364, 0x8CAC},+    {0xB365, 0x8CAB},+    {0xB366, 0x8CA8},+    {0xB367, 0x8CAA},+    {0xB368, 0x8CA7},+    {0xB369, 0x8D67},+    {0xB36A, 0x8D66},+    {0xB36B, 0x8DBE},+    {0xB36C, 0x8DBA},+    {0xB36D, 0x8EDB},+    {0xB36E, 0x8EDF},+    {0xB36F, 0x9019},+    {0xB370, 0x900D},+    {0xB371, 0x901A},+    {0xB372, 0x9017},+    {0xB373, 0x9023},+    {0xB374, 0x901F},+    {0xB375, 0x901D},+    {0xB376, 0x9010},+    {0xB377, 0x9015},+    {0xB378, 0x901E},+    {0xB379, 0x9020},+    {0xB37A, 0x900F},+    {0xB37B, 0x9022},+    {0xB37C, 0x9016},+    {0xB37D, 0x901B},+    {0xB37E, 0x9014},+    {0xB3A1, 0x90E8},+    {0xB3A2, 0x90ED},+    {0xB3A3, 0x90FD},+    {0xB3A4, 0x9157},+    {0xB3A5, 0x91CE},+    {0xB3A6, 0x91F5},+    {0xB3A7, 0x91E6},+    {0xB3A8, 0x91E3},+    {0xB3A9, 0x91E7},+    {0xB3AA, 0x91ED},+    {0xB3AB, 0x91E9},+    {0xB3AC, 0x9589},+    {0xB3AD, 0x966A},+    {0xB3AE, 0x9675},+    {0xB3AF, 0x9673},+    {0xB3B0, 0x9678},+    {0xB3B1, 0x9670},+    {0xB3B2, 0x9674},+    {0xB3B3, 0x9676},+    {0xB3B4, 0x9677},+    {0xB3B5, 0x966C},+    {0xB3B6, 0x96C0},+    {0xB3B7, 0x96EA},+    {0xB3B8, 0x96E9},+    {0xB3B9, 0x7AE0},+    {0xB3BA, 0x7ADF},+    {0xB3BB, 0x9802},+    {0xB3BC, 0x9803},+    {0xB3BD, 0x9B5A},+    {0xB3BE, 0x9CE5},+    {0xB3BF, 0x9E75},+    {0xB3C0, 0x9E7F},+    {0xB3C1, 0x9EA5},+    {0xB3C2, 0x9EBB},+    {0xB3C3, 0x50A2},+    {0xB3C4, 0x508D},+    {0xB3C5, 0x5085},+    {0xB3C6, 0x5099},+    {0xB3C7, 0x5091},+    {0xB3C8, 0x5080},+    {0xB3C9, 0x5096},+    {0xB3CA, 0x5098},+    {0xB3CB, 0x509A},+    {0xB3CC, 0x6700},+    {0xB3CD, 0x51F1},+    {0xB3CE, 0x5272},+    {0xB3CF, 0x5274},+    {0xB3D0, 0x5275},+    {0xB3D1, 0x5269},+    {0xB3D2, 0x52DE},+    {0xB3D3, 0x52DD},+    {0xB3D4, 0x52DB},+    {0xB3D5, 0x535A},+    {0xB3D6, 0x53A5},+    {0xB3D7, 0x557B},+    {0xB3D8, 0x5580},+    {0xB3D9, 0x55A7},+    {0xB3DA, 0x557C},+    {0xB3DB, 0x558A},+    {0xB3DC, 0x559D},+    {0xB3DD, 0x5598},+    {0xB3DE, 0x5582},+    {0xB3DF, 0x559C},+    {0xB3E0, 0x55AA},+    {0xB3E1, 0x5594},+    {0xB3E2, 0x5587},+    {0xB3E3, 0x558B},+    {0xB3E4, 0x5583},+    {0xB3E5, 0x55B3},+    {0xB3E6, 0x55AE},+    {0xB3E7, 0x559F},+    {0xB3E8, 0x553E},+    {0xB3E9, 0x55B2},+    {0xB3EA, 0x559A},+    {0xB3EB, 0x55BB},+    {0xB3EC, 0x55AC},+    {0xB3ED, 0x55B1},+    {0xB3EE, 0x557E},+    {0xB3EF, 0x5589},+    {0xB3F0, 0x55AB},+    {0xB3F1, 0x5599},+    {0xB3F2, 0x570D},+    {0xB3F3, 0x582F},+    {0xB3F4, 0x582A},+    {0xB3F5, 0x5834},+    {0xB3F6, 0x5824},+    {0xB3F7, 0x5830},+    {0xB3F8, 0x5831},+    {0xB3F9, 0x5821},+    {0xB3FA, 0x581D},+    {0xB3FB, 0x5820},+    {0xB3FC, 0x58F9},+    {0xB3FD, 0x58FA},+    {0xB3FE, 0x5960},+    {0xB440, 0x5A77},+    {0xB441, 0x5A9A},+    {0xB442, 0x5A7F},+    {0xB443, 0x5A92},+    {0xB444, 0x5A9B},+    {0xB445, 0x5AA7},+    {0xB446, 0x5B73},+    {0xB447, 0x5B71},+    {0xB448, 0x5BD2},+    {0xB449, 0x5BCC},+    {0xB44A, 0x5BD3},+    {0xB44B, 0x5BD0},+    {0xB44C, 0x5C0A},+    {0xB44D, 0x5C0B},+    {0xB44E, 0x5C31},+    {0xB44F, 0x5D4C},+    {0xB450, 0x5D50},+    {0xB451, 0x5D34},+    {0xB452, 0x5D47},+    {0xB453, 0x5DFD},+    {0xB454, 0x5E45},+    {0xB455, 0x5E3D},+    {0xB456, 0x5E40},+    {0xB457, 0x5E43},+    {0xB458, 0x5E7E},+    {0xB459, 0x5ECA},+    {0xB45A, 0x5EC1},+    {0xB45B, 0x5EC2},+    {0xB45C, 0x5EC4},+    {0xB45D, 0x5F3C},+    {0xB45E, 0x5F6D},+    {0xB45F, 0x5FA9},+    {0xB460, 0x5FAA},+    {0xB461, 0x5FA8},+    {0xB462, 0x60D1},+    {0xB463, 0x60E1},+    {0xB464, 0x60B2},+    {0xB465, 0x60B6},+    {0xB466, 0x60E0},+    {0xB467, 0x611C},+    {0xB468, 0x6123},+    {0xB469, 0x60FA},+    {0xB46A, 0x6115},+    {0xB46B, 0x60F0},+    {0xB46C, 0x60FB},+    {0xB46D, 0x60F4},+    {0xB46E, 0x6168},+    {0xB46F, 0x60F1},+    {0xB470, 0x610E},+    {0xB471, 0x60F6},+    {0xB472, 0x6109},+    {0xB473, 0x6100},+    {0xB474, 0x6112},+    {0xB475, 0x621F},+    {0xB476, 0x6249},+    {0xB477, 0x63A3},+    {0xB478, 0x638C},+    {0xB479, 0x63CF},+    {0xB47A, 0x63C0},+    {0xB47B, 0x63E9},+    {0xB47C, 0x63C9},+    {0xB47D, 0x63C6},+    {0xB47E, 0x63CD},+    {0xB4A1, 0x63D2},+    {0xB4A2, 0x63E3},+    {0xB4A3, 0x63D0},+    {0xB4A4, 0x63E1},+    {0xB4A5, 0x63D6},+    {0xB4A6, 0x63ED},+    {0xB4A7, 0x63EE},+    {0xB4A8, 0x6376},+    {0xB4A9, 0x63F4},+    {0xB4AA, 0x63EA},+    {0xB4AB, 0x63DB},+    {0xB4AC, 0x6452},+    {0xB4AD, 0x63DA},+    {0xB4AE, 0x63F9},+    {0xB4AF, 0x655E},+    {0xB4B0, 0x6566},+    {0xB4B1, 0x6562},+    {0xB4B2, 0x6563},+    {0xB4B3, 0x6591},+    {0xB4B4, 0x6590},+    {0xB4B5, 0x65AF},+    {0xB4B6, 0x666E},+    {0xB4B7, 0x6670},+    {0xB4B8, 0x6674},+    {0xB4B9, 0x6676},+    {0xB4BA, 0x666F},+    {0xB4BB, 0x6691},+    {0xB4BC, 0x667A},+    {0xB4BD, 0x667E},+    {0xB4BE, 0x6677},+    {0xB4BF, 0x66FE},+    {0xB4C0, 0x66FF},+    {0xB4C1, 0x671F},+    {0xB4C2, 0x671D},+    {0xB4C3, 0x68FA},+    {0xB4C4, 0x68D5},+    {0xB4C5, 0x68E0},+    {0xB4C6, 0x68D8},+    {0xB4C7, 0x68D7},+    {0xB4C8, 0x6905},+    {0xB4C9, 0x68DF},+    {0xB4CA, 0x68F5},+    {0xB4CB, 0x68EE},+    {0xB4CC, 0x68E7},+    {0xB4CD, 0x68F9},+    {0xB4CE, 0x68D2},+    {0xB4CF, 0x68F2},+    {0xB4D0, 0x68E3},+    {0xB4D1, 0x68CB},+    {0xB4D2, 0x68CD},+    {0xB4D3, 0x690D},+    {0xB4D4, 0x6912},+    {0xB4D5, 0x690E},+    {0xB4D6, 0x68C9},+    {0xB4D7, 0x68DA},+    {0xB4D8, 0x696E},+    {0xB4D9, 0x68FB},+    {0xB4DA, 0x6B3E},+    {0xB4DB, 0x6B3A},+    {0xB4DC, 0x6B3D},+    {0xB4DD, 0x6B98},+    {0xB4DE, 0x6B96},+    {0xB4DF, 0x6BBC},+    {0xB4E0, 0x6BEF},+    {0xB4E1, 0x6C2E},+    {0xB4E2, 0x6C2F},+    {0xB4E3, 0x6C2C},+    {0xB4E4, 0x6E2F},+    {0xB4E5, 0x6E38},+    {0xB4E6, 0x6E54},+    {0xB4E7, 0x6E21},+    {0xB4E8, 0x6E32},+    {0xB4E9, 0x6E67},+    {0xB4EA, 0x6E4A},+    {0xB4EB, 0x6E20},+    {0xB4EC, 0x6E25},+    {0xB4ED, 0x6E23},+    {0xB4EE, 0x6E1B},+    {0xB4EF, 0x6E5B},+    {0xB4F0, 0x6E58},+    {0xB4F1, 0x6E24},+    {0xB4F2, 0x6E56},+    {0xB4F3, 0x6E6E},+    {0xB4F4, 0x6E2D},+    {0xB4F5, 0x6E26},+    {0xB4F6, 0x6E6F},+    {0xB4F7, 0x6E34},+    {0xB4F8, 0x6E4D},+    {0xB4F9, 0x6E3A},+    {0xB4FA, 0x6E2C},+    {0xB4FB, 0x6E43},+    {0xB4FC, 0x6E1D},+    {0xB4FD, 0x6E3E},+    {0xB4FE, 0x6ECB},+    {0xB540, 0x6E89},+    {0xB541, 0x6E19},+    {0xB542, 0x6E4E},+    {0xB543, 0x6E63},+    {0xB544, 0x6E44},+    {0xB545, 0x6E72},+    {0xB546, 0x6E69},+    {0xB547, 0x6E5F},+    {0xB548, 0x7119},+    {0xB549, 0x711A},+    {0xB54A, 0x7126},+    {0xB54B, 0x7130},+    {0xB54C, 0x7121},+    {0xB54D, 0x7136},+    {0xB54E, 0x716E},+    {0xB54F, 0x711C},+    {0xB550, 0x724C},+    {0xB551, 0x7284},+    {0xB552, 0x7280},+    {0xB553, 0x7336},+    {0xB554, 0x7325},+    {0xB555, 0x7334},+    {0xB556, 0x7329},+    {0xB557, 0x743A},+    {0xB558, 0x742A},+    {0xB559, 0x7433},+    {0xB55A, 0x7422},+    {0xB55B, 0x7425},+    {0xB55C, 0x7435},+    {0xB55D, 0x7436},+    {0xB55E, 0x7434},+    {0xB55F, 0x742F},+    {0xB560, 0x741B},+    {0xB561, 0x7426},+    {0xB562, 0x7428},+    {0xB563, 0x7525},+    {0xB564, 0x7526},+    {0xB565, 0x756B},+    {0xB566, 0x756A},+    {0xB567, 0x75E2},+    {0xB568, 0x75DB},+    {0xB569, 0x75E3},+    {0xB56A, 0x75D9},+    {0xB56B, 0x75D8},+    {0xB56C, 0x75DE},+    {0xB56D, 0x75E0},+    {0xB56E, 0x767B},+    {0xB56F, 0x767C},+    {0xB570, 0x7696},+    {0xB571, 0x7693},+    {0xB572, 0x76B4},+    {0xB573, 0x76DC},+    {0xB574, 0x774F},+    {0xB575, 0x77ED},+    {0xB576, 0x785D},+    {0xB577, 0x786C},+    {0xB578, 0x786F},+    {0xB579, 0x7A0D},+    {0xB57A, 0x7A08},+    {0xB57B, 0x7A0B},+    {0xB57C, 0x7A05},+    {0xB57D, 0x7A00},+    {0xB57E, 0x7A98},+    {0xB5A1, 0x7A97},+    {0xB5A2, 0x7A96},+    {0xB5A3, 0x7AE5},+    {0xB5A4, 0x7AE3},+    {0xB5A5, 0x7B49},+    {0xB5A6, 0x7B56},+    {0xB5A7, 0x7B46},+    {0xB5A8, 0x7B50},+    {0xB5A9, 0x7B52},+    {0xB5AA, 0x7B54},+    {0xB5AB, 0x7B4D},+    {0xB5AC, 0x7B4B},+    {0xB5AD, 0x7B4F},+    {0xB5AE, 0x7B51},+    {0xB5AF, 0x7C9F},+    {0xB5B0, 0x7CA5},+    {0xB5B1, 0x7D5E},+    {0xB5B2, 0x7D50},+    {0xB5B3, 0x7D68},+    {0xB5B4, 0x7D55},+    {0xB5B5, 0x7D2B},+    {0xB5B6, 0x7D6E},+    {0xB5B7, 0x7D72},+    {0xB5B8, 0x7D61},+    {0xB5B9, 0x7D66},+    {0xB5BA, 0x7D62},+    {0xB5BB, 0x7D70},+    {0xB5BC, 0x7D73},+    {0xB5BD, 0x5584},+    {0xB5BE, 0x7FD4},+    {0xB5BF, 0x7FD5},+    {0xB5C0, 0x800B},+    {0xB5C1, 0x8052},+    {0xB5C2, 0x8085},+    {0xB5C3, 0x8155},+    {0xB5C4, 0x8154},+    {0xB5C5, 0x814B},+    {0xB5C6, 0x8151},+    {0xB5C7, 0x814E},+    {0xB5C8, 0x8139},+    {0xB5C9, 0x8146},+    {0xB5CA, 0x813E},+    {0xB5CB, 0x814C},+    {0xB5CC, 0x8153},+    {0xB5CD, 0x8174},+    {0xB5CE, 0x8212},+    {0xB5CF, 0x821C},+    {0xB5D0, 0x83E9},+    {0xB5D1, 0x8403},+    {0xB5D2, 0x83F8},+    {0xB5D3, 0x840D},+    {0xB5D4, 0x83E0},+    {0xB5D5, 0x83C5},+    {0xB5D6, 0x840B},+    {0xB5D7, 0x83C1},+    {0xB5D8, 0x83EF},+    {0xB5D9, 0x83F1},+    {0xB5DA, 0x83F4},+    {0xB5DB, 0x8457},+    {0xB5DC, 0x840A},+    {0xB5DD, 0x83F0},+    {0xB5DE, 0x840C},+    {0xB5DF, 0x83CC},+    {0xB5E0, 0x83FD},+    {0xB5E1, 0x83F2},+    {0xB5E2, 0x83CA},+    {0xB5E3, 0x8438},+    {0xB5E4, 0x840E},+    {0xB5E5, 0x8404},+    {0xB5E6, 0x83DC},+    {0xB5E7, 0x8407},+    {0xB5E8, 0x83D4},+    {0xB5E9, 0x83DF},+    {0xB5EA, 0x865B},+    {0xB5EB, 0x86DF},+    {0xB5EC, 0x86D9},+    {0xB5ED, 0x86ED},+    {0xB5EE, 0x86D4},+    {0xB5EF, 0x86DB},+    {0xB5F0, 0x86E4},+    {0xB5F1, 0x86D0},+    {0xB5F2, 0x86DE},+    {0xB5F3, 0x8857},+    {0xB5F4, 0x88C1},+    {0xB5F5, 0x88C2},+    {0xB5F6, 0x88B1},+    {0xB5F7, 0x8983},+    {0xB5F8, 0x8996},+    {0xB5F9, 0x8A3B},+    {0xB5FA, 0x8A60},+    {0xB5FB, 0x8A55},+    {0xB5FC, 0x8A5E},+    {0xB5FD, 0x8A3C},+    {0xB5FE, 0x8A41},+    {0xB640, 0x8A54},+    {0xB641, 0x8A5B},+    {0xB642, 0x8A50},+    {0xB643, 0x8A46},+    {0xB644, 0x8A34},+    {0xB645, 0x8A3A},+    {0xB646, 0x8A36},+    {0xB647, 0x8A56},+    {0xB648, 0x8C61},+    {0xB649, 0x8C82},+    {0xB64A, 0x8CAF},+    {0xB64B, 0x8CBC},+    {0xB64C, 0x8CB3},+    {0xB64D, 0x8CBD},+    {0xB64E, 0x8CC1},+    {0xB64F, 0x8CBB},+    {0xB650, 0x8CC0},+    {0xB651, 0x8CB4},+    {0xB652, 0x8CB7},+    {0xB653, 0x8CB6},+    {0xB654, 0x8CBF},+    {0xB655, 0x8CB8},+    {0xB656, 0x8D8A},+    {0xB657, 0x8D85},+    {0xB658, 0x8D81},+    {0xB659, 0x8DCE},+    {0xB65A, 0x8DDD},+    {0xB65B, 0x8DCB},+    {0xB65C, 0x8DDA},+    {0xB65D, 0x8DD1},+    {0xB65E, 0x8DCC},+    {0xB65F, 0x8DDB},+    {0xB660, 0x8DC6},+    {0xB661, 0x8EFB},+    {0xB662, 0x8EF8},+    {0xB663, 0x8EFC},+    {0xB664, 0x8F9C},+    {0xB665, 0x902E},+    {0xB666, 0x9035},+    {0xB667, 0x9031},+    {0xB668, 0x9038},+    {0xB669, 0x9032},+    {0xB66A, 0x9036},+    {0xB66B, 0x9102},+    {0xB66C, 0x90F5},+    {0xB66D, 0x9109},+    {0xB66E, 0x90FE},+    {0xB66F, 0x9163},+    {0xB670, 0x9165},+    {0xB671, 0x91CF},+    {0xB672, 0x9214},+    {0xB673, 0x9215},+    {0xB674, 0x9223},+    {0xB675, 0x9209},+    {0xB676, 0x921E},+    {0xB677, 0x920D},+    {0xB678, 0x9210},+    {0xB679, 0x9207},+    {0xB67A, 0x9211},+    {0xB67B, 0x9594},+    {0xB67C, 0x958F},+    {0xB67D, 0x958B},+    {0xB67E, 0x9591},+    {0xB6A1, 0x9593},+    {0xB6A2, 0x9592},+    {0xB6A3, 0x958E},+    {0xB6A4, 0x968A},+    {0xB6A5, 0x968E},+    {0xB6A6, 0x968B},+    {0xB6A7, 0x967D},+    {0xB6A8, 0x9685},+    {0xB6A9, 0x9686},+    {0xB6AA, 0x968D},+    {0xB6AB, 0x9672},+    {0xB6AC, 0x9684},+    {0xB6AD, 0x96C1},+    {0xB6AE, 0x96C5},+    {0xB6AF, 0x96C4},+    {0xB6B0, 0x96C6},+    {0xB6B1, 0x96C7},+    {0xB6B2, 0x96EF},+    {0xB6B3, 0x96F2},+    {0xB6B4, 0x97CC},+    {0xB6B5, 0x9805},+    {0xB6B6, 0x9806},+    {0xB6B7, 0x9808},+    {0xB6B8, 0x98E7},+    {0xB6B9, 0x98EA},+    {0xB6BA, 0x98EF},+    {0xB6BB, 0x98E9},+    {0xB6BC, 0x98F2},+    {0xB6BD, 0x98ED},+    {0xB6BE, 0x99AE},+    {0xB6BF, 0x99AD},+    {0xB6C0, 0x9EC3},+    {0xB6C1, 0x9ECD},+    {0xB6C2, 0x9ED1},+    {0xB6C3, 0x4E82},+    {0xB6C4, 0x50AD},+    {0xB6C5, 0x50B5},+    {0xB6C6, 0x50B2},+    {0xB6C7, 0x50B3},+    {0xB6C8, 0x50C5},+    {0xB6C9, 0x50BE},+    {0xB6CA, 0x50AC},+    {0xB6CB, 0x50B7},+    {0xB6CC, 0x50BB},+    {0xB6CD, 0x50AF},+    {0xB6CE, 0x50C7},+    {0xB6CF, 0x527F},+    {0xB6D0, 0x5277},+    {0xB6D1, 0x527D},+    {0xB6D2, 0x52DF},+    {0xB6D3, 0x52E6},+    {0xB6D4, 0x52E4},+    {0xB6D5, 0x52E2},+    {0xB6D6, 0x52E3},+    {0xB6D7, 0x532F},+    {0xB6D8, 0x55DF},+    {0xB6D9, 0x55E8},+    {0xB6DA, 0x55D3},+    {0xB6DB, 0x55E6},+    {0xB6DC, 0x55CE},+    {0xB6DD, 0x55DC},+    {0xB6DE, 0x55C7},+    {0xB6DF, 0x55D1},+    {0xB6E0, 0x55E3},+    {0xB6E1, 0x55E4},+    {0xB6E2, 0x55EF},+    {0xB6E3, 0x55DA},+    {0xB6E4, 0x55E1},+    {0xB6E5, 0x55C5},+    {0xB6E6, 0x55C6},+    {0xB6E7, 0x55E5},+    {0xB6E8, 0x55C9},+    {0xB6E9, 0x5712},+    {0xB6EA, 0x5713},+    {0xB6EB, 0x585E},+    {0xB6EC, 0x5851},+    {0xB6ED, 0x5858},+    {0xB6EE, 0x5857},+    {0xB6EF, 0x585A},+    {0xB6F0, 0x5854},+    {0xB6F1, 0x586B},+    {0xB6F2, 0x584C},+    {0xB6F3, 0x586D},+    {0xB6F4, 0x584A},+    {0xB6F5, 0x5862},+    {0xB6F6, 0x5852},+    {0xB6F7, 0x584B},+    {0xB6F8, 0x5967},+    {0xB6F9, 0x5AC1},+    {0xB6FA, 0x5AC9},+    {0xB6FB, 0x5ACC},+    {0xB6FC, 0x5ABE},+    {0xB6FD, 0x5ABD},+    {0xB6FE, 0x5ABC},+    {0xB740, 0x5AB3},+    {0xB741, 0x5AC2},+    {0xB742, 0x5AB2},+    {0xB743, 0x5D69},+    {0xB744, 0x5D6F},+    {0xB745, 0x5E4C},+    {0xB746, 0x5E79},+    {0xB747, 0x5EC9},+    {0xB748, 0x5EC8},+    {0xB749, 0x5F12},+    {0xB74A, 0x5F59},+    {0xB74B, 0x5FAC},+    {0xB74C, 0x5FAE},+    {0xB74D, 0x611A},+    {0xB74E, 0x610F},+    {0xB74F, 0x6148},+    {0xB750, 0x611F},+    {0xB751, 0x60F3},+    {0xB752, 0x611B},+    {0xB753, 0x60F9},+    {0xB754, 0x6101},+    {0xB755, 0x6108},+    {0xB756, 0x614E},+    {0xB757, 0x614C},+    {0xB758, 0x6144},+    {0xB759, 0x614D},+    {0xB75A, 0x613E},+    {0xB75B, 0x6134},+    {0xB75C, 0x6127},+    {0xB75D, 0x610D},+    {0xB75E, 0x6106},+    {0xB75F, 0x6137},+    {0xB760, 0x6221},+    {0xB761, 0x6222},+    {0xB762, 0x6413},+    {0xB763, 0x643E},+    {0xB764, 0x641E},+    {0xB765, 0x642A},+    {0xB766, 0x642D},+    {0xB767, 0x643D},+    {0xB768, 0x642C},+    {0xB769, 0x640F},+    {0xB76A, 0x641C},+    {0xB76B, 0x6414},+    {0xB76C, 0x640D},+    {0xB76D, 0x6436},+    {0xB76E, 0x6416},+    {0xB76F, 0x6417},+    {0xB770, 0x6406},+    {0xB771, 0x656C},+    {0xB772, 0x659F},+    {0xB773, 0x65B0},+    {0xB774, 0x6697},+    {0xB775, 0x6689},+    {0xB776, 0x6687},+    {0xB777, 0x6688},+    {0xB778, 0x6696},+    {0xB779, 0x6684},+    {0xB77A, 0x6698},+    {0xB77B, 0x668D},+    {0xB77C, 0x6703},+    {0xB77D, 0x6994},+    {0xB77E, 0x696D},+    {0xB7A1, 0x695A},+    {0xB7A2, 0x6977},+    {0xB7A3, 0x6960},+    {0xB7A4, 0x6954},+    {0xB7A5, 0x6975},+    {0xB7A6, 0x6930},+    {0xB7A7, 0x6982},+    {0xB7A8, 0x694A},+    {0xB7A9, 0x6968},+    {0xB7AA, 0x696B},+    {0xB7AB, 0x695E},+    {0xB7AC, 0x6953},+    {0xB7AD, 0x6979},+    {0xB7AE, 0x6986},+    {0xB7AF, 0x695D},+    {0xB7B0, 0x6963},+    {0xB7B1, 0x695B},+    {0xB7B2, 0x6B47},+    {0xB7B3, 0x6B72},+    {0xB7B4, 0x6BC0},+    {0xB7B5, 0x6BBF},+    {0xB7B6, 0x6BD3},+    {0xB7B7, 0x6BFD},+    {0xB7B8, 0x6EA2},+    {0xB7B9, 0x6EAF},+    {0xB7BA, 0x6ED3},+    {0xB7BB, 0x6EB6},+    {0xB7BC, 0x6EC2},+    {0xB7BD, 0x6E90},+    {0xB7BE, 0x6E9D},+    {0xB7BF, 0x6EC7},+    {0xB7C0, 0x6EC5},+    {0xB7C1, 0x6EA5},+    {0xB7C2, 0x6E98},+    {0xB7C3, 0x6EBC},+    {0xB7C4, 0x6EBA},+    {0xB7C5, 0x6EAB},+    {0xB7C6, 0x6ED1},+    {0xB7C7, 0x6E96},+    {0xB7C8, 0x6E9C},+    {0xB7C9, 0x6EC4},+    {0xB7CA, 0x6ED4},+    {0xB7CB, 0x6EAA},+    {0xB7CC, 0x6EA7},+    {0xB7CD, 0x6EB4},+    {0xB7CE, 0x714E},+    {0xB7CF, 0x7159},+    {0xB7D0, 0x7169},+    {0xB7D1, 0x7164},+    {0xB7D2, 0x7149},+    {0xB7D3, 0x7167},+    {0xB7D4, 0x715C},+    {0xB7D5, 0x716C},+    {0xB7D6, 0x7166},+    {0xB7D7, 0x714C},+    {0xB7D8, 0x7165},+    {0xB7D9, 0x715E},+    {0xB7DA, 0x7146},+    {0xB7DB, 0x7168},+    {0xB7DC, 0x7156},+    {0xB7DD, 0x723A},+    {0xB7DE, 0x7252},+    {0xB7DF, 0x7337},+    {0xB7E0, 0x7345},+    {0xB7E1, 0x733F},+    {0xB7E2, 0x733E},+    {0xB7E3, 0x746F},+    {0xB7E4, 0x745A},+    {0xB7E5, 0x7455},+    {0xB7E6, 0x745F},+    {0xB7E7, 0x745E},+    {0xB7E8, 0x7441},+    {0xB7E9, 0x743F},+    {0xB7EA, 0x7459},+    {0xB7EB, 0x745B},+    {0xB7EC, 0x745C},+    {0xB7ED, 0x7576},+    {0xB7EE, 0x7578},+    {0xB7EF, 0x7600},+    {0xB7F0, 0x75F0},+    {0xB7F1, 0x7601},+    {0xB7F2, 0x75F2},+    {0xB7F3, 0x75F1},+    {0xB7F4, 0x75FA},+    {0xB7F5, 0x75FF},+    {0xB7F6, 0x75F4},+    {0xB7F7, 0x75F3},+    {0xB7F8, 0x76DE},+    {0xB7F9, 0x76DF},+    {0xB7FA, 0x775B},+    {0xB7FB, 0x776B},+    {0xB7FC, 0x7766},+    {0xB7FD, 0x775E},+    {0xB7FE, 0x7763},+    {0xB840, 0x7779},+    {0xB841, 0x776A},+    {0xB842, 0x776C},+    {0xB843, 0x775C},+    {0xB844, 0x7765},+    {0xB845, 0x7768},+    {0xB846, 0x7762},+    {0xB847, 0x77EE},+    {0xB848, 0x788E},+    {0xB849, 0x78B0},+    {0xB84A, 0x7897},+    {0xB84B, 0x7898},+    {0xB84C, 0x788C},+    {0xB84D, 0x7889},+    {0xB84E, 0x787C},+    {0xB84F, 0x7891},+    {0xB850, 0x7893},+    {0xB851, 0x787F},+    {0xB852, 0x797A},+    {0xB853, 0x797F},+    {0xB854, 0x7981},+    {0xB855, 0x842C},+    {0xB856, 0x79BD},+    {0xB857, 0x7A1C},+    {0xB858, 0x7A1A},+    {0xB859, 0x7A20},+    {0xB85A, 0x7A14},+    {0xB85B, 0x7A1F},+    {0xB85C, 0x7A1E},+    {0xB85D, 0x7A9F},+    {0xB85E, 0x7AA0},+    {0xB85F, 0x7B77},+    {0xB860, 0x7BC0},+    {0xB861, 0x7B60},+    {0xB862, 0x7B6E},+    {0xB863, 0x7B67},+    {0xB864, 0x7CB1},+    {0xB865, 0x7CB3},+    {0xB866, 0x7CB5},+    {0xB867, 0x7D93},+    {0xB868, 0x7D79},+    {0xB869, 0x7D91},+    {0xB86A, 0x7D81},+    {0xB86B, 0x7D8F},+    {0xB86C, 0x7D5B},+    {0xB86D, 0x7F6E},+    {0xB86E, 0x7F69},+    {0xB86F, 0x7F6A},+    {0xB870, 0x7F72},+    {0xB871, 0x7FA9},+    {0xB872, 0x7FA8},+    {0xB873, 0x7FA4},+    {0xB874, 0x8056},+    {0xB875, 0x8058},+    {0xB876, 0x8086},+    {0xB877, 0x8084},+    {0xB878, 0x8171},+    {0xB879, 0x8170},+    {0xB87A, 0x8178},+    {0xB87B, 0x8165},+    {0xB87C, 0x816E},+    {0xB87D, 0x8173},+    {0xB87E, 0x816B},+    {0xB8A1, 0x8179},+    {0xB8A2, 0x817A},+    {0xB8A3, 0x8166},+    {0xB8A4, 0x8205},+    {0xB8A5, 0x8247},+    {0xB8A6, 0x8482},+    {0xB8A7, 0x8477},+    {0xB8A8, 0x843D},+    {0xB8A9, 0x8431},+    {0xB8AA, 0x8475},+    {0xB8AB, 0x8466},+    {0xB8AC, 0x846B},+    {0xB8AD, 0x8449},+    {0xB8AE, 0x846C},+    {0xB8AF, 0x845B},+    {0xB8B0, 0x843C},+    {0xB8B1, 0x8435},+    {0xB8B2, 0x8461},+    {0xB8B3, 0x8463},+    {0xB8B4, 0x8469},+    {0xB8B5, 0x846D},+    {0xB8B6, 0x8446},+    {0xB8B7, 0x865E},+    {0xB8B8, 0x865C},+    {0xB8B9, 0x865F},+    {0xB8BA, 0x86F9},+    {0xB8BB, 0x8713},+    {0xB8BC, 0x8708},+    {0xB8BD, 0x8707},+    {0xB8BE, 0x8700},+    {0xB8BF, 0x86FE},+    {0xB8C0, 0x86FB},+    {0xB8C1, 0x8702},+    {0xB8C2, 0x8703},+    {0xB8C3, 0x8706},+    {0xB8C4, 0x870A},+    {0xB8C5, 0x8859},+    {0xB8C6, 0x88DF},+    {0xB8C7, 0x88D4},+    {0xB8C8, 0x88D9},+    {0xB8C9, 0x88DC},+    {0xB8CA, 0x88D8},+    {0xB8CB, 0x88DD},+    {0xB8CC, 0x88E1},+    {0xB8CD, 0x88CA},+    {0xB8CE, 0x88D5},+    {0xB8CF, 0x88D2},+    {0xB8D0, 0x899C},+    {0xB8D1, 0x89E3},+    {0xB8D2, 0x8A6B},+    {0xB8D3, 0x8A72},+    {0xB8D4, 0x8A73},+    {0xB8D5, 0x8A66},+    {0xB8D6, 0x8A69},+    {0xB8D7, 0x8A70},+    {0xB8D8, 0x8A87},+    {0xB8D9, 0x8A7C},+    {0xB8DA, 0x8A63},+    {0xB8DB, 0x8AA0},+    {0xB8DC, 0x8A71},+    {0xB8DD, 0x8A85},+    {0xB8DE, 0x8A6D},+    {0xB8DF, 0x8A62},+    {0xB8E0, 0x8A6E},+    {0xB8E1, 0x8A6C},+    {0xB8E2, 0x8A79},+    {0xB8E3, 0x8A7B},+    {0xB8E4, 0x8A3E},+    {0xB8E5, 0x8A68},+    {0xB8E6, 0x8C62},+    {0xB8E7, 0x8C8A},+    {0xB8E8, 0x8C89},+    {0xB8E9, 0x8CCA},+    {0xB8EA, 0x8CC7},+    {0xB8EB, 0x8CC8},+    {0xB8EC, 0x8CC4},+    {0xB8ED, 0x8CB2},+    {0xB8EE, 0x8CC3},+    {0xB8EF, 0x8CC2},+    {0xB8F0, 0x8CC5},+    {0xB8F1, 0x8DE1},+    {0xB8F2, 0x8DDF},+    {0xB8F3, 0x8DE8},+    {0xB8F4, 0x8DEF},+    {0xB8F5, 0x8DF3},+    {0xB8F6, 0x8DFA},+    {0xB8F7, 0x8DEA},+    {0xB8F8, 0x8DE4},+    {0xB8F9, 0x8DE6},+    {0xB8FA, 0x8EB2},+    {0xB8FB, 0x8F03},+    {0xB8FC, 0x8F09},+    {0xB8FD, 0x8EFE},+    {0xB8FE, 0x8F0A},+    {0xB940, 0x8F9F},+    {0xB941, 0x8FB2},+    {0xB942, 0x904B},+    {0xB943, 0x904A},+    {0xB944, 0x9053},+    {0xB945, 0x9042},+    {0xB946, 0x9054},+    {0xB947, 0x903C},+    {0xB948, 0x9055},+    {0xB949, 0x9050},+    {0xB94A, 0x9047},+    {0xB94B, 0x904F},+    {0xB94C, 0x904E},+    {0xB94D, 0x904D},+    {0xB94E, 0x9051},+    {0xB94F, 0x903E},+    {0xB950, 0x9041},+    {0xB951, 0x9112},+    {0xB952, 0x9117},+    {0xB953, 0x916C},+    {0xB954, 0x916A},+    {0xB955, 0x9169},+    {0xB956, 0x91C9},+    {0xB957, 0x9237},+    {0xB958, 0x9257},+    {0xB959, 0x9238},+    {0xB95A, 0x923D},+    {0xB95B, 0x9240},+    {0xB95C, 0x923E},+    {0xB95D, 0x925B},+    {0xB95E, 0x924B},+    {0xB95F, 0x9264},+    {0xB960, 0x9251},+    {0xB961, 0x9234},+    {0xB962, 0x9249},+    {0xB963, 0x924D},+    {0xB964, 0x9245},+    {0xB965, 0x9239},+    {0xB966, 0x923F},+    {0xB967, 0x925A},+    {0xB968, 0x9598},+    {0xB969, 0x9698},+    {0xB96A, 0x9694},+    {0xB96B, 0x9695},+    {0xB96C, 0x96CD},+    {0xB96D, 0x96CB},+    {0xB96E, 0x96C9},+    {0xB96F, 0x96CA},+    {0xB970, 0x96F7},+    {0xB971, 0x96FB},+    {0xB972, 0x96F9},+    {0xB973, 0x96F6},+    {0xB974, 0x9756},+    {0xB975, 0x9774},+    {0xB976, 0x9776},+    {0xB977, 0x9810},+    {0xB978, 0x9811},+    {0xB979, 0x9813},+    {0xB97A, 0x980A},+    {0xB97B, 0x9812},+    {0xB97C, 0x980C},+    {0xB97D, 0x98FC},+    {0xB97E, 0x98F4},+    {0xB9A1, 0x98FD},+    {0xB9A2, 0x98FE},+    {0xB9A3, 0x99B3},+    {0xB9A4, 0x99B1},+    {0xB9A5, 0x99B4},+    {0xB9A6, 0x9AE1},+    {0xB9A7, 0x9CE9},+    {0xB9A8, 0x9E82},+    {0xB9A9, 0x9F0E},+    {0xB9AA, 0x9F13},+    {0xB9AB, 0x9F20},+    {0xB9AC, 0x50E7},+    {0xB9AD, 0x50EE},+    {0xB9AE, 0x50E5},+    {0xB9AF, 0x50D6},+    {0xB9B0, 0x50ED},+    {0xB9B1, 0x50DA},+    {0xB9B2, 0x50D5},+    {0xB9B3, 0x50CF},+    {0xB9B4, 0x50D1},+    {0xB9B5, 0x50F1},+    {0xB9B6, 0x50CE},+    {0xB9B7, 0x50E9},+    {0xB9B8, 0x5162},+    {0xB9B9, 0x51F3},+    {0xB9BA, 0x5283},+    {0xB9BB, 0x5282},+    {0xB9BC, 0x5331},+    {0xB9BD, 0x53AD},+    {0xB9BE, 0x55FE},+    {0xB9BF, 0x5600},+    {0xB9C0, 0x561B},+    {0xB9C1, 0x5617},+    {0xB9C2, 0x55FD},+    {0xB9C3, 0x5614},+    {0xB9C4, 0x5606},+    {0xB9C5, 0x5609},+    {0xB9C6, 0x560D},+    {0xB9C7, 0x560E},+    {0xB9C8, 0x55F7},+    {0xB9C9, 0x5616},+    {0xB9CA, 0x561F},+    {0xB9CB, 0x5608},+    {0xB9CC, 0x5610},+    {0xB9CD, 0x55F6},+    {0xB9CE, 0x5718},+    {0xB9CF, 0x5716},+    {0xB9D0, 0x5875},+    {0xB9D1, 0x587E},+    {0xB9D2, 0x5883},+    {0xB9D3, 0x5893},+    {0xB9D4, 0x588A},+    {0xB9D5, 0x5879},+    {0xB9D6, 0x5885},+    {0xB9D7, 0x587D},+    {0xB9D8, 0x58FD},+    {0xB9D9, 0x5925},+    {0xB9DA, 0x5922},+    {0xB9DB, 0x5924},+    {0xB9DC, 0x596A},+    {0xB9DD, 0x5969},+    {0xB9DE, 0x5AE1},+    {0xB9DF, 0x5AE6},+    {0xB9E0, 0x5AE9},+    {0xB9E1, 0x5AD7},+    {0xB9E2, 0x5AD6},+    {0xB9E3, 0x5AD8},+    {0xB9E4, 0x5AE3},+    {0xB9E5, 0x5B75},+    {0xB9E6, 0x5BDE},+    {0xB9E7, 0x5BE7},+    {0xB9E8, 0x5BE1},+    {0xB9E9, 0x5BE5},+    {0xB9EA, 0x5BE6},+    {0xB9EB, 0x5BE8},+    {0xB9EC, 0x5BE2},+    {0xB9ED, 0x5BE4},+    {0xB9EE, 0x5BDF},+    {0xB9EF, 0x5C0D},+    {0xB9F0, 0x5C62},+    {0xB9F1, 0x5D84},+    {0xB9F2, 0x5D87},+    {0xB9F3, 0x5E5B},+    {0xB9F4, 0x5E63},+    {0xB9F5, 0x5E55},+    {0xB9F6, 0x5E57},+    {0xB9F7, 0x5E54},+    {0xB9F8, 0x5ED3},+    {0xB9F9, 0x5ED6},+    {0xB9FA, 0x5F0A},+    {0xB9FB, 0x5F46},+    {0xB9FC, 0x5F70},+    {0xB9FD, 0x5FB9},+    {0xB9FE, 0x6147},+    {0xBA40, 0x613F},+    {0xBA41, 0x614B},+    {0xBA42, 0x6177},+    {0xBA43, 0x6162},+    {0xBA44, 0x6163},+    {0xBA45, 0x615F},+    {0xBA46, 0x615A},+    {0xBA47, 0x6158},+    {0xBA48, 0x6175},+    {0xBA49, 0x622A},+    {0xBA4A, 0x6487},+    {0xBA4B, 0x6458},+    {0xBA4C, 0x6454},+    {0xBA4D, 0x64A4},+    {0xBA4E, 0x6478},+    {0xBA4F, 0x645F},+    {0xBA50, 0x647A},+    {0xBA51, 0x6451},+    {0xBA52, 0x6467},+    {0xBA53, 0x6434},+    {0xBA54, 0x646D},+    {0xBA55, 0x647B},+    {0xBA56, 0x6572},+    {0xBA57, 0x65A1},+    {0xBA58, 0x65D7},+    {0xBA59, 0x65D6},+    {0xBA5A, 0x66A2},+    {0xBA5B, 0x66A8},+    {0xBA5C, 0x669D},+    {0xBA5D, 0x699C},+    {0xBA5E, 0x69A8},+    {0xBA5F, 0x6995},+    {0xBA60, 0x69C1},+    {0xBA61, 0x69AE},+    {0xBA62, 0x69D3},+    {0xBA63, 0x69CB},+    {0xBA64, 0x699B},+    {0xBA65, 0x69B7},+    {0xBA66, 0x69BB},+    {0xBA67, 0x69AB},+    {0xBA68, 0x69B4},+    {0xBA69, 0x69D0},+    {0xBA6A, 0x69CD},+    {0xBA6B, 0x69AD},+    {0xBA6C, 0x69CC},+    {0xBA6D, 0x69A6},+    {0xBA6E, 0x69C3},+    {0xBA6F, 0x69A3},+    {0xBA70, 0x6B49},+    {0xBA71, 0x6B4C},+    {0xBA72, 0x6C33},+    {0xBA73, 0x6F33},+    {0xBA74, 0x6F14},+    {0xBA75, 0x6EFE},+    {0xBA76, 0x6F13},+    {0xBA77, 0x6EF4},+    {0xBA78, 0x6F29},+    {0xBA79, 0x6F3E},+    {0xBA7A, 0x6F20},+    {0xBA7B, 0x6F2C},+    {0xBA7C, 0x6F0F},+    {0xBA7D, 0x6F02},+    {0xBA7E, 0x6F22},+    {0xBAA1, 0x6EFF},+    {0xBAA2, 0x6EEF},+    {0xBAA3, 0x6F06},+    {0xBAA4, 0x6F31},+    {0xBAA5, 0x6F38},+    {0xBAA6, 0x6F32},+    {0xBAA7, 0x6F23},+    {0xBAA8, 0x6F15},+    {0xBAA9, 0x6F2B},+    {0xBAAA, 0x6F2F},+    {0xBAAB, 0x6F88},+    {0xBAAC, 0x6F2A},+    {0xBAAD, 0x6EEC},+    {0xBAAE, 0x6F01},+    {0xBAAF, 0x6EF2},+    {0xBAB0, 0x6ECC},+    {0xBAB1, 0x6EF7},+    {0xBAB2, 0x7194},+    {0xBAB3, 0x7199},+    {0xBAB4, 0x717D},+    {0xBAB5, 0x718A},+    {0xBAB6, 0x7184},+    {0xBAB7, 0x7192},+    {0xBAB8, 0x723E},+    {0xBAB9, 0x7292},+    {0xBABA, 0x7296},+    {0xBABB, 0x7344},+    {0xBABC, 0x7350},+    {0xBABD, 0x7464},+    {0xBABE, 0x7463},+    {0xBABF, 0x746A},+    {0xBAC0, 0x7470},+    {0xBAC1, 0x746D},+    {0xBAC2, 0x7504},+    {0xBAC3, 0x7591},+    {0xBAC4, 0x7627},+    {0xBAC5, 0x760D},+    {0xBAC6, 0x760B},+    {0xBAC7, 0x7609},+    {0xBAC8, 0x7613},+    {0xBAC9, 0x76E1},+    {0xBACA, 0x76E3},+    {0xBACB, 0x7784},+    {0xBACC, 0x777D},+    {0xBACD, 0x777F},+    {0xBACE, 0x7761},+    {0xBACF, 0x78C1},+    {0xBAD0, 0x789F},+    {0xBAD1, 0x78A7},+    {0xBAD2, 0x78B3},+    {0xBAD3, 0x78A9},+    {0xBAD4, 0x78A3},+    {0xBAD5, 0x798E},+    {0xBAD6, 0x798F},+    {0xBAD7, 0x798D},+    {0xBAD8, 0x7A2E},+    {0xBAD9, 0x7A31},+    {0xBADA, 0x7AAA},+    {0xBADB, 0x7AA9},+    {0xBADC, 0x7AED},+    {0xBADD, 0x7AEF},+    {0xBADE, 0x7BA1},+    {0xBADF, 0x7B95},+    {0xBAE0, 0x7B8B},+    {0xBAE1, 0x7B75},+    {0xBAE2, 0x7B97},+    {0xBAE3, 0x7B9D},+    {0xBAE4, 0x7B94},+    {0xBAE5, 0x7B8F},+    {0xBAE6, 0x7BB8},+    {0xBAE7, 0x7B87},+    {0xBAE8, 0x7B84},+    {0xBAE9, 0x7CB9},+    {0xBAEA, 0x7CBD},+    {0xBAEB, 0x7CBE},+    {0xBAEC, 0x7DBB},+    {0xBAED, 0x7DB0},+    {0xBAEE, 0x7D9C},+    {0xBAEF, 0x7DBD},+    {0xBAF0, 0x7DBE},+    {0xBAF1, 0x7DA0},+    {0xBAF2, 0x7DCA},+    {0xBAF3, 0x7DB4},+    {0xBAF4, 0x7DB2},+    {0xBAF5, 0x7DB1},+    {0xBAF6, 0x7DBA},+    {0xBAF7, 0x7DA2},+    {0xBAF8, 0x7DBF},+    {0xBAF9, 0x7DB5},+    {0xBAFA, 0x7DB8},+    {0xBAFB, 0x7DAD},+    {0xBAFC, 0x7DD2},+    {0xBAFD, 0x7DC7},+    {0xBAFE, 0x7DAC},+    {0xBB40, 0x7F70},+    {0xBB41, 0x7FE0},+    {0xBB42, 0x7FE1},+    {0xBB43, 0x7FDF},+    {0xBB44, 0x805E},+    {0xBB45, 0x805A},+    {0xBB46, 0x8087},+    {0xBB47, 0x8150},+    {0xBB48, 0x8180},+    {0xBB49, 0x818F},+    {0xBB4A, 0x8188},+    {0xBB4B, 0x818A},+    {0xBB4C, 0x817F},+    {0xBB4D, 0x8182},+    {0xBB4E, 0x81E7},+    {0xBB4F, 0x81FA},+    {0xBB50, 0x8207},+    {0xBB51, 0x8214},+    {0xBB52, 0x821E},+    {0xBB53, 0x824B},+    {0xBB54, 0x84C9},+    {0xBB55, 0x84BF},+    {0xBB56, 0x84C6},+    {0xBB57, 0x84C4},+    {0xBB58, 0x8499},+    {0xBB59, 0x849E},+    {0xBB5A, 0x84B2},+    {0xBB5B, 0x849C},+    {0xBB5C, 0x84CB},+    {0xBB5D, 0x84B8},+    {0xBB5E, 0x84C0},+    {0xBB5F, 0x84D3},+    {0xBB60, 0x8490},+    {0xBB61, 0x84BC},+    {0xBB62, 0x84D1},+    {0xBB63, 0x84CA},+    {0xBB64, 0x873F},+    {0xBB65, 0x871C},+    {0xBB66, 0x873B},+    {0xBB67, 0x8722},+    {0xBB68, 0x8725},+    {0xBB69, 0x8734},+    {0xBB6A, 0x8718},+    {0xBB6B, 0x8755},+    {0xBB6C, 0x8737},+    {0xBB6D, 0x8729},+    {0xBB6E, 0x88F3},+    {0xBB6F, 0x8902},+    {0xBB70, 0x88F4},+    {0xBB71, 0x88F9},+    {0xBB72, 0x88F8},+    {0xBB73, 0x88FD},+    {0xBB74, 0x88E8},+    {0xBB75, 0x891A},+    {0xBB76, 0x88EF},+    {0xBB77, 0x8AA6},+    {0xBB78, 0x8A8C},+    {0xBB79, 0x8A9E},+    {0xBB7A, 0x8AA3},+    {0xBB7B, 0x8A8D},+    {0xBB7C, 0x8AA1},+    {0xBB7D, 0x8A93},+    {0xBB7E, 0x8AA4},+    {0xBBA1, 0x8AAA},+    {0xBBA2, 0x8AA5},+    {0xBBA3, 0x8AA8},+    {0xBBA4, 0x8A98},+    {0xBBA5, 0x8A91},+    {0xBBA6, 0x8A9A},+    {0xBBA7, 0x8AA7},+    {0xBBA8, 0x8C6A},+    {0xBBA9, 0x8C8D},+    {0xBBAA, 0x8C8C},+    {0xBBAB, 0x8CD3},+    {0xBBAC, 0x8CD1},+    {0xBBAD, 0x8CD2},+    {0xBBAE, 0x8D6B},+    {0xBBAF, 0x8D99},+    {0xBBB0, 0x8D95},+    {0xBBB1, 0x8DFC},+    {0xBBB2, 0x8F14},+    {0xBBB3, 0x8F12},+    {0xBBB4, 0x8F15},+    {0xBBB5, 0x8F13},+    {0xBBB6, 0x8FA3},+    {0xBBB7, 0x9060},+    {0xBBB8, 0x9058},+    {0xBBB9, 0x905C},+    {0xBBBA, 0x9063},+    {0xBBBB, 0x9059},+    {0xBBBC, 0x905E},+    {0xBBBD, 0x9062},+    {0xBBBE, 0x905D},+    {0xBBBF, 0x905B},+    {0xBBC0, 0x9119},+    {0xBBC1, 0x9118},+    {0xBBC2, 0x911E},+    {0xBBC3, 0x9175},+    {0xBBC4, 0x9178},+    {0xBBC5, 0x9177},+    {0xBBC6, 0x9174},+    {0xBBC7, 0x9278},+    {0xBBC8, 0x9280},+    {0xBBC9, 0x9285},+    {0xBBCA, 0x9298},+    {0xBBCB, 0x9296},+    {0xBBCC, 0x927B},+    {0xBBCD, 0x9293},+    {0xBBCE, 0x929C},+    {0xBBCF, 0x92A8},+    {0xBBD0, 0x927C},+    {0xBBD1, 0x9291},+    {0xBBD2, 0x95A1},+    {0xBBD3, 0x95A8},+    {0xBBD4, 0x95A9},+    {0xBBD5, 0x95A3},+    {0xBBD6, 0x95A5},+    {0xBBD7, 0x95A4},+    {0xBBD8, 0x9699},+    {0xBBD9, 0x969C},+    {0xBBDA, 0x969B},+    {0xBBDB, 0x96CC},+    {0xBBDC, 0x96D2},+    {0xBBDD, 0x9700},+    {0xBBDE, 0x977C},+    {0xBBDF, 0x9785},+    {0xBBE0, 0x97F6},+    {0xBBE1, 0x9817},+    {0xBBE2, 0x9818},+    {0xBBE3, 0x98AF},+    {0xBBE4, 0x98B1},+    {0xBBE5, 0x9903},+    {0xBBE6, 0x9905},+    {0xBBE7, 0x990C},+    {0xBBE8, 0x9909},+    {0xBBE9, 0x99C1},+    {0xBBEA, 0x9AAF},+    {0xBBEB, 0x9AB0},+    {0xBBEC, 0x9AE6},+    {0xBBED, 0x9B41},+    {0xBBEE, 0x9B42},+    {0xBBEF, 0x9CF4},+    {0xBBF0, 0x9CF6},+    {0xBBF1, 0x9CF3},+    {0xBBF2, 0x9EBC},+    {0xBBF3, 0x9F3B},+    {0xBBF4, 0x9F4A},+    {0xBBF5, 0x5104},+    {0xBBF6, 0x5100},+    {0xBBF7, 0x50FB},+    {0xBBF8, 0x50F5},+    {0xBBF9, 0x50F9},+    {0xBBFA, 0x5102},+    {0xBBFB, 0x5108},+    {0xBBFC, 0x5109},+    {0xBBFD, 0x5105},+    {0xBBFE, 0x51DC},+    {0xBC40, 0x5287},+    {0xBC41, 0x5288},+    {0xBC42, 0x5289},+    {0xBC43, 0x528D},+    {0xBC44, 0x528A},+    {0xBC45, 0x52F0},+    {0xBC46, 0x53B2},+    {0xBC47, 0x562E},+    {0xBC48, 0x563B},+    {0xBC49, 0x5639},+    {0xBC4A, 0x5632},+    {0xBC4B, 0x563F},+    {0xBC4C, 0x5634},+    {0xBC4D, 0x5629},+    {0xBC4E, 0x5653},+    {0xBC4F, 0x564E},+    {0xBC50, 0x5657},+    {0xBC51, 0x5674},+    {0xBC52, 0x5636},+    {0xBC53, 0x562F},+    {0xBC54, 0x5630},+    {0xBC55, 0x5880},+    {0xBC56, 0x589F},+    {0xBC57, 0x589E},+    {0xBC58, 0x58B3},+    {0xBC59, 0x589C},+    {0xBC5A, 0x58AE},+    {0xBC5B, 0x58A9},+    {0xBC5C, 0x58A6},+    {0xBC5D, 0x596D},+    {0xBC5E, 0x5B09},+    {0xBC5F, 0x5AFB},+    {0xBC60, 0x5B0B},+    {0xBC61, 0x5AF5},+    {0xBC62, 0x5B0C},+    {0xBC63, 0x5B08},+    {0xBC64, 0x5BEE},+    {0xBC65, 0x5BEC},+    {0xBC66, 0x5BE9},+    {0xBC67, 0x5BEB},+    {0xBC68, 0x5C64},+    {0xBC69, 0x5C65},+    {0xBC6A, 0x5D9D},+    {0xBC6B, 0x5D94},+    {0xBC6C, 0x5E62},+    {0xBC6D, 0x5E5F},+    {0xBC6E, 0x5E61},+    {0xBC6F, 0x5EE2},+    {0xBC70, 0x5EDA},+    {0xBC71, 0x5EDF},+    {0xBC72, 0x5EDD},+    {0xBC73, 0x5EE3},+    {0xBC74, 0x5EE0},+    {0xBC75, 0x5F48},+    {0xBC76, 0x5F71},+    {0xBC77, 0x5FB7},+    {0xBC78, 0x5FB5},+    {0xBC79, 0x6176},+    {0xBC7A, 0x6167},+    {0xBC7B, 0x616E},+    {0xBC7C, 0x615D},+    {0xBC7D, 0x6155},+    {0xBC7E, 0x6182},+    {0xBCA1, 0x617C},+    {0xBCA2, 0x6170},+    {0xBCA3, 0x616B},+    {0xBCA4, 0x617E},+    {0xBCA5, 0x61A7},+    {0xBCA6, 0x6190},+    {0xBCA7, 0x61AB},+    {0xBCA8, 0x618E},+    {0xBCA9, 0x61AC},+    {0xBCAA, 0x619A},+    {0xBCAB, 0x61A4},+    {0xBCAC, 0x6194},+    {0xBCAD, 0x61AE},+    {0xBCAE, 0x622E},+    {0xBCAF, 0x6469},+    {0xBCB0, 0x646F},+    {0xBCB1, 0x6479},+    {0xBCB2, 0x649E},+    {0xBCB3, 0x64B2},+    {0xBCB4, 0x6488},+    {0xBCB5, 0x6490},+    {0xBCB6, 0x64B0},+    {0xBCB7, 0x64A5},+    {0xBCB8, 0x6493},+    {0xBCB9, 0x6495},+    {0xBCBA, 0x64A9},+    {0xBCBB, 0x6492},+    {0xBCBC, 0x64AE},+    {0xBCBD, 0x64AD},+    {0xBCBE, 0x64AB},+    {0xBCBF, 0x649A},+    {0xBCC0, 0x64AC},+    {0xBCC1, 0x6499},+    {0xBCC2, 0x64A2},+    {0xBCC3, 0x64B3},+    {0xBCC4, 0x6575},+    {0xBCC5, 0x6577},+    {0xBCC6, 0x6578},+    {0xBCC7, 0x66AE},+    {0xBCC8, 0x66AB},+    {0xBCC9, 0x66B4},+    {0xBCCA, 0x66B1},+    {0xBCCB, 0x6A23},+    {0xBCCC, 0x6A1F},+    {0xBCCD, 0x69E8},+    {0xBCCE, 0x6A01},+    {0xBCCF, 0x6A1E},+    {0xBCD0, 0x6A19},+    {0xBCD1, 0x69FD},+    {0xBCD2, 0x6A21},+    {0xBCD3, 0x6A13},+    {0xBCD4, 0x6A0A},+    {0xBCD5, 0x69F3},+    {0xBCD6, 0x6A02},+    {0xBCD7, 0x6A05},+    {0xBCD8, 0x69ED},+    {0xBCD9, 0x6A11},+    {0xBCDA, 0x6B50},+    {0xBCDB, 0x6B4E},+    {0xBCDC, 0x6BA4},+    {0xBCDD, 0x6BC5},+    {0xBCDE, 0x6BC6},+    {0xBCDF, 0x6F3F},+    {0xBCE0, 0x6F7C},+    {0xBCE1, 0x6F84},+    {0xBCE2, 0x6F51},+    {0xBCE3, 0x6F66},+    {0xBCE4, 0x6F54},+    {0xBCE5, 0x6F86},+    {0xBCE6, 0x6F6D},+    {0xBCE7, 0x6F5B},+    {0xBCE8, 0x6F78},+    {0xBCE9, 0x6F6E},+    {0xBCEA, 0x6F8E},+    {0xBCEB, 0x6F7A},+    {0xBCEC, 0x6F70},+    {0xBCED, 0x6F64},+    {0xBCEE, 0x6F97},+    {0xBCEF, 0x6F58},+    {0xBCF0, 0x6ED5},+    {0xBCF1, 0x6F6F},+    {0xBCF2, 0x6F60},+    {0xBCF3, 0x6F5F},+    {0xBCF4, 0x719F},+    {0xBCF5, 0x71AC},+    {0xBCF6, 0x71B1},+    {0xBCF7, 0x71A8},+    {0xBCF8, 0x7256},+    {0xBCF9, 0x729B},+    {0xBCFA, 0x734E},+    {0xBCFB, 0x7357},+    {0xBCFC, 0x7469},+    {0xBCFD, 0x748B},+    {0xBCFE, 0x7483},+    {0xBD40, 0x747E},+    {0xBD41, 0x7480},+    {0xBD42, 0x757F},+    {0xBD43, 0x7620},+    {0xBD44, 0x7629},+    {0xBD45, 0x761F},+    {0xBD46, 0x7624},+    {0xBD47, 0x7626},+    {0xBD48, 0x7621},+    {0xBD49, 0x7622},+    {0xBD4A, 0x769A},+    {0xBD4B, 0x76BA},+    {0xBD4C, 0x76E4},+    {0xBD4D, 0x778E},+    {0xBD4E, 0x7787},+    {0xBD4F, 0x778C},+    {0xBD50, 0x7791},+    {0xBD51, 0x778B},+    {0xBD52, 0x78CB},+    {0xBD53, 0x78C5},+    {0xBD54, 0x78BA},+    {0xBD55, 0x78CA},+    {0xBD56, 0x78BE},+    {0xBD57, 0x78D5},+    {0xBD58, 0x78BC},+    {0xBD59, 0x78D0},+    {0xBD5A, 0x7A3F},+    {0xBD5B, 0x7A3C},+    {0xBD5C, 0x7A40},+    {0xBD5D, 0x7A3D},+    {0xBD5E, 0x7A37},+    {0xBD5F, 0x7A3B},+    {0xBD60, 0x7AAF},+    {0xBD61, 0x7AAE},+    {0xBD62, 0x7BAD},+    {0xBD63, 0x7BB1},+    {0xBD64, 0x7BC4},+    {0xBD65, 0x7BB4},+    {0xBD66, 0x7BC6},+    {0xBD67, 0x7BC7},+    {0xBD68, 0x7BC1},+    {0xBD69, 0x7BA0},+    {0xBD6A, 0x7BCC},+    {0xBD6B, 0x7CCA},+    {0xBD6C, 0x7DE0},+    {0xBD6D, 0x7DF4},+    {0xBD6E, 0x7DEF},+    {0xBD6F, 0x7DFB},+    {0xBD70, 0x7DD8},+    {0xBD71, 0x7DEC},+    {0xBD72, 0x7DDD},+    {0xBD73, 0x7DE8},+    {0xBD74, 0x7DE3},+    {0xBD75, 0x7DDA},+    {0xBD76, 0x7DDE},+    {0xBD77, 0x7DE9},+    {0xBD78, 0x7D9E},+    {0xBD79, 0x7DD9},+    {0xBD7A, 0x7DF2},+    {0xBD7B, 0x7DF9},+    {0xBD7C, 0x7F75},+    {0xBD7D, 0x7F77},+    {0xBD7E, 0x7FAF},+    {0xBDA1, 0x7FE9},+    {0xBDA2, 0x8026},+    {0xBDA3, 0x819B},+    {0xBDA4, 0x819C},+    {0xBDA5, 0x819D},+    {0xBDA6, 0x81A0},+    {0xBDA7, 0x819A},+    {0xBDA8, 0x8198},+    {0xBDA9, 0x8517},+    {0xBDAA, 0x853D},+    {0xBDAB, 0x851A},+    {0xBDAC, 0x84EE},+    {0xBDAD, 0x852C},+    {0xBDAE, 0x852D},+    {0xBDAF, 0x8513},+    {0xBDB0, 0x8511},+    {0xBDB1, 0x8523},+    {0xBDB2, 0x8521},+    {0xBDB3, 0x8514},+    {0xBDB4, 0x84EC},+    {0xBDB5, 0x8525},+    {0xBDB6, 0x84FF},+    {0xBDB7, 0x8506},+    {0xBDB8, 0x8782},+    {0xBDB9, 0x8774},+    {0xBDBA, 0x8776},+    {0xBDBB, 0x8760},+    {0xBDBC, 0x8766},+    {0xBDBD, 0x8778},+    {0xBDBE, 0x8768},+    {0xBDBF, 0x8759},+    {0xBDC0, 0x8757},+    {0xBDC1, 0x874C},+    {0xBDC2, 0x8753},+    {0xBDC3, 0x885B},+    {0xBDC4, 0x885D},+    {0xBDC5, 0x8910},+    {0xBDC6, 0x8907},+    {0xBDC7, 0x8912},+    {0xBDC8, 0x8913},+    {0xBDC9, 0x8915},+    {0xBDCA, 0x890A},+    {0xBDCB, 0x8ABC},+    {0xBDCC, 0x8AD2},+    {0xBDCD, 0x8AC7},+    {0xBDCE, 0x8AC4},+    {0xBDCF, 0x8A95},+    {0xBDD0, 0x8ACB},+    {0xBDD1, 0x8AF8},+    {0xBDD2, 0x8AB2},+    {0xBDD3, 0x8AC9},+    {0xBDD4, 0x8AC2},+    {0xBDD5, 0x8ABF},+    {0xBDD6, 0x8AB0},+    {0xBDD7, 0x8AD6},+    {0xBDD8, 0x8ACD},+    {0xBDD9, 0x8AB6},+    {0xBDDA, 0x8AB9},+    {0xBDDB, 0x8ADB},+    {0xBDDC, 0x8C4C},+    {0xBDDD, 0x8C4E},+    {0xBDDE, 0x8C6C},+    {0xBDDF, 0x8CE0},+    {0xBDE0, 0x8CDE},+    {0xBDE1, 0x8CE6},+    {0xBDE2, 0x8CE4},+    {0xBDE3, 0x8CEC},+    {0xBDE4, 0x8CED},+    {0xBDE5, 0x8CE2},+    {0xBDE6, 0x8CE3},+    {0xBDE7, 0x8CDC},+    {0xBDE8, 0x8CEA},+    {0xBDE9, 0x8CE1},+    {0xBDEA, 0x8D6D},+    {0xBDEB, 0x8D9F},+    {0xBDEC, 0x8DA3},+    {0xBDED, 0x8E2B},+    {0xBDEE, 0x8E10},+    {0xBDEF, 0x8E1D},+    {0xBDF0, 0x8E22},+    {0xBDF1, 0x8E0F},+    {0xBDF2, 0x8E29},+    {0xBDF3, 0x8E1F},+    {0xBDF4, 0x8E21},+    {0xBDF5, 0x8E1E},+    {0xBDF6, 0x8EBA},+    {0xBDF7, 0x8F1D},+    {0xBDF8, 0x8F1B},+    {0xBDF9, 0x8F1F},+    {0xBDFA, 0x8F29},+    {0xBDFB, 0x8F26},+    {0xBDFC, 0x8F2A},+    {0xBDFD, 0x8F1C},+    {0xBDFE, 0x8F1E},+    {0xBE40, 0x8F25},+    {0xBE41, 0x9069},+    {0xBE42, 0x906E},+    {0xBE43, 0x9068},+    {0xBE44, 0x906D},+    {0xBE45, 0x9077},+    {0xBE46, 0x9130},+    {0xBE47, 0x912D},+    {0xBE48, 0x9127},+    {0xBE49, 0x9131},+    {0xBE4A, 0x9187},+    {0xBE4B, 0x9189},+    {0xBE4C, 0x918B},+    {0xBE4D, 0x9183},+    {0xBE4E, 0x92C5},+    {0xBE4F, 0x92BB},+    {0xBE50, 0x92B7},+    {0xBE51, 0x92EA},+    {0xBE52, 0x92AC},+    {0xBE53, 0x92E4},+    {0xBE54, 0x92C1},+    {0xBE55, 0x92B3},+    {0xBE56, 0x92BC},+    {0xBE57, 0x92D2},+    {0xBE58, 0x92C7},+    {0xBE59, 0x92F0},+    {0xBE5A, 0x92B2},+    {0xBE5B, 0x95AD},+    {0xBE5C, 0x95B1},+    {0xBE5D, 0x9704},+    {0xBE5E, 0x9706},+    {0xBE5F, 0x9707},+    {0xBE60, 0x9709},+    {0xBE61, 0x9760},+    {0xBE62, 0x978D},+    {0xBE63, 0x978B},+    {0xBE64, 0x978F},+    {0xBE65, 0x9821},+    {0xBE66, 0x982B},+    {0xBE67, 0x981C},+    {0xBE68, 0x98B3},+    {0xBE69, 0x990A},+    {0xBE6A, 0x9913},+    {0xBE6B, 0x9912},+    {0xBE6C, 0x9918},+    {0xBE6D, 0x99DD},+    {0xBE6E, 0x99D0},+    {0xBE6F, 0x99DF},+    {0xBE70, 0x99DB},+    {0xBE71, 0x99D1},+    {0xBE72, 0x99D5},+    {0xBE73, 0x99D2},+    {0xBE74, 0x99D9},+    {0xBE75, 0x9AB7},+    {0xBE76, 0x9AEE},+    {0xBE77, 0x9AEF},+    {0xBE78, 0x9B27},+    {0xBE79, 0x9B45},+    {0xBE7A, 0x9B44},+    {0xBE7B, 0x9B77},+    {0xBE7C, 0x9B6F},+    {0xBE7D, 0x9D06},+    {0xBE7E, 0x9D09},+    {0xBEA1, 0x9D03},+    {0xBEA2, 0x9EA9},+    {0xBEA3, 0x9EBE},+    {0xBEA4, 0x9ECE},+    {0xBEA5, 0x58A8},+    {0xBEA6, 0x9F52},+    {0xBEA7, 0x5112},+    {0xBEA8, 0x5118},+    {0xBEA9, 0x5114},+    {0xBEAA, 0x5110},+    {0xBEAB, 0x5115},+    {0xBEAC, 0x5180},+    {0xBEAD, 0x51AA},+    {0xBEAE, 0x51DD},+    {0xBEAF, 0x5291},+    {0xBEB0, 0x5293},+    {0xBEB1, 0x52F3},+    {0xBEB2, 0x5659},+    {0xBEB3, 0x566B},+    {0xBEB4, 0x5679},+    {0xBEB5, 0x5669},+    {0xBEB6, 0x5664},+    {0xBEB7, 0x5678},+    {0xBEB8, 0x566A},+    {0xBEB9, 0x5668},+    {0xBEBA, 0x5665},+    {0xBEBB, 0x5671},+    {0xBEBC, 0x566F},+    {0xBEBD, 0x566C},+    {0xBEBE, 0x5662},+    {0xBEBF, 0x5676},+    {0xBEC0, 0x58C1},+    {0xBEC1, 0x58BE},+    {0xBEC2, 0x58C7},+    {0xBEC3, 0x58C5},+    {0xBEC4, 0x596E},+    {0xBEC5, 0x5B1D},+    {0xBEC6, 0x5B34},+    {0xBEC7, 0x5B78},+    {0xBEC8, 0x5BF0},+    {0xBEC9, 0x5C0E},+    {0xBECA, 0x5F4A},+    {0xBECB, 0x61B2},+    {0xBECC, 0x6191},+    {0xBECD, 0x61A9},+    {0xBECE, 0x618A},+    {0xBECF, 0x61CD},+    {0xBED0, 0x61B6},+    {0xBED1, 0x61BE},+    {0xBED2, 0x61CA},+    {0xBED3, 0x61C8},+    {0xBED4, 0x6230},+    {0xBED5, 0x64C5},+    {0xBED6, 0x64C1},+    {0xBED7, 0x64CB},+    {0xBED8, 0x64BB},+    {0xBED9, 0x64BC},+    {0xBEDA, 0x64DA},+    {0xBEDB, 0x64C4},+    {0xBEDC, 0x64C7},+    {0xBEDD, 0x64C2},+    {0xBEDE, 0x64CD},+    {0xBEDF, 0x64BF},+    {0xBEE0, 0x64D2},+    {0xBEE1, 0x64D4},+    {0xBEE2, 0x64BE},+    {0xBEE3, 0x6574},+    {0xBEE4, 0x66C6},+    {0xBEE5, 0x66C9},+    {0xBEE6, 0x66B9},+    {0xBEE7, 0x66C4},+    {0xBEE8, 0x66C7},+    {0xBEE9, 0x66B8},+    {0xBEEA, 0x6A3D},+    {0xBEEB, 0x6A38},+    {0xBEEC, 0x6A3A},+    {0xBEED, 0x6A59},+    {0xBEEE, 0x6A6B},+    {0xBEEF, 0x6A58},+    {0xBEF0, 0x6A39},+    {0xBEF1, 0x6A44},+    {0xBEF2, 0x6A62},+    {0xBEF3, 0x6A61},+    {0xBEF4, 0x6A4B},+    {0xBEF5, 0x6A47},+    {0xBEF6, 0x6A35},+    {0xBEF7, 0x6A5F},+    {0xBEF8, 0x6A48},+    {0xBEF9, 0x6B59},+    {0xBEFA, 0x6B77},+    {0xBEFB, 0x6C05},+    {0xBEFC, 0x6FC2},+    {0xBEFD, 0x6FB1},+    {0xBEFE, 0x6FA1},+    {0xBF40, 0x6FC3},+    {0xBF41, 0x6FA4},+    {0xBF42, 0x6FC1},+    {0xBF43, 0x6FA7},+    {0xBF44, 0x6FB3},+    {0xBF45, 0x6FC0},+    {0xBF46, 0x6FB9},+    {0xBF47, 0x6FB6},+    {0xBF48, 0x6FA6},+    {0xBF49, 0x6FA0},+    {0xBF4A, 0x6FB4},+    {0xBF4B, 0x71BE},+    {0xBF4C, 0x71C9},+    {0xBF4D, 0x71D0},+    {0xBF4E, 0x71D2},+    {0xBF4F, 0x71C8},+    {0xBF50, 0x71D5},+    {0xBF51, 0x71B9},+    {0xBF52, 0x71CE},+    {0xBF53, 0x71D9},+    {0xBF54, 0x71DC},+    {0xBF55, 0x71C3},+    {0xBF56, 0x71C4},+    {0xBF57, 0x7368},+    {0xBF58, 0x749C},+    {0xBF59, 0x74A3},+    {0xBF5A, 0x7498},+    {0xBF5B, 0x749F},+    {0xBF5C, 0x749E},+    {0xBF5D, 0x74E2},+    {0xBF5E, 0x750C},+    {0xBF5F, 0x750D},+    {0xBF60, 0x7634},+    {0xBF61, 0x7638},+    {0xBF62, 0x763A},+    {0xBF63, 0x76E7},+    {0xBF64, 0x76E5},+    {0xBF65, 0x77A0},+    {0xBF66, 0x779E},+    {0xBF67, 0x779F},+    {0xBF68, 0x77A5},+    {0xBF69, 0x78E8},+    {0xBF6A, 0x78DA},+    {0xBF6B, 0x78EC},+    {0xBF6C, 0x78E7},+    {0xBF6D, 0x79A6},+    {0xBF6E, 0x7A4D},+    {0xBF6F, 0x7A4E},+    {0xBF70, 0x7A46},+    {0xBF71, 0x7A4C},+    {0xBF72, 0x7A4B},+    {0xBF73, 0x7ABA},+    {0xBF74, 0x7BD9},+    {0xBF75, 0x7C11},+    {0xBF76, 0x7BC9},+    {0xBF77, 0x7BE4},+    {0xBF78, 0x7BDB},+    {0xBF79, 0x7BE1},+    {0xBF7A, 0x7BE9},+    {0xBF7B, 0x7BE6},+    {0xBF7C, 0x7CD5},+    {0xBF7D, 0x7CD6},+    {0xBF7E, 0x7E0A},+    {0xBFA1, 0x7E11},+    {0xBFA2, 0x7E08},+    {0xBFA3, 0x7E1B},+    {0xBFA4, 0x7E23},+    {0xBFA5, 0x7E1E},+    {0xBFA6, 0x7E1D},+    {0xBFA7, 0x7E09},+    {0xBFA8, 0x7E10},+    {0xBFA9, 0x7F79},+    {0xBFAA, 0x7FB2},+    {0xBFAB, 0x7FF0},+    {0xBFAC, 0x7FF1},+    {0xBFAD, 0x7FEE},+    {0xBFAE, 0x8028},+    {0xBFAF, 0x81B3},+    {0xBFB0, 0x81A9},+    {0xBFB1, 0x81A8},+    {0xBFB2, 0x81FB},+    {0xBFB3, 0x8208},+    {0xBFB4, 0x8258},+    {0xBFB5, 0x8259},+    {0xBFB6, 0x854A},+    {0xBFB7, 0x8559},+    {0xBFB8, 0x8548},+    {0xBFB9, 0x8568},+    {0xBFBA, 0x8569},+    {0xBFBB, 0x8543},+    {0xBFBC, 0x8549},+    {0xBFBD, 0x856D},+    {0xBFBE, 0x856A},+    {0xBFBF, 0x855E},+    {0xBFC0, 0x8783},+    {0xBFC1, 0x879F},+    {0xBFC2, 0x879E},+    {0xBFC3, 0x87A2},+    {0xBFC4, 0x878D},+    {0xBFC5, 0x8861},+    {0xBFC6, 0x892A},+    {0xBFC7, 0x8932},+    {0xBFC8, 0x8925},+    {0xBFC9, 0x892B},+    {0xBFCA, 0x8921},+    {0xBFCB, 0x89AA},+    {0xBFCC, 0x89A6},+    {0xBFCD, 0x8AE6},+    {0xBFCE, 0x8AFA},+    {0xBFCF, 0x8AEB},+    {0xBFD0, 0x8AF1},+    {0xBFD1, 0x8B00},+    {0xBFD2, 0x8ADC},+    {0xBFD3, 0x8AE7},+    {0xBFD4, 0x8AEE},+    {0xBFD5, 0x8AFE},+    {0xBFD6, 0x8B01},+    {0xBFD7, 0x8B02},+    {0xBFD8, 0x8AF7},+    {0xBFD9, 0x8AED},+    {0xBFDA, 0x8AF3},+    {0xBFDB, 0x8AF6},+    {0xBFDC, 0x8AFC},+    {0xBFDD, 0x8C6B},+    {0xBFDE, 0x8C6D},+    {0xBFDF, 0x8C93},+    {0xBFE0, 0x8CF4},+    {0xBFE1, 0x8E44},+    {0xBFE2, 0x8E31},+    {0xBFE3, 0x8E34},+    {0xBFE4, 0x8E42},+    {0xBFE5, 0x8E39},+    {0xBFE6, 0x8E35},+    {0xBFE7, 0x8F3B},+    {0xBFE8, 0x8F2F},+    {0xBFE9, 0x8F38},+    {0xBFEA, 0x8F33},+    {0xBFEB, 0x8FA8},+    {0xBFEC, 0x8FA6},+    {0xBFED, 0x9075},+    {0xBFEE, 0x9074},+    {0xBFEF, 0x9078},+    {0xBFF0, 0x9072},+    {0xBFF1, 0x907C},+    {0xBFF2, 0x907A},+    {0xBFF3, 0x9134},+    {0xBFF4, 0x9192},+    {0xBFF5, 0x9320},+    {0xBFF6, 0x9336},+    {0xBFF7, 0x92F8},+    {0xBFF8, 0x9333},+    {0xBFF9, 0x932F},+    {0xBFFA, 0x9322},+    {0xBFFB, 0x92FC},+    {0xBFFC, 0x932B},+    {0xBFFD, 0x9304},+    {0xBFFE, 0x931A},+    {0xC040, 0x9310},+    {0xC041, 0x9326},+    {0xC042, 0x9321},+    {0xC043, 0x9315},+    {0xC044, 0x932E},+    {0xC045, 0x9319},+    {0xC046, 0x95BB},+    {0xC047, 0x96A7},+    {0xC048, 0x96A8},+    {0xC049, 0x96AA},+    {0xC04A, 0x96D5},+    {0xC04B, 0x970E},+    {0xC04C, 0x9711},+    {0xC04D, 0x9716},+    {0xC04E, 0x970D},+    {0xC04F, 0x9713},+    {0xC050, 0x970F},+    {0xC051, 0x975B},+    {0xC052, 0x975C},+    {0xC053, 0x9766},+    {0xC054, 0x9798},+    {0xC055, 0x9830},+    {0xC056, 0x9838},+    {0xC057, 0x983B},+    {0xC058, 0x9837},+    {0xC059, 0x982D},+    {0xC05A, 0x9839},+    {0xC05B, 0x9824},+    {0xC05C, 0x9910},+    {0xC05D, 0x9928},+    {0xC05E, 0x991E},+    {0xC05F, 0x991B},+    {0xC060, 0x9921},+    {0xC061, 0x991A},+    {0xC062, 0x99ED},+    {0xC063, 0x99E2},+    {0xC064, 0x99F1},+    {0xC065, 0x9AB8},+    {0xC066, 0x9ABC},+    {0xC067, 0x9AFB},+    {0xC068, 0x9AED},+    {0xC069, 0x9B28},+    {0xC06A, 0x9B91},+    {0xC06B, 0x9D15},+    {0xC06C, 0x9D23},+    {0xC06D, 0x9D26},+    {0xC06E, 0x9D28},+    {0xC06F, 0x9D12},+    {0xC070, 0x9D1B},+    {0xC071, 0x9ED8},+    {0xC072, 0x9ED4},+    {0xC073, 0x9F8D},+    {0xC074, 0x9F9C},+    {0xC075, 0x512A},+    {0xC076, 0x511F},+    {0xC077, 0x5121},+    {0xC078, 0x5132},+    {0xC079, 0x52F5},+    {0xC07A, 0x568E},+    {0xC07B, 0x5680},+    {0xC07C, 0x5690},+    {0xC07D, 0x5685},+    {0xC07E, 0x5687},+    {0xC0A1, 0x568F},+    {0xC0A2, 0x58D5},+    {0xC0A3, 0x58D3},+    {0xC0A4, 0x58D1},+    {0xC0A5, 0x58CE},+    {0xC0A6, 0x5B30},+    {0xC0A7, 0x5B2A},+    {0xC0A8, 0x5B24},+    {0xC0A9, 0x5B7A},+    {0xC0AA, 0x5C37},+    {0xC0AB, 0x5C68},+    {0xC0AC, 0x5DBC},+    {0xC0AD, 0x5DBA},+    {0xC0AE, 0x5DBD},+    {0xC0AF, 0x5DB8},+    {0xC0B0, 0x5E6B},+    {0xC0B1, 0x5F4C},+    {0xC0B2, 0x5FBD},+    {0xC0B3, 0x61C9},+    {0xC0B4, 0x61C2},+    {0xC0B5, 0x61C7},+    {0xC0B6, 0x61E6},+    {0xC0B7, 0x61CB},+    {0xC0B8, 0x6232},+    {0xC0B9, 0x6234},+    {0xC0BA, 0x64CE},+    {0xC0BB, 0x64CA},+    {0xC0BC, 0x64D8},+    {0xC0BD, 0x64E0},+    {0xC0BE, 0x64F0},+    {0xC0BF, 0x64E6},+    {0xC0C0, 0x64EC},+    {0xC0C1, 0x64F1},+    {0xC0C2, 0x64E2},+    {0xC0C3, 0x64ED},+    {0xC0C4, 0x6582},+    {0xC0C5, 0x6583},+    {0xC0C6, 0x66D9},+    {0xC0C7, 0x66D6},+    {0xC0C8, 0x6A80},+    {0xC0C9, 0x6A94},+    {0xC0CA, 0x6A84},+    {0xC0CB, 0x6AA2},+    {0xC0CC, 0x6A9C},+    {0xC0CD, 0x6ADB},+    {0xC0CE, 0x6AA3},+    {0xC0CF, 0x6A7E},+    {0xC0D0, 0x6A97},+    {0xC0D1, 0x6A90},+    {0xC0D2, 0x6AA0},+    {0xC0D3, 0x6B5C},+    {0xC0D4, 0x6BAE},+    {0xC0D5, 0x6BDA},+    {0xC0D6, 0x6C08},+    {0xC0D7, 0x6FD8},+    {0xC0D8, 0x6FF1},+    {0xC0D9, 0x6FDF},+    {0xC0DA, 0x6FE0},+    {0xC0DB, 0x6FDB},+    {0xC0DC, 0x6FE4},+    {0xC0DD, 0x6FEB},+    {0xC0DE, 0x6FEF},+    {0xC0DF, 0x6F80},+    {0xC0E0, 0x6FEC},+    {0xC0E1, 0x6FE1},+    {0xC0E2, 0x6FE9},+    {0xC0E3, 0x6FD5},+    {0xC0E4, 0x6FEE},+    {0xC0E5, 0x6FF0},+    {0xC0E6, 0x71E7},+    {0xC0E7, 0x71DF},+    {0xC0E8, 0x71EE},+    {0xC0E9, 0x71E6},+    {0xC0EA, 0x71E5},+    {0xC0EB, 0x71ED},+    {0xC0EC, 0x71EC},+    {0xC0ED, 0x71F4},+    {0xC0EE, 0x71E0},+    {0xC0EF, 0x7235},+    {0xC0F0, 0x7246},+    {0xC0F1, 0x7370},+    {0xC0F2, 0x7372},+    {0xC0F3, 0x74A9},+    {0xC0F4, 0x74B0},+    {0xC0F5, 0x74A6},+    {0xC0F6, 0x74A8},+    {0xC0F7, 0x7646},+    {0xC0F8, 0x7642},+    {0xC0F9, 0x764C},+    {0xC0FA, 0x76EA},+    {0xC0FB, 0x77B3},+    {0xC0FC, 0x77AA},+    {0xC0FD, 0x77B0},+    {0xC0FE, 0x77AC},+    {0xC140, 0x77A7},+    {0xC141, 0x77AD},+    {0xC142, 0x77EF},+    {0xC143, 0x78F7},+    {0xC144, 0x78FA},+    {0xC145, 0x78F4},+    {0xC146, 0x78EF},+    {0xC147, 0x7901},+    {0xC148, 0x79A7},+    {0xC149, 0x79AA},+    {0xC14A, 0x7A57},+    {0xC14B, 0x7ABF},+    {0xC14C, 0x7C07},+    {0xC14D, 0x7C0D},+    {0xC14E, 0x7BFE},+    {0xC14F, 0x7BF7},+    {0xC150, 0x7C0C},+    {0xC151, 0x7BE0},+    {0xC152, 0x7CE0},+    {0xC153, 0x7CDC},+    {0xC154, 0x7CDE},+    {0xC155, 0x7CE2},+    {0xC156, 0x7CDF},+    {0xC157, 0x7CD9},+    {0xC158, 0x7CDD},+    {0xC159, 0x7E2E},+    {0xC15A, 0x7E3E},+    {0xC15B, 0x7E46},+    {0xC15C, 0x7E37},+    {0xC15D, 0x7E32},+    {0xC15E, 0x7E43},+    {0xC15F, 0x7E2B},+    {0xC160, 0x7E3D},+    {0xC161, 0x7E31},+    {0xC162, 0x7E45},+    {0xC163, 0x7E41},+    {0xC164, 0x7E34},+    {0xC165, 0x7E39},+    {0xC166, 0x7E48},+    {0xC167, 0x7E35},+    {0xC168, 0x7E3F},+    {0xC169, 0x7E2F},+    {0xC16A, 0x7F44},+    {0xC16B, 0x7FF3},+    {0xC16C, 0x7FFC},+    {0xC16D, 0x8071},+    {0xC16E, 0x8072},+    {0xC16F, 0x8070},+    {0xC170, 0x806F},+    {0xC171, 0x8073},+    {0xC172, 0x81C6},+    {0xC173, 0x81C3},+    {0xC174, 0x81BA},+    {0xC175, 0x81C2},+    {0xC176, 0x81C0},+    {0xC177, 0x81BF},+    {0xC178, 0x81BD},+    {0xC179, 0x81C9},+    {0xC17A, 0x81BE},+    {0xC17B, 0x81E8},+    {0xC17C, 0x8209},+    {0xC17D, 0x8271},+    {0xC17E, 0x85AA},+    {0xC1A1, 0x8584},+    {0xC1A2, 0x857E},+    {0xC1A3, 0x859C},+    {0xC1A4, 0x8591},+    {0xC1A5, 0x8594},+    {0xC1A6, 0x85AF},+    {0xC1A7, 0x859B},+    {0xC1A8, 0x8587},+    {0xC1A9, 0x85A8},+    {0xC1AA, 0x858A},+    {0xC1AB, 0x8667},+    {0xC1AC, 0x87C0},+    {0xC1AD, 0x87D1},+    {0xC1AE, 0x87B3},+    {0xC1AF, 0x87D2},+    {0xC1B0, 0x87C6},+    {0xC1B1, 0x87AB},+    {0xC1B2, 0x87BB},+    {0xC1B3, 0x87BA},+    {0xC1B4, 0x87C8},+    {0xC1B5, 0x87CB},+    {0xC1B6, 0x893B},+    {0xC1B7, 0x8936},+    {0xC1B8, 0x8944},+    {0xC1B9, 0x8938},+    {0xC1BA, 0x893D},+    {0xC1BB, 0x89AC},+    {0xC1BC, 0x8B0E},+    {0xC1BD, 0x8B17},+    {0xC1BE, 0x8B19},+    {0xC1BF, 0x8B1B},+    {0xC1C0, 0x8B0A},+    {0xC1C1, 0x8B20},+    {0xC1C2, 0x8B1D},+    {0xC1C3, 0x8B04},+    {0xC1C4, 0x8B10},+    {0xC1C5, 0x8C41},+    {0xC1C6, 0x8C3F},+    {0xC1C7, 0x8C73},+    {0xC1C8, 0x8CFA},+    {0xC1C9, 0x8CFD},+    {0xC1CA, 0x8CFC},+    {0xC1CB, 0x8CF8},+    {0xC1CC, 0x8CFB},+    {0xC1CD, 0x8DA8},+    {0xC1CE, 0x8E49},+    {0xC1CF, 0x8E4B},+    {0xC1D0, 0x8E48},+    {0xC1D1, 0x8E4A},+    {0xC1D2, 0x8F44},+    {0xC1D3, 0x8F3E},+    {0xC1D4, 0x8F42},+    {0xC1D5, 0x8F45},+    {0xC1D6, 0x8F3F},+    {0xC1D7, 0x907F},+    {0xC1D8, 0x907D},+    {0xC1D9, 0x9084},+    {0xC1DA, 0x9081},+    {0xC1DB, 0x9082},+    {0xC1DC, 0x9080},+    {0xC1DD, 0x9139},+    {0xC1DE, 0x91A3},+    {0xC1DF, 0x919E},+    {0xC1E0, 0x919C},+    {0xC1E1, 0x934D},+    {0xC1E2, 0x9382},+    {0xC1E3, 0x9328},+    {0xC1E4, 0x9375},+    {0xC1E5, 0x934A},+    {0xC1E6, 0x9365},+    {0xC1E7, 0x934B},+    {0xC1E8, 0x9318},+    {0xC1E9, 0x937E},+    {0xC1EA, 0x936C},+    {0xC1EB, 0x935B},+    {0xC1EC, 0x9370},+    {0xC1ED, 0x935A},+    {0xC1EE, 0x9354},+    {0xC1EF, 0x95CA},+    {0xC1F0, 0x95CB},+    {0xC1F1, 0x95CC},+    {0xC1F2, 0x95C8},+    {0xC1F3, 0x95C6},+    {0xC1F4, 0x96B1},+    {0xC1F5, 0x96B8},+    {0xC1F6, 0x96D6},+    {0xC1F7, 0x971C},+    {0xC1F8, 0x971E},+    {0xC1F9, 0x97A0},+    {0xC1FA, 0x97D3},+    {0xC1FB, 0x9846},+    {0xC1FC, 0x98B6},+    {0xC1FD, 0x9935},+    {0xC1FE, 0x9A01},+    {0xC240, 0x99FF},+    {0xC241, 0x9BAE},+    {0xC242, 0x9BAB},+    {0xC243, 0x9BAA},+    {0xC244, 0x9BAD},+    {0xC245, 0x9D3B},+    {0xC246, 0x9D3F},+    {0xC247, 0x9E8B},+    {0xC248, 0x9ECF},+    {0xC249, 0x9EDE},+    {0xC24A, 0x9EDC},+    {0xC24B, 0x9EDD},+    {0xC24C, 0x9EDB},+    {0xC24D, 0x9F3E},+    {0xC24E, 0x9F4B},+    {0xC24F, 0x53E2},+    {0xC250, 0x5695},+    {0xC251, 0x56AE},+    {0xC252, 0x58D9},+    {0xC253, 0x58D8},+    {0xC254, 0x5B38},+    {0xC255, 0x5F5D},+    {0xC256, 0x61E3},+    {0xC257, 0x6233},+    {0xC258, 0x64F4},+    {0xC259, 0x64F2},+    {0xC25A, 0x64FE},+    {0xC25B, 0x6506},+    {0xC25C, 0x64FA},+    {0xC25D, 0x64FB},+    {0xC25E, 0x64F7},+    {0xC25F, 0x65B7},+    {0xC260, 0x66DC},+    {0xC261, 0x6726},+    {0xC262, 0x6AB3},+    {0xC263, 0x6AAC},+    {0xC264, 0x6AC3},+    {0xC265, 0x6ABB},+    {0xC266, 0x6AB8},+    {0xC267, 0x6AC2},+    {0xC268, 0x6AAE},+    {0xC269, 0x6AAF},+    {0xC26A, 0x6B5F},+    {0xC26B, 0x6B78},+    {0xC26C, 0x6BAF},+    {0xC26D, 0x7009},+    {0xC26E, 0x700B},+    {0xC26F, 0x6FFE},+    {0xC270, 0x7006},+    {0xC271, 0x6FFA},+    {0xC272, 0x7011},+    {0xC273, 0x700F},+    {0xC274, 0x71FB},+    {0xC275, 0x71FC},+    {0xC276, 0x71FE},+    {0xC277, 0x71F8},+    {0xC278, 0x7377},+    {0xC279, 0x7375},+    {0xC27A, 0x74A7},+    {0xC27B, 0x74BF},+    {0xC27C, 0x7515},+    {0xC27D, 0x7656},+    {0xC27E, 0x7658},+    {0xC2A1, 0x7652},+    {0xC2A2, 0x77BD},+    {0xC2A3, 0x77BF},+    {0xC2A4, 0x77BB},+    {0xC2A5, 0x77BC},+    {0xC2A6, 0x790E},+    {0xC2A7, 0x79AE},+    {0xC2A8, 0x7A61},+    {0xC2A9, 0x7A62},+    {0xC2AA, 0x7A60},+    {0xC2AB, 0x7AC4},+    {0xC2AC, 0x7AC5},+    {0xC2AD, 0x7C2B},+    {0xC2AE, 0x7C27},+    {0xC2AF, 0x7C2A},+    {0xC2B0, 0x7C1E},+    {0xC2B1, 0x7C23},+    {0xC2B2, 0x7C21},+    {0xC2B3, 0x7CE7},+    {0xC2B4, 0x7E54},+    {0xC2B5, 0x7E55},+    {0xC2B6, 0x7E5E},+    {0xC2B7, 0x7E5A},+    {0xC2B8, 0x7E61},+    {0xC2B9, 0x7E52},+    {0xC2BA, 0x7E59},+    {0xC2BB, 0x7F48},+    {0xC2BC, 0x7FF9},+    {0xC2BD, 0x7FFB},+    {0xC2BE, 0x8077},+    {0xC2BF, 0x8076},+    {0xC2C0, 0x81CD},+    {0xC2C1, 0x81CF},+    {0xC2C2, 0x820A},+    {0xC2C3, 0x85CF},+    {0xC2C4, 0x85A9},+    {0xC2C5, 0x85CD},+    {0xC2C6, 0x85D0},+    {0xC2C7, 0x85C9},+    {0xC2C8, 0x85B0},+    {0xC2C9, 0x85BA},+    {0xC2CA, 0x85B9},+    {0xC2CB, 0x85A6},+    {0xC2CC, 0x87EF},+    {0xC2CD, 0x87EC},+    {0xC2CE, 0x87F2},+    {0xC2CF, 0x87E0},+    {0xC2D0, 0x8986},+    {0xC2D1, 0x89B2},+    {0xC2D2, 0x89F4},+    {0xC2D3, 0x8B28},+    {0xC2D4, 0x8B39},+    {0xC2D5, 0x8B2C},+    {0xC2D6, 0x8B2B},+    {0xC2D7, 0x8C50},+    {0xC2D8, 0x8D05},+    {0xC2D9, 0x8E59},+    {0xC2DA, 0x8E63},+    {0xC2DB, 0x8E66},+    {0xC2DC, 0x8E64},+    {0xC2DD, 0x8E5F},+    {0xC2DE, 0x8E55},+    {0xC2DF, 0x8EC0},+    {0xC2E0, 0x8F49},+    {0xC2E1, 0x8F4D},+    {0xC2E2, 0x9087},+    {0xC2E3, 0x9083},+    {0xC2E4, 0x9088},+    {0xC2E5, 0x91AB},+    {0xC2E6, 0x91AC},+    {0xC2E7, 0x91D0},+    {0xC2E8, 0x9394},+    {0xC2E9, 0x938A},+    {0xC2EA, 0x9396},+    {0xC2EB, 0x93A2},+    {0xC2EC, 0x93B3},+    {0xC2ED, 0x93AE},+    {0xC2EE, 0x93AC},+    {0xC2EF, 0x93B0},+    {0xC2F0, 0x9398},+    {0xC2F1, 0x939A},+    {0xC2F2, 0x9397},+    {0xC2F3, 0x95D4},+    {0xC2F4, 0x95D6},+    {0xC2F5, 0x95D0},+    {0xC2F6, 0x95D5},+    {0xC2F7, 0x96E2},+    {0xC2F8, 0x96DC},+    {0xC2F9, 0x96D9},+    {0xC2FA, 0x96DB},+    {0xC2FB, 0x96DE},+    {0xC2FC, 0x9724},+    {0xC2FD, 0x97A3},+    {0xC2FE, 0x97A6},+    {0xC340, 0x97AD},+    {0xC341, 0x97F9},+    {0xC342, 0x984D},+    {0xC343, 0x984F},+    {0xC344, 0x984C},+    {0xC345, 0x984E},+    {0xC346, 0x9853},+    {0xC347, 0x98BA},+    {0xC348, 0x993E},+    {0xC349, 0x993F},+    {0xC34A, 0x993D},+    {0xC34B, 0x992E},+    {0xC34C, 0x99A5},+    {0xC34D, 0x9A0E},+    {0xC34E, 0x9AC1},+    {0xC34F, 0x9B03},+    {0xC350, 0x9B06},+    {0xC351, 0x9B4F},+    {0xC352, 0x9B4E},+    {0xC353, 0x9B4D},+    {0xC354, 0x9BCA},+    {0xC355, 0x9BC9},+    {0xC356, 0x9BFD},+    {0xC357, 0x9BC8},+    {0xC358, 0x9BC0},+    {0xC359, 0x9D51},+    {0xC35A, 0x9D5D},+    {0xC35B, 0x9D60},+    {0xC35C, 0x9EE0},+    {0xC35D, 0x9F15},+    {0xC35E, 0x9F2C},+    {0xC35F, 0x5133},+    {0xC360, 0x56A5},+    {0xC361, 0x58DE},+    {0xC362, 0x58DF},+    {0xC363, 0x58E2},+    {0xC364, 0x5BF5},+    {0xC365, 0x9F90},+    {0xC366, 0x5EEC},+    {0xC367, 0x61F2},+    {0xC368, 0x61F7},+    {0xC369, 0x61F6},+    {0xC36A, 0x61F5},+    {0xC36B, 0x6500},+    {0xC36C, 0x650F},+    {0xC36D, 0x66E0},+    {0xC36E, 0x66DD},+    {0xC36F, 0x6AE5},+    {0xC370, 0x6ADD},+    {0xC371, 0x6ADA},+    {0xC372, 0x6AD3},+    {0xC373, 0x701B},+    {0xC374, 0x701F},+    {0xC375, 0x7028},+    {0xC376, 0x701A},+    {0xC377, 0x701D},+    {0xC378, 0x7015},+    {0xC379, 0x7018},+    {0xC37A, 0x7206},+    {0xC37B, 0x720D},+    {0xC37C, 0x7258},+    {0xC37D, 0x72A2},+    {0xC37E, 0x7378},+    {0xC3A1, 0x737A},+    {0xC3A2, 0x74BD},+    {0xC3A3, 0x74CA},+    {0xC3A4, 0x74E3},+    {0xC3A5, 0x7587},+    {0xC3A6, 0x7586},+    {0xC3A7, 0x765F},+    {0xC3A8, 0x7661},+    {0xC3A9, 0x77C7},+    {0xC3AA, 0x7919},+    {0xC3AB, 0x79B1},+    {0xC3AC, 0x7A6B},+    {0xC3AD, 0x7A69},+    {0xC3AE, 0x7C3E},+    {0xC3AF, 0x7C3F},+    {0xC3B0, 0x7C38},+    {0xC3B1, 0x7C3D},+    {0xC3B2, 0x7C37},+    {0xC3B3, 0x7C40},+    {0xC3B4, 0x7E6B},+    {0xC3B5, 0x7E6D},+    {0xC3B6, 0x7E79},+    {0xC3B7, 0x7E69},+    {0xC3B8, 0x7E6A},+    {0xC3B9, 0x7F85},+    {0xC3BA, 0x7E73},+    {0xC3BB, 0x7FB6},+    {0xC3BC, 0x7FB9},+    {0xC3BD, 0x7FB8},+    {0xC3BE, 0x81D8},+    {0xC3BF, 0x85E9},+    {0xC3C0, 0x85DD},+    {0xC3C1, 0x85EA},+    {0xC3C2, 0x85D5},+    {0xC3C3, 0x85E4},+    {0xC3C4, 0x85E5},+    {0xC3C5, 0x85F7},+    {0xC3C6, 0x87FB},+    {0xC3C7, 0x8805},+    {0xC3C8, 0x880D},+    {0xC3C9, 0x87F9},+    {0xC3CA, 0x87FE},+    {0xC3CB, 0x8960},+    {0xC3CC, 0x895F},+    {0xC3CD, 0x8956},+    {0xC3CE, 0x895E},+    {0xC3CF, 0x8B41},+    {0xC3D0, 0x8B5C},+    {0xC3D1, 0x8B58},+    {0xC3D2, 0x8B49},+    {0xC3D3, 0x8B5A},+    {0xC3D4, 0x8B4E},+    {0xC3D5, 0x8B4F},+    {0xC3D6, 0x8B46},+    {0xC3D7, 0x8B59},+    {0xC3D8, 0x8D08},+    {0xC3D9, 0x8D0A},+    {0xC3DA, 0x8E7C},+    {0xC3DB, 0x8E72},+    {0xC3DC, 0x8E87},+    {0xC3DD, 0x8E76},+    {0xC3DE, 0x8E6C},+    {0xC3DF, 0x8E7A},+    {0xC3E0, 0x8E74},+    {0xC3E1, 0x8F54},+    {0xC3E2, 0x8F4E},+    {0xC3E3, 0x8FAD},+    {0xC3E4, 0x908A},+    {0xC3E5, 0x908B},+    {0xC3E6, 0x91B1},+    {0xC3E7, 0x91AE},+    {0xC3E8, 0x93E1},+    {0xC3E9, 0x93D1},+    {0xC3EA, 0x93DF},+    {0xC3EB, 0x93C3},+    {0xC3EC, 0x93C8},+    {0xC3ED, 0x93DC},+    {0xC3EE, 0x93DD},+    {0xC3EF, 0x93D6},+    {0xC3F0, 0x93E2},+    {0xC3F1, 0x93CD},+    {0xC3F2, 0x93D8},+    {0xC3F3, 0x93E4},+    {0xC3F4, 0x93D7},+    {0xC3F5, 0x93E8},+    {0xC3F6, 0x95DC},+    {0xC3F7, 0x96B4},+    {0xC3F8, 0x96E3},+    {0xC3F9, 0x972A},+    {0xC3FA, 0x9727},+    {0xC3FB, 0x9761},+    {0xC3FC, 0x97DC},+    {0xC3FD, 0x97FB},+    {0xC3FE, 0x985E},+    {0xC440, 0x9858},+    {0xC441, 0x985B},+    {0xC442, 0x98BC},+    {0xC443, 0x9945},+    {0xC444, 0x9949},+    {0xC445, 0x9A16},+    {0xC446, 0x9A19},+    {0xC447, 0x9B0D},+    {0xC448, 0x9BE8},+    {0xC449, 0x9BE7},+    {0xC44A, 0x9BD6},+    {0xC44B, 0x9BDB},+    {0xC44C, 0x9D89},+    {0xC44D, 0x9D61},+    {0xC44E, 0x9D72},+    {0xC44F, 0x9D6A},+    {0xC450, 0x9D6C},+    {0xC451, 0x9E92},+    {0xC452, 0x9E97},+    {0xC453, 0x9E93},+    {0xC454, 0x9EB4},+    {0xC455, 0x52F8},+    {0xC456, 0x56A8},+    {0xC457, 0x56B7},+    {0xC458, 0x56B6},+    {0xC459, 0x56B4},+    {0xC45A, 0x56BC},+    {0xC45B, 0x58E4},+    {0xC45C, 0x5B40},+    {0xC45D, 0x5B43},+    {0xC45E, 0x5B7D},+    {0xC45F, 0x5BF6},+    {0xC460, 0x5DC9},+    {0xC461, 0x61F8},+    {0xC462, 0x61FA},+    {0xC463, 0x6518},+    {0xC464, 0x6514},+    {0xC465, 0x6519},+    {0xC466, 0x66E6},+    {0xC467, 0x6727},+    {0xC468, 0x6AEC},+    {0xC469, 0x703E},+    {0xC46A, 0x7030},+    {0xC46B, 0x7032},+    {0xC46C, 0x7210},+    {0xC46D, 0x737B},+    {0xC46E, 0x74CF},+    {0xC46F, 0x7662},+    {0xC470, 0x7665},+    {0xC471, 0x7926},+    {0xC472, 0x792A},+    {0xC473, 0x792C},+    {0xC474, 0x792B},+    {0xC475, 0x7AC7},+    {0xC476, 0x7AF6},+    {0xC477, 0x7C4C},+    {0xC478, 0x7C43},+    {0xC479, 0x7C4D},+    {0xC47A, 0x7CEF},+    {0xC47B, 0x7CF0},+    {0xC47C, 0x8FAE},+    {0xC47D, 0x7E7D},+    {0xC47E, 0x7E7C},+    {0xC4A1, 0x7E82},+    {0xC4A2, 0x7F4C},+    {0xC4A3, 0x8000},+    {0xC4A4, 0x81DA},+    {0xC4A5, 0x8266},+    {0xC4A6, 0x85FB},+    {0xC4A7, 0x85F9},+    {0xC4A8, 0x8611},+    {0xC4A9, 0x85FA},+    {0xC4AA, 0x8606},+    {0xC4AB, 0x860B},+    {0xC4AC, 0x8607},+    {0xC4AD, 0x860A},+    {0xC4AE, 0x8814},+    {0xC4AF, 0x8815},+    {0xC4B0, 0x8964},+    {0xC4B1, 0x89BA},+    {0xC4B2, 0x89F8},+    {0xC4B3, 0x8B70},+    {0xC4B4, 0x8B6C},+    {0xC4B5, 0x8B66},+    {0xC4B6, 0x8B6F},+    {0xC4B7, 0x8B5F},+    {0xC4B8, 0x8B6B},+    {0xC4B9, 0x8D0F},+    {0xC4BA, 0x8D0D},+    {0xC4BB, 0x8E89},+    {0xC4BC, 0x8E81},+    {0xC4BD, 0x8E85},+    {0xC4BE, 0x8E82},+    {0xC4BF, 0x91B4},+    {0xC4C0, 0x91CB},+    {0xC4C1, 0x9418},+    {0xC4C2, 0x9403},+    {0xC4C3, 0x93FD},+    {0xC4C4, 0x95E1},+    {0xC4C5, 0x9730},+    {0xC4C6, 0x98C4},+    {0xC4C7, 0x9952},+    {0xC4C8, 0x9951},+    {0xC4C9, 0x99A8},+    {0xC4CA, 0x9A2B},+    {0xC4CB, 0x9A30},+    {0xC4CC, 0x9A37},+    {0xC4CD, 0x9A35},+    {0xC4CE, 0x9C13},+    {0xC4CF, 0x9C0D},+    {0xC4D0, 0x9E79},+    {0xC4D1, 0x9EB5},+    {0xC4D2, 0x9EE8},+    {0xC4D3, 0x9F2F},+    {0xC4D4, 0x9F5F},+    {0xC4D5, 0x9F63},+    {0xC4D6, 0x9F61},+    {0xC4D7, 0x5137},+    {0xC4D8, 0x5138},+    {0xC4D9, 0x56C1},+    {0xC4DA, 0x56C0},+    {0xC4DB, 0x56C2},+    {0xC4DC, 0x5914},+    {0xC4DD, 0x5C6C},+    {0xC4DE, 0x5DCD},+    {0xC4DF, 0x61FC},+    {0xC4E0, 0x61FE},+    {0xC4E1, 0x651D},+    {0xC4E2, 0x651C},+    {0xC4E3, 0x6595},+    {0xC4E4, 0x66E9},+    {0xC4E5, 0x6AFB},+    {0xC4E6, 0x6B04},+    {0xC4E7, 0x6AFA},+    {0xC4E8, 0x6BB2},+    {0xC4E9, 0x704C},+    {0xC4EA, 0x721B},+    {0xC4EB, 0x72A7},+    {0xC4EC, 0x74D6},+    {0xC4ED, 0x74D4},+    {0xC4EE, 0x7669},+    {0xC4EF, 0x77D3},+    {0xC4F0, 0x7C50},+    {0xC4F1, 0x7E8F},+    {0xC4F2, 0x7E8C},+    {0xC4F3, 0x7FBC},+    {0xC4F4, 0x8617},+    {0xC4F5, 0x862D},+    {0xC4F6, 0x861A},+    {0xC4F7, 0x8823},+    {0xC4F8, 0x8822},+    {0xC4F9, 0x8821},+    {0xC4FA, 0x881F},+    {0xC4FB, 0x896A},+    {0xC4FC, 0x896C},+    {0xC4FD, 0x89BD},+    {0xC4FE, 0x8B74},+    {0xC540, 0x8B77},+    {0xC541, 0x8B7D},+    {0xC542, 0x8D13},+    {0xC543, 0x8E8A},+    {0xC544, 0x8E8D},+    {0xC545, 0x8E8B},+    {0xC546, 0x8F5F},+    {0xC547, 0x8FAF},+    {0xC548, 0x91BA},+    {0xC549, 0x942E},+    {0xC54A, 0x9433},+    {0xC54B, 0x9435},+    {0xC54C, 0x943A},+    {0xC54D, 0x9438},+    {0xC54E, 0x9432},+    {0xC54F, 0x942B},+    {0xC550, 0x95E2},+    {0xC551, 0x9738},+    {0xC552, 0x9739},+    {0xC553, 0x9732},+    {0xC554, 0x97FF},+    {0xC555, 0x9867},+    {0xC556, 0x9865},+    {0xC557, 0x9957},+    {0xC558, 0x9A45},+    {0xC559, 0x9A43},+    {0xC55A, 0x9A40},+    {0xC55B, 0x9A3E},+    {0xC55C, 0x9ACF},+    {0xC55D, 0x9B54},+    {0xC55E, 0x9B51},+    {0xC55F, 0x9C2D},+    {0xC560, 0x9C25},+    {0xC561, 0x9DAF},+    {0xC562, 0x9DB4},+    {0xC563, 0x9DC2},+    {0xC564, 0x9DB8},+    {0xC565, 0x9E9D},+    {0xC566, 0x9EEF},+    {0xC567, 0x9F19},+    {0xC568, 0x9F5C},+    {0xC569, 0x9F66},+    {0xC56A, 0x9F67},+    {0xC56B, 0x513C},+    {0xC56C, 0x513B},+    {0xC56D, 0x56C8},+    {0xC56E, 0x56CA},+    {0xC56F, 0x56C9},+    {0xC570, 0x5B7F},+    {0xC571, 0x5DD4},+    {0xC572, 0x5DD2},+    {0xC573, 0x5F4E},+    {0xC574, 0x61FF},+    {0xC575, 0x6524},+    {0xC576, 0x6B0A},+    {0xC577, 0x6B61},+    {0xC578, 0x7051},+    {0xC579, 0x7058},+    {0xC57A, 0x7380},+    {0xC57B, 0x74E4},+    {0xC57C, 0x758A},+    {0xC57D, 0x766E},+    {0xC57E, 0x766C},+    {0xC5A1, 0x79B3},+    {0xC5A2, 0x7C60},+    {0xC5A3, 0x7C5F},+    {0xC5A4, 0x807E},+    {0xC5A5, 0x807D},+    {0xC5A6, 0x81DF},+    {0xC5A7, 0x8972},+    {0xC5A8, 0x896F},+    {0xC5A9, 0x89FC},+    {0xC5AA, 0x8B80},+    {0xC5AB, 0x8D16},+    {0xC5AC, 0x8D17},+    {0xC5AD, 0x8E91},+    {0xC5AE, 0x8E93},+    {0xC5AF, 0x8F61},+    {0xC5B0, 0x9148},+    {0xC5B1, 0x9444},+    {0xC5B2, 0x9451},+    {0xC5B3, 0x9452},+    {0xC5B4, 0x973D},+    {0xC5B5, 0x973E},+    {0xC5B6, 0x97C3},+    {0xC5B7, 0x97C1},+    {0xC5B8, 0x986B},+    {0xC5B9, 0x9955},+    {0xC5BA, 0x9A55},+    {0xC5BB, 0x9A4D},+    {0xC5BC, 0x9AD2},+    {0xC5BD, 0x9B1A},+    {0xC5BE, 0x9C49},+    {0xC5BF, 0x9C31},+    {0xC5C0, 0x9C3E},+    {0xC5C1, 0x9C3B},+    {0xC5C2, 0x9DD3},+    {0xC5C3, 0x9DD7},+    {0xC5C4, 0x9F34},+    {0xC5C5, 0x9F6C},+    {0xC5C6, 0x9F6A},+    {0xC5C7, 0x9F94},+    {0xC5C8, 0x56CC},+    {0xC5C9, 0x5DD6},+    {0xC5CA, 0x6200},+    {0xC5CB, 0x6523},+    {0xC5CC, 0x652B},+    {0xC5CD, 0x652A},+    {0xC5CE, 0x66EC},+    {0xC5CF, 0x6B10},+    {0xC5D0, 0x74DA},+    {0xC5D1, 0x7ACA},+    {0xC5D2, 0x7C64},+    {0xC5D3, 0x7C63},+    {0xC5D4, 0x7C65},+    {0xC5D5, 0x7E93},+    {0xC5D6, 0x7E96},+    {0xC5D7, 0x7E94},+    {0xC5D8, 0x81E2},+    {0xC5D9, 0x8638},+    {0xC5DA, 0x863F},+    {0xC5DB, 0x8831},+    {0xC5DC, 0x8B8A},+    {0xC5DD, 0x9090},+    {0xC5DE, 0x908F},+    {0xC5DF, 0x9463},+    {0xC5E0, 0x9460},+    {0xC5E1, 0x9464},+    {0xC5E2, 0x9768},+    {0xC5E3, 0x986F},+    {0xC5E4, 0x995C},+    {0xC5E5, 0x9A5A},+    {0xC5E6, 0x9A5B},+    {0xC5E7, 0x9A57},+    {0xC5E8, 0x9AD3},+    {0xC5E9, 0x9AD4},+    {0xC5EA, 0x9AD1},+    {0xC5EB, 0x9C54},+    {0xC5EC, 0x9C57},+    {0xC5ED, 0x9C56},+    {0xC5EE, 0x9DE5},+    {0xC5EF, 0x9E9F},+    {0xC5F0, 0x9EF4},+    {0xC5F1, 0x56D1},+    {0xC5F2, 0x58E9},+    {0xC5F3, 0x652C},+    {0xC5F4, 0x705E},+    {0xC5F5, 0x7671},+    {0xC5F6, 0x7672},+    {0xC5F7, 0x77D7},+    {0xC5F8, 0x7F50},+    {0xC5F9, 0x7F88},+    {0xC5FA, 0x8836},+    {0xC5FB, 0x8839},+    {0xC5FC, 0x8862},+    {0xC5FD, 0x8B93},+    {0xC5FE, 0x8B92},+    {0xC640, 0x8B96},+    {0xC641, 0x8277},+    {0xC642, 0x8D1B},+    {0xC643, 0x91C0},+    {0xC644, 0x946A},+    {0xC645, 0x9742},+    {0xC646, 0x9748},+    {0xC647, 0x9744},+    {0xC648, 0x97C6},+    {0xC649, 0x9870},+    {0xC64A, 0x9A5F},+    {0xC64B, 0x9B22},+    {0xC64C, 0x9B58},+    {0xC64D, 0x9C5F},+    {0xC64E, 0x9DF9},+    {0xC64F, 0x9DFA},+    {0xC650, 0x9E7C},+    {0xC651, 0x9E7D},+    {0xC652, 0x9F07},+    {0xC653, 0x9F77},+    {0xC654, 0x9F72},+    {0xC655, 0x5EF3},+    {0xC656, 0x6B16},+    {0xC657, 0x7063},+    {0xC658, 0x7C6C},+    {0xC659, 0x7C6E},+    {0xC65A, 0x883B},+    {0xC65B, 0x89C0},+    {0xC65C, 0x8EA1},+    {0xC65D, 0x91C1},+    {0xC65E, 0x9472},+    {0xC65F, 0x9470},+    {0xC660, 0x9871},+    {0xC661, 0x995E},+    {0xC662, 0x9AD6},+    {0xC663, 0x9B23},+    {0xC664, 0x9ECC},+    {0xC665, 0x7064},+    {0xC666, 0x77DA},+    {0xC667, 0x8B9A},+    {0xC668, 0x9477},+    {0xC669, 0x97C9},+    {0xC66A, 0x9A62},+    {0xC66B, 0x9A65},+    {0xC66C, 0x7E9C},+    {0xC66D, 0x8B9C},+    {0xC66E, 0x8EAA},+    {0xC66F, 0x91C5},+    {0xC670, 0x947D},+    {0xC671, 0x947E},+    {0xC672, 0x947C},+    {0xC673, 0x9C77},+    {0xC674, 0x9C78},+    {0xC675, 0x9EF7},+    {0xC676, 0x8C54},+    {0xC677, 0x947F},+    {0xC678, 0x9E1A},+    {0xC679, 0x7228},+    {0xC67A, 0x9A6A},+    {0xC67B, 0x9B31},+    {0xC67C, 0x9E1B},+    {0xC67D, 0x9E1E},+    {0xC67E, 0x7C72},+    {0xC6A1, 0x2460},+    {0xC6A2, 0x2461},+    {0xC6A3, 0x2462},+    {0xC6A4, 0x2463},+    {0xC6A5, 0x2464},+    {0xC6A6, 0x2465},+    {0xC6A7, 0x2466},+    {0xC6A8, 0x2467},+    {0xC6A9, 0x2468},+    {0xC6AA, 0x2469},+    {0xC6AB, 0x2474},+    {0xC6AC, 0x2475},+    {0xC6AD, 0x2476},+    {0xC6AE, 0x2477},+    {0xC6AF, 0x2478},+    {0xC6B0, 0x2479},+    {0xC6B1, 0x247A},+    {0xC6B2, 0x247B},+    {0xC6B3, 0x247C},+    {0xC6B4, 0x247D},+    {0xC6B5, 0x2170},+    {0xC6B6, 0x2171},+    {0xC6B7, 0x2172},+    {0xC6B8, 0x2173},+    {0xC6B9, 0x2174},+    {0xC6BA, 0x2175},+    {0xC6BB, 0x2176},+    {0xC6BC, 0x2177},+    {0xC6BD, 0x2178},+    {0xC6BE, 0x2179},+    {0xC6BF, 0x4E36},+    {0xC6C0, 0x4E3F},+    {0xC6C1, 0x4E85},+    {0xC6C2, 0x4EA0},+    {0xC6C3, 0x5182},+    {0xC6C4, 0x5196},+    {0xC6C5, 0x51AB},+    {0xC6C6, 0x52F9},+    {0xC6C7, 0x5338},+    {0xC6C8, 0x5369},+    {0xC6C9, 0x53B6},+    {0xC6CA, 0x5902},+    {0xC6CB, 0x5B80},+    {0xC6CC, 0x5DDB},+    {0xC6CD, 0x5E7A},+    {0xC6CE, 0x5E7F},+    {0xC6CF, 0x5EF4},+    {0xC6D0, 0x5F50},+    {0xC6D1, 0x5F61},+    {0xC6D2, 0x6534},+    {0xC6D3, 0x65E0},+    {0xC6D4, 0x7592},+    {0xC6D5, 0x7676},+    {0xC6D6, 0x8FB5},+    {0xC6D7, 0x96B6},+    {0xC6D8, 0xF6E8},+    {0xC6D9, 0xF6E9},+    {0xC6DA, 0xF6EA},+    {0xC6DB, 0xF6EB},+    {0xC6DC, 0xF6EC},+    {0xC6DD, 0xF6ED},+    {0xC6DE, 0xF6EE},+    {0xC6DF, 0x4EDD},+    {0xC6E0, 0x3005},+    {0xC6E1, 0x3006},+    {0xC6E2, 0x3007},+    {0xC6E3, 0x30FC},+    {0xC6E4, 0xFF3B},+    {0xC6E5, 0xFF3D},+    {0xC6E6, 0xF6F6},+    {0xC6E7, 0x3041},+    {0xC6E8, 0x3042},+    {0xC6E9, 0x3043},+    {0xC6EA, 0x3044},+    {0xC6EB, 0x3045},+    {0xC6EC, 0x3046},+    {0xC6ED, 0x3047},+    {0xC6EE, 0x3048},+    {0xC6EF, 0x3049},+    {0xC6F0, 0x304A},+    {0xC6F1, 0x304B},+    {0xC6F2, 0x304C},+    {0xC6F3, 0x304D},+    {0xC6F4, 0x304E},+    {0xC6F5, 0x304F},+    {0xC6F6, 0x3050},+    {0xC6F7, 0x3051},+    {0xC6F8, 0x3052},+    {0xC6F9, 0x3053},+    {0xC6FA, 0x3054},+    {0xC6FB, 0x3055},+    {0xC6FC, 0x3056},+    {0xC6FD, 0x3057},+    {0xC6FE, 0x3058},+    {0xC740, 0x3059},+    {0xC741, 0x305A},+    {0xC742, 0x305B},+    {0xC743, 0x305C},+    {0xC744, 0x305D},+    {0xC745, 0x305E},+    {0xC746, 0x305F},+    {0xC747, 0x3060},+    {0xC748, 0x3061},+    {0xC749, 0x3062},+    {0xC74A, 0x3063},+    {0xC74B, 0x3064},+    {0xC74C, 0x3065},+    {0xC74D, 0x3066},+    {0xC74E, 0x3067},+    {0xC74F, 0x3068},+    {0xC750, 0x3069},+    {0xC751, 0x306A},+    {0xC752, 0x306B},+    {0xC753, 0x306C},+    {0xC754, 0x306D},+    {0xC755, 0x306E},+    {0xC756, 0x306F},+    {0xC757, 0x3070},+    {0xC758, 0x3071},+    {0xC759, 0x3072},+    {0xC75A, 0x3073},+    {0xC75B, 0x3074},+    {0xC75C, 0x3075},+    {0xC75D, 0x3076},+    {0xC75E, 0x3077},+    {0xC75F, 0x3078},+    {0xC760, 0x3079},+    {0xC761, 0x307A},+    {0xC762, 0x307B},+    {0xC763, 0x307C},+    {0xC764, 0x307D},+    {0xC765, 0x307E},+    {0xC766, 0x307F},+    {0xC767, 0x3080},+    {0xC768, 0x3081},+    {0xC769, 0x3082},+    {0xC76A, 0x3083},+    {0xC76B, 0x3084},+    {0xC76C, 0x3085},+    {0xC76D, 0x3086},+    {0xC76E, 0x3087},+    {0xC76F, 0x3088},+    {0xC770, 0x3089},+    {0xC771, 0x308A},+    {0xC772, 0x308B},+    {0xC773, 0x308C},+    {0xC774, 0x308D},+    {0xC775, 0x308E},+    {0xC776, 0x308F},+    {0xC777, 0x3090},+    {0xC778, 0x3091},+    {0xC779, 0x3092},+    {0xC77A, 0x3093},+    {0xC77B, 0x30A1},+    {0xC77C, 0x30A2},+    {0xC77D, 0x30A3},+    {0xC77E, 0x30A4},+    {0xC7A1, 0x30A5},+    {0xC7A2, 0x30A6},+    {0xC7A3, 0x30A7},+    {0xC7A4, 0x30A8},+    {0xC7A5, 0x30A9},+    {0xC7A6, 0x30AA},+    {0xC7A7, 0x30AB},+    {0xC7A8, 0x30AC},+    {0xC7A9, 0x30AD},+    {0xC7AA, 0x30AE},+    {0xC7AB, 0x30AF},+    {0xC7AC, 0x30B0},+    {0xC7AD, 0x30B1},+    {0xC7AE, 0x30B2},+    {0xC7AF, 0x30B3},+    {0xC7B0, 0x30B4},+    {0xC7B1, 0x30B5},+    {0xC7B2, 0x30B6},+    {0xC7B3, 0x30B7},+    {0xC7B4, 0x30B8},+    {0xC7B5, 0x30B9},+    {0xC7B6, 0x30BA},+    {0xC7B7, 0x30BB},+    {0xC7B8, 0x30BC},+    {0xC7B9, 0x30BD},+    {0xC7BA, 0x30BE},+    {0xC7BB, 0x30BF},+    {0xC7BC, 0x30C0},+    {0xC7BD, 0x30C1},+    {0xC7BE, 0x30C2},+    {0xC7BF, 0x30C3},+    {0xC7C0, 0x30C4},+    {0xC7C1, 0x30C5},+    {0xC7C2, 0x30C6},+    {0xC7C3, 0x30C7},+    {0xC7C4, 0x30C8},+    {0xC7C5, 0x30C9},+    {0xC7C6, 0x30CA},+    {0xC7C7, 0x30CB},+    {0xC7C8, 0x30CC},+    {0xC7C9, 0x30CD},+    {0xC7CA, 0x30CE},+    {0xC7CB, 0x30CF},+    {0xC7CC, 0x30D0},+    {0xC7CD, 0x30D1},+    {0xC7CE, 0x30D2},+    {0xC7CF, 0x30D3},+    {0xC7D0, 0x30D4},+    {0xC7D1, 0x30D5},+    {0xC7D2, 0x30D6},+    {0xC7D3, 0x30D7},+    {0xC7D4, 0x30D8},+    {0xC7D5, 0x30D9},+    {0xC7D6, 0x30DA},+    {0xC7D7, 0x30DB},+    {0xC7D8, 0x30DC},+    {0xC7D9, 0x30DD},+    {0xC7DA, 0x30DE},+    {0xC7DB, 0x30DF},+    {0xC7DC, 0x30E0},+    {0xC7DD, 0x30E1},+    {0xC7DE, 0x30E2},+    {0xC7DF, 0x30E3},+    {0xC7E0, 0x30E4},+    {0xC7E1, 0x30E5},+    {0xC7E2, 0x30E6},+    {0xC7E3, 0x30E7},+    {0xC7E4, 0x30E8},+    {0xC7E5, 0x30E9},+    {0xC7E6, 0x30EA},+    {0xC7E7, 0x30EB},+    {0xC7E8, 0x30EC},+    {0xC7E9, 0x30ED},+    {0xC7EA, 0x30EE},+    {0xC7EB, 0x30EF},+    {0xC7EC, 0x30F0},+    {0xC7ED, 0x30F1},+    {0xC7EE, 0x30F2},+    {0xC7EF, 0x30F3},+    {0xC7F0, 0x30F4},+    {0xC7F1, 0x30F5},+    {0xC7F2, 0x30F6},+    {0xC7F3, 0x0410},+    {0xC7F4, 0x0411},+    {0xC7F5, 0x0412},+    {0xC7F6, 0x0413},+    {0xC7F7, 0x0414},+    {0xC7F8, 0x0415},+    {0xC7F9, 0x0401},+    {0xC7FA, 0x0416},+    {0xC7FB, 0x0417},+    {0xC7FC, 0x0418},+    {0xC7FD, 0x0419},+    {0xC7FE, 0x041A},+    {0xC840, 0x041B},+    {0xC841, 0x041C},+    {0xC842, 0x041D},+    {0xC843, 0x041E},+    {0xC844, 0x041F},+    {0xC845, 0x0420},+    {0xC846, 0x0421},+    {0xC847, 0x0422},+    {0xC848, 0x0423},+    {0xC849, 0x0424},+    {0xC84A, 0x0425},+    {0xC84B, 0x0426},+    {0xC84C, 0x0427},+    {0xC84D, 0x0428},+    {0xC84E, 0x0429},+    {0xC84F, 0x042A},+    {0xC850, 0x042B},+    {0xC851, 0x042C},+    {0xC852, 0x042D},+    {0xC853, 0x042E},+    {0xC854, 0x042F},+    {0xC855, 0x0430},+    {0xC856, 0x0431},+    {0xC857, 0x0432},+    {0xC858, 0x0433},+    {0xC859, 0x0434},+    {0xC85A, 0x0435},+    {0xC85B, 0x0451},+    {0xC85C, 0x0436},+    {0xC85D, 0x0437},+    {0xC85E, 0x0438},+    {0xC85F, 0x0439},+    {0xC860, 0x043A},+    {0xC861, 0x043B},+    {0xC862, 0x043C},+    {0xC863, 0x043D},+    {0xC864, 0x043E},+    {0xC865, 0x043F},+    {0xC866, 0x0440},+    {0xC867, 0x0441},+    {0xC868, 0x0442},+    {0xC869, 0x0443},+    {0xC86A, 0x0444},+    {0xC86B, 0x0445},+    {0xC86C, 0x0446},+    {0xC86D, 0x0447},+    {0xC86E, 0x0448},+    {0xC86F, 0x0449},+    {0xC870, 0x044A},+    {0xC871, 0x044B},+    {0xC872, 0x044C},+    {0xC873, 0x044D},+    {0xC874, 0x044E},+    {0xC875, 0x044F},+    {0xC876, 0x21E7},+    {0xC877, 0x21B8},+    {0xC878, 0x21B9},+    {0xC879, 0x4E41},+    {0xC87A, 0xF7E6},+    {0xC87B, 0x4E5A},+    {0xC87C, 0xF7E8},+    {0xC87D, 0x5202},+    {0xC87E, 0xF7EA},+    {0xC8A1, 0xF7EB},+    {0xC8A2, 0x5188},+    {0xC8A3, 0xF7ED},+    {0xC8A4, 0xF7EE},+    {0xC8A5, 0xF7EF},+    {0xC8A6, 0xF7F0},+    {0xC8A7, 0xF7F1},+    {0xC8A8, 0xF7F2},+    {0xC8A9, 0xF7F3},+    {0xC8AA, 0xF7F4},+    {0xC8AB, 0xF7F5},+    {0xC8AC, 0xF7F6},+    {0xC8AD, 0xF7F7},+    {0xC8AE, 0xF7F8},+    {0xC8AF, 0xF7F9},+    {0xC8B0, 0xF7FA},+    {0xC8B1, 0xF7FB},+    {0xC8B2, 0xF7FC},+    {0xC8B3, 0xF7FD},+    {0xC8B4, 0xF7FE},+    {0xC8B5, 0xF7FF},+    {0xC8B6, 0xF800},+    {0xC8B7, 0xF801},+    {0xC8B8, 0xF802},+    {0xC8B9, 0xF803},+    {0xC8BA, 0xF804},+    {0xC8BB, 0xF805},+    {0xC8BC, 0xF806},+    {0xC8BD, 0xF807},+    {0xC8BE, 0xF808},+    {0xC8BF, 0xF809},+    {0xC8C0, 0xF80A},+    {0xC8C1, 0xF80B},+    {0xC8C2, 0xF80C},+    {0xC8C3, 0xF80D},+    {0xC8C4, 0xF80E},+    {0xC8C5, 0xF80F},+    {0xC8C6, 0xF810},+    {0xC8C7, 0xF811},+    {0xC8C8, 0xF812},+    {0xC8C9, 0xF813},+    {0xC8CA, 0xF814},+    {0xC8CB, 0xF815},+    {0xC8CC, 0xF816},+    {0xC8CD, 0x00AC},+    {0xC8CE, 0xFFE4},+    {0xC8CF, 0xFF07},+    {0xC8D0, 0xFF02},+    {0xC8D1, 0x3231},+    {0xC8D2, 0x2116},+    {0xC8D3, 0x2121},+    {0xC8D4, 0xF81E},+    {0xC8D5, 0xF81F},+    {0xC8D6, 0xF820},+    {0xC8D7, 0xF821},+    {0xC8D8, 0xF822},+    {0xC8D9, 0xF823},+    {0xC8DA, 0xF824},+    {0xC8DB, 0xF825},+    {0xC8DC, 0xF826},+    {0xC8DD, 0xF827},+    {0xC8DE, 0xF828},+    {0xC8DF, 0xF829},+    {0xC8E0, 0xF82A},+    {0xC8E1, 0xF82B},+    {0xC8E2, 0xF82C},+    {0xC8E3, 0xF82D},+    {0xC8E4, 0xF82E},+    {0xC8E5, 0xF82F},+    {0xC8E6, 0xF830},+    {0xC8E7, 0xF831},+    {0xC8E8, 0xF832},+    {0xC8E9, 0xF833},+    {0xC8EA, 0xF834},+    {0xC8EB, 0xF835},+    {0xC8EC, 0xF836},+    {0xC8ED, 0xF837},+    {0xC8EE, 0xF838},+    {0xC8EF, 0xF839},+    {0xC8F0, 0xF83A},+    {0xC8F1, 0xF83B},+    {0xC8F2, 0xF83C},+    {0xC8F3, 0xF83D},+    {0xC8F4, 0xF83E},+    {0xC8F5, 0xF83F},+    {0xC8F6, 0xF840},+    {0xC8F7, 0xF841},+    {0xC8F8, 0xF842},+    {0xC8F9, 0xF843},+    {0xC8FA, 0xF844},+    {0xC8FB, 0xF845},+    {0xC8FC, 0xF846},+    {0xC8FD, 0xF847},+    {0xC8FE, 0xF848},+    {0xC940, 0x4E42},+    {0xC941, 0x4E5C},+    {0xC942, 0x51F5},+    {0xC943, 0x531A},+    {0xC944, 0x5382},+    {0xC945, 0x4E07},+    {0xC946, 0x4E0C},+    {0xC947, 0x4E47},+    {0xC948, 0x4E8D},+    {0xC949, 0x56D7},+    {0xC94A, 0xFA0C},+    {0xC94B, 0x5C6E},+    {0xC94C, 0x5F73},+    {0xC94D, 0x4E0F},+    {0xC94E, 0x5187},+    {0xC94F, 0x4E0E},+    {0xC950, 0x4E2E},+    {0xC951, 0x4E93},+    {0xC952, 0x4EC2},+    {0xC953, 0x4EC9},+    {0xC954, 0x4EC8},+    {0xC955, 0x5198},+    {0xC956, 0x52FC},+    {0xC957, 0x536C},+    {0xC958, 0x53B9},+    {0xC959, 0x5720},+    {0xC95A, 0x5903},+    {0xC95B, 0x592C},+    {0xC95C, 0x5C10},+    {0xC95D, 0x5DFF},+    {0xC95E, 0x65E1},+    {0xC95F, 0x6BB3},+    {0xC960, 0x6BCC},+    {0xC961, 0x6C14},+    {0xC962, 0x723F},+    {0xC963, 0x4E31},+    {0xC964, 0x4E3C},+    {0xC965, 0x4EE8},+    {0xC966, 0x4EDC},+    {0xC967, 0x4EE9},+    {0xC968, 0x4EE1},+    {0xC969, 0x4EDD},+    {0xC96A, 0x4EDA},+    {0xC96B, 0x520C},+    {0xC96C, 0x531C},+    {0xC96D, 0x534C},+    {0xC96E, 0x5722},+    {0xC96F, 0x5723},+    {0xC970, 0x5917},+    {0xC971, 0x592F},+    {0xC972, 0x5B81},+    {0xC973, 0x5B84},+    {0xC974, 0x5C12},+    {0xC975, 0x5C3B},+    {0xC976, 0x5C74},+    {0xC977, 0x5C73},+    {0xC978, 0x5E04},+    {0xC979, 0x5E80},+    {0xC97A, 0x5E82},+    {0xC97B, 0x5FC9},+    {0xC97C, 0x6209},+    {0xC97D, 0x6250},+    {0xC97E, 0x6C15},+    {0xC9A1, 0x6C36},+    {0xC9A2, 0x6C43},+    {0xC9A3, 0x6C3F},+    {0xC9A4, 0x6C3B},+    {0xC9A5, 0x72AE},+    {0xC9A6, 0x72B0},+    {0xC9A7, 0x738A},+    {0xC9A8, 0x79B8},+    {0xC9A9, 0x808A},+    {0xC9AA, 0x961E},+    {0xC9AB, 0x4F0E},+    {0xC9AC, 0x4F18},+    {0xC9AD, 0x4F2C},+    {0xC9AE, 0x4EF5},+    {0xC9AF, 0x4F14},+    {0xC9B0, 0x4EF1},+    {0xC9B1, 0x4F00},+    {0xC9B2, 0x4EF7},+    {0xC9B3, 0x4F08},+    {0xC9B4, 0x4F1D},+    {0xC9B5, 0x4F02},+    {0xC9B6, 0x4F05},+    {0xC9B7, 0x4F22},+    {0xC9B8, 0x4F13},+    {0xC9B9, 0x4F04},+    {0xC9BA, 0x4EF4},+    {0xC9BB, 0x4F12},+    {0xC9BC, 0x51B1},+    {0xC9BD, 0x5213},+    {0xC9BE, 0x5209},+    {0xC9BF, 0x5210},+    {0xC9C0, 0x52A6},+    {0xC9C1, 0x5322},+    {0xC9C2, 0x531F},+    {0xC9C3, 0x534D},+    {0xC9C4, 0x538A},+    {0xC9C5, 0x5407},+    {0xC9C6, 0x56E1},+    {0xC9C7, 0x56DF},+    {0xC9C8, 0x572E},+    {0xC9C9, 0x572A},+    {0xC9CA, 0x5734},+    {0xC9CB, 0x593C},+    {0xC9CC, 0x5980},+    {0xC9CD, 0x597C},+    {0xC9CE, 0x5985},+    {0xC9CF, 0x597B},+    {0xC9D0, 0x597E},+    {0xC9D1, 0x5977},+    {0xC9D2, 0x597F},+    {0xC9D3, 0x5B56},+    {0xC9D4, 0x5C15},+    {0xC9D5, 0x5C25},+    {0xC9D6, 0x5C7C},+    {0xC9D7, 0x5C7A},+    {0xC9D8, 0x5C7B},+    {0xC9D9, 0x5C7E},+    {0xC9DA, 0x5DDF},+    {0xC9DB, 0x5E75},+    {0xC9DC, 0x5E84},+    {0xC9DD, 0x5F02},+    {0xC9DE, 0x5F1A},+    {0xC9DF, 0x5F74},+    {0xC9E0, 0x5FD5},+    {0xC9E1, 0x5FD4},+    {0xC9E2, 0x5FCF},+    {0xC9E3, 0x625C},+    {0xC9E4, 0x625E},+    {0xC9E5, 0x6264},+    {0xC9E6, 0x6261},+    {0xC9E7, 0x6266},+    {0xC9E8, 0x6262},+    {0xC9E9, 0x6259},+    {0xC9EA, 0x6260},+    {0xC9EB, 0x625A},+    {0xC9EC, 0x6265},+    {0xC9ED, 0x65EF},+    {0xC9EE, 0x65EE},+    {0xC9EF, 0x673E},+    {0xC9F0, 0x6739},+    {0xC9F1, 0x6738},+    {0xC9F2, 0x673B},+    {0xC9F3, 0x673A},+    {0xC9F4, 0x673F},+    {0xC9F5, 0x673C},+    {0xC9F6, 0x6733},+    {0xC9F7, 0x6C18},+    {0xC9F8, 0x6C46},+    {0xC9F9, 0x6C52},+    {0xC9FA, 0x6C5C},+    {0xC9FB, 0x6C4F},+    {0xC9FC, 0x6C4A},+    {0xC9FD, 0x6C54},+    {0xC9FE, 0x6C4B},+    {0xCA40, 0x6C4C},+    {0xCA41, 0x7071},+    {0xCA42, 0x725E},+    {0xCA43, 0x72B4},+    {0xCA44, 0x72B5},+    {0xCA45, 0x738E},+    {0xCA46, 0x752A},+    {0xCA47, 0x767F},+    {0xCA48, 0x7A75},+    {0xCA49, 0x7F51},+    {0xCA4A, 0x8278},+    {0xCA4B, 0x827C},+    {0xCA4C, 0x8280},+    {0xCA4D, 0x827D},+    {0xCA4E, 0x827F},+    {0xCA4F, 0x864D},+    {0xCA50, 0x897E},+    {0xCA51, 0x9099},+    {0xCA52, 0x9097},+    {0xCA53, 0x9098},+    {0xCA54, 0x909B},+    {0xCA55, 0x9094},+    {0xCA56, 0x9622},+    {0xCA57, 0x9624},+    {0xCA58, 0x9620},+    {0xCA59, 0x9623},+    {0xCA5A, 0x4F56},+    {0xCA5B, 0x4F3B},+    {0xCA5C, 0x4F62},+    {0xCA5D, 0x4F49},+    {0xCA5E, 0x4F53},+    {0xCA5F, 0x4F64},+    {0xCA60, 0x4F3E},+    {0xCA61, 0x4F67},+    {0xCA62, 0x4F52},+    {0xCA63, 0x4F5F},+    {0xCA64, 0x4F41},+    {0xCA65, 0x4F58},+    {0xCA66, 0x4F2D},+    {0xCA67, 0x4F33},+    {0xCA68, 0x4F3F},+    {0xCA69, 0x4F61},+    {0xCA6A, 0x518F},+    {0xCA6B, 0x51B9},+    {0xCA6C, 0x521C},+    {0xCA6D, 0x521E},+    {0xCA6E, 0x5221},+    {0xCA6F, 0x52AD},+    {0xCA70, 0x52AE},+    {0xCA71, 0x5309},+    {0xCA72, 0x5363},+    {0xCA73, 0x5372},+    {0xCA74, 0x538E},+    {0xCA75, 0x538F},+    {0xCA76, 0x5430},+    {0xCA77, 0x5437},+    {0xCA78, 0x542A},+    {0xCA79, 0x5454},+    {0xCA7A, 0x5445},+    {0xCA7B, 0x5419},+    {0xCA7C, 0x541C},+    {0xCA7D, 0x5425},+    {0xCA7E, 0x5418},+    {0xCAA1, 0x543D},+    {0xCAA2, 0x544F},+    {0xCAA3, 0x5441},+    {0xCAA4, 0x5428},+    {0xCAA5, 0x5424},+    {0xCAA6, 0x5447},+    {0xCAA7, 0x56EE},+    {0xCAA8, 0x56E7},+    {0xCAA9, 0x56E5},+    {0xCAAA, 0x5741},+    {0xCAAB, 0x5745},+    {0xCAAC, 0x574C},+    {0xCAAD, 0x5749},+    {0xCAAE, 0x574B},+    {0xCAAF, 0x5752},+    {0xCAB0, 0x5906},+    {0xCAB1, 0x5940},+    {0xCAB2, 0x59A6},+    {0xCAB3, 0x5998},+    {0xCAB4, 0x59A0},+    {0xCAB5, 0x5997},+    {0xCAB6, 0x598E},+    {0xCAB7, 0x59A2},+    {0xCAB8, 0x5990},+    {0xCAB9, 0x598F},+    {0xCABA, 0x59A7},+    {0xCABB, 0x59A1},+    {0xCABC, 0x5B8E},+    {0xCABD, 0x5B92},+    {0xCABE, 0x5C28},+    {0xCABF, 0x5C2A},+    {0xCAC0, 0x5C8D},+    {0xCAC1, 0x5C8F},+    {0xCAC2, 0x5C88},+    {0xCAC3, 0x5C8B},+    {0xCAC4, 0x5C89},+    {0xCAC5, 0x5C92},+    {0xCAC6, 0x5C8A},+    {0xCAC7, 0x5C86},+    {0xCAC8, 0x5C93},+    {0xCAC9, 0x5C95},+    {0xCACA, 0x5DE0},+    {0xCACB, 0x5E0A},+    {0xCACC, 0x5E0E},+    {0xCACD, 0x5E8B},+    {0xCACE, 0x5E89},+    {0xCACF, 0x5E8C},+    {0xCAD0, 0x5E88},+    {0xCAD1, 0x5E8D},+    {0xCAD2, 0x5F05},+    {0xCAD3, 0x5F1D},+    {0xCAD4, 0x5F78},+    {0xCAD5, 0x5F76},+    {0xCAD6, 0x5FD2},+    {0xCAD7, 0x5FD1},+    {0xCAD8, 0x5FD0},+    {0xCAD9, 0x5FED},+    {0xCADA, 0x5FE8},+    {0xCADB, 0x5FEE},+    {0xCADC, 0x5FF3},+    {0xCADD, 0x5FE1},+    {0xCADE, 0x5FE4},+    {0xCADF, 0x5FE3},+    {0xCAE0, 0x5FFA},+    {0xCAE1, 0x5FEF},+    {0xCAE2, 0x5FF7},+    {0xCAE3, 0x5FFB},+    {0xCAE4, 0x6000},+    {0xCAE5, 0x5FF4},+    {0xCAE6, 0x623A},+    {0xCAE7, 0x6283},+    {0xCAE8, 0x628C},+    {0xCAE9, 0x628E},+    {0xCAEA, 0x628F},+    {0xCAEB, 0x6294},+    {0xCAEC, 0x6287},+    {0xCAED, 0x6271},+    {0xCAEE, 0x627B},+    {0xCAEF, 0x627A},+    {0xCAF0, 0x6270},+    {0xCAF1, 0x6281},+    {0xCAF2, 0x6288},+    {0xCAF3, 0x6277},+    {0xCAF4, 0x627D},+    {0xCAF5, 0x6272},+    {0xCAF6, 0x6274},+    {0xCAF7, 0x6537},+    {0xCAF8, 0x65F0},+    {0xCAF9, 0x65F4},+    {0xCAFA, 0x65F3},+    {0xCAFB, 0x65F2},+    {0xCAFC, 0x65F5},+    {0xCAFD, 0x6745},+    {0xCAFE, 0x6747},+    {0xCB40, 0x6759},+    {0xCB41, 0x6755},+    {0xCB42, 0x674C},+    {0xCB43, 0x6748},+    {0xCB44, 0x675D},+    {0xCB45, 0x674D},+    {0xCB46, 0x675A},+    {0xCB47, 0x674B},+    {0xCB48, 0x6BD0},+    {0xCB49, 0x6C19},+    {0xCB4A, 0x6C1A},+    {0xCB4B, 0x6C78},+    {0xCB4C, 0x6C67},+    {0xCB4D, 0x6C6B},+    {0xCB4E, 0x6C84},+    {0xCB4F, 0x6C8B},+    {0xCB50, 0x6C8F},+    {0xCB51, 0x6C71},+    {0xCB52, 0x6C6F},+    {0xCB53, 0x6C69},+    {0xCB54, 0x6C9A},+    {0xCB55, 0x6C6D},+    {0xCB56, 0x6C87},+    {0xCB57, 0x6C95},+    {0xCB58, 0x6C9C},+    {0xCB59, 0x6C66},+    {0xCB5A, 0x6C73},+    {0xCB5B, 0x6C65},+    {0xCB5C, 0x6C7B},+    {0xCB5D, 0x6C8E},+    {0xCB5E, 0x7074},+    {0xCB5F, 0x707A},+    {0xCB60, 0x7263},+    {0xCB61, 0x72BF},+    {0xCB62, 0x72BD},+    {0xCB63, 0x72C3},+    {0xCB64, 0x72C6},+    {0xCB65, 0x72C1},+    {0xCB66, 0x72BA},+    {0xCB67, 0x72C5},+    {0xCB68, 0x7395},+    {0xCB69, 0x7397},+    {0xCB6A, 0x7393},+    {0xCB6B, 0x7394},+    {0xCB6C, 0x7392},+    {0xCB6D, 0x753A},+    {0xCB6E, 0x7539},+    {0xCB6F, 0x7594},+    {0xCB70, 0x7595},+    {0xCB71, 0x7681},+    {0xCB72, 0x793D},+    {0xCB73, 0x8034},+    {0xCB74, 0x8095},+    {0xCB75, 0x8099},+    {0xCB76, 0x8090},+    {0xCB77, 0x8092},+    {0xCB78, 0x809C},+    {0xCB79, 0x8290},+    {0xCB7A, 0x828F},+    {0xCB7B, 0x8285},+    {0xCB7C, 0x828E},+    {0xCB7D, 0x8291},+    {0xCB7E, 0x8293},+    {0xCBA1, 0x828A},+    {0xCBA2, 0x8283},+    {0xCBA3, 0x8284},+    {0xCBA4, 0x8C78},+    {0xCBA5, 0x8FC9},+    {0xCBA6, 0x8FBF},+    {0xCBA7, 0x909F},+    {0xCBA8, 0x90A1},+    {0xCBA9, 0x90A5},+    {0xCBAA, 0x909E},+    {0xCBAB, 0x90A7},+    {0xCBAC, 0x90A0},+    {0xCBAD, 0x9630},+    {0xCBAE, 0x9628},+    {0xCBAF, 0x962F},+    {0xCBB0, 0x962D},+    {0xCBB1, 0x4E33},+    {0xCBB2, 0x4F98},+    {0xCBB3, 0x4F7C},+    {0xCBB4, 0x4F85},+    {0xCBB5, 0x4F7D},+    {0xCBB6, 0x4F80},+    {0xCBB7, 0x4F87},+    {0xCBB8, 0x4F76},+    {0xCBB9, 0x4F74},+    {0xCBBA, 0x4F89},+    {0xCBBB, 0x4F84},+    {0xCBBC, 0x4F77},+    {0xCBBD, 0x4F4C},+    {0xCBBE, 0x4F97},+    {0xCBBF, 0x4F6A},+    {0xCBC0, 0x4F9A},+    {0xCBC1, 0x4F79},+    {0xCBC2, 0x4F81},+    {0xCBC3, 0x4F78},+    {0xCBC4, 0x4F90},+    {0xCBC5, 0x4F9C},+    {0xCBC6, 0x4F94},+    {0xCBC7, 0x4F9E},+    {0xCBC8, 0x4F92},+    {0xCBC9, 0x4F82},+    {0xCBCA, 0x4F95},+    {0xCBCB, 0x4F6B},+    {0xCBCC, 0x4F6E},+    {0xCBCD, 0x519E},+    {0xCBCE, 0x51BC},+    {0xCBCF, 0x51BE},+    {0xCBD0, 0x5235},+    {0xCBD1, 0x5232},+    {0xCBD2, 0x5233},+    {0xCBD3, 0x5246},+    {0xCBD4, 0x5231},+    {0xCBD5, 0x52BC},+    {0xCBD6, 0x530A},+    {0xCBD7, 0x530B},+    {0xCBD8, 0x533C},+    {0xCBD9, 0x5392},+    {0xCBDA, 0x5394},+    {0xCBDB, 0x5487},+    {0xCBDC, 0x547F},+    {0xCBDD, 0x5481},+    {0xCBDE, 0x5491},+    {0xCBDF, 0x5482},+    {0xCBE0, 0x5488},+    {0xCBE1, 0x546B},+    {0xCBE2, 0x547A},+    {0xCBE3, 0x547E},+    {0xCBE4, 0x5465},+    {0xCBE5, 0x546C},+    {0xCBE6, 0x5474},+    {0xCBE7, 0x5466},+    {0xCBE8, 0x548D},+    {0xCBE9, 0x546F},+    {0xCBEA, 0x5461},+    {0xCBEB, 0x5460},+    {0xCBEC, 0x5498},+    {0xCBED, 0x5463},+    {0xCBEE, 0x5467},+    {0xCBEF, 0x5464},+    {0xCBF0, 0x56F7},+    {0xCBF1, 0x56F9},+    {0xCBF2, 0x576F},+    {0xCBF3, 0x5772},+    {0xCBF4, 0x576D},+    {0xCBF5, 0x576B},+    {0xCBF6, 0x5771},+    {0xCBF7, 0x5770},+    {0xCBF8, 0x5776},+    {0xCBF9, 0x5780},+    {0xCBFA, 0x5775},+    {0xCBFB, 0x577B},+    {0xCBFC, 0x5773},+    {0xCBFD, 0x5774},+    {0xCBFE, 0x5762},+    {0xCC40, 0x5768},+    {0xCC41, 0x577D},+    {0xCC42, 0x590C},+    {0xCC43, 0x5945},+    {0xCC44, 0x59B5},+    {0xCC45, 0x59BA},+    {0xCC46, 0x59CF},+    {0xCC47, 0x59CE},+    {0xCC48, 0x59B2},+    {0xCC49, 0x59CC},+    {0xCC4A, 0x59C1},+    {0xCC4B, 0x59B6},+    {0xCC4C, 0x59BC},+    {0xCC4D, 0x59C3},+    {0xCC4E, 0x59D6},+    {0xCC4F, 0x59B1},+    {0xCC50, 0x59BD},+    {0xCC51, 0x59C0},+    {0xCC52, 0x59C8},+    {0xCC53, 0x59B4},+    {0xCC54, 0x59C7},+    {0xCC55, 0x5B62},+    {0xCC56, 0x5B65},+    {0xCC57, 0x5B93},+    {0xCC58, 0x5B95},+    {0xCC59, 0x5C44},+    {0xCC5A, 0x5C47},+    {0xCC5B, 0x5CAE},+    {0xCC5C, 0x5CA4},+    {0xCC5D, 0x5CA0},+    {0xCC5E, 0x5CB5},+    {0xCC5F, 0x5CAF},+    {0xCC60, 0x5CA8},+    {0xCC61, 0x5CAC},+    {0xCC62, 0x5C9F},+    {0xCC63, 0x5CA3},+    {0xCC64, 0x5CAD},+    {0xCC65, 0x5CA2},+    {0xCC66, 0x5CAA},+    {0xCC67, 0x5CA7},+    {0xCC68, 0x5C9D},+    {0xCC69, 0x5CA5},+    {0xCC6A, 0x5CB6},+    {0xCC6B, 0x5CB0},+    {0xCC6C, 0x5CA6},+    {0xCC6D, 0x5E17},+    {0xCC6E, 0x5E14},+    {0xCC6F, 0x5E19},+    {0xCC70, 0x5F28},+    {0xCC71, 0x5F22},+    {0xCC72, 0x5F23},+    {0xCC73, 0x5F24},+    {0xCC74, 0x5F54},+    {0xCC75, 0x5F82},+    {0xCC76, 0x5F7E},+    {0xCC77, 0x5F7D},+    {0xCC78, 0x5FDE},+    {0xCC79, 0x5FE5},+    {0xCC7A, 0x602D},+    {0xCC7B, 0x6026},+    {0xCC7C, 0x6019},+    {0xCC7D, 0x6032},+    {0xCC7E, 0x600B},+    {0xCCA1, 0x6034},+    {0xCCA2, 0x600A},+    {0xCCA3, 0x6017},+    {0xCCA4, 0x6033},+    {0xCCA5, 0x601A},+    {0xCCA6, 0x601E},+    {0xCCA7, 0x602C},+    {0xCCA8, 0x6022},+    {0xCCA9, 0x600D},+    {0xCCAA, 0x6010},+    {0xCCAB, 0x602E},+    {0xCCAC, 0x6013},+    {0xCCAD, 0x6011},+    {0xCCAE, 0x600C},+    {0xCCAF, 0x6009},+    {0xCCB0, 0x601C},+    {0xCCB1, 0x6214},+    {0xCCB2, 0x623D},+    {0xCCB3, 0x62AD},+    {0xCCB4, 0x62B4},+    {0xCCB5, 0x62D1},+    {0xCCB6, 0x62BE},+    {0xCCB7, 0x62AA},+    {0xCCB8, 0x62B6},+    {0xCCB9, 0x62CA},+    {0xCCBA, 0x62AE},+    {0xCCBB, 0x62B3},+    {0xCCBC, 0x62AF},+    {0xCCBD, 0x62BB},+    {0xCCBE, 0x62A9},+    {0xCCBF, 0x62B0},+    {0xCCC0, 0x62B8},+    {0xCCC1, 0x653D},+    {0xCCC2, 0x65A8},+    {0xCCC3, 0x65BB},+    {0xCCC4, 0x6609},+    {0xCCC5, 0x65FC},+    {0xCCC6, 0x6604},+    {0xCCC7, 0x6612},+    {0xCCC8, 0x6608},+    {0xCCC9, 0x65FB},+    {0xCCCA, 0x6603},+    {0xCCCB, 0x660B},+    {0xCCCC, 0x660D},+    {0xCCCD, 0x6605},+    {0xCCCE, 0x65FD},+    {0xCCCF, 0x6611},+    {0xCCD0, 0x6610},+    {0xCCD1, 0x66F6},+    {0xCCD2, 0x670A},+    {0xCCD3, 0x6785},+    {0xCCD4, 0x676C},+    {0xCCD5, 0x678E},+    {0xCCD6, 0x6792},+    {0xCCD7, 0x6776},+    {0xCCD8, 0x677B},+    {0xCCD9, 0x6798},+    {0xCCDA, 0x6786},+    {0xCCDB, 0x6784},+    {0xCCDC, 0x6774},+    {0xCCDD, 0x678D},+    {0xCCDE, 0x678C},+    {0xCCDF, 0x677A},+    {0xCCE0, 0x679F},+    {0xCCE1, 0x6791},+    {0xCCE2, 0x6799},+    {0xCCE3, 0x6783},+    {0xCCE4, 0x677D},+    {0xCCE5, 0x6781},+    {0xCCE6, 0x6778},+    {0xCCE7, 0x6779},+    {0xCCE8, 0x6794},+    {0xCCE9, 0x6B25},+    {0xCCEA, 0x6B80},+    {0xCCEB, 0x6B7E},+    {0xCCEC, 0x6BDE},+    {0xCCED, 0x6C1D},+    {0xCCEE, 0x6C93},+    {0xCCEF, 0x6CEC},+    {0xCCF0, 0x6CEB},+    {0xCCF1, 0x6CEE},+    {0xCCF2, 0x6CD9},+    {0xCCF3, 0x6CB6},+    {0xCCF4, 0x6CD4},+    {0xCCF5, 0x6CAD},+    {0xCCF6, 0x6CE7},+    {0xCCF7, 0x6CB7},+    {0xCCF8, 0x6CD0},+    {0xCCF9, 0x6CC2},+    {0xCCFA, 0x6CBA},+    {0xCCFB, 0x6CC3},+    {0xCCFC, 0x6CC6},+    {0xCCFD, 0x6CED},+    {0xCCFE, 0x6CF2},+    {0xCD40, 0x6CD2},+    {0xCD41, 0x6CDD},+    {0xCD42, 0x6CB4},+    {0xCD43, 0x6C8A},+    {0xCD44, 0x6C9D},+    {0xCD45, 0x6C80},+    {0xCD46, 0x6CDE},+    {0xCD47, 0x6CC0},+    {0xCD48, 0x6D30},+    {0xCD49, 0x6CCD},+    {0xCD4A, 0x6CC7},+    {0xCD4B, 0x6CB0},+    {0xCD4C, 0x6CF9},+    {0xCD4D, 0x6CCF},+    {0xCD4E, 0x6CE9},+    {0xCD4F, 0x6CD1},+    {0xCD50, 0x7094},+    {0xCD51, 0x7098},+    {0xCD52, 0x7085},+    {0xCD53, 0x7093},+    {0xCD54, 0x7086},+    {0xCD55, 0x7084},+    {0xCD56, 0x7091},+    {0xCD57, 0x7096},+    {0xCD58, 0x7082},+    {0xCD59, 0x709A},+    {0xCD5A, 0x7083},+    {0xCD5B, 0x726A},+    {0xCD5C, 0x72D6},+    {0xCD5D, 0x72CB},+    {0xCD5E, 0x72D8},+    {0xCD5F, 0x72C9},+    {0xCD60, 0x72DC},+    {0xCD61, 0x72D2},+    {0xCD62, 0x72D4},+    {0xCD63, 0x72DA},+    {0xCD64, 0x72CC},+    {0xCD65, 0x72D1},+    {0xCD66, 0x73A4},+    {0xCD67, 0x73A1},+    {0xCD68, 0x73AD},+    {0xCD69, 0x73A6},+    {0xCD6A, 0x73A2},+    {0xCD6B, 0x73A0},+    {0xCD6C, 0x73AC},+    {0xCD6D, 0x739D},+    {0xCD6E, 0x74DD},+    {0xCD6F, 0x74E8},+    {0xCD70, 0x753F},+    {0xCD71, 0x7540},+    {0xCD72, 0x753E},+    {0xCD73, 0x758C},+    {0xCD74, 0x7598},+    {0xCD75, 0x76AF},+    {0xCD76, 0x76F3},+    {0xCD77, 0x76F1},+    {0xCD78, 0x76F0},+    {0xCD79, 0x76F5},+    {0xCD7A, 0x77F8},+    {0xCD7B, 0x77FC},+    {0xCD7C, 0x77F9},+    {0xCD7D, 0x77FB},+    {0xCD7E, 0x77FA},+    {0xCDA1, 0x77F7},+    {0xCDA2, 0x7942},+    {0xCDA3, 0x793F},+    {0xCDA4, 0x79C5},+    {0xCDA5, 0x7A78},+    {0xCDA6, 0x7A7B},+    {0xCDA7, 0x7AFB},+    {0xCDA8, 0x7C75},+    {0xCDA9, 0x7CFD},+    {0xCDAA, 0x8035},+    {0xCDAB, 0x808F},+    {0xCDAC, 0x80AE},+    {0xCDAD, 0x80A3},+    {0xCDAE, 0x80B8},+    {0xCDAF, 0x80B5},+    {0xCDB0, 0x80AD},+    {0xCDB1, 0x8220},+    {0xCDB2, 0x82A0},+    {0xCDB3, 0x82C0},+    {0xCDB4, 0x82AB},+    {0xCDB5, 0x829A},+    {0xCDB6, 0x8298},+    {0xCDB7, 0x829B},+    {0xCDB8, 0x82B5},+    {0xCDB9, 0x82A7},+    {0xCDBA, 0x82AE},+    {0xCDBB, 0x82BC},+    {0xCDBC, 0x829E},+    {0xCDBD, 0x82BA},+    {0xCDBE, 0x82B4},+    {0xCDBF, 0x82A8},+    {0xCDC0, 0x82A1},+    {0xCDC1, 0x82A9},+    {0xCDC2, 0x82C2},+    {0xCDC3, 0x82A4},+    {0xCDC4, 0x82C3},+    {0xCDC5, 0x82B6},+    {0xCDC6, 0x82A2},+    {0xCDC7, 0x8670},+    {0xCDC8, 0x866F},+    {0xCDC9, 0x866D},+    {0xCDCA, 0x866E},+    {0xCDCB, 0x8C56},+    {0xCDCC, 0x8FD2},+    {0xCDCD, 0x8FCB},+    {0xCDCE, 0x8FD3},+    {0xCDCF, 0x8FCD},+    {0xCDD0, 0x8FD6},+    {0xCDD1, 0x8FD5},+    {0xCDD2, 0x8FD7},+    {0xCDD3, 0x90B2},+    {0xCDD4, 0x90B4},+    {0xCDD5, 0x90AF},+    {0xCDD6, 0x90B3},+    {0xCDD7, 0x90B0},+    {0xCDD8, 0x9639},+    {0xCDD9, 0x963D},+    {0xCDDA, 0x963C},+    {0xCDDB, 0x963A},+    {0xCDDC, 0x9643},+    {0xCDDD, 0x4FCD},+    {0xCDDE, 0x4FC5},+    {0xCDDF, 0x4FD3},+    {0xCDE0, 0x4FB2},+    {0xCDE1, 0x4FC9},+    {0xCDE2, 0x4FCB},+    {0xCDE3, 0x4FC1},+    {0xCDE4, 0x4FD4},+    {0xCDE5, 0x4FDC},+    {0xCDE6, 0x4FD9},+    {0xCDE7, 0x4FBB},+    {0xCDE8, 0x4FB3},+    {0xCDE9, 0x4FDB},+    {0xCDEA, 0x4FC7},+    {0xCDEB, 0x4FD6},+    {0xCDEC, 0x4FBA},+    {0xCDED, 0x4FC0},+    {0xCDEE, 0x4FB9},+    {0xCDEF, 0x4FEC},+    {0xCDF0, 0x5244},+    {0xCDF1, 0x5249},+    {0xCDF2, 0x52C0},+    {0xCDF3, 0x52C2},+    {0xCDF4, 0x533D},+    {0xCDF5, 0x537C},+    {0xCDF6, 0x5397},+    {0xCDF7, 0x5396},+    {0xCDF8, 0x5399},+    {0xCDF9, 0x5398},+    {0xCDFA, 0x54BA},+    {0xCDFB, 0x54A1},+    {0xCDFC, 0x54AD},+    {0xCDFD, 0x54A5},+    {0xCDFE, 0x54CF},+    {0xCE40, 0x54C3},+    {0xCE41, 0x830D},+    {0xCE42, 0x54B7},+    {0xCE43, 0x54AE},+    {0xCE44, 0x54D6},+    {0xCE45, 0x54B6},+    {0xCE46, 0x54C5},+    {0xCE47, 0x54C6},+    {0xCE48, 0x54A0},+    {0xCE49, 0x5470},+    {0xCE4A, 0x54BC},+    {0xCE4B, 0x54A2},+    {0xCE4C, 0x54BE},+    {0xCE4D, 0x5472},+    {0xCE4E, 0x54DE},+    {0xCE4F, 0x54B0},+    {0xCE50, 0x57B5},+    {0xCE51, 0x579E},+    {0xCE52, 0x579F},+    {0xCE53, 0x57A4},+    {0xCE54, 0x578C},+    {0xCE55, 0x5797},+    {0xCE56, 0x579D},+    {0xCE57, 0x579B},+    {0xCE58, 0x5794},+    {0xCE59, 0x5798},+    {0xCE5A, 0x578F},+    {0xCE5B, 0x5799},+    {0xCE5C, 0x57A5},+    {0xCE5D, 0x579A},+    {0xCE5E, 0x5795},+    {0xCE5F, 0x58F4},+    {0xCE60, 0x590D},+    {0xCE61, 0x5953},+    {0xCE62, 0x59E1},+    {0xCE63, 0x59DE},+    {0xCE64, 0x59EE},+    {0xCE65, 0x5A00},+    {0xCE66, 0x59F1},+    {0xCE67, 0x59DD},+    {0xCE68, 0x59FA},+    {0xCE69, 0x59FD},+    {0xCE6A, 0x59FC},+    {0xCE6B, 0x59F6},+    {0xCE6C, 0x59E4},+    {0xCE6D, 0x59F2},+    {0xCE6E, 0x59F7},+    {0xCE6F, 0x59DB},+    {0xCE70, 0x59E9},+    {0xCE71, 0x59F3},+    {0xCE72, 0x59F5},+    {0xCE73, 0x59E0},+    {0xCE74, 0x59FE},+    {0xCE75, 0x59F4},+    {0xCE76, 0x59ED},+    {0xCE77, 0x5BA8},+    {0xCE78, 0x5C4C},+    {0xCE79, 0x5CD0},+    {0xCE7A, 0x5CD8},+    {0xCE7B, 0x5CCC},+    {0xCE7C, 0x5CD7},+    {0xCE7D, 0x5CCB},+    {0xCE7E, 0x5CDB},+    {0xCEA1, 0x5CDE},+    {0xCEA2, 0x5CDA},+    {0xCEA3, 0x5CC9},+    {0xCEA4, 0x5CC7},+    {0xCEA5, 0x5CCA},+    {0xCEA6, 0x5CD6},+    {0xCEA7, 0x5CD3},+    {0xCEA8, 0x5CD4},+    {0xCEA9, 0x5CCF},+    {0xCEAA, 0x5CC8},+    {0xCEAB, 0x5CC6},+    {0xCEAC, 0x5CCE},+    {0xCEAD, 0x5CDF},+    {0xCEAE, 0x5CF8},+    {0xCEAF, 0x5DF9},+    {0xCEB0, 0x5E21},+    {0xCEB1, 0x5E22},+    {0xCEB2, 0x5E23},+    {0xCEB3, 0x5E20},+    {0xCEB4, 0x5E24},+    {0xCEB5, 0x5EB0},+    {0xCEB6, 0x5EA4},+    {0xCEB7, 0x5EA2},+    {0xCEB8, 0x5E9B},+    {0xCEB9, 0x5EA3},+    {0xCEBA, 0x5EA5},+    {0xCEBB, 0x5F07},+    {0xCEBC, 0x5F2E},+    {0xCEBD, 0x5F56},+    {0xCEBE, 0x5F86},+    {0xCEBF, 0x6037},+    {0xCEC0, 0x6039},+    {0xCEC1, 0x6054},+    {0xCEC2, 0x6072},+    {0xCEC3, 0x605E},+    {0xCEC4, 0x6045},+    {0xCEC5, 0x6053},+    {0xCEC6, 0x6047},+    {0xCEC7, 0x6049},+    {0xCEC8, 0x605B},+    {0xCEC9, 0x604C},+    {0xCECA, 0x6040},+    {0xCECB, 0x6042},+    {0xCECC, 0x605F},+    {0xCECD, 0x6024},+    {0xCECE, 0x6044},+    {0xCECF, 0x6058},+    {0xCED0, 0x6066},+    {0xCED1, 0x606E},+    {0xCED2, 0x6242},+    {0xCED3, 0x6243},+    {0xCED4, 0x62CF},+    {0xCED5, 0x630D},+    {0xCED6, 0x630B},+    {0xCED7, 0x62F5},+    {0xCED8, 0x630E},+    {0xCED9, 0x6303},+    {0xCEDA, 0x62EB},+    {0xCEDB, 0x62F9},+    {0xCEDC, 0x630F},+    {0xCEDD, 0x630C},+    {0xCEDE, 0x62F8},+    {0xCEDF, 0x62F6},+    {0xCEE0, 0x6300},+    {0xCEE1, 0x6313},+    {0xCEE2, 0x6314},+    {0xCEE3, 0x62FA},+    {0xCEE4, 0x6315},+    {0xCEE5, 0x62FB},+    {0xCEE6, 0x62F0},+    {0xCEE7, 0x6541},+    {0xCEE8, 0x6543},+    {0xCEE9, 0x65AA},+    {0xCEEA, 0x65BF},+    {0xCEEB, 0x6636},+    {0xCEEC, 0x6621},+    {0xCEED, 0x6632},+    {0xCEEE, 0x6635},+    {0xCEEF, 0x661C},+    {0xCEF0, 0x6626},+    {0xCEF1, 0x6622},+    {0xCEF2, 0x6633},+    {0xCEF3, 0x662B},+    {0xCEF4, 0x663A},+    {0xCEF5, 0x661D},+    {0xCEF6, 0x6634},+    {0xCEF7, 0x6639},+    {0xCEF8, 0x662E},+    {0xCEF9, 0x670F},+    {0xCEFA, 0x6710},+    {0xCEFB, 0x67C1},+    {0xCEFC, 0x67F2},+    {0xCEFD, 0x67C8},+    {0xCEFE, 0x67BA},+    {0xCF40, 0x67DC},+    {0xCF41, 0x67BB},+    {0xCF42, 0x67F8},+    {0xCF43, 0x67D8},+    {0xCF44, 0x67C0},+    {0xCF45, 0x67B7},+    {0xCF46, 0x67C5},+    {0xCF47, 0x67EB},+    {0xCF48, 0x67E4},+    {0xCF49, 0x67DF},+    {0xCF4A, 0x67B5},+    {0xCF4B, 0x67CD},+    {0xCF4C, 0x67B3},+    {0xCF4D, 0x67F7},+    {0xCF4E, 0x67F6},+    {0xCF4F, 0x67EE},+    {0xCF50, 0x67E3},+    {0xCF51, 0x67C2},+    {0xCF52, 0x67B9},+    {0xCF53, 0x67CE},+    {0xCF54, 0x67E7},+    {0xCF55, 0x67F0},+    {0xCF56, 0x67B2},+    {0xCF57, 0x67FC},+    {0xCF58, 0x67C6},+    {0xCF59, 0x67ED},+    {0xCF5A, 0x67CC},+    {0xCF5B, 0x67AE},+    {0xCF5C, 0x67E6},+    {0xCF5D, 0x67DB},+    {0xCF5E, 0x67FA},+    {0xCF5F, 0x67C9},+    {0xCF60, 0x67CA},+    {0xCF61, 0x67C3},+    {0xCF62, 0x67EA},+    {0xCF63, 0x67CB},+    {0xCF64, 0x6B28},+    {0xCF65, 0x6B82},+    {0xCF66, 0x6B84},+    {0xCF67, 0x6BB6},+    {0xCF68, 0x6BD6},+    {0xCF69, 0x6BD8},+    {0xCF6A, 0x6BE0},+    {0xCF6B, 0x6C20},+    {0xCF6C, 0x6C21},+    {0xCF6D, 0x6D28},+    {0xCF6E, 0x6D34},+    {0xCF6F, 0x6D2D},+    {0xCF70, 0x6D1F},+    {0xCF71, 0x6D3C},+    {0xCF72, 0x6D3F},+    {0xCF73, 0x6D12},+    {0xCF74, 0x6D0A},+    {0xCF75, 0x6CDA},+    {0xCF76, 0x6D33},+    {0xCF77, 0x6D04},+    {0xCF78, 0x6D19},+    {0xCF79, 0x6D3A},+    {0xCF7A, 0x6D1A},+    {0xCF7B, 0x6D11},+    {0xCF7C, 0x6D00},+    {0xCF7D, 0x6D1D},+    {0xCF7E, 0x6D42},+    {0xCFA1, 0x6D01},+    {0xCFA2, 0x6D18},+    {0xCFA3, 0x6D37},+    {0xCFA4, 0x6D03},+    {0xCFA5, 0x6D0F},+    {0xCFA6, 0x6D40},+    {0xCFA7, 0x6D07},+    {0xCFA8, 0x6D20},+    {0xCFA9, 0x6D2C},+    {0xCFAA, 0x6D08},+    {0xCFAB, 0x6D22},+    {0xCFAC, 0x6D09},+    {0xCFAD, 0x6D10},+    {0xCFAE, 0x70B7},+    {0xCFAF, 0x709F},+    {0xCFB0, 0x70BE},+    {0xCFB1, 0x70B1},+    {0xCFB2, 0x70B0},+    {0xCFB3, 0x70A1},+    {0xCFB4, 0x70B4},+    {0xCFB5, 0x70B5},+    {0xCFB6, 0x70A9},+    {0xCFB7, 0x7241},+    {0xCFB8, 0x7249},+    {0xCFB9, 0x724A},+    {0xCFBA, 0x726C},+    {0xCFBB, 0x7270},+    {0xCFBC, 0x7273},+    {0xCFBD, 0x726E},+    {0xCFBE, 0x72CA},+    {0xCFBF, 0x72E4},+    {0xCFC0, 0x72E8},+    {0xCFC1, 0x72EB},+    {0xCFC2, 0x72DF},+    {0xCFC3, 0x72EA},+    {0xCFC4, 0x72E6},+    {0xCFC5, 0x72E3},+    {0xCFC6, 0x7385},+    {0xCFC7, 0x73CC},+    {0xCFC8, 0x73C2},+    {0xCFC9, 0x73C8},+    {0xCFCA, 0x73C5},+    {0xCFCB, 0x73B9},+    {0xCFCC, 0x73B6},+    {0xCFCD, 0x73B5},+    {0xCFCE, 0x73B4},+    {0xCFCF, 0x73EB},+    {0xCFD0, 0x73BF},+    {0xCFD1, 0x73C7},+    {0xCFD2, 0x73BE},+    {0xCFD3, 0x73C3},+    {0xCFD4, 0x73C6},+    {0xCFD5, 0x73B8},+    {0xCFD6, 0x73CB},+    {0xCFD7, 0x74EC},+    {0xCFD8, 0x74EE},+    {0xCFD9, 0x752E},+    {0xCFDA, 0x7547},+    {0xCFDB, 0x7548},+    {0xCFDC, 0x75A7},+    {0xCFDD, 0x75AA},+    {0xCFDE, 0x7679},+    {0xCFDF, 0x76C4},+    {0xCFE0, 0x7708},+    {0xCFE1, 0x7703},+    {0xCFE2, 0x7704},+    {0xCFE3, 0x7705},+    {0xCFE4, 0x770A},+    {0xCFE5, 0x76F7},+    {0xCFE6, 0x76FB},+    {0xCFE7, 0x76FA},+    {0xCFE8, 0x77E7},+    {0xCFE9, 0x77E8},+    {0xCFEA, 0x7806},+    {0xCFEB, 0x7811},+    {0xCFEC, 0x7812},+    {0xCFED, 0x7805},+    {0xCFEE, 0x7810},+    {0xCFEF, 0x780F},+    {0xCFF0, 0x780E},+    {0xCFF1, 0x7809},+    {0xCFF2, 0x7803},+    {0xCFF3, 0x7813},+    {0xCFF4, 0x794A},+    {0xCFF5, 0x794C},+    {0xCFF6, 0x794B},+    {0xCFF7, 0x7945},+    {0xCFF8, 0x7944},+    {0xCFF9, 0x79D5},+    {0xCFFA, 0x79CD},+    {0xCFFB, 0x79CF},+    {0xCFFC, 0x79D6},+    {0xCFFD, 0x79CE},+    {0xCFFE, 0x7A80},+    {0xD040, 0x7A7E},+    {0xD041, 0x7AD1},+    {0xD042, 0x7B00},+    {0xD043, 0x7B01},+    {0xD044, 0x7C7A},+    {0xD045, 0x7C78},+    {0xD046, 0x7C79},+    {0xD047, 0x7C7F},+    {0xD048, 0x7C80},+    {0xD049, 0x7C81},+    {0xD04A, 0x7D03},+    {0xD04B, 0x7D08},+    {0xD04C, 0x7D01},+    {0xD04D, 0x7F58},+    {0xD04E, 0x7F91},+    {0xD04F, 0x7F8D},+    {0xD050, 0x7FBE},+    {0xD051, 0x8007},+    {0xD052, 0x800E},+    {0xD053, 0x800F},+    {0xD054, 0x8014},+    {0xD055, 0x8037},+    {0xD056, 0x80D8},+    {0xD057, 0x80C7},+    {0xD058, 0x80E0},+    {0xD059, 0x80D1},+    {0xD05A, 0x80C8},+    {0xD05B, 0x80C2},+    {0xD05C, 0x80D0},+    {0xD05D, 0x80C5},+    {0xD05E, 0x80E3},+    {0xD05F, 0x80D9},+    {0xD060, 0x80DC},+    {0xD061, 0x80CA},+    {0xD062, 0x80D5},+    {0xD063, 0x80C9},+    {0xD064, 0x80CF},+    {0xD065, 0x80D7},+    {0xD066, 0x80E6},+    {0xD067, 0x80CD},+    {0xD068, 0x81FF},+    {0xD069, 0x8221},+    {0xD06A, 0x8294},+    {0xD06B, 0x82D9},+    {0xD06C, 0x82FE},+    {0xD06D, 0x82F9},+    {0xD06E, 0x8307},+    {0xD06F, 0x82E8},+    {0xD070, 0x8300},+    {0xD071, 0x82D5},+    {0xD072, 0x833A},+    {0xD073, 0x82EB},+    {0xD074, 0x82D6},+    {0xD075, 0x82F4},+    {0xD076, 0x82EC},+    {0xD077, 0x82E1},+    {0xD078, 0x82F2},+    {0xD079, 0x82F5},+    {0xD07A, 0x830C},+    {0xD07B, 0x82FB},+    {0xD07C, 0x82F6},+    {0xD07D, 0x82F0},+    {0xD07E, 0x82EA},+    {0xD0A1, 0x82E4},+    {0xD0A2, 0x82E0},+    {0xD0A3, 0x82FA},+    {0xD0A4, 0x82F3},+    {0xD0A5, 0x82ED},+    {0xD0A6, 0x8677},+    {0xD0A7, 0x8674},+    {0xD0A8, 0x867C},+    {0xD0A9, 0x8673},+    {0xD0AA, 0x8841},+    {0xD0AB, 0x884E},+    {0xD0AC, 0x8867},+    {0xD0AD, 0x886A},+    {0xD0AE, 0x8869},+    {0xD0AF, 0x89D3},+    {0xD0B0, 0x8A04},+    {0xD0B1, 0x8A07},+    {0xD0B2, 0x8D72},+    {0xD0B3, 0x8FE3},+    {0xD0B4, 0x8FE1},+    {0xD0B5, 0x8FEE},+    {0xD0B6, 0x8FE0},+    {0xD0B7, 0x90F1},+    {0xD0B8, 0x90BD},+    {0xD0B9, 0x90BF},+    {0xD0BA, 0x90D5},+    {0xD0BB, 0x90C5},+    {0xD0BC, 0x90BE},+    {0xD0BD, 0x90C7},+    {0xD0BE, 0x90CB},+    {0xD0BF, 0x90C8},+    {0xD0C0, 0x91D4},+    {0xD0C1, 0x91D3},+    {0xD0C2, 0x9654},+    {0xD0C3, 0x964F},+    {0xD0C4, 0x9651},+    {0xD0C5, 0x9653},+    {0xD0C6, 0x964A},+    {0xD0C7, 0x964E},+    {0xD0C8, 0x501E},+    {0xD0C9, 0x5005},+    {0xD0CA, 0x5007},+    {0xD0CB, 0x5013},+    {0xD0CC, 0x5022},+    {0xD0CD, 0x5030},+    {0xD0CE, 0x501B},+    {0xD0CF, 0x4FF5},+    {0xD0D0, 0x4FF4},+    {0xD0D1, 0x5033},+    {0xD0D2, 0x5037},+    {0xD0D3, 0x502C},+    {0xD0D4, 0x4FF6},+    {0xD0D5, 0x4FF7},+    {0xD0D6, 0x5017},+    {0xD0D7, 0x501C},+    {0xD0D8, 0x5020},+    {0xD0D9, 0x5027},+    {0xD0DA, 0x5035},+    {0xD0DB, 0x502F},+    {0xD0DC, 0x5031},+    {0xD0DD, 0x500E},+    {0xD0DE, 0x515A},+    {0xD0DF, 0x5194},+    {0xD0E0, 0x5193},+    {0xD0E1, 0x51CA},+    {0xD0E2, 0x51C4},+    {0xD0E3, 0x51C5},+    {0xD0E4, 0x51C8},+    {0xD0E5, 0x51CE},+    {0xD0E6, 0x5261},+    {0xD0E7, 0x525A},+    {0xD0E8, 0x5252},+    {0xD0E9, 0x525E},+    {0xD0EA, 0x525F},+    {0xD0EB, 0x5255},+    {0xD0EC, 0x5262},+    {0xD0ED, 0x52CD},+    {0xD0EE, 0x530E},+    {0xD0EF, 0x539E},+    {0xD0F0, 0x5526},+    {0xD0F1, 0x54E2},+    {0xD0F2, 0x5517},+    {0xD0F3, 0x5512},+    {0xD0F4, 0x54E7},+    {0xD0F5, 0x54F3},+    {0xD0F6, 0x54E4},+    {0xD0F7, 0x551A},+    {0xD0F8, 0x54FF},+    {0xD0F9, 0x5504},+    {0xD0FA, 0x5508},+    {0xD0FB, 0x54EB},+    {0xD0FC, 0x5511},+    {0xD0FD, 0x5505},+    {0xD0FE, 0x54F1},+    {0xD140, 0x550A},+    {0xD141, 0x54FB},+    {0xD142, 0x54F7},+    {0xD143, 0x54F8},+    {0xD144, 0x54E0},+    {0xD145, 0x550E},+    {0xD146, 0x5503},+    {0xD147, 0x550B},+    {0xD148, 0x5701},+    {0xD149, 0x5702},+    {0xD14A, 0x57CC},+    {0xD14B, 0x5832},+    {0xD14C, 0x57D5},+    {0xD14D, 0x57D2},+    {0xD14E, 0x57BA},+    {0xD14F, 0x57C6},+    {0xD150, 0x57BD},+    {0xD151, 0x57BC},+    {0xD152, 0x57B8},+    {0xD153, 0x57B6},+    {0xD154, 0x57BF},+    {0xD155, 0x57C7},+    {0xD156, 0x57D0},+    {0xD157, 0x57B9},+    {0xD158, 0x57C1},+    {0xD159, 0x590E},+    {0xD15A, 0x594A},+    {0xD15B, 0x5A19},+    {0xD15C, 0x5A16},+    {0xD15D, 0x5A2D},+    {0xD15E, 0x5A2E},+    {0xD15F, 0x5A15},+    {0xD160, 0x5A0F},+    {0xD161, 0x5A17},+    {0xD162, 0x5A0A},+    {0xD163, 0x5A1E},+    {0xD164, 0x5A33},+    {0xD165, 0x5B6C},+    {0xD166, 0x5BA7},+    {0xD167, 0x5BAD},+    {0xD168, 0x5BAC},+    {0xD169, 0x5C03},+    {0xD16A, 0x5C56},+    {0xD16B, 0x5C54},+    {0xD16C, 0x5CEC},+    {0xD16D, 0x5CFF},+    {0xD16E, 0x5CEE},+    {0xD16F, 0x5CF1},+    {0xD170, 0x5CF7},+    {0xD171, 0x5D00},+    {0xD172, 0x5CF9},+    {0xD173, 0x5E29},+    {0xD174, 0x5E28},+    {0xD175, 0x5EA8},+    {0xD176, 0x5EAE},+    {0xD177, 0x5EAA},+    {0xD178, 0x5EAC},+    {0xD179, 0x5F33},+    {0xD17A, 0x5F30},+    {0xD17B, 0x5F67},+    {0xD17C, 0x605D},+    {0xD17D, 0x605A},+    {0xD17E, 0x6067},+    {0xD1A1, 0x6041},+    {0xD1A2, 0x60A2},+    {0xD1A3, 0x6088},+    {0xD1A4, 0x6080},+    {0xD1A5, 0x6092},+    {0xD1A6, 0x6081},+    {0xD1A7, 0x609D},+    {0xD1A8, 0x6083},+    {0xD1A9, 0x6095},+    {0xD1AA, 0x609B},+    {0xD1AB, 0x6097},+    {0xD1AC, 0x6087},+    {0xD1AD, 0x609C},+    {0xD1AE, 0x608E},+    {0xD1AF, 0x6219},+    {0xD1B0, 0x6246},+    {0xD1B1, 0x62F2},+    {0xD1B2, 0x6310},+    {0xD1B3, 0x6356},+    {0xD1B4, 0x632C},+    {0xD1B5, 0x6344},+    {0xD1B6, 0x6345},+    {0xD1B7, 0x6336},+    {0xD1B8, 0x6343},+    {0xD1B9, 0x63E4},+    {0xD1BA, 0x6339},+    {0xD1BB, 0x634B},+    {0xD1BC, 0x634A},+    {0xD1BD, 0x633C},+    {0xD1BE, 0x6329},+    {0xD1BF, 0x6341},+    {0xD1C0, 0x6334},+    {0xD1C1, 0x6358},+    {0xD1C2, 0x6354},+    {0xD1C3, 0x6359},+    {0xD1C4, 0x632D},+    {0xD1C5, 0x6347},+    {0xD1C6, 0x6333},+    {0xD1C7, 0x635A},+    {0xD1C8, 0x6351},+    {0xD1C9, 0x6338},+    {0xD1CA, 0x6357},+    {0xD1CB, 0x6340},+    {0xD1CC, 0x6348},+    {0xD1CD, 0x654A},+    {0xD1CE, 0x6546},+    {0xD1CF, 0x65C6},+    {0xD1D0, 0x65C3},+    {0xD1D1, 0x65C4},+    {0xD1D2, 0x65C2},+    {0xD1D3, 0x664A},+    {0xD1D4, 0x665F},+    {0xD1D5, 0x6647},+    {0xD1D6, 0x6651},+    {0xD1D7, 0x6712},+    {0xD1D8, 0x6713},+    {0xD1D9, 0x681F},+    {0xD1DA, 0x681A},+    {0xD1DB, 0x6849},+    {0xD1DC, 0x6832},+    {0xD1DD, 0x6833},+    {0xD1DE, 0x683B},+    {0xD1DF, 0x684B},+    {0xD1E0, 0x684F},+    {0xD1E1, 0x6816},+    {0xD1E2, 0x6831},+    {0xD1E3, 0x681C},+    {0xD1E4, 0x6835},+    {0xD1E5, 0x682B},+    {0xD1E6, 0x682D},+    {0xD1E7, 0x682F},+    {0xD1E8, 0x684E},+    {0xD1E9, 0x6844},+    {0xD1EA, 0x6834},+    {0xD1EB, 0x681D},+    {0xD1EC, 0x6812},+    {0xD1ED, 0x6814},+    {0xD1EE, 0x6826},+    {0xD1EF, 0x6828},+    {0xD1F0, 0x682E},+    {0xD1F1, 0x684D},+    {0xD1F2, 0x683A},+    {0xD1F3, 0x6825},+    {0xD1F4, 0x6820},+    {0xD1F5, 0x6B2C},+    {0xD1F6, 0x6B2F},+    {0xD1F7, 0x6B2D},+    {0xD1F8, 0x6B31},+    {0xD1F9, 0x6B34},+    {0xD1FA, 0x6B6D},+    {0xD1FB, 0x8082},+    {0xD1FC, 0x6B88},+    {0xD1FD, 0x6BE6},+    {0xD1FE, 0x6BE4},+    {0xD240, 0x6BE8},+    {0xD241, 0x6BE3},+    {0xD242, 0x6BE2},+    {0xD243, 0x6BE7},+    {0xD244, 0x6C25},+    {0xD245, 0x6D7A},+    {0xD246, 0x6D63},+    {0xD247, 0x6D64},+    {0xD248, 0x6D76},+    {0xD249, 0x6D0D},+    {0xD24A, 0x6D61},+    {0xD24B, 0x6D92},+    {0xD24C, 0x6D58},+    {0xD24D, 0x6D62},+    {0xD24E, 0x6D6D},+    {0xD24F, 0x6D6F},+    {0xD250, 0x6D91},+    {0xD251, 0x6D8D},+    {0xD252, 0x6DEF},+    {0xD253, 0x6D7F},+    {0xD254, 0x6D86},+    {0xD255, 0x6D5E},+    {0xD256, 0x6D67},+    {0xD257, 0x6D60},+    {0xD258, 0x6D97},+    {0xD259, 0x6D70},+    {0xD25A, 0x6D7C},+    {0xD25B, 0x6D5F},+    {0xD25C, 0x6D82},+    {0xD25D, 0x6D98},+    {0xD25E, 0x6D2F},+    {0xD25F, 0x6D68},+    {0xD260, 0x6D8B},+    {0xD261, 0x6D7E},+    {0xD262, 0x6D80},+    {0xD263, 0x6D84},+    {0xD264, 0x6D16},+    {0xD265, 0x6D83},+    {0xD266, 0x6D7B},+    {0xD267, 0x6D7D},+    {0xD268, 0x6D75},+    {0xD269, 0x6D90},+    {0xD26A, 0x70DC},+    {0xD26B, 0x70D3},+    {0xD26C, 0x70D1},+    {0xD26D, 0x70DD},+    {0xD26E, 0x70CB},+    {0xD26F, 0x7F39},+    {0xD270, 0x70E2},+    {0xD271, 0x70D7},+    {0xD272, 0x70D2},+    {0xD273, 0x70DE},+    {0xD274, 0x70E0},+    {0xD275, 0x70D4},+    {0xD276, 0x70CD},+    {0xD277, 0x70C5},+    {0xD278, 0x70C6},+    {0xD279, 0x70C7},+    {0xD27A, 0x70DA},+    {0xD27B, 0x70CE},+    {0xD27C, 0x70E1},+    {0xD27D, 0x7242},+    {0xD27E, 0x7278},+    {0xD2A1, 0x7277},+    {0xD2A2, 0x7276},+    {0xD2A3, 0x7300},+    {0xD2A4, 0x72FA},+    {0xD2A5, 0x72F4},+    {0xD2A6, 0x72FE},+    {0xD2A7, 0x72F6},+    {0xD2A8, 0x72F3},+    {0xD2A9, 0x72FB},+    {0xD2AA, 0x7301},+    {0xD2AB, 0x73D3},+    {0xD2AC, 0x73D9},+    {0xD2AD, 0x73E5},+    {0xD2AE, 0x73D6},+    {0xD2AF, 0x73BC},+    {0xD2B0, 0x73E7},+    {0xD2B1, 0x73E3},+    {0xD2B2, 0x73E9},+    {0xD2B3, 0x73DC},+    {0xD2B4, 0x73D2},+    {0xD2B5, 0x73DB},+    {0xD2B6, 0x73D4},+    {0xD2B7, 0x73DD},+    {0xD2B8, 0x73DA},+    {0xD2B9, 0x73D7},+    {0xD2BA, 0x73D8},+    {0xD2BB, 0x73E8},+    {0xD2BC, 0x74DE},+    {0xD2BD, 0x74DF},+    {0xD2BE, 0x74F4},+    {0xD2BF, 0x74F5},+    {0xD2C0, 0x7521},+    {0xD2C1, 0x755B},+    {0xD2C2, 0x755F},+    {0xD2C3, 0x75B0},+    {0xD2C4, 0x75C1},+    {0xD2C5, 0x75BB},+    {0xD2C6, 0x75C4},+    {0xD2C7, 0x75C0},+    {0xD2C8, 0x75BF},+    {0xD2C9, 0x75B6},+    {0xD2CA, 0x75BA},+    {0xD2CB, 0x768A},+    {0xD2CC, 0x76C9},+    {0xD2CD, 0x771D},+    {0xD2CE, 0x771B},+    {0xD2CF, 0x7710},+    {0xD2D0, 0x7713},+    {0xD2D1, 0x7712},+    {0xD2D2, 0x7723},+    {0xD2D3, 0x7711},+    {0xD2D4, 0x7715},+    {0xD2D5, 0x7719},+    {0xD2D6, 0x771A},+    {0xD2D7, 0x7722},+    {0xD2D8, 0x7727},+    {0xD2D9, 0x7823},+    {0xD2DA, 0x782C},+    {0xD2DB, 0x7822},+    {0xD2DC, 0x7835},+    {0xD2DD, 0x782F},+    {0xD2DE, 0x7828},+    {0xD2DF, 0x782E},+    {0xD2E0, 0x782B},+    {0xD2E1, 0x7821},+    {0xD2E2, 0x7829},+    {0xD2E3, 0x7833},+    {0xD2E4, 0x782A},+    {0xD2E5, 0x7831},+    {0xD2E6, 0x7954},+    {0xD2E7, 0x795B},+    {0xD2E8, 0x794F},+    {0xD2E9, 0x795C},+    {0xD2EA, 0x7953},+    {0xD2EB, 0x7952},+    {0xD2EC, 0x7951},+    {0xD2ED, 0x79EB},+    {0xD2EE, 0x79EC},+    {0xD2EF, 0x79E0},+    {0xD2F0, 0x79EE},+    {0xD2F1, 0x79ED},+    {0xD2F2, 0x79EA},+    {0xD2F3, 0x79DC},+    {0xD2F4, 0x79DE},+    {0xD2F5, 0x79DD},+    {0xD2F6, 0x7A86},+    {0xD2F7, 0x7A89},+    {0xD2F8, 0x7A85},+    {0xD2F9, 0x7A8B},+    {0xD2FA, 0x7A8C},+    {0xD2FB, 0x7A8A},+    {0xD2FC, 0x7A87},+    {0xD2FD, 0x7AD8},+    {0xD2FE, 0x7B10},+    {0xD340, 0x7B04},+    {0xD341, 0x7B13},+    {0xD342, 0x7B05},+    {0xD343, 0x7B0F},+    {0xD344, 0x7B08},+    {0xD345, 0x7B0A},+    {0xD346, 0x7B0E},+    {0xD347, 0x7B09},+    {0xD348, 0x7B12},+    {0xD349, 0x7C84},+    {0xD34A, 0x7C91},+    {0xD34B, 0x7C8A},+    {0xD34C, 0x7C8C},+    {0xD34D, 0x7C88},+    {0xD34E, 0x7C8D},+    {0xD34F, 0x7C85},+    {0xD350, 0x7D1E},+    {0xD351, 0x7D1D},+    {0xD352, 0x7D11},+    {0xD353, 0x7D0E},+    {0xD354, 0x7D18},+    {0xD355, 0x7D16},+    {0xD356, 0x7D13},+    {0xD357, 0x7D1F},+    {0xD358, 0x7D12},+    {0xD359, 0x7D0F},+    {0xD35A, 0x7D0C},+    {0xD35B, 0x7F5C},+    {0xD35C, 0x7F61},+    {0xD35D, 0x7F5E},+    {0xD35E, 0x7F60},+    {0xD35F, 0x7F5D},+    {0xD360, 0x7F5B},+    {0xD361, 0x7F96},+    {0xD362, 0x7F92},+    {0xD363, 0x7FC3},+    {0xD364, 0x7FC2},+    {0xD365, 0x7FC0},+    {0xD366, 0x8016},+    {0xD367, 0x803E},+    {0xD368, 0x8039},+    {0xD369, 0x80FA},+    {0xD36A, 0x80F2},+    {0xD36B, 0x80F9},+    {0xD36C, 0x80F5},+    {0xD36D, 0x8101},+    {0xD36E, 0x80FB},+    {0xD36F, 0x8100},+    {0xD370, 0x8201},+    {0xD371, 0x822F},+    {0xD372, 0x8225},+    {0xD373, 0x8333},+    {0xD374, 0x832D},+    {0xD375, 0x8344},+    {0xD376, 0x8319},+    {0xD377, 0x8351},+    {0xD378, 0x8325},+    {0xD379, 0x8356},+    {0xD37A, 0x833F},+    {0xD37B, 0x8341},+    {0xD37C, 0x8326},+    {0xD37D, 0x831C},+    {0xD37E, 0x8322},+    {0xD3A1, 0x8342},+    {0xD3A2, 0x834E},+    {0xD3A3, 0x831B},+    {0xD3A4, 0x832A},+    {0xD3A5, 0x8308},+    {0xD3A6, 0x833C},+    {0xD3A7, 0x834D},+    {0xD3A8, 0x8316},+    {0xD3A9, 0x8324},+    {0xD3AA, 0x8320},+    {0xD3AB, 0x8337},+    {0xD3AC, 0x832F},+    {0xD3AD, 0x8329},+    {0xD3AE, 0x8347},+    {0xD3AF, 0x8345},+    {0xD3B0, 0x834C},+    {0xD3B1, 0x8353},+    {0xD3B2, 0x831E},+    {0xD3B3, 0x832C},+    {0xD3B4, 0x834B},+    {0xD3B5, 0x8327},+    {0xD3B6, 0x8348},+    {0xD3B7, 0x8653},+    {0xD3B8, 0x8652},+    {0xD3B9, 0x86A2},+    {0xD3BA, 0x86A8},+    {0xD3BB, 0x8696},+    {0xD3BC, 0x868D},+    {0xD3BD, 0x8691},+    {0xD3BE, 0x869E},+    {0xD3BF, 0x8687},+    {0xD3C0, 0x8697},+    {0xD3C1, 0x8686},+    {0xD3C2, 0x868B},+    {0xD3C3, 0x869A},+    {0xD3C4, 0x8685},+    {0xD3C5, 0x86A5},+    {0xD3C6, 0x8699},+    {0xD3C7, 0x86A1},+    {0xD3C8, 0x86A7},+    {0xD3C9, 0x8695},+    {0xD3CA, 0x8698},+    {0xD3CB, 0x868E},+    {0xD3CC, 0x869D},+    {0xD3CD, 0x8690},+    {0xD3CE, 0x8694},+    {0xD3CF, 0x8843},+    {0xD3D0, 0x8844},+    {0xD3D1, 0x886D},+    {0xD3D2, 0x8875},+    {0xD3D3, 0x8876},+    {0xD3D4, 0x8872},+    {0xD3D5, 0x8880},+    {0xD3D6, 0x8871},+    {0xD3D7, 0x887F},+    {0xD3D8, 0x886F},+    {0xD3D9, 0x8883},+    {0xD3DA, 0x887E},+    {0xD3DB, 0x8874},+    {0xD3DC, 0x887C},+    {0xD3DD, 0x8A12},+    {0xD3DE, 0x8C47},+    {0xD3DF, 0x8C57},+    {0xD3E0, 0x8C7B},+    {0xD3E1, 0x8CA4},+    {0xD3E2, 0x8CA3},+    {0xD3E3, 0x8D76},+    {0xD3E4, 0x8D78},+    {0xD3E5, 0x8DB5},+    {0xD3E6, 0x8DB7},+    {0xD3E7, 0x8DB6},+    {0xD3E8, 0x8ED1},+    {0xD3E9, 0x8ED3},+    {0xD3EA, 0x8FFE},+    {0xD3EB, 0x8FF5},+    {0xD3EC, 0x9002},+    {0xD3ED, 0x8FFF},+    {0xD3EE, 0x8FFB},+    {0xD3EF, 0x9004},+    {0xD3F0, 0x8FFC},+    {0xD3F1, 0x8FF6},+    {0xD3F2, 0x90D6},+    {0xD3F3, 0x90E0},+    {0xD3F4, 0x90D9},+    {0xD3F5, 0x90DA},+    {0xD3F6, 0x90E3},+    {0xD3F7, 0x90DF},+    {0xD3F8, 0x90E5},+    {0xD3F9, 0x90D8},+    {0xD3FA, 0x90DB},+    {0xD3FB, 0x90D7},+    {0xD3FC, 0x90DC},+    {0xD3FD, 0x90E4},+    {0xD3FE, 0x9150},+    {0xD440, 0x914E},+    {0xD441, 0x914F},+    {0xD442, 0x91D5},+    {0xD443, 0x91E2},+    {0xD444, 0x91DA},+    {0xD445, 0x965C},+    {0xD446, 0x965F},+    {0xD447, 0x96BC},+    {0xD448, 0x98E3},+    {0xD449, 0x9ADF},+    {0xD44A, 0x9B2F},+    {0xD44B, 0x4E7F},+    {0xD44C, 0x5070},+    {0xD44D, 0x506A},+    {0xD44E, 0x5061},+    {0xD44F, 0x505E},+    {0xD450, 0x5060},+    {0xD451, 0x5053},+    {0xD452, 0x504B},+    {0xD453, 0x505D},+    {0xD454, 0x5072},+    {0xD455, 0x5048},+    {0xD456, 0x504D},+    {0xD457, 0x5041},+    {0xD458, 0x505B},+    {0xD459, 0x504A},+    {0xD45A, 0x5062},+    {0xD45B, 0x5015},+    {0xD45C, 0x5045},+    {0xD45D, 0x505F},+    {0xD45E, 0x5069},+    {0xD45F, 0x506B},+    {0xD460, 0x5063},+    {0xD461, 0x5064},+    {0xD462, 0x5046},+    {0xD463, 0x5040},+    {0xD464, 0x506E},+    {0xD465, 0x5073},+    {0xD466, 0x5057},+    {0xD467, 0x5051},+    {0xD468, 0x51D0},+    {0xD469, 0x526B},+    {0xD46A, 0x526D},+    {0xD46B, 0x526C},+    {0xD46C, 0x526E},+    {0xD46D, 0x52D6},+    {0xD46E, 0x52D3},+    {0xD46F, 0x532D},+    {0xD470, 0x539C},+    {0xD471, 0x5575},+    {0xD472, 0x5576},+    {0xD473, 0x553C},+    {0xD474, 0x554D},+    {0xD475, 0x5550},+    {0xD476, 0x5534},+    {0xD477, 0x552A},+    {0xD478, 0x5551},+    {0xD479, 0x5562},+    {0xD47A, 0x5536},+    {0xD47B, 0x5535},+    {0xD47C, 0x5530},+    {0xD47D, 0x5552},+    {0xD47E, 0x5545},+    {0xD4A1, 0x550C},+    {0xD4A2, 0x5532},+    {0xD4A3, 0x5565},+    {0xD4A4, 0x554E},+    {0xD4A5, 0x5539},+    {0xD4A6, 0x5548},+    {0xD4A7, 0x552D},+    {0xD4A8, 0x553B},+    {0xD4A9, 0x5540},+    {0xD4AA, 0x554B},+    {0xD4AB, 0x570A},+    {0xD4AC, 0x5707},+    {0xD4AD, 0x57FB},+    {0xD4AE, 0x5814},+    {0xD4AF, 0x57E2},+    {0xD4B0, 0x57F6},+    {0xD4B1, 0x57DC},+    {0xD4B2, 0x57F4},+    {0xD4B3, 0x5800},+    {0xD4B4, 0x57ED},+    {0xD4B5, 0x57FD},+    {0xD4B6, 0x5808},+    {0xD4B7, 0x57F8},+    {0xD4B8, 0x580B},+    {0xD4B9, 0x57F3},+    {0xD4BA, 0x57CF},+    {0xD4BB, 0x5807},+    {0xD4BC, 0x57EE},+    {0xD4BD, 0x57E3},+    {0xD4BE, 0x57F2},+    {0xD4BF, 0x57E5},+    {0xD4C0, 0x57EC},+    {0xD4C1, 0x57E1},+    {0xD4C2, 0x580E},+    {0xD4C3, 0x57FC},+    {0xD4C4, 0x5810},+    {0xD4C5, 0x57E7},+    {0xD4C6, 0x5801},+    {0xD4C7, 0x580C},+    {0xD4C8, 0x57F1},+    {0xD4C9, 0x57E9},+    {0xD4CA, 0x57F0},+    {0xD4CB, 0x580D},+    {0xD4CC, 0x5804},+    {0xD4CD, 0x595C},+    {0xD4CE, 0x5A60},+    {0xD4CF, 0x5A58},+    {0xD4D0, 0x5A55},+    {0xD4D1, 0x5A67},+    {0xD4D2, 0x5A5E},+    {0xD4D3, 0x5A38},+    {0xD4D4, 0x5A35},+    {0xD4D5, 0x5A6D},+    {0xD4D6, 0x5A50},+    {0xD4D7, 0x5A5F},+    {0xD4D8, 0x5A65},+    {0xD4D9, 0x5A6C},+    {0xD4DA, 0x5A53},+    {0xD4DB, 0x5A64},+    {0xD4DC, 0x5A57},+    {0xD4DD, 0x5A43},+    {0xD4DE, 0x5A5D},+    {0xD4DF, 0x5A52},+    {0xD4E0, 0x5A44},+    {0xD4E1, 0x5A5B},+    {0xD4E2, 0x5A48},+    {0xD4E3, 0x5A8E},+    {0xD4E4, 0x5A3E},+    {0xD4E5, 0x5A4D},+    {0xD4E6, 0x5A39},+    {0xD4E7, 0x5A4C},+    {0xD4E8, 0x5A70},+    {0xD4E9, 0x5A69},+    {0xD4EA, 0x5A47},+    {0xD4EB, 0x5A51},+    {0xD4EC, 0x5A56},+    {0xD4ED, 0x5A42},+    {0xD4EE, 0x5A5C},+    {0xD4EF, 0x5B72},+    {0xD4F0, 0x5B6E},+    {0xD4F1, 0x5BC1},+    {0xD4F2, 0x5BC0},+    {0xD4F3, 0x5C59},+    {0xD4F4, 0x5D1E},+    {0xD4F5, 0x5D0B},+    {0xD4F6, 0x5D1D},+    {0xD4F7, 0x5D1A},+    {0xD4F8, 0x5D20},+    {0xD4F9, 0x5D0C},+    {0xD4FA, 0x5D28},+    {0xD4FB, 0x5D0D},+    {0xD4FC, 0x5D26},+    {0xD4FD, 0x5D25},+    {0xD4FE, 0x5D0F},+    {0xD540, 0x5D30},+    {0xD541, 0x5D12},+    {0xD542, 0x5D23},+    {0xD543, 0x5D1F},+    {0xD544, 0x5D2E},+    {0xD545, 0x5E3E},+    {0xD546, 0x5E34},+    {0xD547, 0x5EB1},+    {0xD548, 0x5EB4},+    {0xD549, 0x5EB9},+    {0xD54A, 0x5EB2},+    {0xD54B, 0x5EB3},+    {0xD54C, 0x5F36},+    {0xD54D, 0x5F38},+    {0xD54E, 0x5F9B},+    {0xD54F, 0x5F96},+    {0xD550, 0x5F9F},+    {0xD551, 0x608A},+    {0xD552, 0x6090},+    {0xD553, 0x6086},+    {0xD554, 0x60BE},+    {0xD555, 0x60B0},+    {0xD556, 0x60BA},+    {0xD557, 0x60D3},+    {0xD558, 0x60D4},+    {0xD559, 0x60CF},+    {0xD55A, 0x60E4},+    {0xD55B, 0x60D9},+    {0xD55C, 0x60DD},+    {0xD55D, 0x60C8},+    {0xD55E, 0x60B1},+    {0xD55F, 0x60DB},+    {0xD560, 0x60B7},+    {0xD561, 0x60CA},+    {0xD562, 0x60BF},+    {0xD563, 0x60C3},+    {0xD564, 0x60CD},+    {0xD565, 0x60C0},+    {0xD566, 0x6332},+    {0xD567, 0x6365},+    {0xD568, 0x638A},+    {0xD569, 0x6382},+    {0xD56A, 0x637D},+    {0xD56B, 0x63BD},+    {0xD56C, 0x639E},+    {0xD56D, 0x63AD},+    {0xD56E, 0x639D},+    {0xD56F, 0x6397},+    {0xD570, 0x63AB},+    {0xD571, 0x638E},+    {0xD572, 0x636F},+    {0xD573, 0x6387},+    {0xD574, 0x6390},+    {0xD575, 0x636E},+    {0xD576, 0x63AF},+    {0xD577, 0x6375},+    {0xD578, 0x639C},+    {0xD579, 0x636D},+    {0xD57A, 0x63AE},+    {0xD57B, 0x637C},+    {0xD57C, 0x63A4},+    {0xD57D, 0x633B},+    {0xD57E, 0x639F},+    {0xD5A1, 0x6378},+    {0xD5A2, 0x6385},+    {0xD5A3, 0x6381},+    {0xD5A4, 0x6391},+    {0xD5A5, 0x638D},+    {0xD5A6, 0x6370},+    {0xD5A7, 0x6553},+    {0xD5A8, 0x65CD},+    {0xD5A9, 0x6665},+    {0xD5AA, 0x6661},+    {0xD5AB, 0x665B},+    {0xD5AC, 0x6659},+    {0xD5AD, 0x665C},+    {0xD5AE, 0x6662},+    {0xD5AF, 0x6718},+    {0xD5B0, 0x6879},+    {0xD5B1, 0x6887},+    {0xD5B2, 0x6890},+    {0xD5B3, 0x689C},+    {0xD5B4, 0x686D},+    {0xD5B5, 0x686E},+    {0xD5B6, 0x68AE},+    {0xD5B7, 0x68AB},+    {0xD5B8, 0x6956},+    {0xD5B9, 0x686F},+    {0xD5BA, 0x68A3},+    {0xD5BB, 0x68AC},+    {0xD5BC, 0x68A9},+    {0xD5BD, 0x6875},+    {0xD5BE, 0x6874},+    {0xD5BF, 0x68B2},+    {0xD5C0, 0x688F},+    {0xD5C1, 0x6877},+    {0xD5C2, 0x6892},+    {0xD5C3, 0x687C},+    {0xD5C4, 0x686B},+    {0xD5C5, 0x6872},+    {0xD5C6, 0x68AA},+    {0xD5C7, 0x6880},+    {0xD5C8, 0x6871},+    {0xD5C9, 0x687E},+    {0xD5CA, 0x689B},+    {0xD5CB, 0x6896},+    {0xD5CC, 0x688B},+    {0xD5CD, 0x68A0},+    {0xD5CE, 0x6889},+    {0xD5CF, 0x68A4},+    {0xD5D0, 0x6878},+    {0xD5D1, 0x687B},+    {0xD5D2, 0x6891},+    {0xD5D3, 0x688C},+    {0xD5D4, 0x688A},+    {0xD5D5, 0x687D},+    {0xD5D6, 0x6B36},+    {0xD5D7, 0x6B33},+    {0xD5D8, 0x6B37},+    {0xD5D9, 0x6B38},+    {0xD5DA, 0x6B91},+    {0xD5DB, 0x6B8F},+    {0xD5DC, 0x6B8D},+    {0xD5DD, 0x6B8E},+    {0xD5DE, 0x6B8C},+    {0xD5DF, 0x6C2A},+    {0xD5E0, 0x6DC0},+    {0xD5E1, 0x6DAB},+    {0xD5E2, 0x6DB4},+    {0xD5E3, 0x6DB3},+    {0xD5E4, 0x6E74},+    {0xD5E5, 0x6DAC},+    {0xD5E6, 0x6DE9},+    {0xD5E7, 0x6DE2},+    {0xD5E8, 0x6DB7},+    {0xD5E9, 0x6DF6},+    {0xD5EA, 0x6DD4},+    {0xD5EB, 0x6E00},+    {0xD5EC, 0x6DC8},+    {0xD5ED, 0x6DE0},+    {0xD5EE, 0x6DDF},+    {0xD5EF, 0x6DD6},+    {0xD5F0, 0x6DBE},+    {0xD5F1, 0x6DE5},+    {0xD5F2, 0x6DDC},+    {0xD5F3, 0x6DDD},+    {0xD5F4, 0x6DDB},+    {0xD5F5, 0x6DF4},+    {0xD5F6, 0x6DCA},+    {0xD5F7, 0x6DBD},+    {0xD5F8, 0x6DED},+    {0xD5F9, 0x6DF0},+    {0xD5FA, 0x6DBA},+    {0xD5FB, 0x6DD5},+    {0xD5FC, 0x6DC2},+    {0xD5FD, 0x6DCF},+    {0xD5FE, 0x6DC9},+    {0xD640, 0x6DD0},+    {0xD641, 0x6DF2},+    {0xD642, 0x6DD3},+    {0xD643, 0x6DFD},+    {0xD644, 0x6DD7},+    {0xD645, 0x6DCD},+    {0xD646, 0x6DE3},+    {0xD647, 0x6DBB},+    {0xD648, 0x70FA},+    {0xD649, 0x710D},+    {0xD64A, 0x70F7},+    {0xD64B, 0x7117},+    {0xD64C, 0x70F4},+    {0xD64D, 0x710C},+    {0xD64E, 0x70F0},+    {0xD64F, 0x7104},+    {0xD650, 0x70F3},+    {0xD651, 0x7110},+    {0xD652, 0x70FC},+    {0xD653, 0x70FF},+    {0xD654, 0x7106},+    {0xD655, 0x7113},+    {0xD656, 0x7100},+    {0xD657, 0x70F8},+    {0xD658, 0x70F6},+    {0xD659, 0x710B},+    {0xD65A, 0x7102},+    {0xD65B, 0x710E},+    {0xD65C, 0x727E},+    {0xD65D, 0x727B},+    {0xD65E, 0x727C},+    {0xD65F, 0x727F},+    {0xD660, 0x731D},+    {0xD661, 0x7317},+    {0xD662, 0x7307},+    {0xD663, 0x7311},+    {0xD664, 0x7318},+    {0xD665, 0x730A},+    {0xD666, 0x7308},+    {0xD667, 0x72FF},+    {0xD668, 0x730F},+    {0xD669, 0x731E},+    {0xD66A, 0x7388},+    {0xD66B, 0x73F6},+    {0xD66C, 0x73F8},+    {0xD66D, 0x73F5},+    {0xD66E, 0x7404},+    {0xD66F, 0x7401},+    {0xD670, 0x73FD},+    {0xD671, 0x7407},+    {0xD672, 0x7400},+    {0xD673, 0x73FA},+    {0xD674, 0x73FC},+    {0xD675, 0x73FF},+    {0xD676, 0x740C},+    {0xD677, 0x740B},+    {0xD678, 0x73F4},+    {0xD679, 0x7408},+    {0xD67A, 0x7564},+    {0xD67B, 0x7563},+    {0xD67C, 0x75CE},+    {0xD67D, 0x75D2},+    {0xD67E, 0x75CF},+    {0xD6A1, 0x75CB},+    {0xD6A2, 0x75CC},+    {0xD6A3, 0x75D1},+    {0xD6A4, 0x75D0},+    {0xD6A5, 0x768F},+    {0xD6A6, 0x7689},+    {0xD6A7, 0x76D3},+    {0xD6A8, 0x7739},+    {0xD6A9, 0x772F},+    {0xD6AA, 0x772D},+    {0xD6AB, 0x7731},+    {0xD6AC, 0x7732},+    {0xD6AD, 0x7734},+    {0xD6AE, 0x7733},+    {0xD6AF, 0x773D},+    {0xD6B0, 0x7725},+    {0xD6B1, 0x773B},+    {0xD6B2, 0x7735},+    {0xD6B3, 0x7848},+    {0xD6B4, 0x7852},+    {0xD6B5, 0x7849},+    {0xD6B6, 0x784D},+    {0xD6B7, 0x784A},+    {0xD6B8, 0x784C},+    {0xD6B9, 0x7826},+    {0xD6BA, 0x7845},+    {0xD6BB, 0x7850},+    {0xD6BC, 0x7964},+    {0xD6BD, 0x7967},+    {0xD6BE, 0x7969},+    {0xD6BF, 0x796A},+    {0xD6C0, 0x7963},+    {0xD6C1, 0x796B},+    {0xD6C2, 0x7961},+    {0xD6C3, 0x79BB},+    {0xD6C4, 0x79FA},+    {0xD6C5, 0x79F8},+    {0xD6C6, 0x79F6},+    {0xD6C7, 0x79F7},+    {0xD6C8, 0x7A8F},+    {0xD6C9, 0x7A94},+    {0xD6CA, 0x7A90},+    {0xD6CB, 0x7B35},+    {0xD6CC, 0x7B47},+    {0xD6CD, 0x7B34},+    {0xD6CE, 0x7B25},+    {0xD6CF, 0x7B30},+    {0xD6D0, 0x7B22},+    {0xD6D1, 0x7B24},+    {0xD6D2, 0x7B33},+    {0xD6D3, 0x7B18},+    {0xD6D4, 0x7B2A},+    {0xD6D5, 0x7B1D},+    {0xD6D6, 0x7B31},+    {0xD6D7, 0x7B2B},+    {0xD6D8, 0x7B2D},+    {0xD6D9, 0x7B2F},+    {0xD6DA, 0x7B32},+    {0xD6DB, 0x7B38},+    {0xD6DC, 0x7B1A},+    {0xD6DD, 0x7B23},+    {0xD6DE, 0x7C94},+    {0xD6DF, 0x7C98},+    {0xD6E0, 0x7C96},+    {0xD6E1, 0x7CA3},+    {0xD6E2, 0x7D35},+    {0xD6E3, 0x7D3D},+    {0xD6E4, 0x7D38},+    {0xD6E5, 0x7D36},+    {0xD6E6, 0x7D3A},+    {0xD6E7, 0x7D45},+    {0xD6E8, 0x7D2C},+    {0xD6E9, 0x7D29},+    {0xD6EA, 0x7D41},+    {0xD6EB, 0x7D47},+    {0xD6EC, 0x7D3E},+    {0xD6ED, 0x7D3F},+    {0xD6EE, 0x7D4A},+    {0xD6EF, 0x7D3B},+    {0xD6F0, 0x7D28},+    {0xD6F1, 0x7F63},+    {0xD6F2, 0x7F95},+    {0xD6F3, 0x7F9C},+    {0xD6F4, 0x7F9D},+    {0xD6F5, 0x7F9B},+    {0xD6F6, 0x7FCA},+    {0xD6F7, 0x7FCB},+    {0xD6F8, 0x7FCD},+    {0xD6F9, 0x7FD0},+    {0xD6FA, 0x7FD1},+    {0xD6FB, 0x7FC7},+    {0xD6FC, 0x7FCF},+    {0xD6FD, 0x7FC9},+    {0xD6FE, 0x801F},+    {0xD740, 0x801E},+    {0xD741, 0x801B},+    {0xD742, 0x8047},+    {0xD743, 0x8043},+    {0xD744, 0x8048},+    {0xD745, 0x8118},+    {0xD746, 0x8125},+    {0xD747, 0x8119},+    {0xD748, 0x811B},+    {0xD749, 0x812D},+    {0xD74A, 0x811F},+    {0xD74B, 0x812C},+    {0xD74C, 0x811E},+    {0xD74D, 0x8121},+    {0xD74E, 0x8115},+    {0xD74F, 0x8127},+    {0xD750, 0x811D},+    {0xD751, 0x8122},+    {0xD752, 0x8211},+    {0xD753, 0x8238},+    {0xD754, 0x8233},+    {0xD755, 0x823A},+    {0xD756, 0x8234},+    {0xD757, 0x8232},+    {0xD758, 0x8274},+    {0xD759, 0x8390},+    {0xD75A, 0x83A3},+    {0xD75B, 0x83A8},+    {0xD75C, 0x838D},+    {0xD75D, 0x837A},+    {0xD75E, 0x8373},+    {0xD75F, 0x83A4},+    {0xD760, 0x8374},+    {0xD761, 0x838F},+    {0xD762, 0x8381},+    {0xD763, 0x8395},+    {0xD764, 0x8399},+    {0xD765, 0x8375},+    {0xD766, 0x8394},+    {0xD767, 0x83A9},+    {0xD768, 0x837D},+    {0xD769, 0x8383},+    {0xD76A, 0x838C},+    {0xD76B, 0x839D},+    {0xD76C, 0x839B},+    {0xD76D, 0x83AA},+    {0xD76E, 0x838B},+    {0xD76F, 0x837E},+    {0xD770, 0x83A5},+    {0xD771, 0x83AF},+    {0xD772, 0x8388},+    {0xD773, 0x8397},+    {0xD774, 0x83B0},+    {0xD775, 0x837F},+    {0xD776, 0x83A6},+    {0xD777, 0x8387},+    {0xD778, 0x83AE},+    {0xD779, 0x8376},+    {0xD77A, 0x839A},+    {0xD77B, 0x8659},+    {0xD77C, 0x8656},+    {0xD77D, 0x86BF},+    {0xD77E, 0x86B7},+    {0xD7A1, 0x86C2},+    {0xD7A2, 0x86C1},+    {0xD7A3, 0x86C5},+    {0xD7A4, 0x86BA},+    {0xD7A5, 0x86B0},+    {0xD7A6, 0x86C8},+    {0xD7A7, 0x86B9},+    {0xD7A8, 0x86B3},+    {0xD7A9, 0x86B8},+    {0xD7AA, 0x86CC},+    {0xD7AB, 0x86B4},+    {0xD7AC, 0x86BB},+    {0xD7AD, 0x86BC},+    {0xD7AE, 0x86C3},+    {0xD7AF, 0x86BD},+    {0xD7B0, 0x86BE},+    {0xD7B1, 0x8852},+    {0xD7B2, 0x8889},+    {0xD7B3, 0x8895},+    {0xD7B4, 0x88A8},+    {0xD7B5, 0x88A2},+    {0xD7B6, 0x88AA},+    {0xD7B7, 0x889A},+    {0xD7B8, 0x8891},+    {0xD7B9, 0x88A1},+    {0xD7BA, 0x889F},+    {0xD7BB, 0x8898},+    {0xD7BC, 0x88A7},+    {0xD7BD, 0x8899},+    {0xD7BE, 0x889B},+    {0xD7BF, 0x8897},+    {0xD7C0, 0x88A4},+    {0xD7C1, 0x88AC},+    {0xD7C2, 0x888C},+    {0xD7C3, 0x8893},+    {0xD7C4, 0x888E},+    {0xD7C5, 0x8982},+    {0xD7C6, 0x89D6},+    {0xD7C7, 0x89D9},+    {0xD7C8, 0x89D5},+    {0xD7C9, 0x8A30},+    {0xD7CA, 0x8A27},+    {0xD7CB, 0x8A2C},+    {0xD7CC, 0x8A1E},+    {0xD7CD, 0x8C39},+    {0xD7CE, 0x8C3B},+    {0xD7CF, 0x8C5C},+    {0xD7D0, 0x8C5D},+    {0xD7D1, 0x8C7D},+    {0xD7D2, 0x8CA5},+    {0xD7D3, 0x8D7D},+    {0xD7D4, 0x8D7B},+    {0xD7D5, 0x8D79},+    {0xD7D6, 0x8DBC},+    {0xD7D7, 0x8DC2},+    {0xD7D8, 0x8DB9},+    {0xD7D9, 0x8DBF},+    {0xD7DA, 0x8DC1},+    {0xD7DB, 0x8ED8},+    {0xD7DC, 0x8EDE},+    {0xD7DD, 0x8EDD},+    {0xD7DE, 0x8EDC},+    {0xD7DF, 0x8ED7},+    {0xD7E0, 0x8EE0},+    {0xD7E1, 0x8EE1},+    {0xD7E2, 0x9024},+    {0xD7E3, 0x900B},+    {0xD7E4, 0x9011},+    {0xD7E5, 0x901C},+    {0xD7E6, 0x900C},+    {0xD7E7, 0x9021},+    {0xD7E8, 0x90EF},+    {0xD7E9, 0x90EA},+    {0xD7EA, 0x90F0},+    {0xD7EB, 0x90F4},+    {0xD7EC, 0x90F2},+    {0xD7ED, 0x90F3},+    {0xD7EE, 0x90D4},+    {0xD7EF, 0x90EB},+    {0xD7F0, 0x90EC},+    {0xD7F1, 0x90E9},+    {0xD7F2, 0x9156},+    {0xD7F3, 0x9158},+    {0xD7F4, 0x915A},+    {0xD7F5, 0x9153},+    {0xD7F6, 0x9155},+    {0xD7F7, 0x91EC},+    {0xD7F8, 0x91F4},+    {0xD7F9, 0x91F1},+    {0xD7FA, 0x91F3},+    {0xD7FB, 0x91F8},+    {0xD7FC, 0x91E4},+    {0xD7FD, 0x91F9},+    {0xD7FE, 0x91EA},+    {0xD840, 0x91EB},+    {0xD841, 0x91F7},+    {0xD842, 0x91E8},+    {0xD843, 0x91EE},+    {0xD844, 0x957A},+    {0xD845, 0x9586},+    {0xD846, 0x9588},+    {0xD847, 0x967C},+    {0xD848, 0x966D},+    {0xD849, 0x966B},+    {0xD84A, 0x9671},+    {0xD84B, 0x966F},+    {0xD84C, 0x96BF},+    {0xD84D, 0x976A},+    {0xD84E, 0x9804},+    {0xD84F, 0x98E5},+    {0xD850, 0x9997},+    {0xD851, 0x509B},+    {0xD852, 0x5095},+    {0xD853, 0x5094},+    {0xD854, 0x509E},+    {0xD855, 0x508B},+    {0xD856, 0x50A3},+    {0xD857, 0x5083},+    {0xD858, 0x508C},+    {0xD859, 0x508E},+    {0xD85A, 0x509D},+    {0xD85B, 0x5068},+    {0xD85C, 0x509C},+    {0xD85D, 0x5092},+    {0xD85E, 0x5082},+    {0xD85F, 0x5087},+    {0xD860, 0x515F},+    {0xD861, 0x51D4},+    {0xD862, 0x5312},+    {0xD863, 0x5311},+    {0xD864, 0x53A4},+    {0xD865, 0x53A7},+    {0xD866, 0x5591},+    {0xD867, 0x55A8},+    {0xD868, 0x55A5},+    {0xD869, 0x55AD},+    {0xD86A, 0x5577},+    {0xD86B, 0x5645},+    {0xD86C, 0x55A2},+    {0xD86D, 0x5593},+    {0xD86E, 0x5588},+    {0xD86F, 0x558F},+    {0xD870, 0x55B5},+    {0xD871, 0x5581},+    {0xD872, 0x55A3},+    {0xD873, 0x5592},+    {0xD874, 0x55A4},+    {0xD875, 0x557D},+    {0xD876, 0x558C},+    {0xD877, 0x55A6},+    {0xD878, 0x557F},+    {0xD879, 0x5595},+    {0xD87A, 0x55A1},+    {0xD87B, 0x558E},+    {0xD87C, 0x570C},+    {0xD87D, 0x5829},+    {0xD87E, 0x5837},+    {0xD8A1, 0x5819},+    {0xD8A2, 0x581E},+    {0xD8A3, 0x5827},+    {0xD8A4, 0x5823},+    {0xD8A5, 0x5828},+    {0xD8A6, 0x57F5},+    {0xD8A7, 0x5848},+    {0xD8A8, 0x5825},+    {0xD8A9, 0x581C},+    {0xD8AA, 0x581B},+    {0xD8AB, 0x5833},+    {0xD8AC, 0x583F},+    {0xD8AD, 0x5836},+    {0xD8AE, 0x582E},+    {0xD8AF, 0x5839},+    {0xD8B0, 0x5838},+    {0xD8B1, 0x582D},+    {0xD8B2, 0x582C},+    {0xD8B3, 0x583B},+    {0xD8B4, 0x5961},+    {0xD8B5, 0x5AAF},+    {0xD8B6, 0x5A94},+    {0xD8B7, 0x5A9F},+    {0xD8B8, 0x5A7A},+    {0xD8B9, 0x5AA2},+    {0xD8BA, 0x5A9E},+    {0xD8BB, 0x5A78},+    {0xD8BC, 0x5AA6},+    {0xD8BD, 0x5A7C},+    {0xD8BE, 0x5AA5},+    {0xD8BF, 0x5AAC},+    {0xD8C0, 0x5A95},+    {0xD8C1, 0x5AAE},+    {0xD8C2, 0x5A37},+    {0xD8C3, 0x5A84},+    {0xD8C4, 0x5A8A},+    {0xD8C5, 0x5A97},+    {0xD8C6, 0x5A83},+    {0xD8C7, 0x5A8B},+    {0xD8C8, 0x5AA9},+    {0xD8C9, 0x5A7B},+    {0xD8CA, 0x5A7D},+    {0xD8CB, 0x5A8C},+    {0xD8CC, 0x5A9C},+    {0xD8CD, 0x5A8F},+    {0xD8CE, 0x5A93},+    {0xD8CF, 0x5A9D},+    {0xD8D0, 0x5BEA},+    {0xD8D1, 0x5BCD},+    {0xD8D2, 0x5BCB},+    {0xD8D3, 0x5BD4},+    {0xD8D4, 0x5BD1},+    {0xD8D5, 0x5BCA},+    {0xD8D6, 0x5BCE},+    {0xD8D7, 0x5C0C},+    {0xD8D8, 0x5C30},+    {0xD8D9, 0x5D37},+    {0xD8DA, 0x5D43},+    {0xD8DB, 0x5D6B},+    {0xD8DC, 0x5D41},+    {0xD8DD, 0x5D4B},+    {0xD8DE, 0x5D3F},+    {0xD8DF, 0x5D35},+    {0xD8E0, 0x5D51},+    {0xD8E1, 0x5D4E},+    {0xD8E2, 0x5D55},+    {0xD8E3, 0x5D33},+    {0xD8E4, 0x5D3A},+    {0xD8E5, 0x5D52},+    {0xD8E6, 0x5D3D},+    {0xD8E7, 0x5D31},+    {0xD8E8, 0x5D59},+    {0xD8E9, 0x5D42},+    {0xD8EA, 0x5D39},+    {0xD8EB, 0x5D49},+    {0xD8EC, 0x5D38},+    {0xD8ED, 0x5D3C},+    {0xD8EE, 0x5D32},+    {0xD8EF, 0x5D36},+    {0xD8F0, 0x5D40},+    {0xD8F1, 0x5D45},+    {0xD8F2, 0x5E44},+    {0xD8F3, 0x5E41},+    {0xD8F4, 0x5F58},+    {0xD8F5, 0x5FA6},+    {0xD8F6, 0x5FA5},+    {0xD8F7, 0x5FAB},+    {0xD8F8, 0x60C9},+    {0xD8F9, 0x60B9},+    {0xD8FA, 0x60CC},+    {0xD8FB, 0x60E2},+    {0xD8FC, 0x60CE},+    {0xD8FD, 0x60C4},+    {0xD8FE, 0x6114},+    {0xD940, 0x60F2},+    {0xD941, 0x610A},+    {0xD942, 0x6116},+    {0xD943, 0x6105},+    {0xD944, 0x60F5},+    {0xD945, 0x6113},+    {0xD946, 0x60F8},+    {0xD947, 0x60FC},+    {0xD948, 0x60FE},+    {0xD949, 0x60C1},+    {0xD94A, 0x6103},+    {0xD94B, 0x6118},+    {0xD94C, 0x611D},+    {0xD94D, 0x6110},+    {0xD94E, 0x60FF},+    {0xD94F, 0x6104},+    {0xD950, 0x610B},+    {0xD951, 0x624A},+    {0xD952, 0x6394},+    {0xD953, 0x63B1},+    {0xD954, 0x63B0},+    {0xD955, 0x63CE},+    {0xD956, 0x63E5},+    {0xD957, 0x63E8},+    {0xD958, 0x63EF},+    {0xD959, 0x63C3},+    {0xD95A, 0x649D},+    {0xD95B, 0x63F3},+    {0xD95C, 0x63CA},+    {0xD95D, 0x63E0},+    {0xD95E, 0x63F6},+    {0xD95F, 0x63D5},+    {0xD960, 0x63F2},+    {0xD961, 0x63F5},+    {0xD962, 0x6461},+    {0xD963, 0x63DF},+    {0xD964, 0x63BE},+    {0xD965, 0x63DD},+    {0xD966, 0x63DC},+    {0xD967, 0x63C4},+    {0xD968, 0x63D8},+    {0xD969, 0x63D3},+    {0xD96A, 0x63C2},+    {0xD96B, 0x63C7},+    {0xD96C, 0x63CC},+    {0xD96D, 0x63CB},+    {0xD96E, 0x63C8},+    {0xD96F, 0x63F0},+    {0xD970, 0x63D7},+    {0xD971, 0x63D9},+    {0xD972, 0x6532},+    {0xD973, 0x6567},+    {0xD974, 0x656A},+    {0xD975, 0x6564},+    {0xD976, 0x655C},+    {0xD977, 0x6568},+    {0xD978, 0x6565},+    {0xD979, 0x658C},+    {0xD97A, 0x659D},+    {0xD97B, 0x659E},+    {0xD97C, 0x65AE},+    {0xD97D, 0x65D0},+    {0xD97E, 0x65D2},+    {0xD9A1, 0x667C},+    {0xD9A2, 0x666C},+    {0xD9A3, 0x667B},+    {0xD9A4, 0x6680},+    {0xD9A5, 0x6671},+    {0xD9A6, 0x6679},+    {0xD9A7, 0x666A},+    {0xD9A8, 0x6672},+    {0xD9A9, 0x6701},+    {0xD9AA, 0x690C},+    {0xD9AB, 0x68D3},+    {0xD9AC, 0x6904},+    {0xD9AD, 0x68DC},+    {0xD9AE, 0x692A},+    {0xD9AF, 0x68EC},+    {0xD9B0, 0x68EA},+    {0xD9B1, 0x68F1},+    {0xD9B2, 0x690F},+    {0xD9B3, 0x68D6},+    {0xD9B4, 0x68F7},+    {0xD9B5, 0x68EB},+    {0xD9B6, 0x68E4},+    {0xD9B7, 0x68F6},+    {0xD9B8, 0x6913},+    {0xD9B9, 0x6910},+    {0xD9BA, 0x68F3},+    {0xD9BB, 0x68E1},+    {0xD9BC, 0x6907},+    {0xD9BD, 0x68CC},+    {0xD9BE, 0x6908},+    {0xD9BF, 0x6970},+    {0xD9C0, 0x68B4},+    {0xD9C1, 0x6911},+    {0xD9C2, 0x68EF},+    {0xD9C3, 0x68C6},+    {0xD9C4, 0x6914},+    {0xD9C5, 0x68F8},+    {0xD9C6, 0x68D0},+    {0xD9C7, 0x68FD},+    {0xD9C8, 0x68FC},+    {0xD9C9, 0x68E8},+    {0xD9CA, 0x690B},+    {0xD9CB, 0x690A},+    {0xD9CC, 0x6917},+    {0xD9CD, 0x68CE},+    {0xD9CE, 0x68C8},+    {0xD9CF, 0x68DD},+    {0xD9D0, 0x68DE},+    {0xD9D1, 0x68E6},+    {0xD9D2, 0x68F4},+    {0xD9D3, 0x68D1},+    {0xD9D4, 0x6906},+    {0xD9D5, 0x68D4},+    {0xD9D6, 0x68E9},+    {0xD9D7, 0x6915},+    {0xD9D8, 0x6925},+    {0xD9D9, 0x68C7},+    {0xD9DA, 0x6B39},+    {0xD9DB, 0x6B3B},+    {0xD9DC, 0x6B3F},+    {0xD9DD, 0x6B3C},+    {0xD9DE, 0x6B94},+    {0xD9DF, 0x6B97},+    {0xD9E0, 0x6B99},+    {0xD9E1, 0x6B95},+    {0xD9E2, 0x6BBD},+    {0xD9E3, 0x6BF0},+    {0xD9E4, 0x6BF2},+    {0xD9E5, 0x6BF3},+    {0xD9E6, 0x6C30},+    {0xD9E7, 0x6DFC},+    {0xD9E8, 0x6E46},+    {0xD9E9, 0x6E47},+    {0xD9EA, 0x6E1F},+    {0xD9EB, 0x6E49},+    {0xD9EC, 0x6E88},+    {0xD9ED, 0x6E3C},+    {0xD9EE, 0x6E3D},+    {0xD9EF, 0x6E45},+    {0xD9F0, 0x6E62},+    {0xD9F1, 0x6E2B},+    {0xD9F2, 0x6E3F},+    {0xD9F3, 0x6E41},+    {0xD9F4, 0x6E5D},+    {0xD9F5, 0x6E73},+    {0xD9F6, 0x6E1C},+    {0xD9F7, 0x6E33},+    {0xD9F8, 0x6E4B},+    {0xD9F9, 0x6E40},+    {0xD9FA, 0x6E51},+    {0xD9FB, 0x6E3B},+    {0xD9FC, 0x6E03},+    {0xD9FD, 0x6E2E},+    {0xD9FE, 0x6E5E},+    {0xDA40, 0x6E68},+    {0xDA41, 0x6E5C},+    {0xDA42, 0x6E61},+    {0xDA43, 0x6E31},+    {0xDA44, 0x6E28},+    {0xDA45, 0x6E60},+    {0xDA46, 0x6E71},+    {0xDA47, 0x6E6B},+    {0xDA48, 0x6E39},+    {0xDA49, 0x6E22},+    {0xDA4A, 0x6E30},+    {0xDA4B, 0x6E53},+    {0xDA4C, 0x6E65},+    {0xDA4D, 0x6E27},+    {0xDA4E, 0x6E78},+    {0xDA4F, 0x6E64},+    {0xDA50, 0x6E77},+    {0xDA51, 0x6E55},+    {0xDA52, 0x6E79},+    {0xDA53, 0x6E52},+    {0xDA54, 0x6E66},+    {0xDA55, 0x6E35},+    {0xDA56, 0x6E36},+    {0xDA57, 0x6E5A},+    {0xDA58, 0x7120},+    {0xDA59, 0x711E},+    {0xDA5A, 0x712F},+    {0xDA5B, 0x70FB},+    {0xDA5C, 0x712E},+    {0xDA5D, 0x7131},+    {0xDA5E, 0x7123},+    {0xDA5F, 0x7125},+    {0xDA60, 0x7122},+    {0xDA61, 0x7132},+    {0xDA62, 0x711F},+    {0xDA63, 0x7128},+    {0xDA64, 0x713A},+    {0xDA65, 0x711B},+    {0xDA66, 0x724B},+    {0xDA67, 0x725A},+    {0xDA68, 0x7288},+    {0xDA69, 0x7289},+    {0xDA6A, 0x7286},+    {0xDA6B, 0x7285},+    {0xDA6C, 0x728B},+    {0xDA6D, 0x7312},+    {0xDA6E, 0x730B},+    {0xDA6F, 0x7330},+    {0xDA70, 0x7322},+    {0xDA71, 0x7331},+    {0xDA72, 0x7333},+    {0xDA73, 0x7327},+    {0xDA74, 0x7332},+    {0xDA75, 0x732D},+    {0xDA76, 0x7326},+    {0xDA77, 0x7323},+    {0xDA78, 0x7335},+    {0xDA79, 0x730C},+    {0xDA7A, 0x742E},+    {0xDA7B, 0x742C},+    {0xDA7C, 0x7430},+    {0xDA7D, 0x742B},+    {0xDA7E, 0x7416},+    {0xDAA1, 0x741A},+    {0xDAA2, 0x7421},+    {0xDAA3, 0x742D},+    {0xDAA4, 0x7431},+    {0xDAA5, 0x7424},+    {0xDAA6, 0x7423},+    {0xDAA7, 0x741D},+    {0xDAA8, 0x7429},+    {0xDAA9, 0x7420},+    {0xDAAA, 0x7432},+    {0xDAAB, 0x74FB},+    {0xDAAC, 0x752F},+    {0xDAAD, 0x756F},+    {0xDAAE, 0x756C},+    {0xDAAF, 0x75E7},+    {0xDAB0, 0x75DA},+    {0xDAB1, 0x75E1},+    {0xDAB2, 0x75E6},+    {0xDAB3, 0x75DD},+    {0xDAB4, 0x75DF},+    {0xDAB5, 0x75E4},+    {0xDAB6, 0x75D7},+    {0xDAB7, 0x7695},+    {0xDAB8, 0x7692},+    {0xDAB9, 0x76DA},+    {0xDABA, 0x7746},+    {0xDABB, 0x7747},+    {0xDABC, 0x7744},+    {0xDABD, 0x774D},+    {0xDABE, 0x7745},+    {0xDABF, 0x774A},+    {0xDAC0, 0x774E},+    {0xDAC1, 0x774B},+    {0xDAC2, 0x774C},+    {0xDAC3, 0x77DE},+    {0xDAC4, 0x77EC},+    {0xDAC5, 0x7860},+    {0xDAC6, 0x7864},+    {0xDAC7, 0x7865},+    {0xDAC8, 0x785C},+    {0xDAC9, 0x786D},+    {0xDACA, 0x7871},+    {0xDACB, 0x786A},+    {0xDACC, 0x786E},+    {0xDACD, 0x7870},+    {0xDACE, 0x7869},+    {0xDACF, 0x7868},+    {0xDAD0, 0x785E},+    {0xDAD1, 0x7862},+    {0xDAD2, 0x7974},+    {0xDAD3, 0x7973},+    {0xDAD4, 0x7972},+    {0xDAD5, 0x7970},+    {0xDAD6, 0x7A02},+    {0xDAD7, 0x7A0A},+    {0xDAD8, 0x7A03},+    {0xDAD9, 0x7A0C},+    {0xDADA, 0x7A04},+    {0xDADB, 0x7A99},+    {0xDADC, 0x7AE6},+    {0xDADD, 0x7AE4},+    {0xDADE, 0x7B4A},+    {0xDADF, 0x7B3B},+    {0xDAE0, 0x7B44},+    {0xDAE1, 0x7B48},+    {0xDAE2, 0x7B4C},+    {0xDAE3, 0x7B4E},+    {0xDAE4, 0x7B40},+    {0xDAE5, 0x7B58},+    {0xDAE6, 0x7B45},+    {0xDAE7, 0x7CA2},+    {0xDAE8, 0x7C9E},+    {0xDAE9, 0x7CA8},+    {0xDAEA, 0x7CA1},+    {0xDAEB, 0x7D58},+    {0xDAEC, 0x7D6F},+    {0xDAED, 0x7D63},+    {0xDAEE, 0x7D53},+    {0xDAEF, 0x7D56},+    {0xDAF0, 0x7D67},+    {0xDAF1, 0x7D6A},+    {0xDAF2, 0x7D4F},+    {0xDAF3, 0x7D6D},+    {0xDAF4, 0x7D5C},+    {0xDAF5, 0x7D6B},+    {0xDAF6, 0x7D52},+    {0xDAF7, 0x7D54},+    {0xDAF8, 0x7D69},+    {0xDAF9, 0x7D51},+    {0xDAFA, 0x7D5F},+    {0xDAFB, 0x7D4E},+    {0xDAFC, 0x7F3E},+    {0xDAFD, 0x7F3F},+    {0xDAFE, 0x7F65},+    {0xDB40, 0x7F66},+    {0xDB41, 0x7FA2},+    {0xDB42, 0x7FA0},+    {0xDB43, 0x7FA1},+    {0xDB44, 0x7FD7},+    {0xDB45, 0x8051},+    {0xDB46, 0x804F},+    {0xDB47, 0x8050},+    {0xDB48, 0x80FE},+    {0xDB49, 0x80D4},+    {0xDB4A, 0x8143},+    {0xDB4B, 0x814A},+    {0xDB4C, 0x8152},+    {0xDB4D, 0x814F},+    {0xDB4E, 0x8147},+    {0xDB4F, 0x813D},+    {0xDB50, 0x814D},+    {0xDB51, 0x813A},+    {0xDB52, 0x81E6},+    {0xDB53, 0x81EE},+    {0xDB54, 0x81F7},+    {0xDB55, 0x81F8},+    {0xDB56, 0x81F9},+    {0xDB57, 0x8204},+    {0xDB58, 0x823C},+    {0xDB59, 0x823D},+    {0xDB5A, 0x823F},+    {0xDB5B, 0x8275},+    {0xDB5C, 0x833B},+    {0xDB5D, 0x83CF},+    {0xDB5E, 0x83F9},+    {0xDB5F, 0x8423},+    {0xDB60, 0x83C0},+    {0xDB61, 0x83E8},+    {0xDB62, 0x8412},+    {0xDB63, 0x83E7},+    {0xDB64, 0x83E4},+    {0xDB65, 0x83FC},+    {0xDB66, 0x83F6},+    {0xDB67, 0x8410},+    {0xDB68, 0x83C6},+    {0xDB69, 0x83C8},+    {0xDB6A, 0x83EB},+    {0xDB6B, 0x83E3},+    {0xDB6C, 0x83BF},+    {0xDB6D, 0x8401},+    {0xDB6E, 0x83DD},+    {0xDB6F, 0x83E5},+    {0xDB70, 0x83D8},+    {0xDB71, 0x83FF},+    {0xDB72, 0x83E1},+    {0xDB73, 0x83CB},+    {0xDB74, 0x83CE},+    {0xDB75, 0x83D6},+    {0xDB76, 0x83F5},+    {0xDB77, 0x83C9},+    {0xDB78, 0x8409},+    {0xDB79, 0x840F},+    {0xDB7A, 0x83DE},+    {0xDB7B, 0x8411},+    {0xDB7C, 0x8406},+    {0xDB7D, 0x83C2},+    {0xDB7E, 0x83F3},+    {0xDBA1, 0x83D5},+    {0xDBA2, 0x83FA},+    {0xDBA3, 0x83C7},+    {0xDBA4, 0x83D1},+    {0xDBA5, 0x83EA},+    {0xDBA6, 0x8413},+    {0xDBA7, 0x83C3},+    {0xDBA8, 0x83EC},+    {0xDBA9, 0x83EE},+    {0xDBAA, 0x83C4},+    {0xDBAB, 0x83FB},+    {0xDBAC, 0x83D7},+    {0xDBAD, 0x83E2},+    {0xDBAE, 0x841B},+    {0xDBAF, 0x83DB},+    {0xDBB0, 0x83FE},+    {0xDBB1, 0x86D8},+    {0xDBB2, 0x86E2},+    {0xDBB3, 0x86E6},+    {0xDBB4, 0x86D3},+    {0xDBB5, 0x86E3},+    {0xDBB6, 0x86DA},+    {0xDBB7, 0x86EA},+    {0xDBB8, 0x86DD},+    {0xDBB9, 0x86EB},+    {0xDBBA, 0x86DC},+    {0xDBBB, 0x86EC},+    {0xDBBC, 0x86E9},+    {0xDBBD, 0x86D7},+    {0xDBBE, 0x86E8},+    {0xDBBF, 0x86D1},+    {0xDBC0, 0x8848},+    {0xDBC1, 0x8856},+    {0xDBC2, 0x8855},+    {0xDBC3, 0x88BA},+    {0xDBC4, 0x88D7},+    {0xDBC5, 0x88B9},+    {0xDBC6, 0x88B8},+    {0xDBC7, 0x88C0},+    {0xDBC8, 0x88BE},+    {0xDBC9, 0x88B6},+    {0xDBCA, 0x88BC},+    {0xDBCB, 0x88B7},+    {0xDBCC, 0x88BD},+    {0xDBCD, 0x88B2},+    {0xDBCE, 0x8901},+    {0xDBCF, 0x88C9},+    {0xDBD0, 0x8995},+    {0xDBD1, 0x8998},+    {0xDBD2, 0x8997},+    {0xDBD3, 0x89DD},+    {0xDBD4, 0x89DA},+    {0xDBD5, 0x89DB},+    {0xDBD6, 0x8A4E},+    {0xDBD7, 0x8A4D},+    {0xDBD8, 0x8A39},+    {0xDBD9, 0x8A59},+    {0xDBDA, 0x8A40},+    {0xDBDB, 0x8A57},+    {0xDBDC, 0x8A58},+    {0xDBDD, 0x8A44},+    {0xDBDE, 0x8A45},+    {0xDBDF, 0x8A52},+    {0xDBE0, 0x8A48},+    {0xDBE1, 0x8A51},+    {0xDBE2, 0x8A4A},+    {0xDBE3, 0x8A4C},+    {0xDBE4, 0x8A4F},+    {0xDBE5, 0x8C5F},+    {0xDBE6, 0x8C81},+    {0xDBE7, 0x8C80},+    {0xDBE8, 0x8CBA},+    {0xDBE9, 0x8CBE},+    {0xDBEA, 0x8CB0},+    {0xDBEB, 0x8CB9},+    {0xDBEC, 0x8CB5},+    {0xDBED, 0x8D84},+    {0xDBEE, 0x8D80},+    {0xDBEF, 0x8D89},+    {0xDBF0, 0x8DD8},+    {0xDBF1, 0x8DD3},+    {0xDBF2, 0x8DCD},+    {0xDBF3, 0x8DC7},+    {0xDBF4, 0x8DD6},+    {0xDBF5, 0x8DDC},+    {0xDBF6, 0x8DCF},+    {0xDBF7, 0x8DD5},+    {0xDBF8, 0x8DD9},+    {0xDBF9, 0x8DC8},+    {0xDBFA, 0x8DD7},+    {0xDBFB, 0x8DC5},+    {0xDBFC, 0x8EEF},+    {0xDBFD, 0x8EF7},+    {0xDBFE, 0x8EFA},+    {0xDC40, 0x8EF9},+    {0xDC41, 0x8EE6},+    {0xDC42, 0x8EEE},+    {0xDC43, 0x8EE5},+    {0xDC44, 0x8EF5},+    {0xDC45, 0x8EE7},+    {0xDC46, 0x8EE8},+    {0xDC47, 0x8EF6},+    {0xDC48, 0x8EEB},+    {0xDC49, 0x8EF1},+    {0xDC4A, 0x8EEC},+    {0xDC4B, 0x8EF4},+    {0xDC4C, 0x8EE9},+    {0xDC4D, 0x902D},+    {0xDC4E, 0x9034},+    {0xDC4F, 0x902F},+    {0xDC50, 0x9106},+    {0xDC51, 0x912C},+    {0xDC52, 0x9104},+    {0xDC53, 0x90FF},+    {0xDC54, 0x90FC},+    {0xDC55, 0x9108},+    {0xDC56, 0x90F9},+    {0xDC57, 0x90FB},+    {0xDC58, 0x9101},+    {0xDC59, 0x9100},+    {0xDC5A, 0x9107},+    {0xDC5B, 0x9105},+    {0xDC5C, 0x9103},+    {0xDC5D, 0x9161},+    {0xDC5E, 0x9164},+    {0xDC5F, 0x915F},+    {0xDC60, 0x9162},+    {0xDC61, 0x9160},+    {0xDC62, 0x9201},+    {0xDC63, 0x920A},+    {0xDC64, 0x9225},+    {0xDC65, 0x9203},+    {0xDC66, 0x921A},+    {0xDC67, 0x9226},+    {0xDC68, 0x920F},+    {0xDC69, 0x920C},+    {0xDC6A, 0x9200},+    {0xDC6B, 0x9212},+    {0xDC6C, 0x91FF},+    {0xDC6D, 0x91FD},+    {0xDC6E, 0x9206},+    {0xDC6F, 0x9204},+    {0xDC70, 0x9227},+    {0xDC71, 0x9202},+    {0xDC72, 0x921C},+    {0xDC73, 0x9224},+    {0xDC74, 0x9219},+    {0xDC75, 0x9217},+    {0xDC76, 0x9205},+    {0xDC77, 0x9216},+    {0xDC78, 0x957B},+    {0xDC79, 0x958D},+    {0xDC7A, 0x958C},+    {0xDC7B, 0x9590},+    {0xDC7C, 0x9687},+    {0xDC7D, 0x967E},+    {0xDC7E, 0x9688},+    {0xDCA1, 0x9689},+    {0xDCA2, 0x9683},+    {0xDCA3, 0x9680},+    {0xDCA4, 0x96C2},+    {0xDCA5, 0x96C8},+    {0xDCA6, 0x96C3},+    {0xDCA7, 0x96F1},+    {0xDCA8, 0x96F0},+    {0xDCA9, 0x976C},+    {0xDCAA, 0x9770},+    {0xDCAB, 0x976E},+    {0xDCAC, 0x9807},+    {0xDCAD, 0x98A9},+    {0xDCAE, 0x98EB},+    {0xDCAF, 0x9CE6},+    {0xDCB0, 0x9EF9},+    {0xDCB1, 0x4E83},+    {0xDCB2, 0x4E84},+    {0xDCB3, 0x4EB6},+    {0xDCB4, 0x50BD},+    {0xDCB5, 0x50BF},+    {0xDCB6, 0x50C6},+    {0xDCB7, 0x50AE},+    {0xDCB8, 0x50C4},+    {0xDCB9, 0x50CA},+    {0xDCBA, 0x50B4},+    {0xDCBB, 0x50C8},+    {0xDCBC, 0x50C2},+    {0xDCBD, 0x50B0},+    {0xDCBE, 0x50C1},+    {0xDCBF, 0x50BA},+    {0xDCC0, 0x50B1},+    {0xDCC1, 0x50CB},+    {0xDCC2, 0x50C9},+    {0xDCC3, 0x50B6},+    {0xDCC4, 0x50B8},+    {0xDCC5, 0x51D7},+    {0xDCC6, 0x527A},+    {0xDCC7, 0x5278},+    {0xDCC8, 0x527B},+    {0xDCC9, 0x527C},+    {0xDCCA, 0x55C3},+    {0xDCCB, 0x55DB},+    {0xDCCC, 0x55CC},+    {0xDCCD, 0x55D0},+    {0xDCCE, 0x55CB},+    {0xDCCF, 0x55CA},+    {0xDCD0, 0x55DD},+    {0xDCD1, 0x55C0},+    {0xDCD2, 0x55D4},+    {0xDCD3, 0x55C4},+    {0xDCD4, 0x55E9},+    {0xDCD5, 0x55BF},+    {0xDCD6, 0x55D2},+    {0xDCD7, 0x558D},+    {0xDCD8, 0x55CF},+    {0xDCD9, 0x55D5},+    {0xDCDA, 0x55E2},+    {0xDCDB, 0x55D6},+    {0xDCDC, 0x55C8},+    {0xDCDD, 0x55F2},+    {0xDCDE, 0x55CD},+    {0xDCDF, 0x55D9},+    {0xDCE0, 0x55C2},+    {0xDCE1, 0x5714},+    {0xDCE2, 0x5853},+    {0xDCE3, 0x5868},+    {0xDCE4, 0x5864},+    {0xDCE5, 0x584F},+    {0xDCE6, 0x584D},+    {0xDCE7, 0x5849},+    {0xDCE8, 0x586F},+    {0xDCE9, 0x5855},+    {0xDCEA, 0x584E},+    {0xDCEB, 0x585D},+    {0xDCEC, 0x5859},+    {0xDCED, 0x5865},+    {0xDCEE, 0x585B},+    {0xDCEF, 0x583D},+    {0xDCF0, 0x5863},+    {0xDCF1, 0x5871},+    {0xDCF2, 0x58FC},+    {0xDCF3, 0x5AC7},+    {0xDCF4, 0x5AC4},+    {0xDCF5, 0x5ACB},+    {0xDCF6, 0x5ABA},+    {0xDCF7, 0x5AB8},+    {0xDCF8, 0x5AB1},+    {0xDCF9, 0x5AB5},+    {0xDCFA, 0x5AB0},+    {0xDCFB, 0x5ABF},+    {0xDCFC, 0x5AC8},+    {0xDCFD, 0x5ABB},+    {0xDCFE, 0x5AC6},+    {0xDD40, 0x5AB7},+    {0xDD41, 0x5AC0},+    {0xDD42, 0x5ACA},+    {0xDD43, 0x5AB4},+    {0xDD44, 0x5AB6},+    {0xDD45, 0x5ACD},+    {0xDD46, 0x5AB9},+    {0xDD47, 0x5A90},+    {0xDD48, 0x5BD6},+    {0xDD49, 0x5BD8},+    {0xDD4A, 0x5BD9},+    {0xDD4B, 0x5C1F},+    {0xDD4C, 0x5C33},+    {0xDD4D, 0x5D71},+    {0xDD4E, 0x5D63},+    {0xDD4F, 0x5D4A},+    {0xDD50, 0x5D65},+    {0xDD51, 0x5D72},+    {0xDD52, 0x5D6C},+    {0xDD53, 0x5D5E},+    {0xDD54, 0x5D68},+    {0xDD55, 0x5D67},+    {0xDD56, 0x5D62},+    {0xDD57, 0x5DF0},+    {0xDD58, 0x5E4F},+    {0xDD59, 0x5E4E},+    {0xDD5A, 0x5E4A},+    {0xDD5B, 0x5E4D},+    {0xDD5C, 0x5E4B},+    {0xDD5D, 0x5EC5},+    {0xDD5E, 0x5ECC},+    {0xDD5F, 0x5EC6},+    {0xDD60, 0x5ECB},+    {0xDD61, 0x5EC7},+    {0xDD62, 0x5F40},+    {0xDD63, 0x5FAF},+    {0xDD64, 0x5FAD},+    {0xDD65, 0x60F7},+    {0xDD66, 0x6149},+    {0xDD67, 0x614A},+    {0xDD68, 0x612B},+    {0xDD69, 0x6145},+    {0xDD6A, 0x6136},+    {0xDD6B, 0x6132},+    {0xDD6C, 0x612E},+    {0xDD6D, 0x6146},+    {0xDD6E, 0x612F},+    {0xDD6F, 0x614F},+    {0xDD70, 0x6129},+    {0xDD71, 0x6140},+    {0xDD72, 0x6220},+    {0xDD73, 0x9168},+    {0xDD74, 0x6223},+    {0xDD75, 0x6225},+    {0xDD76, 0x6224},+    {0xDD77, 0x63C5},+    {0xDD78, 0x63F1},+    {0xDD79, 0x63EB},+    {0xDD7A, 0x6410},+    {0xDD7B, 0x6412},+    {0xDD7C, 0x6409},+    {0xDD7D, 0x6420},+    {0xDD7E, 0x6424},+    {0xDDA1, 0x6433},+    {0xDDA2, 0x6443},+    {0xDDA3, 0x641F},+    {0xDDA4, 0x6415},+    {0xDDA5, 0x6418},+    {0xDDA6, 0x6439},+    {0xDDA7, 0x6437},+    {0xDDA8, 0x6422},+    {0xDDA9, 0x6423},+    {0xDDAA, 0x640C},+    {0xDDAB, 0x6426},+    {0xDDAC, 0x6430},+    {0xDDAD, 0x6428},+    {0xDDAE, 0x6441},+    {0xDDAF, 0x6435},+    {0xDDB0, 0x642F},+    {0xDDB1, 0x640A},+    {0xDDB2, 0x641A},+    {0xDDB3, 0x6440},+    {0xDDB4, 0x6425},+    {0xDDB5, 0x6427},+    {0xDDB6, 0x640B},+    {0xDDB7, 0x63E7},+    {0xDDB8, 0x641B},+    {0xDDB9, 0x642E},+    {0xDDBA, 0x6421},+    {0xDDBB, 0x640E},+    {0xDDBC, 0x656F},+    {0xDDBD, 0x6592},+    {0xDDBE, 0x65D3},+    {0xDDBF, 0x6686},+    {0xDDC0, 0x668C},+    {0xDDC1, 0x6695},+    {0xDDC2, 0x6690},+    {0xDDC3, 0x668B},+    {0xDDC4, 0x668A},+    {0xDDC5, 0x6699},+    {0xDDC6, 0x6694},+    {0xDDC7, 0x6678},+    {0xDDC8, 0x6720},+    {0xDDC9, 0x6966},+    {0xDDCA, 0x695F},+    {0xDDCB, 0x6938},+    {0xDDCC, 0x694E},+    {0xDDCD, 0x6962},+    {0xDDCE, 0x6971},+    {0xDDCF, 0x693F},+    {0xDDD0, 0x6945},+    {0xDDD1, 0x696A},+    {0xDDD2, 0x6939},+    {0xDDD3, 0x6942},+    {0xDDD4, 0x6957},+    {0xDDD5, 0x6959},+    {0xDDD6, 0x697A},+    {0xDDD7, 0x6948},+    {0xDDD8, 0x6949},+    {0xDDD9, 0x6935},+    {0xDDDA, 0x696C},+    {0xDDDB, 0x6933},+    {0xDDDC, 0x693D},+    {0xDDDD, 0x6965},+    {0xDDDE, 0x68F0},+    {0xDDDF, 0x6978},+    {0xDDE0, 0x6934},+    {0xDDE1, 0x6969},+    {0xDDE2, 0x6940},+    {0xDDE3, 0x696F},+    {0xDDE4, 0x6944},+    {0xDDE5, 0x6976},+    {0xDDE6, 0x6958},+    {0xDDE7, 0x6941},+    {0xDDE8, 0x6974},+    {0xDDE9, 0x694C},+    {0xDDEA, 0x693B},+    {0xDDEB, 0x694B},+    {0xDDEC, 0x6937},+    {0xDDED, 0x695C},+    {0xDDEE, 0x694F},+    {0xDDEF, 0x6951},+    {0xDDF0, 0x6932},+    {0xDDF1, 0x6952},+    {0xDDF2, 0x692F},+    {0xDDF3, 0x697B},+    {0xDDF4, 0x693C},+    {0xDDF5, 0x6B46},+    {0xDDF6, 0x6B45},+    {0xDDF7, 0x6B43},+    {0xDDF8, 0x6B42},+    {0xDDF9, 0x6B48},+    {0xDDFA, 0x6B41},+    {0xDDFB, 0x6B9B},+    {0xDDFC, 0xFA0D},+    {0xDDFD, 0x6BFB},+    {0xDDFE, 0x6BFC},+    {0xDE40, 0x6BF9},+    {0xDE41, 0x6BF7},+    {0xDE42, 0x6BF8},+    {0xDE43, 0x6E9B},+    {0xDE44, 0x6ED6},+    {0xDE45, 0x6EC8},+    {0xDE46, 0x6E8F},+    {0xDE47, 0x6EC0},+    {0xDE48, 0x6E9F},+    {0xDE49, 0x6E93},+    {0xDE4A, 0x6E94},+    {0xDE4B, 0x6EA0},+    {0xDE4C, 0x6EB1},+    {0xDE4D, 0x6EB9},+    {0xDE4E, 0x6EC6},+    {0xDE4F, 0x6ED2},+    {0xDE50, 0x6EBD},+    {0xDE51, 0x6EC1},+    {0xDE52, 0x6E9E},+    {0xDE53, 0x6EC9},+    {0xDE54, 0x6EB7},+    {0xDE55, 0x6EB0},+    {0xDE56, 0x6ECD},+    {0xDE57, 0x6EA6},+    {0xDE58, 0x6ECF},+    {0xDE59, 0x6EB2},+    {0xDE5A, 0x6EBE},+    {0xDE5B, 0x6EC3},+    {0xDE5C, 0x6EDC},+    {0xDE5D, 0x6ED8},+    {0xDE5E, 0x6E99},+    {0xDE5F, 0x6E92},+    {0xDE60, 0x6E8E},+    {0xDE61, 0x6E8D},+    {0xDE62, 0x6EA4},+    {0xDE63, 0x6EA1},+    {0xDE64, 0x6EBF},+    {0xDE65, 0x6EB3},+    {0xDE66, 0x6ED0},+    {0xDE67, 0x6ECA},+    {0xDE68, 0x6E97},+    {0xDE69, 0x6EAE},+    {0xDE6A, 0x6EA3},+    {0xDE6B, 0x7147},+    {0xDE6C, 0x7154},+    {0xDE6D, 0x7152},+    {0xDE6E, 0x7163},+    {0xDE6F, 0x7160},+    {0xDE70, 0x7141},+    {0xDE71, 0x715D},+    {0xDE72, 0x7162},+    {0xDE73, 0x7172},+    {0xDE74, 0x7178},+    {0xDE75, 0x716A},+    {0xDE76, 0x7161},+    {0xDE77, 0x7142},+    {0xDE78, 0x7158},+    {0xDE79, 0x7143},+    {0xDE7A, 0x714B},+    {0xDE7B, 0x7170},+    {0xDE7C, 0x715F},+    {0xDE7D, 0x7150},+    {0xDE7E, 0x7153},+    {0xDEA1, 0x7144},+    {0xDEA2, 0x714D},+    {0xDEA3, 0x715A},+    {0xDEA4, 0x724F},+    {0xDEA5, 0x728D},+    {0xDEA6, 0x728C},+    {0xDEA7, 0x7291},+    {0xDEA8, 0x7290},+    {0xDEA9, 0x728E},+    {0xDEAA, 0x733C},+    {0xDEAB, 0x7342},+    {0xDEAC, 0x733B},+    {0xDEAD, 0x733A},+    {0xDEAE, 0x7340},+    {0xDEAF, 0x734A},+    {0xDEB0, 0x7349},+    {0xDEB1, 0x7444},+    {0xDEB2, 0x744A},+    {0xDEB3, 0x744B},+    {0xDEB4, 0x7452},+    {0xDEB5, 0x7451},+    {0xDEB6, 0x7457},+    {0xDEB7, 0x7440},+    {0xDEB8, 0x744F},+    {0xDEB9, 0x7450},+    {0xDEBA, 0x744E},+    {0xDEBB, 0x7442},+    {0xDEBC, 0x7446},+    {0xDEBD, 0x744D},+    {0xDEBE, 0x7454},+    {0xDEBF, 0x74E1},+    {0xDEC0, 0x74FF},+    {0xDEC1, 0x74FE},+    {0xDEC2, 0x74FD},+    {0xDEC3, 0x751D},+    {0xDEC4, 0x7579},+    {0xDEC5, 0x7577},+    {0xDEC6, 0x6983},+    {0xDEC7, 0x75EF},+    {0xDEC8, 0x760F},+    {0xDEC9, 0x7603},+    {0xDECA, 0x75F7},+    {0xDECB, 0x75FE},+    {0xDECC, 0x75FC},+    {0xDECD, 0x75F9},+    {0xDECE, 0x75F8},+    {0xDECF, 0x7610},+    {0xDED0, 0x75FB},+    {0xDED1, 0x75F6},+    {0xDED2, 0x75ED},+    {0xDED3, 0x75F5},+    {0xDED4, 0x75FD},+    {0xDED5, 0x7699},+    {0xDED6, 0x76B5},+    {0xDED7, 0x76DD},+    {0xDED8, 0x7755},+    {0xDED9, 0x775F},+    {0xDEDA, 0x7760},+    {0xDEDB, 0x7752},+    {0xDEDC, 0x7756},+    {0xDEDD, 0x775A},+    {0xDEDE, 0x7769},+    {0xDEDF, 0x7767},+    {0xDEE0, 0x7754},+    {0xDEE1, 0x7759},+    {0xDEE2, 0x776D},+    {0xDEE3, 0x77E0},+    {0xDEE4, 0x7887},+    {0xDEE5, 0x789A},+    {0xDEE6, 0x7894},+    {0xDEE7, 0x788F},+    {0xDEE8, 0x7884},+    {0xDEE9, 0x7895},+    {0xDEEA, 0x7885},+    {0xDEEB, 0x7886},+    {0xDEEC, 0x78A1},+    {0xDEED, 0x7883},+    {0xDEEE, 0x7879},+    {0xDEEF, 0x7899},+    {0xDEF0, 0x7880},+    {0xDEF1, 0x7896},+    {0xDEF2, 0x787B},+    {0xDEF3, 0x797C},+    {0xDEF4, 0x7982},+    {0xDEF5, 0x797D},+    {0xDEF6, 0x7979},+    {0xDEF7, 0x7A11},+    {0xDEF8, 0x7A18},+    {0xDEF9, 0x7A19},+    {0xDEFA, 0x7A12},+    {0xDEFB, 0x7A17},+    {0xDEFC, 0x7A15},+    {0xDEFD, 0x7A22},+    {0xDEFE, 0x7A13},+    {0xDF40, 0x7A1B},+    {0xDF41, 0x7A10},+    {0xDF42, 0x7AA3},+    {0xDF43, 0x7AA2},+    {0xDF44, 0x7A9E},+    {0xDF45, 0x7AEB},+    {0xDF46, 0x7B66},+    {0xDF47, 0x7B64},+    {0xDF48, 0x7B6D},+    {0xDF49, 0x7B74},+    {0xDF4A, 0x7B69},+    {0xDF4B, 0x7B72},+    {0xDF4C, 0x7B65},+    {0xDF4D, 0x7B73},+    {0xDF4E, 0x7B71},+    {0xDF4F, 0x7B70},+    {0xDF50, 0x7B61},+    {0xDF51, 0x7B78},+    {0xDF52, 0x7B76},+    {0xDF53, 0x7B63},+    {0xDF54, 0x7CB2},+    {0xDF55, 0x7CB4},+    {0xDF56, 0x7CAF},+    {0xDF57, 0x7D88},+    {0xDF58, 0x7D86},+    {0xDF59, 0x7D80},+    {0xDF5A, 0x7D8D},+    {0xDF5B, 0x7D7F},+    {0xDF5C, 0x7D85},+    {0xDF5D, 0x7D7A},+    {0xDF5E, 0x7D8E},+    {0xDF5F, 0x7D7B},+    {0xDF60, 0x7D83},+    {0xDF61, 0x7D7C},+    {0xDF62, 0x7D8C},+    {0xDF63, 0x7D94},+    {0xDF64, 0x7D84},+    {0xDF65, 0x7D7D},+    {0xDF66, 0x7D92},+    {0xDF67, 0x7F6D},+    {0xDF68, 0x7F6B},+    {0xDF69, 0x7F67},+    {0xDF6A, 0x7F68},+    {0xDF6B, 0x7F6C},+    {0xDF6C, 0x7FA6},+    {0xDF6D, 0x7FA5},+    {0xDF6E, 0x7FA7},+    {0xDF6F, 0x7FDB},+    {0xDF70, 0x7FDC},+    {0xDF71, 0x8021},+    {0xDF72, 0x8164},+    {0xDF73, 0x8160},+    {0xDF74, 0x8177},+    {0xDF75, 0x815C},+    {0xDF76, 0x8169},+    {0xDF77, 0x815B},+    {0xDF78, 0x8162},+    {0xDF79, 0x8172},+    {0xDF7A, 0x6721},+    {0xDF7B, 0x815E},+    {0xDF7C, 0x8176},+    {0xDF7D, 0x8167},+    {0xDF7E, 0x816F},+    {0xDFA1, 0x8144},+    {0xDFA2, 0x8161},+    {0xDFA3, 0x821D},+    {0xDFA4, 0x8249},+    {0xDFA5, 0x8244},+    {0xDFA6, 0x8240},+    {0xDFA7, 0x8242},+    {0xDFA8, 0x8245},+    {0xDFA9, 0x84F1},+    {0xDFAA, 0x843F},+    {0xDFAB, 0x8456},+    {0xDFAC, 0x8476},+    {0xDFAD, 0x8479},+    {0xDFAE, 0x848F},+    {0xDFAF, 0x848D},+    {0xDFB0, 0x8465},+    {0xDFB1, 0x8451},+    {0xDFB2, 0x8440},+    {0xDFB3, 0x8486},+    {0xDFB4, 0x8467},+    {0xDFB5, 0x8430},+    {0xDFB6, 0x844D},+    {0xDFB7, 0x847D},+    {0xDFB8, 0x845A},+    {0xDFB9, 0x8459},+    {0xDFBA, 0x8474},+    {0xDFBB, 0x8473},+    {0xDFBC, 0x845D},+    {0xDFBD, 0x8507},+    {0xDFBE, 0x845E},+    {0xDFBF, 0x8437},+    {0xDFC0, 0x843A},+    {0xDFC1, 0x8434},+    {0xDFC2, 0x847A},+    {0xDFC3, 0x8443},+    {0xDFC4, 0x8478},+    {0xDFC5, 0x8432},+    {0xDFC6, 0x8445},+    {0xDFC7, 0x8429},+    {0xDFC8, 0x83D9},+    {0xDFC9, 0x844B},+    {0xDFCA, 0x842F},+    {0xDFCB, 0x8442},+    {0xDFCC, 0x842D},+    {0xDFCD, 0x845F},+    {0xDFCE, 0x8470},+    {0xDFCF, 0x8439},+    {0xDFD0, 0x844E},+    {0xDFD1, 0x844C},+    {0xDFD2, 0x8452},+    {0xDFD3, 0x846F},+    {0xDFD4, 0x84C5},+    {0xDFD5, 0x848E},+    {0xDFD6, 0x843B},+    {0xDFD7, 0x8447},+    {0xDFD8, 0x8436},+    {0xDFD9, 0x8433},+    {0xDFDA, 0x8468},+    {0xDFDB, 0x847E},+    {0xDFDC, 0x8444},+    {0xDFDD, 0x842B},+    {0xDFDE, 0x8460},+    {0xDFDF, 0x8454},+    {0xDFE0, 0x846E},+    {0xDFE1, 0x8450},+    {0xDFE2, 0x870B},+    {0xDFE3, 0x8704},+    {0xDFE4, 0x86F7},+    {0xDFE5, 0x870C},+    {0xDFE6, 0x86FA},+    {0xDFE7, 0x86D6},+    {0xDFE8, 0x86F5},+    {0xDFE9, 0x874D},+    {0xDFEA, 0x86F8},+    {0xDFEB, 0x870E},+    {0xDFEC, 0x8709},+    {0xDFED, 0x8701},+    {0xDFEE, 0x86F6},+    {0xDFEF, 0x870D},+    {0xDFF0, 0x8705},+    {0xDFF1, 0x88D6},+    {0xDFF2, 0x88CB},+    {0xDFF3, 0x88CD},+    {0xDFF4, 0x88CE},+    {0xDFF5, 0x88DE},+    {0xDFF6, 0x88DB},+    {0xDFF7, 0x88DA},+    {0xDFF8, 0x88CC},+    {0xDFF9, 0x88D0},+    {0xDFFA, 0x8985},+    {0xDFFB, 0x899B},+    {0xDFFC, 0x89DF},+    {0xDFFD, 0x89E5},+    {0xDFFE, 0x89E4},+    {0xE040, 0x89E1},+    {0xE041, 0x89E0},+    {0xE042, 0x89E2},+    {0xE043, 0x89DC},+    {0xE044, 0x89E6},+    {0xE045, 0x8A76},+    {0xE046, 0x8A86},+    {0xE047, 0x8A7F},+    {0xE048, 0x8A61},+    {0xE049, 0x8A3F},+    {0xE04A, 0x8A77},+    {0xE04B, 0x8A82},+    {0xE04C, 0x8A84},+    {0xE04D, 0x8A75},+    {0xE04E, 0x8A83},+    {0xE04F, 0x8A81},+    {0xE050, 0x8A74},+    {0xE051, 0x8A7A},+    {0xE052, 0x8C3C},+    {0xE053, 0x8C4B},+    {0xE054, 0x8C4A},+    {0xE055, 0x8C65},+    {0xE056, 0x8C64},+    {0xE057, 0x8C66},+    {0xE058, 0x8C86},+    {0xE059, 0x8C84},+    {0xE05A, 0x8C85},+    {0xE05B, 0x8CCC},+    {0xE05C, 0x8D68},+    {0xE05D, 0x8D69},+    {0xE05E, 0x8D91},+    {0xE05F, 0x8D8C},+    {0xE060, 0x8D8E},+    {0xE061, 0x8D8F},+    {0xE062, 0x8D8D},+    {0xE063, 0x8D93},+    {0xE064, 0x8D94},+    {0xE065, 0x8D90},+    {0xE066, 0x8D92},+    {0xE067, 0x8DF0},+    {0xE068, 0x8DE0},+    {0xE069, 0x8DEC},+    {0xE06A, 0x8DF1},+    {0xE06B, 0x8DEE},+    {0xE06C, 0x8DD0},+    {0xE06D, 0x8DE9},+    {0xE06E, 0x8DE3},+    {0xE06F, 0x8DE2},+    {0xE070, 0x8DE7},+    {0xE071, 0x8DF2},+    {0xE072, 0x8DEB},+    {0xE073, 0x8DF4},+    {0xE074, 0x8F06},+    {0xE075, 0x8EFF},+    {0xE076, 0x8F01},+    {0xE077, 0x8F00},+    {0xE078, 0x8F05},+    {0xE079, 0x8F07},+    {0xE07A, 0x8F08},+    {0xE07B, 0x8F02},+    {0xE07C, 0x8F0B},+    {0xE07D, 0x9052},+    {0xE07E, 0x903F},+    {0xE0A1, 0x9044},+    {0xE0A2, 0x9049},+    {0xE0A3, 0x903D},+    {0xE0A4, 0x9110},+    {0xE0A5, 0x910D},+    {0xE0A6, 0x910F},+    {0xE0A7, 0x9111},+    {0xE0A8, 0x9116},+    {0xE0A9, 0x9114},+    {0xE0AA, 0x910B},+    {0xE0AB, 0x910E},+    {0xE0AC, 0x916E},+    {0xE0AD, 0x916F},+    {0xE0AE, 0x9248},+    {0xE0AF, 0x9252},+    {0xE0B0, 0x9230},+    {0xE0B1, 0x923A},+    {0xE0B2, 0x9266},+    {0xE0B3, 0x9233},+    {0xE0B4, 0x9265},+    {0xE0B5, 0x925E},+    {0xE0B6, 0x9283},+    {0xE0B7, 0x922E},+    {0xE0B8, 0x924A},+    {0xE0B9, 0x9246},+    {0xE0BA, 0x926D},+    {0xE0BB, 0x926C},+    {0xE0BC, 0x924F},+    {0xE0BD, 0x9260},+    {0xE0BE, 0x9267},+    {0xE0BF, 0x926F},+    {0xE0C0, 0x9236},+    {0xE0C1, 0x9261},+    {0xE0C2, 0x9270},+    {0xE0C3, 0x9231},+    {0xE0C4, 0x9254},+    {0xE0C5, 0x9263},+    {0xE0C6, 0x9250},+    {0xE0C7, 0x9272},+    {0xE0C8, 0x924E},+    {0xE0C9, 0x9253},+    {0xE0CA, 0x924C},+    {0xE0CB, 0x9256},+    {0xE0CC, 0x9232},+    {0xE0CD, 0x959F},+    {0xE0CE, 0x959C},+    {0xE0CF, 0x959E},+    {0xE0D0, 0x959B},+    {0xE0D1, 0x9692},+    {0xE0D2, 0x9693},+    {0xE0D3, 0x9691},+    {0xE0D4, 0x9697},+    {0xE0D5, 0x96CE},+    {0xE0D6, 0x96FA},+    {0xE0D7, 0x96FD},+    {0xE0D8, 0x96F8},+    {0xE0D9, 0x96F5},+    {0xE0DA, 0x9773},+    {0xE0DB, 0x9777},+    {0xE0DC, 0x9778},+    {0xE0DD, 0x9772},+    {0xE0DE, 0x980F},+    {0xE0DF, 0x980D},+    {0xE0E0, 0x980E},+    {0xE0E1, 0x98AC},+    {0xE0E2, 0x98F6},+    {0xE0E3, 0x98F9},+    {0xE0E4, 0x99AF},+    {0xE0E5, 0x99B2},+    {0xE0E6, 0x99B0},+    {0xE0E7, 0x99B5},+    {0xE0E8, 0x9AAD},+    {0xE0E9, 0x9AAB},+    {0xE0EA, 0x9B5B},+    {0xE0EB, 0x9CEA},+    {0xE0EC, 0x9CED},+    {0xE0ED, 0x9CE7},+    {0xE0EE, 0x9E80},+    {0xE0EF, 0x9EFD},+    {0xE0F0, 0x50E6},+    {0xE0F1, 0x50D4},+    {0xE0F2, 0x50D7},+    {0xE0F3, 0x50E8},+    {0xE0F4, 0x50F3},+    {0xE0F5, 0x50DB},+    {0xE0F6, 0x50EA},+    {0xE0F7, 0x50DD},+    {0xE0F8, 0x50E4},+    {0xE0F9, 0x50D3},+    {0xE0FA, 0x50EC},+    {0xE0FB, 0x50F0},+    {0xE0FC, 0x50EF},+    {0xE0FD, 0x50E3},+    {0xE0FE, 0x50E0},+    {0xE140, 0x51D8},+    {0xE141, 0x5280},+    {0xE142, 0x5281},+    {0xE143, 0x52E9},+    {0xE144, 0x52EB},+    {0xE145, 0x5330},+    {0xE146, 0x53AC},+    {0xE147, 0x5627},+    {0xE148, 0x5615},+    {0xE149, 0x560C},+    {0xE14A, 0x5612},+    {0xE14B, 0x55FC},+    {0xE14C, 0x560F},+    {0xE14D, 0x561C},+    {0xE14E, 0x5601},+    {0xE14F, 0x5613},+    {0xE150, 0x5602},+    {0xE151, 0x55FA},+    {0xE152, 0x561D},+    {0xE153, 0x5604},+    {0xE154, 0x55FF},+    {0xE155, 0x55F9},+    {0xE156, 0x5889},+    {0xE157, 0x587C},+    {0xE158, 0x5890},+    {0xE159, 0x5898},+    {0xE15A, 0x5886},+    {0xE15B, 0x5881},+    {0xE15C, 0x587F},+    {0xE15D, 0x5874},+    {0xE15E, 0x588B},+    {0xE15F, 0x587A},+    {0xE160, 0x5887},+    {0xE161, 0x5891},+    {0xE162, 0x588E},+    {0xE163, 0x5876},+    {0xE164, 0x5882},+    {0xE165, 0x5888},+    {0xE166, 0x587B},+    {0xE167, 0x5894},+    {0xE168, 0x588F},+    {0xE169, 0x58FE},+    {0xE16A, 0x596B},+    {0xE16B, 0x5ADC},+    {0xE16C, 0x5AEE},+    {0xE16D, 0x5AE5},+    {0xE16E, 0x5AD5},+    {0xE16F, 0x5AEA},+    {0xE170, 0x5ADA},+    {0xE171, 0x5AED},+    {0xE172, 0x5AEB},+    {0xE173, 0x5AF3},+    {0xE174, 0x5AE2},+    {0xE175, 0x5AE0},+    {0xE176, 0x5ADB},+    {0xE177, 0x5AEC},+    {0xE178, 0x5ADE},+    {0xE179, 0x5ADD},+    {0xE17A, 0x5AD9},+    {0xE17B, 0x5AE8},+    {0xE17C, 0x5ADF},+    {0xE17D, 0x5B77},+    {0xE17E, 0x5BE0},+    {0xE1A1, 0x5BE3},+    {0xE1A2, 0x5C63},+    {0xE1A3, 0x5D82},+    {0xE1A4, 0x5D80},+    {0xE1A5, 0x5D7D},+    {0xE1A6, 0x5D86},+    {0xE1A7, 0x5D7A},+    {0xE1A8, 0x5D81},+    {0xE1A9, 0x5D77},+    {0xE1AA, 0x5D8A},+    {0xE1AB, 0x5D89},+    {0xE1AC, 0x5D88},+    {0xE1AD, 0x5D7E},+    {0xE1AE, 0x5D7C},+    {0xE1AF, 0x5D8D},+    {0xE1B0, 0x5D79},+    {0xE1B1, 0x5D7F},+    {0xE1B2, 0x5E58},+    {0xE1B3, 0x5E59},+    {0xE1B4, 0x5E53},+    {0xE1B5, 0x5ED8},+    {0xE1B6, 0x5ED1},+    {0xE1B7, 0x5ED7},+    {0xE1B8, 0x5ECE},+    {0xE1B9, 0x5EDC},+    {0xE1BA, 0x5ED5},+    {0xE1BB, 0x5ED9},+    {0xE1BC, 0x5ED2},+    {0xE1BD, 0x5ED4},+    {0xE1BE, 0x5F44},+    {0xE1BF, 0x5F43},+    {0xE1C0, 0x5F6F},+    {0xE1C1, 0x5FB6},+    {0xE1C2, 0x612C},+    {0xE1C3, 0x6128},+    {0xE1C4, 0x6141},+    {0xE1C5, 0x615E},+    {0xE1C6, 0x6171},+    {0xE1C7, 0x6173},+    {0xE1C8, 0x6152},+    {0xE1C9, 0x6153},+    {0xE1CA, 0x6172},+    {0xE1CB, 0x616C},+    {0xE1CC, 0x6180},+    {0xE1CD, 0x6174},+    {0xE1CE, 0x6154},+    {0xE1CF, 0x617A},+    {0xE1D0, 0x615B},+    {0xE1D1, 0x6165},+    {0xE1D2, 0x613B},+    {0xE1D3, 0x616A},+    {0xE1D4, 0x6161},+    {0xE1D5, 0x6156},+    {0xE1D6, 0x6229},+    {0xE1D7, 0x6227},+    {0xE1D8, 0x622B},+    {0xE1D9, 0x642B},+    {0xE1DA, 0x644D},+    {0xE1DB, 0x645B},+    {0xE1DC, 0x645D},+    {0xE1DD, 0x6474},+    {0xE1DE, 0x6476},+    {0xE1DF, 0x6472},+    {0xE1E0, 0x6473},+    {0xE1E1, 0x647D},+    {0xE1E2, 0x6475},+    {0xE1E3, 0x6466},+    {0xE1E4, 0x64A6},+    {0xE1E5, 0x644E},+    {0xE1E6, 0x6482},+    {0xE1E7, 0x645E},+    {0xE1E8, 0x645C},+    {0xE1E9, 0x644B},+    {0xE1EA, 0x6453},+    {0xE1EB, 0x6460},+    {0xE1EC, 0x6450},+    {0xE1ED, 0x647F},+    {0xE1EE, 0x643F},+    {0xE1EF, 0x646C},+    {0xE1F0, 0x646B},+    {0xE1F1, 0x6459},+    {0xE1F2, 0x6465},+    {0xE1F3, 0x6477},+    {0xE1F4, 0x6573},+    {0xE1F5, 0x65A0},+    {0xE1F6, 0x66A1},+    {0xE1F7, 0x66A0},+    {0xE1F8, 0x669F},+    {0xE1F9, 0x6705},+    {0xE1FA, 0x6704},+    {0xE1FB, 0x6722},+    {0xE1FC, 0x69B1},+    {0xE1FD, 0x69B6},+    {0xE1FE, 0x69C9},+    {0xE240, 0x69A0},+    {0xE241, 0x69CE},+    {0xE242, 0x6996},+    {0xE243, 0x69B0},+    {0xE244, 0x69AC},+    {0xE245, 0x69BC},+    {0xE246, 0x6991},+    {0xE247, 0x6999},+    {0xE248, 0x698E},+    {0xE249, 0x69A7},+    {0xE24A, 0x698D},+    {0xE24B, 0x69A9},+    {0xE24C, 0x69BE},+    {0xE24D, 0x69AF},+    {0xE24E, 0x69BF},+    {0xE24F, 0x69C4},+    {0xE250, 0x69BD},+    {0xE251, 0x69A4},+    {0xE252, 0x69D4},+    {0xE253, 0x69B9},+    {0xE254, 0x69CA},+    {0xE255, 0x699A},+    {0xE256, 0x69CF},+    {0xE257, 0x69B3},+    {0xE258, 0x6993},+    {0xE259, 0x69AA},+    {0xE25A, 0x69A1},+    {0xE25B, 0x699E},+    {0xE25C, 0x69D9},+    {0xE25D, 0x6997},+    {0xE25E, 0x6990},+    {0xE25F, 0x69C2},+    {0xE260, 0x69B5},+    {0xE261, 0x69A5},+    {0xE262, 0x69C6},+    {0xE263, 0x6B4A},+    {0xE264, 0x6B4D},+    {0xE265, 0x6B4B},+    {0xE266, 0x6B9E},+    {0xE267, 0x6B9F},+    {0xE268, 0x6BA0},+    {0xE269, 0x6BC3},+    {0xE26A, 0x6BC4},+    {0xE26B, 0x6BFE},+    {0xE26C, 0x6ECE},+    {0xE26D, 0x6EF5},+    {0xE26E, 0x6EF1},+    {0xE26F, 0x6F03},+    {0xE270, 0x6F25},+    {0xE271, 0x6EF8},+    {0xE272, 0x6F37},+    {0xE273, 0x6EFB},+    {0xE274, 0x6F2E},+    {0xE275, 0x6F09},+    {0xE276, 0x6F4E},+    {0xE277, 0x6F19},+    {0xE278, 0x6F1A},+    {0xE279, 0x6F27},+    {0xE27A, 0x6F18},+    {0xE27B, 0x6F3B},+    {0xE27C, 0x6F12},+    {0xE27D, 0x6EED},+    {0xE27E, 0x6F0A},+    {0xE2A1, 0x6F36},+    {0xE2A2, 0x6F73},+    {0xE2A3, 0x6EF9},+    {0xE2A4, 0x6EEE},+    {0xE2A5, 0x6F2D},+    {0xE2A6, 0x6F40},+    {0xE2A7, 0x6F30},+    {0xE2A8, 0x6F3C},+    {0xE2A9, 0x6F35},+    {0xE2AA, 0x6EEB},+    {0xE2AB, 0x6F07},+    {0xE2AC, 0x6F0E},+    {0xE2AD, 0x6F43},+    {0xE2AE, 0x6F05},+    {0xE2AF, 0x6EFD},+    {0xE2B0, 0x6EF6},+    {0xE2B1, 0x6F39},+    {0xE2B2, 0x6F1C},+    {0xE2B3, 0x6EFC},+    {0xE2B4, 0x6F3A},+    {0xE2B5, 0x6F1F},+    {0xE2B6, 0x6F0D},+    {0xE2B7, 0x6F1E},+    {0xE2B8, 0x6F08},+    {0xE2B9, 0x6F21},+    {0xE2BA, 0x7187},+    {0xE2BB, 0x7190},+    {0xE2BC, 0x7189},+    {0xE2BD, 0x7180},+    {0xE2BE, 0x7185},+    {0xE2BF, 0x7182},+    {0xE2C0, 0x718F},+    {0xE2C1, 0x717B},+    {0xE2C2, 0x7186},+    {0xE2C3, 0x7181},+    {0xE2C4, 0x7197},+    {0xE2C5, 0x7244},+    {0xE2C6, 0x7253},+    {0xE2C7, 0x7297},+    {0xE2C8, 0x7295},+    {0xE2C9, 0x7293},+    {0xE2CA, 0x7343},+    {0xE2CB, 0x734D},+    {0xE2CC, 0x7351},+    {0xE2CD, 0x734C},+    {0xE2CE, 0x7462},+    {0xE2CF, 0x7473},+    {0xE2D0, 0x7471},+    {0xE2D1, 0x7475},+    {0xE2D2, 0x7472},+    {0xE2D3, 0x7467},+    {0xE2D4, 0x746E},+    {0xE2D5, 0x7500},+    {0xE2D6, 0x7502},+    {0xE2D7, 0x7503},+    {0xE2D8, 0x757D},+    {0xE2D9, 0x7590},+    {0xE2DA, 0x7616},+    {0xE2DB, 0x7608},+    {0xE2DC, 0x760C},+    {0xE2DD, 0x7615},+    {0xE2DE, 0x7611},+    {0xE2DF, 0x760A},+    {0xE2E0, 0x7614},+    {0xE2E1, 0x76B8},+    {0xE2E2, 0x7781},+    {0xE2E3, 0x777C},+    {0xE2E4, 0x7785},+    {0xE2E5, 0x7782},+    {0xE2E6, 0x776E},+    {0xE2E7, 0x7780},+    {0xE2E8, 0x776F},+    {0xE2E9, 0x777E},+    {0xE2EA, 0x7783},+    {0xE2EB, 0x78B2},+    {0xE2EC, 0x78AA},+    {0xE2ED, 0x78B4},+    {0xE2EE, 0x78AD},+    {0xE2EF, 0x78A8},+    {0xE2F0, 0x787E},+    {0xE2F1, 0x78AB},+    {0xE2F2, 0x789E},+    {0xE2F3, 0x78A5},+    {0xE2F4, 0x78A0},+    {0xE2F5, 0x78AC},+    {0xE2F6, 0x78A2},+    {0xE2F7, 0x78A4},+    {0xE2F8, 0x7998},+    {0xE2F9, 0x798A},+    {0xE2FA, 0x798B},+    {0xE2FB, 0x7996},+    {0xE2FC, 0x7995},+    {0xE2FD, 0x7994},+    {0xE2FE, 0x7993},+    {0xE340, 0x7997},+    {0xE341, 0x7988},+    {0xE342, 0x7992},+    {0xE343, 0x7990},+    {0xE344, 0x7A2B},+    {0xE345, 0x7A4A},+    {0xE346, 0x7A30},+    {0xE347, 0x7A2F},+    {0xE348, 0x7A28},+    {0xE349, 0x7A26},+    {0xE34A, 0x7AA8},+    {0xE34B, 0x7AAB},+    {0xE34C, 0x7AAC},+    {0xE34D, 0x7AEE},+    {0xE34E, 0x7B88},+    {0xE34F, 0x7B9C},+    {0xE350, 0x7B8A},+    {0xE351, 0x7B91},+    {0xE352, 0x7B90},+    {0xE353, 0x7B96},+    {0xE354, 0x7B8D},+    {0xE355, 0x7B8C},+    {0xE356, 0x7B9B},+    {0xE357, 0x7B8E},+    {0xE358, 0x7B85},+    {0xE359, 0x7B98},+    {0xE35A, 0x5284},+    {0xE35B, 0x7B99},+    {0xE35C, 0x7BA4},+    {0xE35D, 0x7B82},+    {0xE35E, 0x7CBB},+    {0xE35F, 0x7CBF},+    {0xE360, 0x7CBC},+    {0xE361, 0x7CBA},+    {0xE362, 0x7DA7},+    {0xE363, 0x7DB7},+    {0xE364, 0x7DC2},+    {0xE365, 0x7DA3},+    {0xE366, 0x7DAA},+    {0xE367, 0x7DC1},+    {0xE368, 0x7DC0},+    {0xE369, 0x7DC5},+    {0xE36A, 0x7D9D},+    {0xE36B, 0x7DCE},+    {0xE36C, 0x7DC4},+    {0xE36D, 0x7DC6},+    {0xE36E, 0x7DCB},+    {0xE36F, 0x7DCC},+    {0xE370, 0x7DAF},+    {0xE371, 0x7DB9},+    {0xE372, 0x7D96},+    {0xE373, 0x7DBC},+    {0xE374, 0x7D9F},+    {0xE375, 0x7DA6},+    {0xE376, 0x7DAE},+    {0xE377, 0x7DA9},+    {0xE378, 0x7DA1},+    {0xE379, 0x7DC9},+    {0xE37A, 0x7F73},+    {0xE37B, 0x7FE2},+    {0xE37C, 0x7FE3},+    {0xE37D, 0x7FE5},+    {0xE37E, 0x7FDE},+    {0xE3A1, 0x8024},+    {0xE3A2, 0x805D},+    {0xE3A3, 0x805C},+    {0xE3A4, 0x8189},+    {0xE3A5, 0x8186},+    {0xE3A6, 0x8183},+    {0xE3A7, 0x8187},+    {0xE3A8, 0x818D},+    {0xE3A9, 0x818C},+    {0xE3AA, 0x818B},+    {0xE3AB, 0x8215},+    {0xE3AC, 0x8497},+    {0xE3AD, 0x84A4},+    {0xE3AE, 0x84A1},+    {0xE3AF, 0x849F},+    {0xE3B0, 0x84BA},+    {0xE3B1, 0x84CE},+    {0xE3B2, 0x84C2},+    {0xE3B3, 0x84AC},+    {0xE3B4, 0x84AE},+    {0xE3B5, 0x84AB},+    {0xE3B6, 0x84B9},+    {0xE3B7, 0x84B4},+    {0xE3B8, 0x84C1},+    {0xE3B9, 0x84CD},+    {0xE3BA, 0x84AA},+    {0xE3BB, 0x849A},+    {0xE3BC, 0x84B1},+    {0xE3BD, 0x84D0},+    {0xE3BE, 0x849D},+    {0xE3BF, 0x84A7},+    {0xE3C0, 0x84BB},+    {0xE3C1, 0x84A2},+    {0xE3C2, 0x8494},+    {0xE3C3, 0x84C7},+    {0xE3C4, 0x84CC},+    {0xE3C5, 0x849B},+    {0xE3C6, 0x84A9},+    {0xE3C7, 0x84AF},+    {0xE3C8, 0x84A8},+    {0xE3C9, 0x84D6},+    {0xE3CA, 0x8498},+    {0xE3CB, 0x84B6},+    {0xE3CC, 0x84CF},+    {0xE3CD, 0x84A0},+    {0xE3CE, 0x84D7},+    {0xE3CF, 0x84D4},+    {0xE3D0, 0x84D2},+    {0xE3D1, 0x84DB},+    {0xE3D2, 0x84B0},+    {0xE3D3, 0x8491},+    {0xE3D4, 0x8661},+    {0xE3D5, 0x8733},+    {0xE3D6, 0x8723},+    {0xE3D7, 0x8728},+    {0xE3D8, 0x876B},+    {0xE3D9, 0x8740},+    {0xE3DA, 0x872E},+    {0xE3DB, 0x871E},+    {0xE3DC, 0x8721},+    {0xE3DD, 0x8719},+    {0xE3DE, 0x871B},+    {0xE3DF, 0x8743},+    {0xE3E0, 0x872C},+    {0xE3E1, 0x8741},+    {0xE3E2, 0x873E},+    {0xE3E3, 0x8746},+    {0xE3E4, 0x8720},+    {0xE3E5, 0x8732},+    {0xE3E6, 0x872A},+    {0xE3E7, 0x872D},+    {0xE3E8, 0x873C},+    {0xE3E9, 0x8712},+    {0xE3EA, 0x873A},+    {0xE3EB, 0x8731},+    {0xE3EC, 0x8735},+    {0xE3ED, 0x8742},+    {0xE3EE, 0x8726},+    {0xE3EF, 0x8727},+    {0xE3F0, 0x8738},+    {0xE3F1, 0x8724},+    {0xE3F2, 0x871A},+    {0xE3F3, 0x8730},+    {0xE3F4, 0x8711},+    {0xE3F5, 0x88F7},+    {0xE3F6, 0x88E7},+    {0xE3F7, 0x88F1},+    {0xE3F8, 0x88F2},+    {0xE3F9, 0x88FA},+    {0xE3FA, 0x88FE},+    {0xE3FB, 0x88EE},+    {0xE3FC, 0x88FC},+    {0xE3FD, 0x88F6},+    {0xE3FE, 0x88FB},+    {0xE440, 0x88F0},+    {0xE441, 0x88EC},+    {0xE442, 0x88EB},+    {0xE443, 0x899D},+    {0xE444, 0x89A1},+    {0xE445, 0x899F},+    {0xE446, 0x899E},+    {0xE447, 0x89E9},+    {0xE448, 0x89EB},+    {0xE449, 0x89E8},+    {0xE44A, 0x8AAB},+    {0xE44B, 0x8A99},+    {0xE44C, 0x8A8B},+    {0xE44D, 0x8A92},+    {0xE44E, 0x8A8F},+    {0xE44F, 0x8A96},+    {0xE450, 0x8C3D},+    {0xE451, 0x8C68},+    {0xE452, 0x8C69},+    {0xE453, 0x8CD5},+    {0xE454, 0x8CCF},+    {0xE455, 0x8CD7},+    {0xE456, 0x8D96},+    {0xE457, 0x8E09},+    {0xE458, 0x8E02},+    {0xE459, 0x8DFF},+    {0xE45A, 0x8E0D},+    {0xE45B, 0x8DFD},+    {0xE45C, 0x8E0A},+    {0xE45D, 0x8E03},+    {0xE45E, 0x8E07},+    {0xE45F, 0x8E06},+    {0xE460, 0x8E05},+    {0xE461, 0x8DFE},+    {0xE462, 0x8E00},+    {0xE463, 0x8E04},+    {0xE464, 0x8F10},+    {0xE465, 0x8F11},+    {0xE466, 0x8F0E},+    {0xE467, 0x8F0D},+    {0xE468, 0x9123},+    {0xE469, 0x911C},+    {0xE46A, 0x9120},+    {0xE46B, 0x9122},+    {0xE46C, 0x911F},+    {0xE46D, 0x911D},+    {0xE46E, 0x911A},+    {0xE46F, 0x9124},+    {0xE470, 0x9121},+    {0xE471, 0x911B},+    {0xE472, 0x917A},+    {0xE473, 0x9172},+    {0xE474, 0x9179},+    {0xE475, 0x9173},+    {0xE476, 0x92A5},+    {0xE477, 0x92A4},+    {0xE478, 0x9276},+    {0xE479, 0x929B},+    {0xE47A, 0x927A},+    {0xE47B, 0x92A0},+    {0xE47C, 0x9294},+    {0xE47D, 0x92AA},+    {0xE47E, 0x928D},+    {0xE4A1, 0x92A6},+    {0xE4A2, 0x929A},+    {0xE4A3, 0x92AB},+    {0xE4A4, 0x9279},+    {0xE4A5, 0x9297},+    {0xE4A6, 0x927F},+    {0xE4A7, 0x92A3},+    {0xE4A8, 0x92EE},+    {0xE4A9, 0x928E},+    {0xE4AA, 0x9282},+    {0xE4AB, 0x9295},+    {0xE4AC, 0x92A2},+    {0xE4AD, 0x927D},+    {0xE4AE, 0x9288},+    {0xE4AF, 0x92A1},+    {0xE4B0, 0x928A},+    {0xE4B1, 0x9286},+    {0xE4B2, 0x928C},+    {0xE4B3, 0x9299},+    {0xE4B4, 0x92A7},+    {0xE4B5, 0x927E},+    {0xE4B6, 0x9287},+    {0xE4B7, 0x92A9},+    {0xE4B8, 0x929D},+    {0xE4B9, 0x928B},+    {0xE4BA, 0x922D},+    {0xE4BB, 0x969E},+    {0xE4BC, 0x96A1},+    {0xE4BD, 0x96FF},+    {0xE4BE, 0x9758},+    {0xE4BF, 0x977D},+    {0xE4C0, 0x977A},+    {0xE4C1, 0x977E},+    {0xE4C2, 0x9783},+    {0xE4C3, 0x9780},+    {0xE4C4, 0x9782},+    {0xE4C5, 0x977B},+    {0xE4C6, 0x9784},+    {0xE4C7, 0x9781},+    {0xE4C8, 0x977F},+    {0xE4C9, 0x97CE},+    {0xE4CA, 0x97CD},+    {0xE4CB, 0x9816},+    {0xE4CC, 0x98AD},+    {0xE4CD, 0x98AE},+    {0xE4CE, 0x9902},+    {0xE4CF, 0x9900},+    {0xE4D0, 0x9907},+    {0xE4D1, 0x999D},+    {0xE4D2, 0x999C},+    {0xE4D3, 0x99C3},+    {0xE4D4, 0x99B9},+    {0xE4D5, 0x99BB},+    {0xE4D6, 0x99BA},+    {0xE4D7, 0x99C2},+    {0xE4D8, 0x99BD},+    {0xE4D9, 0x99C7},+    {0xE4DA, 0x9AB1},+    {0xE4DB, 0x9AE3},+    {0xE4DC, 0x9AE7},+    {0xE4DD, 0x9B3E},+    {0xE4DE, 0x9B3F},+    {0xE4DF, 0x9B60},+    {0xE4E0, 0x9B61},+    {0xE4E1, 0x9B5F},+    {0xE4E2, 0x9CF1},+    {0xE4E3, 0x9CF2},+    {0xE4E4, 0x9CF5},+    {0xE4E5, 0x9EA7},+    {0xE4E6, 0x50FF},+    {0xE4E7, 0x5103},+    {0xE4E8, 0x5130},+    {0xE4E9, 0x50F8},+    {0xE4EA, 0x5106},+    {0xE4EB, 0x5107},+    {0xE4EC, 0x50F6},+    {0xE4ED, 0x50FE},+    {0xE4EE, 0x510B},+    {0xE4EF, 0x510C},+    {0xE4F0, 0x50FD},+    {0xE4F1, 0x510A},+    {0xE4F2, 0x528B},+    {0xE4F3, 0x528C},+    {0xE4F4, 0x52F1},+    {0xE4F5, 0x52EF},+    {0xE4F6, 0x5648},+    {0xE4F7, 0x5642},+    {0xE4F8, 0x564C},+    {0xE4F9, 0x5635},+    {0xE4FA, 0x5641},+    {0xE4FB, 0x564A},+    {0xE4FC, 0x5649},+    {0xE4FD, 0x5646},+    {0xE4FE, 0x5658},+    {0xE540, 0x565A},+    {0xE541, 0x5640},+    {0xE542, 0x5633},+    {0xE543, 0x563D},+    {0xE544, 0x562C},+    {0xE545, 0x563E},+    {0xE546, 0x5638},+    {0xE547, 0x562A},+    {0xE548, 0x563A},+    {0xE549, 0x571A},+    {0xE54A, 0x58AB},+    {0xE54B, 0x589D},+    {0xE54C, 0x58B1},+    {0xE54D, 0x58A0},+    {0xE54E, 0x58A3},+    {0xE54F, 0x58AF},+    {0xE550, 0x58AC},+    {0xE551, 0x58A5},+    {0xE552, 0x58A1},+    {0xE553, 0x58FF},+    {0xE554, 0x5AFF},+    {0xE555, 0x5AF4},+    {0xE556, 0x5AFD},+    {0xE557, 0x5AF7},+    {0xE558, 0x5AF6},+    {0xE559, 0x5B03},+    {0xE55A, 0x5AF8},+    {0xE55B, 0x5B02},+    {0xE55C, 0x5AF9},+    {0xE55D, 0x5B01},+    {0xE55E, 0x5B07},+    {0xE55F, 0x5B05},+    {0xE560, 0x5B0F},+    {0xE561, 0x5C67},+    {0xE562, 0x5D99},+    {0xE563, 0x5D97},+    {0xE564, 0x5D9F},+    {0xE565, 0x5D92},+    {0xE566, 0x5DA2},+    {0xE567, 0x5D93},+    {0xE568, 0x5D95},+    {0xE569, 0x5DA0},+    {0xE56A, 0x5D9C},+    {0xE56B, 0x5DA1},+    {0xE56C, 0x5D9A},+    {0xE56D, 0x5D9E},+    {0xE56E, 0x5E69},+    {0xE56F, 0x5E5D},+    {0xE570, 0x5E60},+    {0xE571, 0x5E5C},+    {0xE572, 0x7DF3},+    {0xE573, 0x5EDB},+    {0xE574, 0x5EDE},+    {0xE575, 0x5EE1},+    {0xE576, 0x5F49},+    {0xE577, 0x5FB2},+    {0xE578, 0x618B},+    {0xE579, 0x6183},+    {0xE57A, 0x6179},+    {0xE57B, 0x61B1},+    {0xE57C, 0x61B0},+    {0xE57D, 0x61A2},+    {0xE57E, 0x6189},+    {0xE5A1, 0x619B},+    {0xE5A2, 0x6193},+    {0xE5A3, 0x61AF},+    {0xE5A4, 0x61AD},+    {0xE5A5, 0x619F},+    {0xE5A6, 0x6192},+    {0xE5A7, 0x61AA},+    {0xE5A8, 0x61A1},+    {0xE5A9, 0x618D},+    {0xE5AA, 0x6166},+    {0xE5AB, 0x61B3},+    {0xE5AC, 0x622D},+    {0xE5AD, 0x646E},+    {0xE5AE, 0x6470},+    {0xE5AF, 0x6496},+    {0xE5B0, 0x64A0},+    {0xE5B1, 0x6485},+    {0xE5B2, 0x6497},+    {0xE5B3, 0x649C},+    {0xE5B4, 0x648F},+    {0xE5B5, 0x648B},+    {0xE5B6, 0x648A},+    {0xE5B7, 0x648C},+    {0xE5B8, 0x64A3},+    {0xE5B9, 0x649F},+    {0xE5BA, 0x6468},+    {0xE5BB, 0x64B1},+    {0xE5BC, 0x6498},+    {0xE5BD, 0x6576},+    {0xE5BE, 0x657A},+    {0xE5BF, 0x6579},+    {0xE5C0, 0x657B},+    {0xE5C1, 0x65B2},+    {0xE5C2, 0x65B3},+    {0xE5C3, 0x66B5},+    {0xE5C4, 0x66B0},+    {0xE5C5, 0x66A9},+    {0xE5C6, 0x66B2},+    {0xE5C7, 0x66B7},+    {0xE5C8, 0x66AA},+    {0xE5C9, 0x66AF},+    {0xE5CA, 0x6A00},+    {0xE5CB, 0x6A06},+    {0xE5CC, 0x6A17},+    {0xE5CD, 0x69E5},+    {0xE5CE, 0x69F8},+    {0xE5CF, 0x6A15},+    {0xE5D0, 0x69F1},+    {0xE5D1, 0x69E4},+    {0xE5D2, 0x6A20},+    {0xE5D3, 0x69FF},+    {0xE5D4, 0x69EC},+    {0xE5D5, 0x69E2},+    {0xE5D6, 0x6A1B},+    {0xE5D7, 0x6A1D},+    {0xE5D8, 0x69FE},+    {0xE5D9, 0x6A27},+    {0xE5DA, 0x69F2},+    {0xE5DB, 0x69EE},+    {0xE5DC, 0x6A14},+    {0xE5DD, 0x69F7},+    {0xE5DE, 0x69E7},+    {0xE5DF, 0x6A40},+    {0xE5E0, 0x6A08},+    {0xE5E1, 0x69E6},+    {0xE5E2, 0x69FB},+    {0xE5E3, 0x6A0D},+    {0xE5E4, 0x69FC},+    {0xE5E5, 0x69EB},+    {0xE5E6, 0x6A09},+    {0xE5E7, 0x6A04},+    {0xE5E8, 0x6A18},+    {0xE5E9, 0x6A25},+    {0xE5EA, 0x6A0F},+    {0xE5EB, 0x69F6},+    {0xE5EC, 0x6A26},+    {0xE5ED, 0x6A07},+    {0xE5EE, 0x69F4},+    {0xE5EF, 0x6A16},+    {0xE5F0, 0x6B51},+    {0xE5F1, 0x6BA5},+    {0xE5F2, 0x6BA3},+    {0xE5F3, 0x6BA2},+    {0xE5F4, 0x6BA6},+    {0xE5F5, 0x6C01},+    {0xE5F6, 0x6C00},+    {0xE5F7, 0x6BFF},+    {0xE5F8, 0x6C02},+    {0xE5F9, 0x6F41},+    {0xE5FA, 0x6F26},+    {0xE5FB, 0x6F7E},+    {0xE5FC, 0x6F87},+    {0xE5FD, 0x6FC6},+    {0xE5FE, 0x6F92},+    {0xE640, 0x6F8D},+    {0xE641, 0x6F89},+    {0xE642, 0x6F8C},+    {0xE643, 0x6F62},+    {0xE644, 0x6F4F},+    {0xE645, 0x6F85},+    {0xE646, 0x6F5A},+    {0xE647, 0x6F96},+    {0xE648, 0x6F76},+    {0xE649, 0x6F6C},+    {0xE64A, 0x6F82},+    {0xE64B, 0x6F55},+    {0xE64C, 0x6F72},+    {0xE64D, 0x6F52},+    {0xE64E, 0x6F50},+    {0xE64F, 0x6F57},+    {0xE650, 0x6F94},+    {0xE651, 0x6F93},+    {0xE652, 0x6F5D},+    {0xE653, 0x6F00},+    {0xE654, 0x6F61},+    {0xE655, 0x6F6B},+    {0xE656, 0x6F7D},+    {0xE657, 0x6F67},+    {0xE658, 0x6F90},+    {0xE659, 0x6F53},+    {0xE65A, 0x6F8B},+    {0xE65B, 0x6F69},+    {0xE65C, 0x6F7F},+    {0xE65D, 0x6F95},+    {0xE65E, 0x6F63},+    {0xE65F, 0x6F77},+    {0xE660, 0x6F6A},+    {0xE661, 0x6F7B},+    {0xE662, 0x71B2},+    {0xE663, 0x71AF},+    {0xE664, 0x719B},+    {0xE665, 0x71B0},+    {0xE666, 0x71A0},+    {0xE667, 0x719A},+    {0xE668, 0x71A9},+    {0xE669, 0x71B5},+    {0xE66A, 0x719D},+    {0xE66B, 0x71A5},+    {0xE66C, 0x719E},+    {0xE66D, 0x71A4},+    {0xE66E, 0x71A1},+    {0xE66F, 0x71AA},+    {0xE670, 0x719C},+    {0xE671, 0x71A7},+    {0xE672, 0x71B3},+    {0xE673, 0x7298},+    {0xE674, 0x729A},+    {0xE675, 0x7358},+    {0xE676, 0x7352},+    {0xE677, 0x735E},+    {0xE678, 0x735F},+    {0xE679, 0x7360},+    {0xE67A, 0x735D},+    {0xE67B, 0x735B},+    {0xE67C, 0x7361},+    {0xE67D, 0x735A},+    {0xE67E, 0x7359},+    {0xE6A1, 0x7362},+    {0xE6A2, 0x7487},+    {0xE6A3, 0x7489},+    {0xE6A4, 0x748A},+    {0xE6A5, 0x7486},+    {0xE6A6, 0x7481},+    {0xE6A7, 0x747D},+    {0xE6A8, 0x7485},+    {0xE6A9, 0x7488},+    {0xE6AA, 0x747C},+    {0xE6AB, 0x7479},+    {0xE6AC, 0x7508},+    {0xE6AD, 0x7507},+    {0xE6AE, 0x757E},+    {0xE6AF, 0x7625},+    {0xE6B0, 0x761E},+    {0xE6B1, 0x7619},+    {0xE6B2, 0x761D},+    {0xE6B3, 0x761C},+    {0xE6B4, 0x7623},+    {0xE6B5, 0x761A},+    {0xE6B6, 0x7628},+    {0xE6B7, 0x761B},+    {0xE6B8, 0x769C},+    {0xE6B9, 0x769D},+    {0xE6BA, 0x769E},+    {0xE6BB, 0x769B},+    {0xE6BC, 0x778D},+    {0xE6BD, 0x778F},+    {0xE6BE, 0x7789},+    {0xE6BF, 0x7788},+    {0xE6C0, 0x78CD},+    {0xE6C1, 0x78BB},+    {0xE6C2, 0x78CF},+    {0xE6C3, 0x78CC},+    {0xE6C4, 0x78D1},+    {0xE6C5, 0x78CE},+    {0xE6C6, 0x78D4},+    {0xE6C7, 0x78C8},+    {0xE6C8, 0x78C3},+    {0xE6C9, 0x78C4},+    {0xE6CA, 0x78C9},+    {0xE6CB, 0x799A},+    {0xE6CC, 0x79A1},+    {0xE6CD, 0x79A0},+    {0xE6CE, 0x799C},+    {0xE6CF, 0x79A2},+    {0xE6D0, 0x799B},+    {0xE6D1, 0x6B76},+    {0xE6D2, 0x7A39},+    {0xE6D3, 0x7AB2},+    {0xE6D4, 0x7AB4},+    {0xE6D5, 0x7AB3},+    {0xE6D6, 0x7BB7},+    {0xE6D7, 0x7BCB},+    {0xE6D8, 0x7BBE},+    {0xE6D9, 0x7BAC},+    {0xE6DA, 0x7BCE},+    {0xE6DB, 0x7BAF},+    {0xE6DC, 0x7BB9},+    {0xE6DD, 0x7BCA},+    {0xE6DE, 0x7BB5},+    {0xE6DF, 0x7CC5},+    {0xE6E0, 0x7CC8},+    {0xE6E1, 0x7CCC},+    {0xE6E2, 0x7CCB},+    {0xE6E3, 0x7DF7},+    {0xE6E4, 0x7DDB},+    {0xE6E5, 0x7DEA},+    {0xE6E6, 0x7DE7},+    {0xE6E7, 0x7DD7},+    {0xE6E8, 0x7DE1},+    {0xE6E9, 0x7E03},+    {0xE6EA, 0x7DFA},+    {0xE6EB, 0x7DE6},+    {0xE6EC, 0x7DF6},+    {0xE6ED, 0x7DF1},+    {0xE6EE, 0x7DF0},+    {0xE6EF, 0x7DEE},+    {0xE6F0, 0x7DDF},+    {0xE6F1, 0x7F76},+    {0xE6F2, 0x7FAC},+    {0xE6F3, 0x7FB0},+    {0xE6F4, 0x7FAD},+    {0xE6F5, 0x7FED},+    {0xE6F6, 0x7FEB},+    {0xE6F7, 0x7FEA},+    {0xE6F8, 0x7FEC},+    {0xE6F9, 0x7FE6},+    {0xE6FA, 0x7FE8},+    {0xE6FB, 0x8064},+    {0xE6FC, 0x8067},+    {0xE6FD, 0x81A3},+    {0xE6FE, 0x819F},+    {0xE740, 0x819E},+    {0xE741, 0x8195},+    {0xE742, 0x81A2},+    {0xE743, 0x8199},+    {0xE744, 0x8197},+    {0xE745, 0x8216},+    {0xE746, 0x824F},+    {0xE747, 0x8253},+    {0xE748, 0x8252},+    {0xE749, 0x8250},+    {0xE74A, 0x824E},+    {0xE74B, 0x8251},+    {0xE74C, 0x8524},+    {0xE74D, 0x853B},+    {0xE74E, 0x850F},+    {0xE74F, 0x8500},+    {0xE750, 0x8529},+    {0xE751, 0x850E},+    {0xE752, 0x8509},+    {0xE753, 0x850D},+    {0xE754, 0x851F},+    {0xE755, 0x850A},+    {0xE756, 0x8527},+    {0xE757, 0x851C},+    {0xE758, 0x84FB},+    {0xE759, 0x852B},+    {0xE75A, 0x84FA},+    {0xE75B, 0x8508},+    {0xE75C, 0x850C},+    {0xE75D, 0x84F4},+    {0xE75E, 0x852A},+    {0xE75F, 0x84F2},+    {0xE760, 0x8515},+    {0xE761, 0x84F7},+    {0xE762, 0x84EB},+    {0xE763, 0x84F3},+    {0xE764, 0x84FC},+    {0xE765, 0x8512},+    {0xE766, 0x84EA},+    {0xE767, 0x84E9},+    {0xE768, 0x8516},+    {0xE769, 0x84FE},+    {0xE76A, 0x8528},+    {0xE76B, 0x851D},+    {0xE76C, 0x852E},+    {0xE76D, 0x8502},+    {0xE76E, 0x84FD},+    {0xE76F, 0x851E},+    {0xE770, 0x84F6},+    {0xE771, 0x8531},+    {0xE772, 0x8526},+    {0xE773, 0x84E7},+    {0xE774, 0x84E8},+    {0xE775, 0x84F0},+    {0xE776, 0x84EF},+    {0xE777, 0x84F9},+    {0xE778, 0x8518},+    {0xE779, 0x8520},+    {0xE77A, 0x8530},+    {0xE77B, 0x850B},+    {0xE77C, 0x8519},+    {0xE77D, 0x852F},+    {0xE77E, 0x8662},+    {0xE7A1, 0x8756},+    {0xE7A2, 0x8763},+    {0xE7A3, 0x8764},+    {0xE7A4, 0x8777},+    {0xE7A5, 0x87E1},+    {0xE7A6, 0x8773},+    {0xE7A7, 0x8758},+    {0xE7A8, 0x8754},+    {0xE7A9, 0x875B},+    {0xE7AA, 0x8752},+    {0xE7AB, 0x8761},+    {0xE7AC, 0x875A},+    {0xE7AD, 0x8751},+    {0xE7AE, 0x875E},+    {0xE7AF, 0x876D},+    {0xE7B0, 0x876A},+    {0xE7B1, 0x8750},+    {0xE7B2, 0x874E},+    {0xE7B3, 0x875F},+    {0xE7B4, 0x875D},+    {0xE7B5, 0x876F},+    {0xE7B6, 0x876C},+    {0xE7B7, 0x877A},+    {0xE7B8, 0x876E},+    {0xE7B9, 0x875C},+    {0xE7BA, 0x8765},+    {0xE7BB, 0x874F},+    {0xE7BC, 0x877B},+    {0xE7BD, 0x8775},+    {0xE7BE, 0x8762},+    {0xE7BF, 0x8767},+    {0xE7C0, 0x8769},+    {0xE7C1, 0x885A},+    {0xE7C2, 0x8905},+    {0xE7C3, 0x890C},+    {0xE7C4, 0x8914},+    {0xE7C5, 0x890B},+    {0xE7C6, 0x8917},+    {0xE7C7, 0x8918},+    {0xE7C8, 0x8919},+    {0xE7C9, 0x8906},+    {0xE7CA, 0x8916},+    {0xE7CB, 0x8911},+    {0xE7CC, 0x890E},+    {0xE7CD, 0x8909},+    {0xE7CE, 0x89A2},+    {0xE7CF, 0x89A4},+    {0xE7D0, 0x89A3},+    {0xE7D1, 0x89ED},+    {0xE7D2, 0x89F0},+    {0xE7D3, 0x89EC},+    {0xE7D4, 0x8ACF},+    {0xE7D5, 0x8AC6},+    {0xE7D6, 0x8AB8},+    {0xE7D7, 0x8AD3},+    {0xE7D8, 0x8AD1},+    {0xE7D9, 0x8AD4},+    {0xE7DA, 0x8AD5},+    {0xE7DB, 0x8ABB},+    {0xE7DC, 0x8AD7},+    {0xE7DD, 0x8ABE},+    {0xE7DE, 0x8AC0},+    {0xE7DF, 0x8AC5},+    {0xE7E0, 0x8AD8},+    {0xE7E1, 0x8AC3},+    {0xE7E2, 0x8ABA},+    {0xE7E3, 0x8ABD},+    {0xE7E4, 0x8AD9},+    {0xE7E5, 0x8C3E},+    {0xE7E6, 0x8C4D},+    {0xE7E7, 0x8C8F},+    {0xE7E8, 0x8CE5},+    {0xE7E9, 0x8CDF},+    {0xE7EA, 0x8CD9},+    {0xE7EB, 0x8CE8},+    {0xE7EC, 0x8CDA},+    {0xE7ED, 0x8CDD},+    {0xE7EE, 0x8CE7},+    {0xE7EF, 0x8DA0},+    {0xE7F0, 0x8D9C},+    {0xE7F1, 0x8DA1},+    {0xE7F2, 0x8D9B},+    {0xE7F3, 0x8E20},+    {0xE7F4, 0x8E23},+    {0xE7F5, 0x8E25},+    {0xE7F6, 0x8E24},+    {0xE7F7, 0x8E2E},+    {0xE7F8, 0x8E15},+    {0xE7F9, 0x8E1B},+    {0xE7FA, 0x8E16},+    {0xE7FB, 0x8E11},+    {0xE7FC, 0x8E19},+    {0xE7FD, 0x8E26},+    {0xE7FE, 0x8E27},+    {0xE840, 0x8E14},+    {0xE841, 0x8E12},+    {0xE842, 0x8E18},+    {0xE843, 0x8E13},+    {0xE844, 0x8E1C},+    {0xE845, 0x8E17},+    {0xE846, 0x8E1A},+    {0xE847, 0x8F2C},+    {0xE848, 0x8F24},+    {0xE849, 0x8F18},+    {0xE84A, 0x8F1A},+    {0xE84B, 0x8F20},+    {0xE84C, 0x8F23},+    {0xE84D, 0x8F16},+    {0xE84E, 0x8F17},+    {0xE84F, 0x9073},+    {0xE850, 0x9070},+    {0xE851, 0x906F},+    {0xE852, 0x9067},+    {0xE853, 0x906B},+    {0xE854, 0x912F},+    {0xE855, 0x912B},+    {0xE856, 0x9129},+    {0xE857, 0x912A},+    {0xE858, 0x9132},+    {0xE859, 0x9126},+    {0xE85A, 0x912E},+    {0xE85B, 0x9185},+    {0xE85C, 0x9186},+    {0xE85D, 0x918A},+    {0xE85E, 0x9181},+    {0xE85F, 0x9182},+    {0xE860, 0x9184},+    {0xE861, 0x9180},+    {0xE862, 0x92D0},+    {0xE863, 0x92C3},+    {0xE864, 0x92C4},+    {0xE865, 0x92C0},+    {0xE866, 0x92D9},+    {0xE867, 0x92B6},+    {0xE868, 0x92CF},+    {0xE869, 0x92F1},+    {0xE86A, 0x92DF},+    {0xE86B, 0x92D8},+    {0xE86C, 0x92E9},+    {0xE86D, 0x92D7},+    {0xE86E, 0x92DD},+    {0xE86F, 0x92CC},+    {0xE870, 0x92EF},+    {0xE871, 0x92C2},+    {0xE872, 0x92E8},+    {0xE873, 0x92CA},+    {0xE874, 0x92C8},+    {0xE875, 0x92CE},+    {0xE876, 0x92E6},+    {0xE877, 0x92CD},+    {0xE878, 0x92D5},+    {0xE879, 0x92C9},+    {0xE87A, 0x92E0},+    {0xE87B, 0x92DE},+    {0xE87C, 0x92E7},+    {0xE87D, 0x92D1},+    {0xE87E, 0x92D3},+    {0xE8A1, 0x92B5},+    {0xE8A2, 0x92E1},+    {0xE8A3, 0x92C6},+    {0xE8A4, 0x92B4},+    {0xE8A5, 0x957C},+    {0xE8A6, 0x95AC},+    {0xE8A7, 0x95AB},+    {0xE8A8, 0x95AE},+    {0xE8A9, 0x95B0},+    {0xE8AA, 0x96A4},+    {0xE8AB, 0x96A2},+    {0xE8AC, 0x96D3},+    {0xE8AD, 0x9705},+    {0xE8AE, 0x9708},+    {0xE8AF, 0x9702},+    {0xE8B0, 0x975A},+    {0xE8B1, 0x978A},+    {0xE8B2, 0x978E},+    {0xE8B3, 0x9788},+    {0xE8B4, 0x97D0},+    {0xE8B5, 0x97CF},+    {0xE8B6, 0x981E},+    {0xE8B7, 0x981D},+    {0xE8B8, 0x9826},+    {0xE8B9, 0x9829},+    {0xE8BA, 0x9828},+    {0xE8BB, 0x9820},+    {0xE8BC, 0x981B},+    {0xE8BD, 0x9827},+    {0xE8BE, 0x98B2},+    {0xE8BF, 0x9908},+    {0xE8C0, 0x98FA},+    {0xE8C1, 0x9911},+    {0xE8C2, 0x9914},+    {0xE8C3, 0x9916},+    {0xE8C4, 0x9917},+    {0xE8C5, 0x9915},+    {0xE8C6, 0x99DC},+    {0xE8C7, 0x99CD},+    {0xE8C8, 0x99CF},+    {0xE8C9, 0x99D3},+    {0xE8CA, 0x99D4},+    {0xE8CB, 0x99CE},+    {0xE8CC, 0x99C9},+    {0xE8CD, 0x99D6},+    {0xE8CE, 0x99D8},+    {0xE8CF, 0x99CB},+    {0xE8D0, 0x99D7},+    {0xE8D1, 0x99CC},+    {0xE8D2, 0x9AB3},+    {0xE8D3, 0x9AEC},+    {0xE8D4, 0x9AEB},+    {0xE8D5, 0x9AF3},+    {0xE8D6, 0x9AF2},+    {0xE8D7, 0x9AF1},+    {0xE8D8, 0x9B46},+    {0xE8D9, 0x9B43},+    {0xE8DA, 0x9B67},+    {0xE8DB, 0x9B74},+    {0xE8DC, 0x9B71},+    {0xE8DD, 0x9B66},+    {0xE8DE, 0x9B76},+    {0xE8DF, 0x9B75},+    {0xE8E0, 0x9B70},+    {0xE8E1, 0x9B68},+    {0xE8E2, 0x9B64},+    {0xE8E3, 0x9B6C},+    {0xE8E4, 0x9CFC},+    {0xE8E5, 0x9CFA},+    {0xE8E6, 0x9CFD},+    {0xE8E7, 0x9CFF},+    {0xE8E8, 0x9CF7},+    {0xE8E9, 0x9D07},+    {0xE8EA, 0x9D00},+    {0xE8EB, 0x9CF9},+    {0xE8EC, 0x9CFB},+    {0xE8ED, 0x9D08},+    {0xE8EE, 0x9D05},+    {0xE8EF, 0x9D04},+    {0xE8F0, 0x9E83},+    {0xE8F1, 0x9ED3},+    {0xE8F2, 0x9F0F},+    {0xE8F3, 0x9F10},+    {0xE8F4, 0x511C},+    {0xE8F5, 0x5113},+    {0xE8F6, 0x5117},+    {0xE8F7, 0x511A},+    {0xE8F8, 0x5111},+    {0xE8F9, 0x51DE},+    {0xE8FA, 0x5334},+    {0xE8FB, 0x53E1},+    {0xE8FC, 0x5670},+    {0xE8FD, 0x5660},+    {0xE8FE, 0x566E},+    {0xE940, 0x5673},+    {0xE941, 0x5666},+    {0xE942, 0x5663},+    {0xE943, 0x566D},+    {0xE944, 0x5672},+    {0xE945, 0x565E},+    {0xE946, 0x5677},+    {0xE947, 0x571C},+    {0xE948, 0x571B},+    {0xE949, 0x58C8},+    {0xE94A, 0x58BD},+    {0xE94B, 0x58C9},+    {0xE94C, 0x58BF},+    {0xE94D, 0x58BA},+    {0xE94E, 0x58C2},+    {0xE94F, 0x58BC},+    {0xE950, 0x58C6},+    {0xE951, 0x5B17},+    {0xE952, 0x5B19},+    {0xE953, 0x5B1B},+    {0xE954, 0x5B21},+    {0xE955, 0x5B14},+    {0xE956, 0x5B13},+    {0xE957, 0x5B10},+    {0xE958, 0x5B16},+    {0xE959, 0x5B28},+    {0xE95A, 0x5B1A},+    {0xE95B, 0x5B20},+    {0xE95C, 0x5B1E},+    {0xE95D, 0x5BEF},+    {0xE95E, 0x5DAC},+    {0xE95F, 0x5DB1},+    {0xE960, 0x5DA9},+    {0xE961, 0x5DA7},+    {0xE962, 0x5DB5},+    {0xE963, 0x5DB0},+    {0xE964, 0x5DAE},+    {0xE965, 0x5DAA},+    {0xE966, 0x5DA8},+    {0xE967, 0x5DB2},+    {0xE968, 0x5DAD},+    {0xE969, 0x5DAF},+    {0xE96A, 0x5DB4},+    {0xE96B, 0x5E67},+    {0xE96C, 0x5E68},+    {0xE96D, 0x5E66},+    {0xE96E, 0x5E6F},+    {0xE96F, 0x5EE9},+    {0xE970, 0x5EE7},+    {0xE971, 0x5EE6},+    {0xE972, 0x5EE8},+    {0xE973, 0x5EE5},+    {0xE974, 0x5F4B},+    {0xE975, 0x5FBC},+    {0xE976, 0x619D},+    {0xE977, 0x61A8},+    {0xE978, 0x6196},+    {0xE979, 0x61C5},+    {0xE97A, 0x61B4},+    {0xE97B, 0x61C6},+    {0xE97C, 0x61C1},+    {0xE97D, 0x61CC},+    {0xE97E, 0x61BA},+    {0xE9A1, 0x61BF},+    {0xE9A2, 0x61B8},+    {0xE9A3, 0x618C},+    {0xE9A4, 0x64D7},+    {0xE9A5, 0x64D6},+    {0xE9A6, 0x64D0},+    {0xE9A7, 0x64CF},+    {0xE9A8, 0x64C9},+    {0xE9A9, 0x64BD},+    {0xE9AA, 0x6489},+    {0xE9AB, 0x64C3},+    {0xE9AC, 0x64DB},+    {0xE9AD, 0x64F3},+    {0xE9AE, 0x64D9},+    {0xE9AF, 0x6533},+    {0xE9B0, 0x657F},+    {0xE9B1, 0x657C},+    {0xE9B2, 0x65A2},+    {0xE9B3, 0x66C8},+    {0xE9B4, 0x66BE},+    {0xE9B5, 0x66C0},+    {0xE9B6, 0x66CA},+    {0xE9B7, 0x66CB},+    {0xE9B8, 0x66CF},+    {0xE9B9, 0x66BD},+    {0xE9BA, 0x66BB},+    {0xE9BB, 0x66BA},+    {0xE9BC, 0x66CC},+    {0xE9BD, 0x6723},+    {0xE9BE, 0x6A34},+    {0xE9BF, 0x6A66},+    {0xE9C0, 0x6A49},+    {0xE9C1, 0x6A67},+    {0xE9C2, 0x6A32},+    {0xE9C3, 0x6A68},+    {0xE9C4, 0x6A3E},+    {0xE9C5, 0x6A5D},+    {0xE9C6, 0x6A6D},+    {0xE9C7, 0x6A76},+    {0xE9C8, 0x6A5B},+    {0xE9C9, 0x6A51},+    {0xE9CA, 0x6A28},+    {0xE9CB, 0x6A5A},+    {0xE9CC, 0x6A3B},+    {0xE9CD, 0x6A3F},+    {0xE9CE, 0x6A41},+    {0xE9CF, 0x6A6A},+    {0xE9D0, 0x6A64},+    {0xE9D1, 0x6A50},+    {0xE9D2, 0x6A4F},+    {0xE9D3, 0x6A54},+    {0xE9D4, 0x6A6F},+    {0xE9D5, 0x6A69},+    {0xE9D6, 0x6A60},+    {0xE9D7, 0x6A3C},+    {0xE9D8, 0x6A5E},+    {0xE9D9, 0x6A56},+    {0xE9DA, 0x6A55},+    {0xE9DB, 0x6A4D},+    {0xE9DC, 0x6A4E},+    {0xE9DD, 0x6A46},+    {0xE9DE, 0x6B55},+    {0xE9DF, 0x6B54},+    {0xE9E0, 0x6B56},+    {0xE9E1, 0x6BA7},+    {0xE9E2, 0x6BAA},+    {0xE9E3, 0x6BAB},+    {0xE9E4, 0x6BC8},+    {0xE9E5, 0x6BC7},+    {0xE9E6, 0x6C04},+    {0xE9E7, 0x6C03},+    {0xE9E8, 0x6C06},+    {0xE9E9, 0x6FAD},+    {0xE9EA, 0x6FCB},+    {0xE9EB, 0x6FA3},+    {0xE9EC, 0x6FC7},+    {0xE9ED, 0x6FBC},+    {0xE9EE, 0x6FCE},+    {0xE9EF, 0x6FC8},+    {0xE9F0, 0x6F5E},+    {0xE9F1, 0x6FC4},+    {0xE9F2, 0x6FBD},+    {0xE9F3, 0x6F9E},+    {0xE9F4, 0x6FCA},+    {0xE9F5, 0x6FA8},+    {0xE9F6, 0x7004},+    {0xE9F7, 0x6FA5},+    {0xE9F8, 0x6FAE},+    {0xE9F9, 0x6FBA},+    {0xE9FA, 0x6FAC},+    {0xE9FB, 0x6FAA},+    {0xE9FC, 0x6FCF},+    {0xE9FD, 0x6FBF},+    {0xE9FE, 0x6FB8},+    {0xEA40, 0x6FA2},+    {0xEA41, 0x6FC9},+    {0xEA42, 0x6FAB},+    {0xEA43, 0x6FCD},+    {0xEA44, 0x6FAF},+    {0xEA45, 0x6FB2},+    {0xEA46, 0x6FB0},+    {0xEA47, 0x71C5},+    {0xEA48, 0x71C2},+    {0xEA49, 0x71BF},+    {0xEA4A, 0x71B8},+    {0xEA4B, 0x71D6},+    {0xEA4C, 0x71C0},+    {0xEA4D, 0x71C1},+    {0xEA4E, 0x71CB},+    {0xEA4F, 0x71D4},+    {0xEA50, 0x71CA},+    {0xEA51, 0x71C7},+    {0xEA52, 0x71CF},+    {0xEA53, 0x71BD},+    {0xEA54, 0x71D8},+    {0xEA55, 0x71BC},+    {0xEA56, 0x71C6},+    {0xEA57, 0x71DA},+    {0xEA58, 0x71DB},+    {0xEA59, 0x729D},+    {0xEA5A, 0x729E},+    {0xEA5B, 0x7369},+    {0xEA5C, 0x7366},+    {0xEA5D, 0x7367},+    {0xEA5E, 0x736C},+    {0xEA5F, 0x7365},+    {0xEA60, 0x736B},+    {0xEA61, 0x736A},+    {0xEA62, 0x747F},+    {0xEA63, 0x749A},+    {0xEA64, 0x74A0},+    {0xEA65, 0x7494},+    {0xEA66, 0x7492},+    {0xEA67, 0x7495},+    {0xEA68, 0x74A1},+    {0xEA69, 0x750B},+    {0xEA6A, 0x7580},+    {0xEA6B, 0x762F},+    {0xEA6C, 0x762D},+    {0xEA6D, 0x7631},+    {0xEA6E, 0x763D},+    {0xEA6F, 0x7633},+    {0xEA70, 0x763C},+    {0xEA71, 0x7635},+    {0xEA72, 0x7632},+    {0xEA73, 0x7630},+    {0xEA74, 0x76BB},+    {0xEA75, 0x76E6},+    {0xEA76, 0x779A},+    {0xEA77, 0x779D},+    {0xEA78, 0x77A1},+    {0xEA79, 0x779C},+    {0xEA7A, 0x779B},+    {0xEA7B, 0x77A2},+    {0xEA7C, 0x77A3},+    {0xEA7D, 0x7795},+    {0xEA7E, 0x7799},+    {0xEAA1, 0x7797},+    {0xEAA2, 0x78DD},+    {0xEAA3, 0x78E9},+    {0xEAA4, 0x78E5},+    {0xEAA5, 0x78EA},+    {0xEAA6, 0x78DE},+    {0xEAA7, 0x78E3},+    {0xEAA8, 0x78DB},+    {0xEAA9, 0x78E1},+    {0xEAAA, 0x78E2},+    {0xEAAB, 0x78ED},+    {0xEAAC, 0x78DF},+    {0xEAAD, 0x78E0},+    {0xEAAE, 0x79A4},+    {0xEAAF, 0x7A44},+    {0xEAB0, 0x7A48},+    {0xEAB1, 0x7A47},+    {0xEAB2, 0x7AB6},+    {0xEAB3, 0x7AB8},+    {0xEAB4, 0x7AB5},+    {0xEAB5, 0x7AB1},+    {0xEAB6, 0x7AB7},+    {0xEAB7, 0x7BDE},+    {0xEAB8, 0x7BE3},+    {0xEAB9, 0x7BE7},+    {0xEABA, 0x7BDD},+    {0xEABB, 0x7BD5},+    {0xEABC, 0x7BE5},+    {0xEABD, 0x7BDA},+    {0xEABE, 0x7BE8},+    {0xEABF, 0x7BF9},+    {0xEAC0, 0x7BD4},+    {0xEAC1, 0x7BEA},+    {0xEAC2, 0x7BE2},+    {0xEAC3, 0x7BDC},+    {0xEAC4, 0x7BEB},+    {0xEAC5, 0x7BD8},+    {0xEAC6, 0x7BDF},+    {0xEAC7, 0x7CD2},+    {0xEAC8, 0x7CD4},+    {0xEAC9, 0x7CD7},+    {0xEACA, 0x7CD0},+    {0xEACB, 0x7CD1},+    {0xEACC, 0x7E12},+    {0xEACD, 0x7E21},+    {0xEACE, 0x7E17},+    {0xEACF, 0x7E0C},+    {0xEAD0, 0x7E1F},+    {0xEAD1, 0x7E20},+    {0xEAD2, 0x7E13},+    {0xEAD3, 0x7E0E},+    {0xEAD4, 0x7E1C},+    {0xEAD5, 0x7E15},+    {0xEAD6, 0x7E1A},+    {0xEAD7, 0x7E22},+    {0xEAD8, 0x7E0B},+    {0xEAD9, 0x7E0F},+    {0xEADA, 0x7E16},+    {0xEADB, 0x7E0D},+    {0xEADC, 0x7E14},+    {0xEADD, 0x7E25},+    {0xEADE, 0x7E24},+    {0xEADF, 0x7F43},+    {0xEAE0, 0x7F7B},+    {0xEAE1, 0x7F7C},+    {0xEAE2, 0x7F7A},+    {0xEAE3, 0x7FB1},+    {0xEAE4, 0x7FEF},+    {0xEAE5, 0x802A},+    {0xEAE6, 0x8029},+    {0xEAE7, 0x806C},+    {0xEAE8, 0x81B1},+    {0xEAE9, 0x81A6},+    {0xEAEA, 0x81AE},+    {0xEAEB, 0x81B9},+    {0xEAEC, 0x81B5},+    {0xEAED, 0x81AB},+    {0xEAEE, 0x81B0},+    {0xEAEF, 0x81AC},+    {0xEAF0, 0x81B4},+    {0xEAF1, 0x81B2},+    {0xEAF2, 0x81B7},+    {0xEAF3, 0x81A7},+    {0xEAF4, 0x81F2},+    {0xEAF5, 0x8255},+    {0xEAF6, 0x8256},+    {0xEAF7, 0x8257},+    {0xEAF8, 0x8556},+    {0xEAF9, 0x8545},+    {0xEAFA, 0x856B},+    {0xEAFB, 0x854D},+    {0xEAFC, 0x8553},+    {0xEAFD, 0x8561},+    {0xEAFE, 0x8558},+    {0xEB40, 0x8540},+    {0xEB41, 0x8546},+    {0xEB42, 0x8564},+    {0xEB43, 0x8541},+    {0xEB44, 0x8562},+    {0xEB45, 0x8544},+    {0xEB46, 0x8551},+    {0xEB47, 0x8547},+    {0xEB48, 0x8563},+    {0xEB49, 0x853E},+    {0xEB4A, 0x855B},+    {0xEB4B, 0x8571},+    {0xEB4C, 0x854E},+    {0xEB4D, 0x856E},+    {0xEB4E, 0x8575},+    {0xEB4F, 0x8555},+    {0xEB50, 0x8567},+    {0xEB51, 0x8560},+    {0xEB52, 0x858C},+    {0xEB53, 0x8566},+    {0xEB54, 0x855D},+    {0xEB55, 0x8554},+    {0xEB56, 0x8565},+    {0xEB57, 0x856C},+    {0xEB58, 0x8663},+    {0xEB59, 0x8665},+    {0xEB5A, 0x8664},+    {0xEB5B, 0x879B},+    {0xEB5C, 0x878F},+    {0xEB5D, 0x8797},+    {0xEB5E, 0x8793},+    {0xEB5F, 0x8792},+    {0xEB60, 0x8788},+    {0xEB61, 0x8781},+    {0xEB62, 0x8796},+    {0xEB63, 0x8798},+    {0xEB64, 0x8779},+    {0xEB65, 0x8787},+    {0xEB66, 0x87A3},+    {0xEB67, 0x8785},+    {0xEB68, 0x8790},+    {0xEB69, 0x8791},+    {0xEB6A, 0x879D},+    {0xEB6B, 0x8784},+    {0xEB6C, 0x8794},+    {0xEB6D, 0x879C},+    {0xEB6E, 0x879A},+    {0xEB6F, 0x8789},+    {0xEB70, 0x891E},+    {0xEB71, 0x8926},+    {0xEB72, 0x8930},+    {0xEB73, 0x892D},+    {0xEB74, 0x892E},+    {0xEB75, 0x8927},+    {0xEB76, 0x8931},+    {0xEB77, 0x8922},+    {0xEB78, 0x8929},+    {0xEB79, 0x8923},+    {0xEB7A, 0x892F},+    {0xEB7B, 0x892C},+    {0xEB7C, 0x891F},+    {0xEB7D, 0x89F1},+    {0xEB7E, 0x8AE0},+    {0xEBA1, 0x8AE2},+    {0xEBA2, 0x8AF2},+    {0xEBA3, 0x8AF4},+    {0xEBA4, 0x8AF5},+    {0xEBA5, 0x8ADD},+    {0xEBA6, 0x8B14},+    {0xEBA7, 0x8AE4},+    {0xEBA8, 0x8ADF},+    {0xEBA9, 0x8AF0},+    {0xEBAA, 0x8AC8},+    {0xEBAB, 0x8ADE},+    {0xEBAC, 0x8AE1},+    {0xEBAD, 0x8AE8},+    {0xEBAE, 0x8AFF},+    {0xEBAF, 0x8AEF},+    {0xEBB0, 0x8AFB},+    {0xEBB1, 0x8C91},+    {0xEBB2, 0x8C92},+    {0xEBB3, 0x8C90},+    {0xEBB4, 0x8CF5},+    {0xEBB5, 0x8CEE},+    {0xEBB6, 0x8CF1},+    {0xEBB7, 0x8CF0},+    {0xEBB8, 0x8CF3},+    {0xEBB9, 0x8D6C},+    {0xEBBA, 0x8D6E},+    {0xEBBB, 0x8DA5},+    {0xEBBC, 0x8DA7},+    {0xEBBD, 0x8E33},+    {0xEBBE, 0x8E3E},+    {0xEBBF, 0x8E38},+    {0xEBC0, 0x8E40},+    {0xEBC1, 0x8E45},+    {0xEBC2, 0x8E36},+    {0xEBC3, 0x8E3C},+    {0xEBC4, 0x8E3D},+    {0xEBC5, 0x8E41},+    {0xEBC6, 0x8E30},+    {0xEBC7, 0x8E3F},+    {0xEBC8, 0x8EBD},+    {0xEBC9, 0x8F36},+    {0xEBCA, 0x8F2E},+    {0xEBCB, 0x8F35},+    {0xEBCC, 0x8F32},+    {0xEBCD, 0x8F39},+    {0xEBCE, 0x8F37},+    {0xEBCF, 0x8F34},+    {0xEBD0, 0x9076},+    {0xEBD1, 0x9079},+    {0xEBD2, 0x907B},+    {0xEBD3, 0x9086},+    {0xEBD4, 0x90FA},+    {0xEBD5, 0x9133},+    {0xEBD6, 0x9135},+    {0xEBD7, 0x9136},+    {0xEBD8, 0x9193},+    {0xEBD9, 0x9190},+    {0xEBDA, 0x9191},+    {0xEBDB, 0x918D},+    {0xEBDC, 0x918F},+    {0xEBDD, 0x9327},+    {0xEBDE, 0x931E},+    {0xEBDF, 0x9308},+    {0xEBE0, 0x931F},+    {0xEBE1, 0x9306},+    {0xEBE2, 0x930F},+    {0xEBE3, 0x937A},+    {0xEBE4, 0x9338},+    {0xEBE5, 0x933C},+    {0xEBE6, 0x931B},+    {0xEBE7, 0x9323},+    {0xEBE8, 0x9312},+    {0xEBE9, 0x9301},+    {0xEBEA, 0x9346},+    {0xEBEB, 0x932D},+    {0xEBEC, 0x930E},+    {0xEBED, 0x930D},+    {0xEBEE, 0x92CB},+    {0xEBEF, 0x931D},+    {0xEBF0, 0x92FA},+    {0xEBF1, 0x9325},+    {0xEBF2, 0x9313},+    {0xEBF3, 0x92F9},+    {0xEBF4, 0x92F7},+    {0xEBF5, 0x9334},+    {0xEBF6, 0x9302},+    {0xEBF7, 0x9324},+    {0xEBF8, 0x92FF},+    {0xEBF9, 0x9329},+    {0xEBFA, 0x9339},+    {0xEBFB, 0x9335},+    {0xEBFC, 0x932A},+    {0xEBFD, 0x9314},+    {0xEBFE, 0x930C},+    {0xEC40, 0x930B},+    {0xEC41, 0x92FE},+    {0xEC42, 0x9309},+    {0xEC43, 0x9300},+    {0xEC44, 0x92FB},+    {0xEC45, 0x9316},+    {0xEC46, 0x95BC},+    {0xEC47, 0x95CD},+    {0xEC48, 0x95BE},+    {0xEC49, 0x95B9},+    {0xEC4A, 0x95BA},+    {0xEC4B, 0x95B6},+    {0xEC4C, 0x95BF},+    {0xEC4D, 0x95B5},+    {0xEC4E, 0x95BD},+    {0xEC4F, 0x96A9},+    {0xEC50, 0x96D4},+    {0xEC51, 0x970B},+    {0xEC52, 0x9712},+    {0xEC53, 0x9710},+    {0xEC54, 0x9799},+    {0xEC55, 0x9797},+    {0xEC56, 0x9794},+    {0xEC57, 0x97F0},+    {0xEC58, 0x97F8},+    {0xEC59, 0x9835},+    {0xEC5A, 0x982F},+    {0xEC5B, 0x9832},+    {0xEC5C, 0x9924},+    {0xEC5D, 0x991F},+    {0xEC5E, 0x9927},+    {0xEC5F, 0x9929},+    {0xEC60, 0x999E},+    {0xEC61, 0x99EE},+    {0xEC62, 0x99EC},+    {0xEC63, 0x99E5},+    {0xEC64, 0x99E4},+    {0xEC65, 0x99F0},+    {0xEC66, 0x99E3},+    {0xEC67, 0x99EA},+    {0xEC68, 0x99E9},+    {0xEC69, 0x99E7},+    {0xEC6A, 0x9AB9},+    {0xEC6B, 0x9ABF},+    {0xEC6C, 0x9AB4},+    {0xEC6D, 0x9ABB},+    {0xEC6E, 0x9AF6},+    {0xEC6F, 0x9AFA},+    {0xEC70, 0x9AF9},+    {0xEC71, 0x9AF7},+    {0xEC72, 0x9B33},+    {0xEC73, 0x9B80},+    {0xEC74, 0x9B85},+    {0xEC75, 0x9B87},+    {0xEC76, 0x9B7C},+    {0xEC77, 0x9B7E},+    {0xEC78, 0x9B7B},+    {0xEC79, 0x9B82},+    {0xEC7A, 0x9B93},+    {0xEC7B, 0x9B92},+    {0xEC7C, 0x9B90},+    {0xEC7D, 0x9B7A},+    {0xEC7E, 0x9B95},+    {0xECA1, 0x9B7D},+    {0xECA2, 0x9B88},+    {0xECA3, 0x9D25},+    {0xECA4, 0x9D17},+    {0xECA5, 0x9D20},+    {0xECA6, 0x9D1E},+    {0xECA7, 0x9D14},+    {0xECA8, 0x9D29},+    {0xECA9, 0x9D1D},+    {0xECAA, 0x9D18},+    {0xECAB, 0x9D22},+    {0xECAC, 0x9D10},+    {0xECAD, 0x9D19},+    {0xECAE, 0x9D1F},+    {0xECAF, 0x9E88},+    {0xECB0, 0x9E86},+    {0xECB1, 0x9E87},+    {0xECB2, 0x9EAE},+    {0xECB3, 0x9EAD},+    {0xECB4, 0x9ED5},+    {0xECB5, 0x9ED6},+    {0xECB6, 0x9EFA},+    {0xECB7, 0x9F12},+    {0xECB8, 0x9F3D},+    {0xECB9, 0x5126},+    {0xECBA, 0x5125},+    {0xECBB, 0x5122},+    {0xECBC, 0x5124},+    {0xECBD, 0x5120},+    {0xECBE, 0x5129},+    {0xECBF, 0x52F4},+    {0xECC0, 0x5693},+    {0xECC1, 0x568C},+    {0xECC2, 0x568D},+    {0xECC3, 0x5686},+    {0xECC4, 0x5684},+    {0xECC5, 0x5683},+    {0xECC6, 0x567E},+    {0xECC7, 0x5682},+    {0xECC8, 0x567F},+    {0xECC9, 0x5681},+    {0xECCA, 0x58D6},+    {0xECCB, 0x58D4},+    {0xECCC, 0x58CF},+    {0xECCD, 0x58D2},+    {0xECCE, 0x5B2D},+    {0xECCF, 0x5B25},+    {0xECD0, 0x5B32},+    {0xECD1, 0x5B23},+    {0xECD2, 0x5B2C},+    {0xECD3, 0x5B27},+    {0xECD4, 0x5B26},+    {0xECD5, 0x5B2F},+    {0xECD6, 0x5B2E},+    {0xECD7, 0x5B7B},+    {0xECD8, 0x5BF1},+    {0xECD9, 0x5BF2},+    {0xECDA, 0x5DB7},+    {0xECDB, 0x5E6C},+    {0xECDC, 0x5E6A},+    {0xECDD, 0x5FBE},+    {0xECDE, 0x5FBB},+    {0xECDF, 0x61C3},+    {0xECE0, 0x61B5},+    {0xECE1, 0x61BC},+    {0xECE2, 0x61E7},+    {0xECE3, 0x61E0},+    {0xECE4, 0x61E5},+    {0xECE5, 0x61E4},+    {0xECE6, 0x61E8},+    {0xECE7, 0x61DE},+    {0xECE8, 0x64EF},+    {0xECE9, 0x64E9},+    {0xECEA, 0x64E3},+    {0xECEB, 0x64EB},+    {0xECEC, 0x64E4},+    {0xECED, 0x64E8},+    {0xECEE, 0x6581},+    {0xECEF, 0x6580},+    {0xECF0, 0x65B6},+    {0xECF1, 0x65DA},+    {0xECF2, 0x66D2},+    {0xECF3, 0x6A8D},+    {0xECF4, 0x6A96},+    {0xECF5, 0x6A81},+    {0xECF6, 0x6AA5},+    {0xECF7, 0x6A89},+    {0xECF8, 0x6A9F},+    {0xECF9, 0x6A9B},+    {0xECFA, 0x6AA1},+    {0xECFB, 0x6A9E},+    {0xECFC, 0x6A87},+    {0xECFD, 0x6A93},+    {0xECFE, 0x6A8E},+    {0xED40, 0x6A95},+    {0xED41, 0x6A83},+    {0xED42, 0x6AA8},+    {0xED43, 0x6AA4},+    {0xED44, 0x6A91},+    {0xED45, 0x6A7F},+    {0xED46, 0x6AA6},+    {0xED47, 0x6A9A},+    {0xED48, 0x6A85},+    {0xED49, 0x6A8C},+    {0xED4A, 0x6A92},+    {0xED4B, 0x6B5B},+    {0xED4C, 0x6BAD},+    {0xED4D, 0x6C09},+    {0xED4E, 0x6FCC},+    {0xED4F, 0x6FA9},+    {0xED50, 0x6FF4},+    {0xED51, 0x6FD4},+    {0xED52, 0x6FE3},+    {0xED53, 0x6FDC},+    {0xED54, 0x6FED},+    {0xED55, 0x6FE7},+    {0xED56, 0x6FE6},+    {0xED57, 0x6FDE},+    {0xED58, 0x6FF2},+    {0xED59, 0x6FDD},+    {0xED5A, 0x6FE2},+    {0xED5B, 0x6FE8},+    {0xED5C, 0x71E1},+    {0xED5D, 0x71F1},+    {0xED5E, 0x71E8},+    {0xED5F, 0x71F2},+    {0xED60, 0x71E4},+    {0xED61, 0x71F0},+    {0xED62, 0x71E2},+    {0xED63, 0x7373},+    {0xED64, 0x736E},+    {0xED65, 0x736F},+    {0xED66, 0x7497},+    {0xED67, 0x74B2},+    {0xED68, 0x74AB},+    {0xED69, 0x7490},+    {0xED6A, 0x74AA},+    {0xED6B, 0x74AD},+    {0xED6C, 0x74B1},+    {0xED6D, 0x74A5},+    {0xED6E, 0x74AF},+    {0xED6F, 0x7510},+    {0xED70, 0x7511},+    {0xED71, 0x7512},+    {0xED72, 0x750F},+    {0xED73, 0x7584},+    {0xED74, 0x7643},+    {0xED75, 0x7648},+    {0xED76, 0x7649},+    {0xED77, 0x7647},+    {0xED78, 0x76A4},+    {0xED79, 0x76E9},+    {0xED7A, 0x77B5},+    {0xED7B, 0x77AB},+    {0xED7C, 0x77B2},+    {0xED7D, 0x77B7},+    {0xED7E, 0x77B6},+    {0xEDA1, 0x77B4},+    {0xEDA2, 0x77B1},+    {0xEDA3, 0x77A8},+    {0xEDA4, 0x77F0},+    {0xEDA5, 0x78F3},+    {0xEDA6, 0x78FD},+    {0xEDA7, 0x7902},+    {0xEDA8, 0x78FB},+    {0xEDA9, 0x78FC},+    {0xEDAA, 0x78F2},+    {0xEDAB, 0x7905},+    {0xEDAC, 0x78F9},+    {0xEDAD, 0x78FE},+    {0xEDAE, 0x7904},+    {0xEDAF, 0x79AB},+    {0xEDB0, 0x79A8},+    {0xEDB1, 0x7A5C},+    {0xEDB2, 0x7A5B},+    {0xEDB3, 0x7A56},+    {0xEDB4, 0x7A58},+    {0xEDB5, 0x7A54},+    {0xEDB6, 0x7A5A},+    {0xEDB7, 0x7ABE},+    {0xEDB8, 0x7AC0},+    {0xEDB9, 0x7AC1},+    {0xEDBA, 0x7C05},+    {0xEDBB, 0x7C0F},+    {0xEDBC, 0x7BF2},+    {0xEDBD, 0x7C00},+    {0xEDBE, 0x7BFF},+    {0xEDBF, 0x7BFB},+    {0xEDC0, 0x7C0E},+    {0xEDC1, 0x7BF4},+    {0xEDC2, 0x7C0B},+    {0xEDC3, 0x7BF3},+    {0xEDC4, 0x7C02},+    {0xEDC5, 0x7C09},+    {0xEDC6, 0x7C03},+    {0xEDC7, 0x7C01},+    {0xEDC8, 0x7BF8},+    {0xEDC9, 0x7BFD},+    {0xEDCA, 0x7C06},+    {0xEDCB, 0x7BF0},+    {0xEDCC, 0x7BF1},+    {0xEDCD, 0x7C10},+    {0xEDCE, 0x7C0A},+    {0xEDCF, 0x7CE8},+    {0xEDD0, 0x7E2D},+    {0xEDD1, 0x7E3C},+    {0xEDD2, 0x7E42},+    {0xEDD3, 0x7E33},+    {0xEDD4, 0x9848},+    {0xEDD5, 0x7E38},+    {0xEDD6, 0x7E2A},+    {0xEDD7, 0x7E49},+    {0xEDD8, 0x7E40},+    {0xEDD9, 0x7E47},+    {0xEDDA, 0x7E29},+    {0xEDDB, 0x7E4C},+    {0xEDDC, 0x7E30},+    {0xEDDD, 0x7E3B},+    {0xEDDE, 0x7E36},+    {0xEDDF, 0x7E44},+    {0xEDE0, 0x7E3A},+    {0xEDE1, 0x7F45},+    {0xEDE2, 0x7F7F},+    {0xEDE3, 0x7F7E},+    {0xEDE4, 0x7F7D},+    {0xEDE5, 0x7FF4},+    {0xEDE6, 0x7FF2},+    {0xEDE7, 0x802C},+    {0xEDE8, 0x81BB},+    {0xEDE9, 0x81C4},+    {0xEDEA, 0x81CC},+    {0xEDEB, 0x81CA},+    {0xEDEC, 0x81C5},+    {0xEDED, 0x81C7},+    {0xEDEE, 0x81BC},+    {0xEDEF, 0x81E9},+    {0xEDF0, 0x825B},+    {0xEDF1, 0x825A},+    {0xEDF2, 0x825C},+    {0xEDF3, 0x8583},+    {0xEDF4, 0x8580},+    {0xEDF5, 0x858F},+    {0xEDF6, 0x85A7},+    {0xEDF7, 0x8595},+    {0xEDF8, 0x85A0},+    {0xEDF9, 0x858B},+    {0xEDFA, 0x85A3},+    {0xEDFB, 0x857B},+    {0xEDFC, 0x85A4},+    {0xEDFD, 0x859A},+    {0xEDFE, 0x859E},+    {0xEE40, 0x8577},+    {0xEE41, 0x857C},+    {0xEE42, 0x8589},+    {0xEE43, 0x85A1},+    {0xEE44, 0x857A},+    {0xEE45, 0x8578},+    {0xEE46, 0x8557},+    {0xEE47, 0x858E},+    {0xEE48, 0x8596},+    {0xEE49, 0x8586},+    {0xEE4A, 0x858D},+    {0xEE4B, 0x8599},+    {0xEE4C, 0x859D},+    {0xEE4D, 0x8581},+    {0xEE4E, 0x85A2},+    {0xEE4F, 0x8582},+    {0xEE50, 0x8588},+    {0xEE51, 0x8585},+    {0xEE52, 0x8579},+    {0xEE53, 0x8576},+    {0xEE54, 0x8598},+    {0xEE55, 0x8590},+    {0xEE56, 0x859F},+    {0xEE57, 0x8668},+    {0xEE58, 0x87BE},+    {0xEE59, 0x87AA},+    {0xEE5A, 0x87AD},+    {0xEE5B, 0x87C5},+    {0xEE5C, 0x87B0},+    {0xEE5D, 0x87AC},+    {0xEE5E, 0x87B9},+    {0xEE5F, 0x87B5},+    {0xEE60, 0x87BC},+    {0xEE61, 0x87AE},+    {0xEE62, 0x87C9},+    {0xEE63, 0x87C3},+    {0xEE64, 0x87C2},+    {0xEE65, 0x87CC},+    {0xEE66, 0x87B7},+    {0xEE67, 0x87AF},+    {0xEE68, 0x87C4},+    {0xEE69, 0x87CA},+    {0xEE6A, 0x87B4},+    {0xEE6B, 0x87B6},+    {0xEE6C, 0x87BF},+    {0xEE6D, 0x87B8},+    {0xEE6E, 0x87BD},+    {0xEE6F, 0x87DE},+    {0xEE70, 0x87B2},+    {0xEE71, 0x8935},+    {0xEE72, 0x8933},+    {0xEE73, 0x893C},+    {0xEE74, 0x893E},+    {0xEE75, 0x8941},+    {0xEE76, 0x8952},+    {0xEE77, 0x8937},+    {0xEE78, 0x8942},+    {0xEE79, 0x89AD},+    {0xEE7A, 0x89AF},+    {0xEE7B, 0x89AE},+    {0xEE7C, 0x89F2},+    {0xEE7D, 0x89F3},+    {0xEE7E, 0x8B1E},+    {0xEEA1, 0x8B18},+    {0xEEA2, 0x8B16},+    {0xEEA3, 0x8B11},+    {0xEEA4, 0x8B05},+    {0xEEA5, 0x8B0B},+    {0xEEA6, 0x8B22},+    {0xEEA7, 0x8B0F},+    {0xEEA8, 0x8B12},+    {0xEEA9, 0x8B15},+    {0xEEAA, 0x8B07},+    {0xEEAB, 0x8B0D},+    {0xEEAC, 0x8B08},+    {0xEEAD, 0x8B06},+    {0xEEAE, 0x8B1C},+    {0xEEAF, 0x8B13},+    {0xEEB0, 0x8B1A},+    {0xEEB1, 0x8C4F},+    {0xEEB2, 0x8C70},+    {0xEEB3, 0x8C72},+    {0xEEB4, 0x8C71},+    {0xEEB5, 0x8C6F},+    {0xEEB6, 0x8C95},+    {0xEEB7, 0x8C94},+    {0xEEB8, 0x8CF9},+    {0xEEB9, 0x8D6F},+    {0xEEBA, 0x8E4E},+    {0xEEBB, 0x8E4D},+    {0xEEBC, 0x8E53},+    {0xEEBD, 0x8E50},+    {0xEEBE, 0x8E4C},+    {0xEEBF, 0x8E47},+    {0xEEC0, 0x8F43},+    {0xEEC1, 0x8F40},+    {0xEEC2, 0x9085},+    {0xEEC3, 0x907E},+    {0xEEC4, 0x9138},+    {0xEEC5, 0x919A},+    {0xEEC6, 0x91A2},+    {0xEEC7, 0x919B},+    {0xEEC8, 0x9199},+    {0xEEC9, 0x919F},+    {0xEECA, 0x91A1},+    {0xEECB, 0x919D},+    {0xEECC, 0x91A0},+    {0xEECD, 0x93A1},+    {0xEECE, 0x9383},+    {0xEECF, 0x93AF},+    {0xEED0, 0x9364},+    {0xEED1, 0x9356},+    {0xEED2, 0x9347},+    {0xEED3, 0x937C},+    {0xEED4, 0x9358},+    {0xEED5, 0x935C},+    {0xEED6, 0x9376},+    {0xEED7, 0x9349},+    {0xEED8, 0x9350},+    {0xEED9, 0x9351},+    {0xEEDA, 0x9360},+    {0xEEDB, 0x936D},+    {0xEEDC, 0x938F},+    {0xEEDD, 0x934C},+    {0xEEDE, 0x936A},+    {0xEEDF, 0x9379},+    {0xEEE0, 0x9357},+    {0xEEE1, 0x9355},+    {0xEEE2, 0x9352},+    {0xEEE3, 0x934F},+    {0xEEE4, 0x9371},+    {0xEEE5, 0x9377},+    {0xEEE6, 0x937B},+    {0xEEE7, 0x9361},+    {0xEEE8, 0x935E},+    {0xEEE9, 0x9363},+    {0xEEEA, 0x9367},+    {0xEEEB, 0x9380},+    {0xEEEC, 0x934E},+    {0xEEED, 0x9359},+    {0xEEEE, 0x95C7},+    {0xEEEF, 0x95C0},+    {0xEEF0, 0x95C9},+    {0xEEF1, 0x95C3},+    {0xEEF2, 0x95C5},+    {0xEEF3, 0x95B7},+    {0xEEF4, 0x96AE},+    {0xEEF5, 0x96B0},+    {0xEEF6, 0x96AC},+    {0xEEF7, 0x9720},+    {0xEEF8, 0x971F},+    {0xEEF9, 0x9718},+    {0xEEFA, 0x971D},+    {0xEEFB, 0x9719},+    {0xEEFC, 0x979A},+    {0xEEFD, 0x97A1},+    {0xEEFE, 0x979C},+    {0xEF40, 0x979E},+    {0xEF41, 0x979D},+    {0xEF42, 0x97D5},+    {0xEF43, 0x97D4},+    {0xEF44, 0x97F1},+    {0xEF45, 0x9841},+    {0xEF46, 0x9844},+    {0xEF47, 0x984A},+    {0xEF48, 0x9849},+    {0xEF49, 0x9845},+    {0xEF4A, 0x9843},+    {0xEF4B, 0x9925},+    {0xEF4C, 0x992B},+    {0xEF4D, 0x992C},+    {0xEF4E, 0x992A},+    {0xEF4F, 0x9933},+    {0xEF50, 0x9932},+    {0xEF51, 0x992F},+    {0xEF52, 0x992D},+    {0xEF53, 0x9931},+    {0xEF54, 0x9930},+    {0xEF55, 0x9998},+    {0xEF56, 0x99A3},+    {0xEF57, 0x99A1},+    {0xEF58, 0x9A02},+    {0xEF59, 0x99FA},+    {0xEF5A, 0x99F4},+    {0xEF5B, 0x99F7},+    {0xEF5C, 0x99F9},+    {0xEF5D, 0x99F8},+    {0xEF5E, 0x99F6},+    {0xEF5F, 0x99FB},+    {0xEF60, 0x99FD},+    {0xEF61, 0x99FE},+    {0xEF62, 0x99FC},+    {0xEF63, 0x9A03},+    {0xEF64, 0x9ABE},+    {0xEF65, 0x9AFE},+    {0xEF66, 0x9AFD},+    {0xEF67, 0x9B01},+    {0xEF68, 0x9AFC},+    {0xEF69, 0x9B48},+    {0xEF6A, 0x9B9A},+    {0xEF6B, 0x9BA8},+    {0xEF6C, 0x9B9E},+    {0xEF6D, 0x9B9B},+    {0xEF6E, 0x9BA6},+    {0xEF6F, 0x9BA1},+    {0xEF70, 0x9BA5},+    {0xEF71, 0x9BA4},+    {0xEF72, 0x9B86},+    {0xEF73, 0x9BA2},+    {0xEF74, 0x9BA0},+    {0xEF75, 0x9BAF},+    {0xEF76, 0x9D33},+    {0xEF77, 0x9D41},+    {0xEF78, 0x9D67},+    {0xEF79, 0x9D36},+    {0xEF7A, 0x9D2E},+    {0xEF7B, 0x9D2F},+    {0xEF7C, 0x9D31},+    {0xEF7D, 0x9D38},+    {0xEF7E, 0x9D30},+    {0xEFA1, 0x9D45},+    {0xEFA2, 0x9D42},+    {0xEFA3, 0x9D43},+    {0xEFA4, 0x9D3E},+    {0xEFA5, 0x9D37},+    {0xEFA6, 0x9D40},+    {0xEFA7, 0x9D3D},+    {0xEFA8, 0x7FF5},+    {0xEFA9, 0x9D2D},+    {0xEFAA, 0x9E8A},+    {0xEFAB, 0x9E89},+    {0xEFAC, 0x9E8D},+    {0xEFAD, 0x9EB0},+    {0xEFAE, 0x9EC8},+    {0xEFAF, 0x9EDA},+    {0xEFB0, 0x9EFB},+    {0xEFB1, 0x9EFF},+    {0xEFB2, 0x9F24},+    {0xEFB3, 0x9F23},+    {0xEFB4, 0x9F22},+    {0xEFB5, 0x9F54},+    {0xEFB6, 0x9FA0},+    {0xEFB7, 0x5131},+    {0xEFB8, 0x512D},+    {0xEFB9, 0x512E},+    {0xEFBA, 0x5698},+    {0xEFBB, 0x569C},+    {0xEFBC, 0x5697},+    {0xEFBD, 0x569A},+    {0xEFBE, 0x569D},+    {0xEFBF, 0x5699},+    {0xEFC0, 0x5970},+    {0xEFC1, 0x5B3C},+    {0xEFC2, 0x5C69},+    {0xEFC3, 0x5C6A},+    {0xEFC4, 0x5DC0},+    {0xEFC5, 0x5E6D},+    {0xEFC6, 0x5E6E},+    {0xEFC7, 0x61D8},+    {0xEFC8, 0x61DF},+    {0xEFC9, 0x61ED},+    {0xEFCA, 0x61EE},+    {0xEFCB, 0x61F1},+    {0xEFCC, 0x61EA},+    {0xEFCD, 0x61F0},+    {0xEFCE, 0x61EB},+    {0xEFCF, 0x61D6},+    {0xEFD0, 0x61E9},+    {0xEFD1, 0x64FF},+    {0xEFD2, 0x6504},+    {0xEFD3, 0x64FD},+    {0xEFD4, 0x64F8},+    {0xEFD5, 0x6501},+    {0xEFD6, 0x6503},+    {0xEFD7, 0x64FC},+    {0xEFD8, 0x6594},+    {0xEFD9, 0x65DB},+    {0xEFDA, 0x66DA},+    {0xEFDB, 0x66DB},+    {0xEFDC, 0x66D8},+    {0xEFDD, 0x6AC5},+    {0xEFDE, 0x6AB9},+    {0xEFDF, 0x6ABD},+    {0xEFE0, 0x6AE1},+    {0xEFE1, 0x6AC6},+    {0xEFE2, 0x6ABA},+    {0xEFE3, 0x6AB6},+    {0xEFE4, 0x6AB7},+    {0xEFE5, 0x6AC7},+    {0xEFE6, 0x6AB4},+    {0xEFE7, 0x6AAD},+    {0xEFE8, 0x6B5E},+    {0xEFE9, 0x6BC9},+    {0xEFEA, 0x6C0B},+    {0xEFEB, 0x7007},+    {0xEFEC, 0x700C},+    {0xEFED, 0x700D},+    {0xEFEE, 0x7001},+    {0xEFEF, 0x7005},+    {0xEFF0, 0x7014},+    {0xEFF1, 0x700E},+    {0xEFF2, 0x6FFF},+    {0xEFF3, 0x7000},+    {0xEFF4, 0x6FFB},+    {0xEFF5, 0x7026},+    {0xEFF6, 0x6FFC},+    {0xEFF7, 0x6FF7},+    {0xEFF8, 0x700A},+    {0xEFF9, 0x7201},+    {0xEFFA, 0x71FF},+    {0xEFFB, 0x71F9},+    {0xEFFC, 0x7203},+    {0xEFFD, 0x71FD},+    {0xEFFE, 0x7376},+    {0xF040, 0x74B8},+    {0xF041, 0x74C0},+    {0xF042, 0x74B5},+    {0xF043, 0x74C1},+    {0xF044, 0x74BE},+    {0xF045, 0x74B6},+    {0xF046, 0x74BB},+    {0xF047, 0x74C2},+    {0xF048, 0x7514},+    {0xF049, 0x7513},+    {0xF04A, 0x765C},+    {0xF04B, 0x7664},+    {0xF04C, 0x7659},+    {0xF04D, 0x7650},+    {0xF04E, 0x7653},+    {0xF04F, 0x7657},+    {0xF050, 0x765A},+    {0xF051, 0x76A6},+    {0xF052, 0x76BD},+    {0xF053, 0x76EC},+    {0xF054, 0x77C2},+    {0xF055, 0x77BA},+    {0xF056, 0x78FF},+    {0xF057, 0x790C},+    {0xF058, 0x7913},+    {0xF059, 0x7914},+    {0xF05A, 0x7909},+    {0xF05B, 0x7910},+    {0xF05C, 0x7912},+    {0xF05D, 0x7911},+    {0xF05E, 0x79AD},+    {0xF05F, 0x79AC},+    {0xF060, 0x7A5F},+    {0xF061, 0x7C1C},+    {0xF062, 0x7C29},+    {0xF063, 0x7C19},+    {0xF064, 0x7C20},+    {0xF065, 0x7C1F},+    {0xF066, 0x7C2D},+    {0xF067, 0x7C1D},+    {0xF068, 0x7C26},+    {0xF069, 0x7C28},+    {0xF06A, 0x7C22},+    {0xF06B, 0x7C25},+    {0xF06C, 0x7C30},+    {0xF06D, 0x7E5C},+    {0xF06E, 0x7E50},+    {0xF06F, 0x7E56},+    {0xF070, 0x7E63},+    {0xF071, 0x7E58},+    {0xF072, 0x7E62},+    {0xF073, 0x7E5F},+    {0xF074, 0x7E51},+    {0xF075, 0x7E60},+    {0xF076, 0x7E57},+    {0xF077, 0x7E53},+    {0xF078, 0x7FB5},+    {0xF079, 0x7FB3},+    {0xF07A, 0x7FF7},+    {0xF07B, 0x7FF8},+    {0xF07C, 0x8075},+    {0xF07D, 0x81D1},+    {0xF07E, 0x81D2},+    {0xF0A1, 0x81D0},+    {0xF0A2, 0x825F},+    {0xF0A3, 0x825E},+    {0xF0A4, 0x85B4},+    {0xF0A5, 0x85C6},+    {0xF0A6, 0x85C0},+    {0xF0A7, 0x85C3},+    {0xF0A8, 0x85C2},+    {0xF0A9, 0x85B3},+    {0xF0AA, 0x85B5},+    {0xF0AB, 0x85BD},+    {0xF0AC, 0x85C7},+    {0xF0AD, 0x85C4},+    {0xF0AE, 0x85BF},+    {0xF0AF, 0x85CB},+    {0xF0B0, 0x85CE},+    {0xF0B1, 0x85C8},+    {0xF0B2, 0x85C5},+    {0xF0B3, 0x85B1},+    {0xF0B4, 0x85B6},+    {0xF0B5, 0x85D2},+    {0xF0B6, 0x8624},+    {0xF0B7, 0x85B8},+    {0xF0B8, 0x85B7},+    {0xF0B9, 0x85BE},+    {0xF0BA, 0x8669},+    {0xF0BB, 0x87E7},+    {0xF0BC, 0x87E6},+    {0xF0BD, 0x87E2},+    {0xF0BE, 0x87DB},+    {0xF0BF, 0x87EB},+    {0xF0C0, 0x87EA},+    {0xF0C1, 0x87E5},+    {0xF0C2, 0x87DF},+    {0xF0C3, 0x87F3},+    {0xF0C4, 0x87E4},+    {0xF0C5, 0x87D4},+    {0xF0C6, 0x87DC},+    {0xF0C7, 0x87D3},+    {0xF0C8, 0x87ED},+    {0xF0C9, 0x87D8},+    {0xF0CA, 0x87E3},+    {0xF0CB, 0x87A4},+    {0xF0CC, 0x87D7},+    {0xF0CD, 0x87D9},+    {0xF0CE, 0x8801},+    {0xF0CF, 0x87F4},+    {0xF0D0, 0x87E8},+    {0xF0D1, 0x87DD},+    {0xF0D2, 0x8953},+    {0xF0D3, 0x894B},+    {0xF0D4, 0x894F},+    {0xF0D5, 0x894C},+    {0xF0D6, 0x8946},+    {0xF0D7, 0x8950},+    {0xF0D8, 0x8951},+    {0xF0D9, 0x8949},+    {0xF0DA, 0x8B2A},+    {0xF0DB, 0x8B27},+    {0xF0DC, 0x8B23},+    {0xF0DD, 0x8B33},+    {0xF0DE, 0x8B30},+    {0xF0DF, 0x8B35},+    {0xF0E0, 0x8B47},+    {0xF0E1, 0x8B2F},+    {0xF0E2, 0x8B3C},+    {0xF0E3, 0x8B3E},+    {0xF0E4, 0x8B31},+    {0xF0E5, 0x8B25},+    {0xF0E6, 0x8B37},+    {0xF0E7, 0x8B26},+    {0xF0E8, 0x8B36},+    {0xF0E9, 0x8B2E},+    {0xF0EA, 0x8B24},+    {0xF0EB, 0x8B3B},+    {0xF0EC, 0x8B3D},+    {0xF0ED, 0x8B3A},+    {0xF0EE, 0x8C42},+    {0xF0EF, 0x8C75},+    {0xF0F0, 0x8C99},+    {0xF0F1, 0x8C98},+    {0xF0F2, 0x8C97},+    {0xF0F3, 0x8CFE},+    {0xF0F4, 0x8D04},+    {0xF0F5, 0x8D02},+    {0xF0F6, 0x8D00},+    {0xF0F7, 0x8E5C},+    {0xF0F8, 0x8E62},+    {0xF0F9, 0x8E60},+    {0xF0FA, 0x8E57},+    {0xF0FB, 0x8E56},+    {0xF0FC, 0x8E5E},+    {0xF0FD, 0x8E65},+    {0xF0FE, 0x8E67},+    {0xF140, 0x8E5B},+    {0xF141, 0x8E5A},+    {0xF142, 0x8E61},+    {0xF143, 0x8E5D},+    {0xF144, 0x8E69},+    {0xF145, 0x8E54},+    {0xF146, 0x8F46},+    {0xF147, 0x8F47},+    {0xF148, 0x8F48},+    {0xF149, 0x8F4B},+    {0xF14A, 0x9128},+    {0xF14B, 0x913A},+    {0xF14C, 0x913B},+    {0xF14D, 0x913E},+    {0xF14E, 0x91A8},+    {0xF14F, 0x91A5},+    {0xF150, 0x91A7},+    {0xF151, 0x91AF},+    {0xF152, 0x91AA},+    {0xF153, 0x93B5},+    {0xF154, 0x938C},+    {0xF155, 0x9392},+    {0xF156, 0x93B7},+    {0xF157, 0x939B},+    {0xF158, 0x939D},+    {0xF159, 0x9389},+    {0xF15A, 0x93A7},+    {0xF15B, 0x938E},+    {0xF15C, 0x93AA},+    {0xF15D, 0x939E},+    {0xF15E, 0x93A6},+    {0xF15F, 0x9395},+    {0xF160, 0x9388},+    {0xF161, 0x9399},+    {0xF162, 0x939F},+    {0xF163, 0x938D},+    {0xF164, 0x93B1},+    {0xF165, 0x9391},+    {0xF166, 0x93B2},+    {0xF167, 0x93A4},+    {0xF168, 0x93A8},+    {0xF169, 0x93B4},+    {0xF16A, 0x93A3},+    {0xF16B, 0x93A5},+    {0xF16C, 0x95D2},+    {0xF16D, 0x95D3},+    {0xF16E, 0x95D1},+    {0xF16F, 0x96B3},+    {0xF170, 0x96D7},+    {0xF171, 0x96DA},+    {0xF172, 0x5DC2},+    {0xF173, 0x96DF},+    {0xF174, 0x96D8},+    {0xF175, 0x96DD},+    {0xF176, 0x9723},+    {0xF177, 0x9722},+    {0xF178, 0x9725},+    {0xF179, 0x97AC},+    {0xF17A, 0x97AE},+    {0xF17B, 0x97A8},+    {0xF17C, 0x97AB},+    {0xF17D, 0x97A4},+    {0xF17E, 0x97AA},+    {0xF1A1, 0x97A2},+    {0xF1A2, 0x97A5},+    {0xF1A3, 0x97D7},+    {0xF1A4, 0x97D9},+    {0xF1A5, 0x97D6},+    {0xF1A6, 0x97D8},+    {0xF1A7, 0x97FA},+    {0xF1A8, 0x9850},+    {0xF1A9, 0x9851},+    {0xF1AA, 0x9852},+    {0xF1AB, 0x98B8},+    {0xF1AC, 0x9941},+    {0xF1AD, 0x993C},+    {0xF1AE, 0x993A},+    {0xF1AF, 0x9A0F},+    {0xF1B0, 0x9A0B},+    {0xF1B1, 0x9A09},+    {0xF1B2, 0x9A0D},+    {0xF1B3, 0x9A04},+    {0xF1B4, 0x9A11},+    {0xF1B5, 0x9A0A},+    {0xF1B6, 0x9A05},+    {0xF1B7, 0x9A07},+    {0xF1B8, 0x9A06},+    {0xF1B9, 0x9AC0},+    {0xF1BA, 0x9ADC},+    {0xF1BB, 0x9B08},+    {0xF1BC, 0x9B04},+    {0xF1BD, 0x9B05},+    {0xF1BE, 0x9B29},+    {0xF1BF, 0x9B35},+    {0xF1C0, 0x9B4A},+    {0xF1C1, 0x9B4C},+    {0xF1C2, 0x9B4B},+    {0xF1C3, 0x9BC7},+    {0xF1C4, 0x9BC6},+    {0xF1C5, 0x9BC3},+    {0xF1C6, 0x9BBF},+    {0xF1C7, 0x9BC1},+    {0xF1C8, 0x9BB5},+    {0xF1C9, 0x9BB8},+    {0xF1CA, 0x9BD3},+    {0xF1CB, 0x9BB6},+    {0xF1CC, 0x9BC4},+    {0xF1CD, 0x9BB9},+    {0xF1CE, 0x9BBD},+    {0xF1CF, 0x9D5C},+    {0xF1D0, 0x9D53},+    {0xF1D1, 0x9D4F},+    {0xF1D2, 0x9D4A},+    {0xF1D3, 0x9D5B},+    {0xF1D4, 0x9D4B},+    {0xF1D5, 0x9D59},+    {0xF1D6, 0x9D56},+    {0xF1D7, 0x9D4C},+    {0xF1D8, 0x9D57},+    {0xF1D9, 0x9D52},+    {0xF1DA, 0x9D54},+    {0xF1DB, 0x9D5F},+    {0xF1DC, 0x9D58},+    {0xF1DD, 0x9D5A},+    {0xF1DE, 0x9E8E},+    {0xF1DF, 0x9E8C},+    {0xF1E0, 0x9EDF},+    {0xF1E1, 0x9F01},+    {0xF1E2, 0x9F00},+    {0xF1E3, 0x9F16},+    {0xF1E4, 0x9F25},+    {0xF1E5, 0x9F2B},+    {0xF1E6, 0x9F2A},+    {0xF1E7, 0x9F29},+    {0xF1E8, 0x9F28},+    {0xF1E9, 0x9F4C},+    {0xF1EA, 0x9F55},+    {0xF1EB, 0x5134},+    {0xF1EC, 0x5135},+    {0xF1ED, 0x5296},+    {0xF1EE, 0x52F7},+    {0xF1EF, 0x53B4},+    {0xF1F0, 0x56AB},+    {0xF1F1, 0x56AD},+    {0xF1F2, 0x56A6},+    {0xF1F3, 0x56A7},+    {0xF1F4, 0x56AA},+    {0xF1F5, 0x56AC},+    {0xF1F6, 0x58DA},+    {0xF1F7, 0x58DD},+    {0xF1F8, 0x58DB},+    {0xF1F9, 0x5912},+    {0xF1FA, 0x5B3D},+    {0xF1FB, 0x5B3E},+    {0xF1FC, 0x5B3F},+    {0xF1FD, 0x5DC3},+    {0xF1FE, 0x5E70},+    {0xF240, 0x5FBF},+    {0xF241, 0x61FB},+    {0xF242, 0x6507},+    {0xF243, 0x6510},+    {0xF244, 0x650D},+    {0xF245, 0x6509},+    {0xF246, 0x650C},+    {0xF247, 0x650E},+    {0xF248, 0x6584},+    {0xF249, 0x65DE},+    {0xF24A, 0x65DD},+    {0xF24B, 0x66DE},+    {0xF24C, 0x6AE7},+    {0xF24D, 0x6AE0},+    {0xF24E, 0x6ACC},+    {0xF24F, 0x6AD1},+    {0xF250, 0x6AD9},+    {0xF251, 0x6ACB},+    {0xF252, 0x6ADF},+    {0xF253, 0x6ADC},+    {0xF254, 0x6AD0},+    {0xF255, 0x6AEB},+    {0xF256, 0x6ACF},+    {0xF257, 0x6ACD},+    {0xF258, 0x6ADE},+    {0xF259, 0x6B60},+    {0xF25A, 0x6BB0},+    {0xF25B, 0x6C0C},+    {0xF25C, 0x7019},+    {0xF25D, 0x7027},+    {0xF25E, 0x7020},+    {0xF25F, 0x7016},+    {0xF260, 0x702B},+    {0xF261, 0x7021},+    {0xF262, 0x7022},+    {0xF263, 0x7023},+    {0xF264, 0x7029},+    {0xF265, 0x7017},+    {0xF266, 0x7024},+    {0xF267, 0x701C},+    {0xF268, 0x702A},+    {0xF269, 0x720C},+    {0xF26A, 0x720A},+    {0xF26B, 0x7207},+    {0xF26C, 0x7202},+    {0xF26D, 0x7205},+    {0xF26E, 0x72A5},+    {0xF26F, 0x72A6},+    {0xF270, 0x72A4},+    {0xF271, 0x72A3},+    {0xF272, 0x72A1},+    {0xF273, 0x74CB},+    {0xF274, 0x74C5},+    {0xF275, 0x74B7},+    {0xF276, 0x74C3},+    {0xF277, 0x7516},+    {0xF278, 0x7660},+    {0xF279, 0x77C9},+    {0xF27A, 0x77CA},+    {0xF27B, 0x77C4},+    {0xF27C, 0x77F1},+    {0xF27D, 0x791D},+    {0xF27E, 0x791B},+    {0xF2A1, 0x7921},+    {0xF2A2, 0x791C},+    {0xF2A3, 0x7917},+    {0xF2A4, 0x791E},+    {0xF2A5, 0x79B0},+    {0xF2A6, 0x7A67},+    {0xF2A7, 0x7A68},+    {0xF2A8, 0x7C33},+    {0xF2A9, 0x7C3C},+    {0xF2AA, 0x7C39},+    {0xF2AB, 0x7C2C},+    {0xF2AC, 0x7C3B},+    {0xF2AD, 0x7CEC},+    {0xF2AE, 0x7CEA},+    {0xF2AF, 0x7E76},+    {0xF2B0, 0x7E75},+    {0xF2B1, 0x7E78},+    {0xF2B2, 0x7E70},+    {0xF2B3, 0x7E77},+    {0xF2B4, 0x7E6F},+    {0xF2B5, 0x7E7A},+    {0xF2B6, 0x7E72},+    {0xF2B7, 0x7E74},+    {0xF2B8, 0x7E68},+    {0xF2B9, 0x7F4B},+    {0xF2BA, 0x7F4A},+    {0xF2BB, 0x7F83},+    {0xF2BC, 0x7F86},+    {0xF2BD, 0x7FB7},+    {0xF2BE, 0x7FFD},+    {0xF2BF, 0x7FFE},+    {0xF2C0, 0x8078},+    {0xF2C1, 0x81D7},+    {0xF2C2, 0x81D5},+    {0xF2C3, 0x8264},+    {0xF2C4, 0x8261},+    {0xF2C5, 0x8263},+    {0xF2C6, 0x85EB},+    {0xF2C7, 0x85F1},+    {0xF2C8, 0x85ED},+    {0xF2C9, 0x85D9},+    {0xF2CA, 0x85E1},+    {0xF2CB, 0x85E8},+    {0xF2CC, 0x85DA},+    {0xF2CD, 0x85D7},+    {0xF2CE, 0x85EC},+    {0xF2CF, 0x85F2},+    {0xF2D0, 0x85F8},+    {0xF2D1, 0x85D8},+    {0xF2D2, 0x85DF},+    {0xF2D3, 0x85E3},+    {0xF2D4, 0x85DC},+    {0xF2D5, 0x85D1},+    {0xF2D6, 0x85F0},+    {0xF2D7, 0x85E6},+    {0xF2D8, 0x85EF},+    {0xF2D9, 0x85DE},+    {0xF2DA, 0x85E2},+    {0xF2DB, 0x8800},+    {0xF2DC, 0x87FA},+    {0xF2DD, 0x8803},+    {0xF2DE, 0x87F6},+    {0xF2DF, 0x87F7},+    {0xF2E0, 0x8809},+    {0xF2E1, 0x880C},+    {0xF2E2, 0x880B},+    {0xF2E3, 0x8806},+    {0xF2E4, 0x87FC},+    {0xF2E5, 0x8808},+    {0xF2E6, 0x87FF},+    {0xF2E7, 0x880A},+    {0xF2E8, 0x8802},+    {0xF2E9, 0x8962},+    {0xF2EA, 0x895A},+    {0xF2EB, 0x895B},+    {0xF2EC, 0x8957},+    {0xF2ED, 0x8961},+    {0xF2EE, 0x895C},+    {0xF2EF, 0x8958},+    {0xF2F0, 0x895D},+    {0xF2F1, 0x8959},+    {0xF2F2, 0x8988},+    {0xF2F3, 0x89B7},+    {0xF2F4, 0x89B6},+    {0xF2F5, 0x89F6},+    {0xF2F6, 0x8B50},+    {0xF2F7, 0x8B48},+    {0xF2F8, 0x8B4A},+    {0xF2F9, 0x8B40},+    {0xF2FA, 0x8B53},+    {0xF2FB, 0x8B56},+    {0xF2FC, 0x8B54},+    {0xF2FD, 0x8B4B},+    {0xF2FE, 0x8B55},+    {0xF340, 0x8B51},+    {0xF341, 0x8B42},+    {0xF342, 0x8B52},+    {0xF343, 0x8B57},+    {0xF344, 0x8C43},+    {0xF345, 0x8C77},+    {0xF346, 0x8C76},+    {0xF347, 0x8C9A},+    {0xF348, 0x8D06},+    {0xF349, 0x8D07},+    {0xF34A, 0x8D09},+    {0xF34B, 0x8DAC},+    {0xF34C, 0x8DAA},+    {0xF34D, 0x8DAD},+    {0xF34E, 0x8DAB},+    {0xF34F, 0x8E6D},+    {0xF350, 0x8E78},+    {0xF351, 0x8E73},+    {0xF352, 0x8E6A},+    {0xF353, 0x8E6F},+    {0xF354, 0x8E7B},+    {0xF355, 0x8EC2},+    {0xF356, 0x8F52},+    {0xF357, 0x8F51},+    {0xF358, 0x8F4F},+    {0xF359, 0x8F50},+    {0xF35A, 0x8F53},+    {0xF35B, 0x8FB4},+    {0xF35C, 0x9140},+    {0xF35D, 0x913F},+    {0xF35E, 0x91B0},+    {0xF35F, 0x91AD},+    {0xF360, 0x93DE},+    {0xF361, 0x93C7},+    {0xF362, 0x93CF},+    {0xF363, 0x93C2},+    {0xF364, 0x93DA},+    {0xF365, 0x93D0},+    {0xF366, 0x93F9},+    {0xF367, 0x93EC},+    {0xF368, 0x93CC},+    {0xF369, 0x93D9},+    {0xF36A, 0x93A9},+    {0xF36B, 0x93E6},+    {0xF36C, 0x93CA},+    {0xF36D, 0x93D4},+    {0xF36E, 0x93EE},+    {0xF36F, 0x93E3},+    {0xF370, 0x93D5},+    {0xF371, 0x93C4},+    {0xF372, 0x93CE},+    {0xF373, 0x93C0},+    {0xF374, 0x93D2},+    {0xF375, 0x93E7},+    {0xF376, 0x957D},+    {0xF377, 0x95DA},+    {0xF378, 0x95DB},+    {0xF379, 0x96E1},+    {0xF37A, 0x9729},+    {0xF37B, 0x972B},+    {0xF37C, 0x972C},+    {0xF37D, 0x9728},+    {0xF37E, 0x9726},+    {0xF3A1, 0x97B3},+    {0xF3A2, 0x97B7},+    {0xF3A3, 0x97B6},+    {0xF3A4, 0x97DD},+    {0xF3A5, 0x97DE},+    {0xF3A6, 0x97DF},+    {0xF3A7, 0x985C},+    {0xF3A8, 0x9859},+    {0xF3A9, 0x985D},+    {0xF3AA, 0x9857},+    {0xF3AB, 0x98BF},+    {0xF3AC, 0x98BD},+    {0xF3AD, 0x98BB},+    {0xF3AE, 0x98BE},+    {0xF3AF, 0x9948},+    {0xF3B0, 0x9947},+    {0xF3B1, 0x9943},+    {0xF3B2, 0x99A6},+    {0xF3B3, 0x99A7},+    {0xF3B4, 0x9A1A},+    {0xF3B5, 0x9A15},+    {0xF3B6, 0x9A25},+    {0xF3B7, 0x9A1D},+    {0xF3B8, 0x9A24},+    {0xF3B9, 0x9A1B},+    {0xF3BA, 0x9A22},+    {0xF3BB, 0x9A20},+    {0xF3BC, 0x9A27},+    {0xF3BD, 0x9A23},+    {0xF3BE, 0x9A1E},+    {0xF3BF, 0x9A1C},+    {0xF3C0, 0x9A14},+    {0xF3C1, 0x9AC2},+    {0xF3C2, 0x9B0B},+    {0xF3C3, 0x9B0A},+    {0xF3C4, 0x9B0E},+    {0xF3C5, 0x9B0C},+    {0xF3C6, 0x9B37},+    {0xF3C7, 0x9BEA},+    {0xF3C8, 0x9BEB},+    {0xF3C9, 0x9BE0},+    {0xF3CA, 0x9BDE},+    {0xF3CB, 0x9BE4},+    {0xF3CC, 0x9BE6},+    {0xF3CD, 0x9BE2},+    {0xF3CE, 0x9BF0},+    {0xF3CF, 0x9BD4},+    {0xF3D0, 0x9BD7},+    {0xF3D1, 0x9BEC},+    {0xF3D2, 0x9BDC},+    {0xF3D3, 0x9BD9},+    {0xF3D4, 0x9BE5},+    {0xF3D5, 0x9BD5},+    {0xF3D6, 0x9BE1},+    {0xF3D7, 0x9BDA},+    {0xF3D8, 0x9D77},+    {0xF3D9, 0x9D81},+    {0xF3DA, 0x9D8A},+    {0xF3DB, 0x9D84},+    {0xF3DC, 0x9D88},+    {0xF3DD, 0x9D71},+    {0xF3DE, 0x9D80},+    {0xF3DF, 0x9D78},+    {0xF3E0, 0x9D86},+    {0xF3E1, 0x9D8B},+    {0xF3E2, 0x9D8C},+    {0xF3E3, 0x9D7D},+    {0xF3E4, 0x9D6B},+    {0xF3E5, 0x9D74},+    {0xF3E6, 0x9D75},+    {0xF3E7, 0x9D70},+    {0xF3E8, 0x9D69},+    {0xF3E9, 0x9D85},+    {0xF3EA, 0x9D73},+    {0xF3EB, 0x9D7B},+    {0xF3EC, 0x9D82},+    {0xF3ED, 0x9D6F},+    {0xF3EE, 0x9D79},+    {0xF3EF, 0x9D7F},+    {0xF3F0, 0x9D87},+    {0xF3F1, 0x9D68},+    {0xF3F2, 0x9E94},+    {0xF3F3, 0x9E91},+    {0xF3F4, 0x9EC0},+    {0xF3F5, 0x9EFC},+    {0xF3F6, 0x9F2D},+    {0xF3F7, 0x9F40},+    {0xF3F8, 0x9F41},+    {0xF3F9, 0x9F4D},+    {0xF3FA, 0x9F56},+    {0xF3FB, 0x9F57},+    {0xF3FC, 0x9F58},+    {0xF3FD, 0x5337},+    {0xF3FE, 0x56B2},+    {0xF440, 0x56B5},+    {0xF441, 0x56B3},+    {0xF442, 0x58E3},+    {0xF443, 0x5B45},+    {0xF444, 0x5DC6},+    {0xF445, 0x5DC7},+    {0xF446, 0x5EEE},+    {0xF447, 0x5EEF},+    {0xF448, 0x5FC0},+    {0xF449, 0x5FC1},+    {0xF44A, 0x61F9},+    {0xF44B, 0x6517},+    {0xF44C, 0x6516},+    {0xF44D, 0x6515},+    {0xF44E, 0x6513},+    {0xF44F, 0x65DF},+    {0xF450, 0x66E8},+    {0xF451, 0x66E3},+    {0xF452, 0x66E4},+    {0xF453, 0x6AF3},+    {0xF454, 0x6AF0},+    {0xF455, 0x6AEA},+    {0xF456, 0x6AE8},+    {0xF457, 0x6AF9},+    {0xF458, 0x6AF1},+    {0xF459, 0x6AEE},+    {0xF45A, 0x6AEF},+    {0xF45B, 0x703C},+    {0xF45C, 0x7035},+    {0xF45D, 0x702F},+    {0xF45E, 0x7037},+    {0xF45F, 0x7034},+    {0xF460, 0x7031},+    {0xF461, 0x7042},+    {0xF462, 0x7038},+    {0xF463, 0x703F},+    {0xF464, 0x703A},+    {0xF465, 0x7039},+    {0xF466, 0x7040},+    {0xF467, 0x703B},+    {0xF468, 0x7033},+    {0xF469, 0x7041},+    {0xF46A, 0x7213},+    {0xF46B, 0x7214},+    {0xF46C, 0x72A8},+    {0xF46D, 0x737D},+    {0xF46E, 0x737C},+    {0xF46F, 0x74BA},+    {0xF470, 0x76AB},+    {0xF471, 0x76AA},+    {0xF472, 0x76BE},+    {0xF473, 0x76ED},+    {0xF474, 0x77CC},+    {0xF475, 0x77CE},+    {0xF476, 0x77CF},+    {0xF477, 0x77CD},+    {0xF478, 0x77F2},+    {0xF479, 0x7925},+    {0xF47A, 0x7923},+    {0xF47B, 0x7927},+    {0xF47C, 0x7928},+    {0xF47D, 0x7924},+    {0xF47E, 0x7929},+    {0xF4A1, 0x79B2},+    {0xF4A2, 0x7A6E},+    {0xF4A3, 0x7A6C},+    {0xF4A4, 0x7A6D},+    {0xF4A5, 0x7AF7},+    {0xF4A6, 0x7C49},+    {0xF4A7, 0x7C48},+    {0xF4A8, 0x7C4A},+    {0xF4A9, 0x7C47},+    {0xF4AA, 0x7C45},+    {0xF4AB, 0x7CEE},+    {0xF4AC, 0x7E7B},+    {0xF4AD, 0x7E7E},+    {0xF4AE, 0x7E81},+    {0xF4AF, 0x7E80},+    {0xF4B0, 0x7FBA},+    {0xF4B1, 0x7FFF},+    {0xF4B2, 0x8079},+    {0xF4B3, 0x81DB},+    {0xF4B4, 0x81D9},+    {0xF4B5, 0x820B},+    {0xF4B6, 0x8268},+    {0xF4B7, 0x8269},+    {0xF4B8, 0x8622},+    {0xF4B9, 0x85FF},+    {0xF4BA, 0x8601},+    {0xF4BB, 0x85FE},+    {0xF4BC, 0x861B},+    {0xF4BD, 0x8600},+    {0xF4BE, 0x85F6},+    {0xF4BF, 0x8604},+    {0xF4C0, 0x8609},+    {0xF4C1, 0x8605},+    {0xF4C2, 0x860C},+    {0xF4C3, 0x85FD},+    {0xF4C4, 0x8819},+    {0xF4C5, 0x8810},+    {0xF4C6, 0x8811},+    {0xF4C7, 0x8817},+    {0xF4C8, 0x8813},+    {0xF4C9, 0x8816},+    {0xF4CA, 0x8963},+    {0xF4CB, 0x8966},+    {0xF4CC, 0x89B9},+    {0xF4CD, 0x89F7},+    {0xF4CE, 0x8B60},+    {0xF4CF, 0x8B6A},+    {0xF4D0, 0x8B5D},+    {0xF4D1, 0x8B68},+    {0xF4D2, 0x8B63},+    {0xF4D3, 0x8B65},+    {0xF4D4, 0x8B67},+    {0xF4D5, 0x8B6D},+    {0xF4D6, 0x8DAE},+    {0xF4D7, 0x8E86},+    {0xF4D8, 0x8E88},+    {0xF4D9, 0x8E84},+    {0xF4DA, 0x8F59},+    {0xF4DB, 0x8F56},+    {0xF4DC, 0x8F57},+    {0xF4DD, 0x8F55},+    {0xF4DE, 0x8F58},+    {0xF4DF, 0x8F5A},+    {0xF4E0, 0x908D},+    {0xF4E1, 0x9143},+    {0xF4E2, 0x9141},+    {0xF4E3, 0x91B7},+    {0xF4E4, 0x91B5},+    {0xF4E5, 0x91B2},+    {0xF4E6, 0x91B3},+    {0xF4E7, 0x940B},+    {0xF4E8, 0x9413},+    {0xF4E9, 0x93FB},+    {0xF4EA, 0x9420},+    {0xF4EB, 0x940F},+    {0xF4EC, 0x9414},+    {0xF4ED, 0x93FE},+    {0xF4EE, 0x9415},+    {0xF4EF, 0x9410},+    {0xF4F0, 0x9428},+    {0xF4F1, 0x9419},+    {0xF4F2, 0x940D},+    {0xF4F3, 0x93F5},+    {0xF4F4, 0x9400},+    {0xF4F5, 0x93F7},+    {0xF4F6, 0x9407},+    {0xF4F7, 0x940E},+    {0xF4F8, 0x9416},+    {0xF4F9, 0x9412},+    {0xF4FA, 0x93FA},+    {0xF4FB, 0x9409},+    {0xF4FC, 0x93F8},+    {0xF4FD, 0x940A},+    {0xF4FE, 0x93FF},+    {0xF540, 0x93FC},+    {0xF541, 0x940C},+    {0xF542, 0x93F6},+    {0xF543, 0x9411},+    {0xF544, 0x9406},+    {0xF545, 0x95DE},+    {0xF546, 0x95E0},+    {0xF547, 0x95DF},+    {0xF548, 0x972E},+    {0xF549, 0x972F},+    {0xF54A, 0x97B9},+    {0xF54B, 0x97BB},+    {0xF54C, 0x97FD},+    {0xF54D, 0x97FE},+    {0xF54E, 0x9860},+    {0xF54F, 0x9862},+    {0xF550, 0x9863},+    {0xF551, 0x985F},+    {0xF552, 0x98C1},+    {0xF553, 0x98C2},+    {0xF554, 0x9950},+    {0xF555, 0x994E},+    {0xF556, 0x9959},+    {0xF557, 0x994C},+    {0xF558, 0x994B},+    {0xF559, 0x9953},+    {0xF55A, 0x9A32},+    {0xF55B, 0x9A34},+    {0xF55C, 0x9A31},+    {0xF55D, 0x9A2C},+    {0xF55E, 0x9A2A},+    {0xF55F, 0x9A36},+    {0xF560, 0x9A29},+    {0xF561, 0x9A2E},+    {0xF562, 0x9A38},+    {0xF563, 0x9A2D},+    {0xF564, 0x9AC7},+    {0xF565, 0x9ACA},+    {0xF566, 0x9AC6},+    {0xF567, 0x9B10},+    {0xF568, 0x9B12},+    {0xF569, 0x9B11},+    {0xF56A, 0x9C0B},+    {0xF56B, 0x9C08},+    {0xF56C, 0x9BF7},+    {0xF56D, 0x9C05},+    {0xF56E, 0x9C12},+    {0xF56F, 0x9BF8},+    {0xF570, 0x9C40},+    {0xF571, 0x9C07},+    {0xF572, 0x9C0E},+    {0xF573, 0x9C06},+    {0xF574, 0x9C17},+    {0xF575, 0x9C14},+    {0xF576, 0x9C09},+    {0xF577, 0x9D9F},+    {0xF578, 0x9D99},+    {0xF579, 0x9DA4},+    {0xF57A, 0x9D9D},+    {0xF57B, 0x9D92},+    {0xF57C, 0x9D98},+    {0xF57D, 0x9D90},+    {0xF57E, 0x9D9B},+    {0xF5A1, 0x9DA0},+    {0xF5A2, 0x9D94},+    {0xF5A3, 0x9D9C},+    {0xF5A4, 0x9DAA},+    {0xF5A5, 0x9D97},+    {0xF5A6, 0x9DA1},+    {0xF5A7, 0x9D9A},+    {0xF5A8, 0x9DA2},+    {0xF5A9, 0x9DA8},+    {0xF5AA, 0x9D9E},+    {0xF5AB, 0x9DA3},+    {0xF5AC, 0x9DBF},+    {0xF5AD, 0x9DA9},+    {0xF5AE, 0x9D96},+    {0xF5AF, 0x9DA6},+    {0xF5B0, 0x9DA7},+    {0xF5B1, 0x9E99},+    {0xF5B2, 0x9E9B},+    {0xF5B3, 0x9E9A},+    {0xF5B4, 0x9EE5},+    {0xF5B5, 0x9EE4},+    {0xF5B6, 0x9EE7},+    {0xF5B7, 0x9EE6},+    {0xF5B8, 0x9F30},+    {0xF5B9, 0x9F2E},+    {0xF5BA, 0x9F5B},+    {0xF5BB, 0x9F60},+    {0xF5BC, 0x9F5E},+    {0xF5BD, 0x9F5D},+    {0xF5BE, 0x9F59},+    {0xF5BF, 0x9F91},+    {0xF5C0, 0x513A},+    {0xF5C1, 0x5139},+    {0xF5C2, 0x5298},+    {0xF5C3, 0x5297},+    {0xF5C4, 0x56C3},+    {0xF5C5, 0x56BD},+    {0xF5C6, 0x56BE},+    {0xF5C7, 0x5B48},+    {0xF5C8, 0x5B47},+    {0xF5C9, 0x5DCB},+    {0xF5CA, 0x5DCF},+    {0xF5CB, 0x5EF1},+    {0xF5CC, 0x61FD},+    {0xF5CD, 0x651B},+    {0xF5CE, 0x6B02},+    {0xF5CF, 0x6AFC},+    {0xF5D0, 0x6B03},+    {0xF5D1, 0x6AF8},+    {0xF5D2, 0x6B00},+    {0xF5D3, 0x7043},+    {0xF5D4, 0x7044},+    {0xF5D5, 0x704A},+    {0xF5D6, 0x7048},+    {0xF5D7, 0x7049},+    {0xF5D8, 0x7045},+    {0xF5D9, 0x7046},+    {0xF5DA, 0x721D},+    {0xF5DB, 0x721A},+    {0xF5DC, 0x7219},+    {0xF5DD, 0x737E},+    {0xF5DE, 0x7517},+    {0xF5DF, 0x766A},+    {0xF5E0, 0x77D0},+    {0xF5E1, 0x792D},+    {0xF5E2, 0x7931},+    {0xF5E3, 0x792F},+    {0xF5E4, 0x7C54},+    {0xF5E5, 0x7C53},+    {0xF5E6, 0x7CF2},+    {0xF5E7, 0x7E8A},+    {0xF5E8, 0x7E87},+    {0xF5E9, 0x7E88},+    {0xF5EA, 0x7E8B},+    {0xF5EB, 0x7E86},+    {0xF5EC, 0x7E8D},+    {0xF5ED, 0x7F4D},+    {0xF5EE, 0x7FBB},+    {0xF5EF, 0x8030},+    {0xF5F0, 0x81DD},+    {0xF5F1, 0x8618},+    {0xF5F2, 0x862A},+    {0xF5F3, 0x8626},+    {0xF5F4, 0x861F},+    {0xF5F5, 0x8623},+    {0xF5F6, 0x861C},+    {0xF5F7, 0x8619},+    {0xF5F8, 0x8627},+    {0xF5F9, 0x862E},+    {0xF5FA, 0x8621},+    {0xF5FB, 0x8620},+    {0xF5FC, 0x8629},+    {0xF5FD, 0x861E},+    {0xF5FE, 0x8625},+    {0xF640, 0x8829},+    {0xF641, 0x881D},+    {0xF642, 0x881B},+    {0xF643, 0x8820},+    {0xF644, 0x8824},+    {0xF645, 0x881C},+    {0xF646, 0x882B},+    {0xF647, 0x884A},+    {0xF648, 0x896D},+    {0xF649, 0x8969},+    {0xF64A, 0x896E},+    {0xF64B, 0x896B},+    {0xF64C, 0x89FA},+    {0xF64D, 0x8B79},+    {0xF64E, 0x8B78},+    {0xF64F, 0x8B45},+    {0xF650, 0x8B7A},+    {0xF651, 0x8B7B},+    {0xF652, 0x8D10},+    {0xF653, 0x8D14},+    {0xF654, 0x8DAF},+    {0xF655, 0x8E8E},+    {0xF656, 0x8E8C},+    {0xF657, 0x8F5E},+    {0xF658, 0x8F5B},+    {0xF659, 0x8F5D},+    {0xF65A, 0x9146},+    {0xF65B, 0x9144},+    {0xF65C, 0x9145},+    {0xF65D, 0x91B9},+    {0xF65E, 0x943F},+    {0xF65F, 0x943B},+    {0xF660, 0x9436},+    {0xF661, 0x9429},+    {0xF662, 0x943D},+    {0xF663, 0x943C},+    {0xF664, 0x9430},+    {0xF665, 0x9439},+    {0xF666, 0x942A},+    {0xF667, 0x9437},+    {0xF668, 0x942C},+    {0xF669, 0x9440},+    {0xF66A, 0x9431},+    {0xF66B, 0x95E5},+    {0xF66C, 0x95E4},+    {0xF66D, 0x95E3},+    {0xF66E, 0x9735},+    {0xF66F, 0x973A},+    {0xF670, 0x97BF},+    {0xF671, 0x97E1},+    {0xF672, 0x9864},+    {0xF673, 0x98C9},+    {0xF674, 0x98C6},+    {0xF675, 0x98C0},+    {0xF676, 0x9958},+    {0xF677, 0x9956},+    {0xF678, 0x9A39},+    {0xF679, 0x9A3D},+    {0xF67A, 0x9A46},+    {0xF67B, 0x9A44},+    {0xF67C, 0x9A42},+    {0xF67D, 0x9A41},+    {0xF67E, 0x9A3A},+    {0xF6A1, 0x9A3F},+    {0xF6A2, 0x9ACD},+    {0xF6A3, 0x9B15},+    {0xF6A4, 0x9B17},+    {0xF6A5, 0x9B18},+    {0xF6A6, 0x9B16},+    {0xF6A7, 0x9B3A},+    {0xF6A8, 0x9B52},+    {0xF6A9, 0x9C2B},+    {0xF6AA, 0x9C1D},+    {0xF6AB, 0x9C1C},+    {0xF6AC, 0x9C2C},+    {0xF6AD, 0x9C23},+    {0xF6AE, 0x9C28},+    {0xF6AF, 0x9C29},+    {0xF6B0, 0x9C24},+    {0xF6B1, 0x9C21},+    {0xF6B2, 0x9DB7},+    {0xF6B3, 0x9DB6},+    {0xF6B4, 0x9DBC},+    {0xF6B5, 0x9DC1},+    {0xF6B6, 0x9DC7},+    {0xF6B7, 0x9DCA},+    {0xF6B8, 0x9DCF},+    {0xF6B9, 0x9DBE},+    {0xF6BA, 0x9DC5},+    {0xF6BB, 0x9DC3},+    {0xF6BC, 0x9DBB},+    {0xF6BD, 0x9DB5},+    {0xF6BE, 0x9DCE},+    {0xF6BF, 0x9DB9},+    {0xF6C0, 0x9DBA},+    {0xF6C1, 0x9DAC},+    {0xF6C2, 0x9DC8},+    {0xF6C3, 0x9DB1},+    {0xF6C4, 0x9DAD},+    {0xF6C5, 0x9DCC},+    {0xF6C6, 0x9DB3},+    {0xF6C7, 0x9DCD},+    {0xF6C8, 0x9DB2},+    {0xF6C9, 0x9E7A},+    {0xF6CA, 0x9E9C},+    {0xF6CB, 0x9EEB},+    {0xF6CC, 0x9EEE},+    {0xF6CD, 0x9EED},+    {0xF6CE, 0x9F1B},+    {0xF6CF, 0x9F18},+    {0xF6D0, 0x9F1A},+    {0xF6D1, 0x9F31},+    {0xF6D2, 0x9F4E},+    {0xF6D3, 0x9F65},+    {0xF6D4, 0x9F64},+    {0xF6D5, 0x9F92},+    {0xF6D6, 0x4EB9},+    {0xF6D7, 0x56C6},+    {0xF6D8, 0x56C5},+    {0xF6D9, 0x56CB},+    {0xF6DA, 0x5971},+    {0xF6DB, 0x5B4B},+    {0xF6DC, 0x5B4C},+    {0xF6DD, 0x5DD5},+    {0xF6DE, 0x5DD1},+    {0xF6DF, 0x5EF2},+    {0xF6E0, 0x6521},+    {0xF6E1, 0x6520},+    {0xF6E2, 0x6526},+    {0xF6E3, 0x6522},+    {0xF6E4, 0x6B0B},+    {0xF6E5, 0x6B08},+    {0xF6E6, 0x6B09},+    {0xF6E7, 0x6C0D},+    {0xF6E8, 0x7055},+    {0xF6E9, 0x7056},+    {0xF6EA, 0x7057},+    {0xF6EB, 0x7052},+    {0xF6EC, 0x721E},+    {0xF6ED, 0x721F},+    {0xF6EE, 0x72A9},+    {0xF6EF, 0x737F},+    {0xF6F0, 0x74D8},+    {0xF6F1, 0x74D5},+    {0xF6F2, 0x74D9},+    {0xF6F3, 0x74D7},+    {0xF6F4, 0x766D},+    {0xF6F5, 0x76AD},+    {0xF6F6, 0x7935},+    {0xF6F7, 0x79B4},+    {0xF6F8, 0x7A70},+    {0xF6F9, 0x7A71},+    {0xF6FA, 0x7C57},+    {0xF6FB, 0x7C5C},+    {0xF6FC, 0x7C59},+    {0xF6FD, 0x7C5B},+    {0xF6FE, 0x7C5A},+    {0xF740, 0x7CF4},+    {0xF741, 0x7CF1},+    {0xF742, 0x7E91},+    {0xF743, 0x7F4F},+    {0xF744, 0x7F87},+    {0xF745, 0x81DE},+    {0xF746, 0x826B},+    {0xF747, 0x8634},+    {0xF748, 0x8635},+    {0xF749, 0x8633},+    {0xF74A, 0x862C},+    {0xF74B, 0x8632},+    {0xF74C, 0x8636},+    {0xF74D, 0x882C},+    {0xF74E, 0x8828},+    {0xF74F, 0x8826},+    {0xF750, 0x882A},+    {0xF751, 0x8825},+    {0xF752, 0x8971},+    {0xF753, 0x89BF},+    {0xF754, 0x89BE},+    {0xF755, 0x89FB},+    {0xF756, 0x8B7E},+    {0xF757, 0x8B84},+    {0xF758, 0x8B82},+    {0xF759, 0x8B86},+    {0xF75A, 0x8B85},+    {0xF75B, 0x8B7F},+    {0xF75C, 0x8D15},+    {0xF75D, 0x8E95},+    {0xF75E, 0x8E94},+    {0xF75F, 0x8E9A},+    {0xF760, 0x8E92},+    {0xF761, 0x8E90},+    {0xF762, 0x8E96},+    {0xF763, 0x8E97},+    {0xF764, 0x8F60},+    {0xF765, 0x8F62},+    {0xF766, 0x9147},+    {0xF767, 0x944C},+    {0xF768, 0x9450},+    {0xF769, 0x944A},+    {0xF76A, 0x944B},+    {0xF76B, 0x944F},+    {0xF76C, 0x9447},+    {0xF76D, 0x9445},+    {0xF76E, 0x9448},+    {0xF76F, 0x9449},+    {0xF770, 0x9446},+    {0xF771, 0x973F},+    {0xF772, 0x97E3},+    {0xF773, 0x986A},+    {0xF774, 0x9869},+    {0xF775, 0x98CB},+    {0xF776, 0x9954},+    {0xF777, 0x995B},+    {0xF778, 0x9A4E},+    {0xF779, 0x9A53},+    {0xF77A, 0x9A54},+    {0xF77B, 0x9A4C},+    {0xF77C, 0x9A4F},+    {0xF77D, 0x9A48},+    {0xF77E, 0x9A4A},+    {0xF7A1, 0x9A49},+    {0xF7A2, 0x9A52},+    {0xF7A3, 0x9A50},+    {0xF7A4, 0x9AD0},+    {0xF7A5, 0x9B19},+    {0xF7A6, 0x9B2B},+    {0xF7A7, 0x9B3B},+    {0xF7A8, 0x9B56},+    {0xF7A9, 0x9B55},+    {0xF7AA, 0x9C46},+    {0xF7AB, 0x9C48},+    {0xF7AC, 0x9C3F},+    {0xF7AD, 0x9C44},+    {0xF7AE, 0x9C39},+    {0xF7AF, 0x9C33},+    {0xF7B0, 0x9C41},+    {0xF7B1, 0x9C3C},+    {0xF7B2, 0x9C37},+    {0xF7B3, 0x9C34},+    {0xF7B4, 0x9C32},+    {0xF7B5, 0x9C3D},+    {0xF7B6, 0x9C36},+    {0xF7B7, 0x9DDB},+    {0xF7B8, 0x9DD2},+    {0xF7B9, 0x9DDE},+    {0xF7BA, 0x9DDA},+    {0xF7BB, 0x9DCB},+    {0xF7BC, 0x9DD0},+    {0xF7BD, 0x9DDC},+    {0xF7BE, 0x9DD1},+    {0xF7BF, 0x9DDF},+    {0xF7C0, 0x9DE9},+    {0xF7C1, 0x9DD9},+    {0xF7C2, 0x9DD8},+    {0xF7C3, 0x9DD6},+    {0xF7C4, 0x9DF5},+    {0xF7C5, 0x9DD5},+    {0xF7C6, 0x9DDD},+    {0xF7C7, 0x9EB6},+    {0xF7C8, 0x9EF0},+    {0xF7C9, 0x9F35},+    {0xF7CA, 0x9F33},+    {0xF7CB, 0x9F32},+    {0xF7CC, 0x9F42},+    {0xF7CD, 0x9F6B},+    {0xF7CE, 0x9F95},+    {0xF7CF, 0x9FA2},+    {0xF7D0, 0x513D},+    {0xF7D1, 0x5299},+    {0xF7D2, 0x58E8},+    {0xF7D3, 0x58E7},+    {0xF7D4, 0x5972},+    {0xF7D5, 0x5B4D},+    {0xF7D6, 0x5DD8},+    {0xF7D7, 0x882F},+    {0xF7D8, 0x5F4F},+    {0xF7D9, 0x6201},+    {0xF7DA, 0x6203},+    {0xF7DB, 0x6204},+    {0xF7DC, 0x6529},+    {0xF7DD, 0x6525},+    {0xF7DE, 0x6596},+    {0xF7DF, 0x66EB},+    {0xF7E0, 0x6B11},+    {0xF7E1, 0x6B12},+    {0xF7E2, 0x6B0F},+    {0xF7E3, 0x6BCA},+    {0xF7E4, 0x705B},+    {0xF7E5, 0x705A},+    {0xF7E6, 0x7222},+    {0xF7E7, 0x7382},+    {0xF7E8, 0x7381},+    {0xF7E9, 0x7383},+    {0xF7EA, 0x7670},+    {0xF7EB, 0x77D4},+    {0xF7EC, 0x7C67},+    {0xF7ED, 0x7C66},+    {0xF7EE, 0x7E95},+    {0xF7EF, 0x826C},+    {0xF7F0, 0x863A},+    {0xF7F1, 0x8640},+    {0xF7F2, 0x8639},+    {0xF7F3, 0x863C},+    {0xF7F4, 0x8631},+    {0xF7F5, 0x863B},+    {0xF7F6, 0x863E},+    {0xF7F7, 0x8830},+    {0xF7F8, 0x8832},+    {0xF7F9, 0x882E},+    {0xF7FA, 0x8833},+    {0xF7FB, 0x8976},+    {0xF7FC, 0x8974},+    {0xF7FD, 0x8973},+    {0xF7FE, 0x89FE},+    {0xF840, 0x8B8C},+    {0xF841, 0x8B8E},+    {0xF842, 0x8B8B},+    {0xF843, 0x8B88},+    {0xF844, 0x8C45},+    {0xF845, 0x8D19},+    {0xF846, 0x8E98},+    {0xF847, 0x8F64},+    {0xF848, 0x8F63},+    {0xF849, 0x91BC},+    {0xF84A, 0x9462},+    {0xF84B, 0x9455},+    {0xF84C, 0x945D},+    {0xF84D, 0x9457},+    {0xF84E, 0x945E},+    {0xF84F, 0x97C4},+    {0xF850, 0x97C5},+    {0xF851, 0x9800},+    {0xF852, 0x9A56},+    {0xF853, 0x9A59},+    {0xF854, 0x9B1E},+    {0xF855, 0x9B1F},+    {0xF856, 0x9B20},+    {0xF857, 0x9C52},+    {0xF858, 0x9C58},+    {0xF859, 0x9C50},+    {0xF85A, 0x9C4A},+    {0xF85B, 0x9C4D},+    {0xF85C, 0x9C4B},+    {0xF85D, 0x9C55},+    {0xF85E, 0x9C59},+    {0xF85F, 0x9C4C},+    {0xF860, 0x9C4E},+    {0xF861, 0x9DFB},+    {0xF862, 0x9DF7},+    {0xF863, 0x9DEF},+    {0xF864, 0x9DE3},+    {0xF865, 0x9DEB},+    {0xF866, 0x9DF8},+    {0xF867, 0x9DE4},+    {0xF868, 0x9DF6},+    {0xF869, 0x9DE1},+    {0xF86A, 0x9DEE},+    {0xF86B, 0x9DE6},+    {0xF86C, 0x9DF2},+    {0xF86D, 0x9DF0},+    {0xF86E, 0x9DE2},+    {0xF86F, 0x9DEC},+    {0xF870, 0x9DF4},+    {0xF871, 0x9DF3},+    {0xF872, 0x9DE8},+    {0xF873, 0x9DED},+    {0xF874, 0x9EC2},+    {0xF875, 0x9ED0},+    {0xF876, 0x9EF2},+    {0xF877, 0x9EF3},+    {0xF878, 0x9F06},+    {0xF879, 0x9F1C},+    {0xF87A, 0x9F38},+    {0xF87B, 0x9F37},+    {0xF87C, 0x9F36},+    {0xF87D, 0x9F43},+    {0xF87E, 0x9F4F},+    {0xF8A1, 0x9F71},+    {0xF8A2, 0x9F70},+    {0xF8A3, 0x9F6E},+    {0xF8A4, 0x9F6F},+    {0xF8A5, 0x56D3},+    {0xF8A6, 0x56CD},+    {0xF8A7, 0x5B4E},+    {0xF8A8, 0x5C6D},+    {0xF8A9, 0x652D},+    {0xF8AA, 0x66ED},+    {0xF8AB, 0x66EE},+    {0xF8AC, 0x6B13},+    {0xF8AD, 0x705F},+    {0xF8AE, 0x7061},+    {0xF8AF, 0x705D},+    {0xF8B0, 0x7060},+    {0xF8B1, 0x7223},+    {0xF8B2, 0x74DB},+    {0xF8B3, 0x74E5},+    {0xF8B4, 0x77D5},+    {0xF8B5, 0x7938},+    {0xF8B6, 0x79B7},+    {0xF8B7, 0x79B6},+    {0xF8B8, 0x7C6A},+    {0xF8B9, 0x7E97},+    {0xF8BA, 0x7F89},+    {0xF8BB, 0x826D},+    {0xF8BC, 0x8643},+    {0xF8BD, 0x8838},+    {0xF8BE, 0x8837},+    {0xF8BF, 0x8835},+    {0xF8C0, 0x884B},+    {0xF8C1, 0x8B94},+    {0xF8C2, 0x8B95},+    {0xF8C3, 0x8E9E},+    {0xF8C4, 0x8E9F},+    {0xF8C5, 0x8EA0},+    {0xF8C6, 0x8E9D},+    {0xF8C7, 0x91BE},+    {0xF8C8, 0x91BD},+    {0xF8C9, 0x91C2},+    {0xF8CA, 0x946B},+    {0xF8CB, 0x9468},+    {0xF8CC, 0x9469},+    {0xF8CD, 0x96E5},+    {0xF8CE, 0x9746},+    {0xF8CF, 0x9743},+    {0xF8D0, 0x9747},+    {0xF8D1, 0x97C7},+    {0xF8D2, 0x97E5},+    {0xF8D3, 0x9A5E},+    {0xF8D4, 0x9AD5},+    {0xF8D5, 0x9B59},+    {0xF8D6, 0x9C63},+    {0xF8D7, 0x9C67},+    {0xF8D8, 0x9C66},+    {0xF8D9, 0x9C62},+    {0xF8DA, 0x9C5E},+    {0xF8DB, 0x9C60},+    {0xF8DC, 0x9E02},+    {0xF8DD, 0x9DFE},+    {0xF8DE, 0x9E07},+    {0xF8DF, 0x9E03},+    {0xF8E0, 0x9E06},+    {0xF8E1, 0x9E05},+    {0xF8E2, 0x9E00},+    {0xF8E3, 0x9E01},+    {0xF8E4, 0x9E09},+    {0xF8E5, 0x9DFF},+    {0xF8E6, 0x9DFD},+    {0xF8E7, 0x9E04},+    {0xF8E8, 0x9EA0},+    {0xF8E9, 0x9F1E},+    {0xF8EA, 0x9F46},+    {0xF8EB, 0x9F74},+    {0xF8EC, 0x9F75},+    {0xF8ED, 0x9F76},+    {0xF8EE, 0x56D4},+    {0xF8EF, 0x652E},+    {0xF8F0, 0x65B8},+    {0xF8F1, 0x6B18},+    {0xF8F2, 0x6B19},+    {0xF8F3, 0x6B17},+    {0xF8F4, 0x6B1A},+    {0xF8F5, 0x7062},+    {0xF8F6, 0x7226},+    {0xF8F7, 0x72AA},+    {0xF8F8, 0x77D8},+    {0xF8F9, 0x77D9},+    {0xF8FA, 0x7939},+    {0xF8FB, 0x7C69},+    {0xF8FC, 0x7C6B},+    {0xF8FD, 0x7CF6},+    {0xF8FE, 0x7E9A},+    {0xF940, 0x7E98},+    {0xF941, 0x7E9B},+    {0xF942, 0x7E99},+    {0xF943, 0x81E0},+    {0xF944, 0x81E1},+    {0xF945, 0x8646},+    {0xF946, 0x8647},+    {0xF947, 0x8648},+    {0xF948, 0x8979},+    {0xF949, 0x897A},+    {0xF94A, 0x897C},+    {0xF94B, 0x897B},+    {0xF94C, 0x89FF},+    {0xF94D, 0x8B98},+    {0xF94E, 0x8B99},+    {0xF94F, 0x8EA5},+    {0xF950, 0x8EA4},+    {0xF951, 0x8EA3},+    {0xF952, 0x946E},+    {0xF953, 0x946D},+    {0xF954, 0x946F},+    {0xF955, 0x9471},+    {0xF956, 0x9473},+    {0xF957, 0x9749},+    {0xF958, 0x9872},+    {0xF959, 0x995F},+    {0xF95A, 0x9C68},+    {0xF95B, 0x9C6E},+    {0xF95C, 0x9C6D},+    {0xF95D, 0x9E0B},+    {0xF95E, 0x9E0D},+    {0xF95F, 0x9E10},+    {0xF960, 0x9E0F},+    {0xF961, 0x9E12},+    {0xF962, 0x9E11},+    {0xF963, 0x9EA1},+    {0xF964, 0x9EF5},+    {0xF965, 0x9F09},+    {0xF966, 0x9F47},+    {0xF967, 0x9F78},+    {0xF968, 0x9F7B},+    {0xF969, 0x9F7A},+    {0xF96A, 0x9F79},+    {0xF96B, 0x571E},+    {0xF96C, 0x7066},+    {0xF96D, 0x7C6F},+    {0xF96E, 0x883C},+    {0xF96F, 0x8DB2},+    {0xF970, 0x8EA6},+    {0xF971, 0x91C3},+    {0xF972, 0x9474},+    {0xF973, 0x9478},+    {0xF974, 0x9476},+    {0xF975, 0x9475},+    {0xF976, 0x9A60},+    {0xF977, 0x9C74},+    {0xF978, 0x9C73},+    {0xF979, 0x9C71},+    {0xF97A, 0x9C75},+    {0xF97B, 0x9E14},+    {0xF97C, 0x9E13},+    {0xF97D, 0x9EF6},+    {0xF97E, 0x9F0A},+    {0xF9A1, 0x9FA4},+    {0xF9A2, 0x7068},+    {0xF9A3, 0x7065},+    {0xF9A4, 0x7CF7},+    {0xF9A5, 0x866A},+    {0xF9A6, 0x883E},+    {0xF9A7, 0x883D},+    {0xF9A8, 0x883F},+    {0xF9A9, 0x8B9E},+    {0xF9AA, 0x8C9C},+    {0xF9AB, 0x8EA9},+    {0xF9AC, 0x8EC9},+    {0xF9AD, 0x974B},+    {0xF9AE, 0x9873},+    {0xF9AF, 0x9874},+    {0xF9B0, 0x98CC},+    {0xF9B1, 0x9961},+    {0xF9B2, 0x99AB},+    {0xF9B3, 0x9A64},+    {0xF9B4, 0x9A66},+    {0xF9B5, 0x9A67},+    {0xF9B6, 0x9B24},+    {0xF9B7, 0x9E15},+    {0xF9B8, 0x9E17},+    {0xF9B9, 0x9F48},+    {0xF9BA, 0x6207},+    {0xF9BB, 0x6B1E},+    {0xF9BC, 0x7227},+    {0xF9BD, 0x864C},+    {0xF9BE, 0x8EA8},+    {0xF9BF, 0x9482},+    {0xF9C0, 0x9480},+    {0xF9C1, 0x9481},+    {0xF9C2, 0x9A69},+    {0xF9C3, 0x9A68},+    {0xF9C4, 0x9B2E},+    {0xF9C5, 0x9E19},+    {0xF9C6, 0x7229},+    {0xF9C7, 0x864B},+    {0xF9C8, 0x8B9F},+    {0xF9C9, 0x9483},+    {0xF9CA, 0x9C79},+    {0xF9CB, 0x9EB7},+    {0xF9CC, 0x7675},+    {0xF9CD, 0x9A6B},+    {0xF9CE, 0x9C7A},+    {0xF9CF, 0x9E1D},+    {0xF9D0, 0x7069},+    {0xF9D1, 0x706A},+    {0xF9D2, 0x9EA4},+    {0xF9D3, 0x9F7E},+    {0xF9D4, 0x9F49},+    {0xF9D5, 0x9F98},+    {0xF9D6, 0x7881},+    {0xF9D7, 0x92B9},+    {0xF9D8, 0x88CF},+    {0xF9D9, 0x58BB},+    {0xF9DA, 0x6052},+    {0xF9DB, 0x7CA7},+    {0xF9DC, 0x5AFA},+    {0xF9DD, 0x2554},+    {0xF9DE, 0x2566},+    {0xF9DF, 0x2557},+    {0xF9E0, 0x2560},+    {0xF9E1, 0x256C},+    {0xF9E2, 0x2563},+    {0xF9E3, 0x255A},+    {0xF9E4, 0x2569},+    {0xF9E5, 0x255D},+    {0xF9E6, 0x2552},+    {0xF9E7, 0x2564},+    {0xF9E8, 0x2555},+    {0xF9E9, 0x255E},+    {0xF9EA, 0x256A},+    {0xF9EB, 0x2561},+    {0xF9EC, 0x2558},+    {0xF9ED, 0x2567},+    {0xF9EE, 0x255B},+    {0xF9EF, 0x2553},+    {0xF9F0, 0x2565},+    {0xF9F1, 0x2556},+    {0xF9F2, 0x255F},+    {0xF9F3, 0x256B},+    {0xF9F4, 0x2562},+    {0xF9F5, 0x2559},+    {0xF9F6, 0x2568},+    {0xF9F7, 0x255C},+    {0xF9F8, 0x2551},+    {0xF9F9, 0x2550},+    {0xF9FA, 0x256D},+    {0xF9FB, 0x256E},+    {0xF9FC, 0x2570},+    {0xF9FD, 0x256F},+    {0xF9FE, 0x2593},+    {0xFA40, 0xE000},+    {0xFA41, 0xE001},+    {0xFA42, 0xE002},+    {0xFA43, 0xE003},+    {0xFA44, 0xE004},+    {0xFA45, 0xE005},+    {0xFA46, 0xE006},+    {0xFA47, 0xE007},+    {0xFA48, 0xE008},+    {0xFA49, 0xE009},+    {0xFA4A, 0xE00A},+    {0xFA4B, 0xE00B},+    {0xFA4C, 0xE00C},+    {0xFA4D, 0xE00D},+    {0xFA4E, 0xE00E},+    {0xFA4F, 0xE00F},+    {0xFA50, 0xE010},+    {0xFA51, 0xE011},+    {0xFA52, 0xE012},+    {0xFA53, 0xE013},+    {0xFA54, 0xE014},+    {0xFA55, 0xE015},+    {0xFA56, 0xE016},+    {0xFA57, 0xE017},+    {0xFA58, 0xE018},+    {0xFA59, 0xE019},+    {0xFA5A, 0xE01A},+    {0xFA5B, 0xE01B},+    {0xFA5C, 0xE01C},+    {0xFA5D, 0xE01D},+    {0xFA5E, 0xE01E},+    {0xFA5F, 0xE01F},+    {0xFA60, 0xE020},+    {0xFA61, 0xE021},+    {0xFA62, 0xE022},+    {0xFA63, 0xE023},+    {0xFA64, 0xE024},+    {0xFA65, 0xE025},+    {0xFA66, 0xE026},+    {0xFA67, 0xE027},+    {0xFA68, 0xE028},+    {0xFA69, 0xE029},+    {0xFA6A, 0xE02A},+    {0xFA6B, 0xE02B},+    {0xFA6C, 0xE02C},+    {0xFA6D, 0xE02D},+    {0xFA6E, 0xE02E},+    {0xFA6F, 0xE02F},+    {0xFA70, 0xE030},+    {0xFA71, 0xE031},+    {0xFA72, 0xE032},+    {0xFA73, 0xE033},+    {0xFA74, 0xE034},+    {0xFA75, 0xE035},+    {0xFA76, 0xE036},+    {0xFA77, 0xE037},+    {0xFA78, 0xE038},+    {0xFA79, 0xE039},+    {0xFA7A, 0xE03A},+    {0xFA7B, 0xE03B},+    {0xFA7C, 0xE03C},+    {0xFA7D, 0xE03D},+    {0xFA7E, 0xE03E},+    {0xFAA1, 0xE03F},+    {0xFAA2, 0xE040},+    {0xFAA3, 0xE041},+    {0xFAA4, 0xE042},+    {0xFAA5, 0xE043},+    {0xFAA6, 0xE044},+    {0xFAA7, 0xE045},+    {0xFAA8, 0xE046},+    {0xFAA9, 0xE047},+    {0xFAAA, 0xE048},+    {0xFAAB, 0xE049},+    {0xFAAC, 0xE04A},+    {0xFAAD, 0xE04B},+    {0xFAAE, 0xE04C},+    {0xFAAF, 0xE04D},+    {0xFAB0, 0xE04E},+    {0xFAB1, 0xE04F},+    {0xFAB2, 0xE050},+    {0xFAB3, 0xE051},+    {0xFAB4, 0xE052},+    {0xFAB5, 0xE053},+    {0xFAB6, 0xE054},+    {0xFAB7, 0xE055},+    {0xFAB8, 0xE056},+    {0xFAB9, 0xE057},+    {0xFABA, 0xE058},+    {0xFABB, 0xE059},+    {0xFABC, 0xE05A},+    {0xFABD, 0xE05B},+    {0xFABE, 0xE05C},+    {0xFABF, 0xE05D},+    {0xFAC0, 0xE05E},+    {0xFAC1, 0xE05F},+    {0xFAC2, 0xE060},+    {0xFAC3, 0xE061},+    {0xFAC4, 0xE062},+    {0xFAC5, 0xE063},+    {0xFAC6, 0xE064},+    {0xFAC7, 0xE065},+    {0xFAC8, 0xE066},+    {0xFAC9, 0xE067},+    {0xFACA, 0xE068},+    {0xFACB, 0xE069},+    {0xFACC, 0xE06A},+    {0xFACD, 0xE06B},+    {0xFACE, 0xE06C},+    {0xFACF, 0xE06D},+    {0xFAD0, 0xE06E},+    {0xFAD1, 0xE06F},+    {0xFAD2, 0xE070},+    {0xFAD3, 0xE071},+    {0xFAD4, 0xE072},+    {0xFAD5, 0xE073},+    {0xFAD6, 0xE074},+    {0xFAD7, 0xE075},+    {0xFAD8, 0xE076},+    {0xFAD9, 0xE077},+    {0xFADA, 0xE078},+    {0xFADB, 0xE079},+    {0xFADC, 0xE07A},+    {0xFADD, 0xE07B},+    {0xFADE, 0xE07C},+    {0xFADF, 0xE07D},+    {0xFAE0, 0xE07E},+    {0xFAE1, 0xE07F},+    {0xFAE2, 0xE080},+    {0xFAE3, 0xE081},+    {0xFAE4, 0xE082},+    {0xFAE5, 0xE083},+    {0xFAE6, 0xE084},+    {0xFAE7, 0xE085},+    {0xFAE8, 0xE086},+    {0xFAE9, 0xE087},+    {0xFAEA, 0xE088},+    {0xFAEB, 0xE089},+    {0xFAEC, 0xE08A},+    {0xFAED, 0xE08B},+    {0xFAEE, 0xE08C},+    {0xFAEF, 0xE08D},+    {0xFAF0, 0xE08E},+    {0xFAF1, 0xE08F},+    {0xFAF2, 0xE090},+    {0xFAF3, 0xE091},+    {0xFAF4, 0xE092},+    {0xFAF5, 0xE093},+    {0xFAF6, 0xE094},+    {0xFAF7, 0xE095},+    {0xFAF8, 0xE096},+    {0xFAF9, 0xE097},+    {0xFAFA, 0xE098},+    {0xFAFB, 0xE099},+    {0xFAFC, 0xE09A},+    {0xFAFD, 0xE09B},+    {0xFAFE, 0xE09C},+    {0xFB40, 0xE09D},+    {0xFB41, 0xE09E},+    {0xFB42, 0xE09F},+    {0xFB43, 0xE0A0},+    {0xFB44, 0xE0A1},+    {0xFB45, 0xE0A2},+    {0xFB46, 0xE0A3},+    {0xFB47, 0xE0A4},+    {0xFB48, 0xE0A5},+    {0xFB49, 0xE0A6},+    {0xFB4A, 0xE0A7},+    {0xFB4B, 0xE0A8},+    {0xFB4C, 0xE0A9},+    {0xFB4D, 0xE0AA},+    {0xFB4E, 0xE0AB},+    {0xFB4F, 0xE0AC},+    {0xFB50, 0xE0AD},+    {0xFB51, 0xE0AE},+    {0xFB52, 0xE0AF},+    {0xFB53, 0xE0B0},+    {0xFB54, 0xE0B1},+    {0xFB55, 0xE0B2},+    {0xFB56, 0xE0B3},+    {0xFB57, 0xE0B4},+    {0xFB58, 0xE0B5},+    {0xFB59, 0xE0B6},+    {0xFB5A, 0xE0B7},+    {0xFB5B, 0xE0B8},+    {0xFB5C, 0xE0B9},+    {0xFB5D, 0xE0BA},+    {0xFB5E, 0xE0BB},+    {0xFB5F, 0xE0BC},+    {0xFB60, 0xE0BD},+    {0xFB61, 0xE0BE},+    {0xFB62, 0xE0BF},+    {0xFB63, 0xE0C0},+    {0xFB64, 0xE0C1},+    {0xFB65, 0xE0C2},+    {0xFB66, 0xE0C3},+    {0xFB67, 0xE0C4},+    {0xFB68, 0xE0C5},+    {0xFB69, 0xE0C6},+    {0xFB6A, 0xE0C7},+    {0xFB6B, 0xE0C8},+    {0xFB6C, 0xE0C9},+    {0xFB6D, 0xE0CA},+    {0xFB6E, 0xE0CB},+    {0xFB6F, 0xE0CC},+    {0xFB70, 0xE0CD},+    {0xFB71, 0xE0CE},+    {0xFB72, 0xE0CF},+    {0xFB73, 0xE0D0},+    {0xFB74, 0xE0D1},+    {0xFB75, 0xE0D2},+    {0xFB76, 0xE0D3},+    {0xFB77, 0xE0D4},+    {0xFB78, 0xE0D5},+    {0xFB79, 0xE0D6},+    {0xFB7A, 0xE0D7},+    {0xFB7B, 0xE0D8},+    {0xFB7C, 0xE0D9},+    {0xFB7D, 0xE0DA},+    {0xFB7E, 0xE0DB},+    {0xFBA1, 0xE0DC},+    {0xFBA2, 0xE0DD},+    {0xFBA3, 0xE0DE},+    {0xFBA4, 0xE0DF},+    {0xFBA5, 0xE0E0},+    {0xFBA6, 0xE0E1},+    {0xFBA7, 0xE0E2},+    {0xFBA8, 0xE0E3},+    {0xFBA9, 0xE0E4},+    {0xFBAA, 0xE0E5},+    {0xFBAB, 0xE0E6},+    {0xFBAC, 0xE0E7},+    {0xFBAD, 0xE0E8},+    {0xFBAE, 0xE0E9},+    {0xFBAF, 0xE0EA},+    {0xFBB0, 0xE0EB},+    {0xFBB1, 0xE0EC},+    {0xFBB2, 0xE0ED},+    {0xFBB3, 0xE0EE},+    {0xFBB4, 0xE0EF},+    {0xFBB5, 0xE0F0},+    {0xFBB6, 0xE0F1},+    {0xFBB7, 0xE0F2},+    {0xFBB8, 0xE0F3},+    {0xFBB9, 0xE0F4},+    {0xFBBA, 0xE0F5},+    {0xFBBB, 0xE0F6},+    {0xFBBC, 0xE0F7},+    {0xFBBD, 0xE0F8},+    {0xFBBE, 0xE0F9},+    {0xFBBF, 0xE0FA},+    {0xFBC0, 0xE0FB},+    {0xFBC1, 0xE0FC},+    {0xFBC2, 0xE0FD},+    {0xFBC3, 0xE0FE},+    {0xFBC4, 0xE0FF},+    {0xFBC5, 0xE100},+    {0xFBC6, 0xE101},+    {0xFBC7, 0xE102},+    {0xFBC8, 0xE103},+    {0xFBC9, 0xE104},+    {0xFBCA, 0xE105},+    {0xFBCB, 0xE106},+    {0xFBCC, 0xE107},+    {0xFBCD, 0xE108},+    {0xFBCE, 0xE109},+    {0xFBCF, 0xE10A},+    {0xFBD0, 0xE10B},+    {0xFBD1, 0xE10C},+    {0xFBD2, 0xE10D},+    {0xFBD3, 0xE10E},+    {0xFBD4, 0xE10F},+    {0xFBD5, 0xE110},+    {0xFBD6, 0xE111},+    {0xFBD7, 0xE112},+    {0xFBD8, 0xE113},+    {0xFBD9, 0xE114},+    {0xFBDA, 0xE115},+    {0xFBDB, 0xE116},+    {0xFBDC, 0xE117},+    {0xFBDD, 0xE118},+    {0xFBDE, 0xE119},+    {0xFBDF, 0xE11A},+    {0xFBE0, 0xE11B},+    {0xFBE1, 0xE11C},+    {0xFBE2, 0xE11D},+    {0xFBE3, 0xE11E},+    {0xFBE4, 0xE11F},+    {0xFBE5, 0xE120},+    {0xFBE6, 0xE121},+    {0xFBE7, 0xE122},+    {0xFBE8, 0xE123},+    {0xFBE9, 0xE124},+    {0xFBEA, 0xE125},+    {0xFBEB, 0xE126},+    {0xFBEC, 0xE127},+    {0xFBED, 0xE128},+    {0xFBEE, 0xE129},+    {0xFBEF, 0xE12A},+    {0xFBF0, 0xE12B},+    {0xFBF1, 0xE12C},+    {0xFBF2, 0xE12D},+    {0xFBF3, 0xE12E},+    {0xFBF4, 0xE12F},+    {0xFBF5, 0xE130},+    {0xFBF6, 0xE131},+    {0xFBF7, 0xE132},+    {0xFBF8, 0xE133},+    {0xFBF9, 0xE134},+    {0xFBFA, 0xE135},+    {0xFBFB, 0xE136},+    {0xFBFC, 0xE137},+    {0xFBFD, 0xE138},+    {0xFBFE, 0xE139},+    {0xFC40, 0xE13A},+    {0xFC41, 0xE13B},+    {0xFC42, 0xE13C},+    {0xFC43, 0xE13D},+    {0xFC44, 0xE13E},+    {0xFC45, 0xE13F},+    {0xFC46, 0xE140},+    {0xFC47, 0xE141},+    {0xFC48, 0xE142},+    {0xFC49, 0xE143},+    {0xFC4A, 0xE144},+    {0xFC4B, 0xE145},+    {0xFC4C, 0xE146},+    {0xFC4D, 0xE147},+    {0xFC4E, 0xE148},+    {0xFC4F, 0xE149},+    {0xFC50, 0xE14A},+    {0xFC51, 0xE14B},+    {0xFC52, 0xE14C},+    {0xFC53, 0xE14D},+    {0xFC54, 0xE14E},+    {0xFC55, 0xE14F},+    {0xFC56, 0xE150},+    {0xFC57, 0xE151},+    {0xFC58, 0xE152},+    {0xFC59, 0xE153},+    {0xFC5A, 0xE154},+    {0xFC5B, 0xE155},+    {0xFC5C, 0xE156},+    {0xFC5D, 0xE157},+    {0xFC5E, 0xE158},+    {0xFC5F, 0xE159},+    {0xFC60, 0xE15A},+    {0xFC61, 0xE15B},+    {0xFC62, 0xE15C},+    {0xFC63, 0xE15D},+    {0xFC64, 0xE15E},+    {0xFC65, 0xE15F},+    {0xFC66, 0xE160},+    {0xFC67, 0xE161},+    {0xFC68, 0xE162},+    {0xFC69, 0xE163},+    {0xFC6A, 0xE164},+    {0xFC6B, 0xE165},+    {0xFC6C, 0xE166},+    {0xFC6D, 0xE167},+    {0xFC6E, 0xE168},+    {0xFC6F, 0xE169},+    {0xFC70, 0xE16A},+    {0xFC71, 0xE16B},+    {0xFC72, 0xE16C},+    {0xFC73, 0xE16D},+    {0xFC74, 0xE16E},+    {0xFC75, 0xE16F},+    {0xFC76, 0xE170},+    {0xFC77, 0xE171},+    {0xFC78, 0xE172},+    {0xFC79, 0xE173},+    {0xFC7A, 0xE174},+    {0xFC7B, 0xE175},+    {0xFC7C, 0xE176},+    {0xFC7D, 0xE177},+    {0xFC7E, 0xE178},+    {0xFCA1, 0xE179},+    {0xFCA2, 0xE17A},+    {0xFCA3, 0xE17B},+    {0xFCA4, 0xE17C},+    {0xFCA5, 0xE17D},+    {0xFCA6, 0xE17E},+    {0xFCA7, 0xE17F},+    {0xFCA8, 0xE180},+    {0xFCA9, 0xE181},+    {0xFCAA, 0xE182},+    {0xFCAB, 0xE183},+    {0xFCAC, 0xE184},+    {0xFCAD, 0xE185},+    {0xFCAE, 0xE186},+    {0xFCAF, 0xE187},+    {0xFCB0, 0xE188},+    {0xFCB1, 0xE189},+    {0xFCB2, 0xE18A},+    {0xFCB3, 0xE18B},+    {0xFCB4, 0xE18C},+    {0xFCB5, 0xE18D},+    {0xFCB6, 0xE18E},+    {0xFCB7, 0xE18F},+    {0xFCB8, 0xE190},+    {0xFCB9, 0xE191},+    {0xFCBA, 0xE192},+    {0xFCBB, 0xE193},+    {0xFCBC, 0xE194},+    {0xFCBD, 0xE195},+    {0xFCBE, 0xE196},+    {0xFCBF, 0xE197},+    {0xFCC0, 0xE198},+    {0xFCC1, 0xE199},+    {0xFCC2, 0xE19A},+    {0xFCC3, 0xE19B},+    {0xFCC4, 0xE19C},+    {0xFCC5, 0xE19D},+    {0xFCC6, 0xE19E},+    {0xFCC7, 0xE19F},+    {0xFCC8, 0xE1A0},+    {0xFCC9, 0xE1A1},+    {0xFCCA, 0xE1A2},+    {0xFCCB, 0xE1A3},+    {0xFCCC, 0xE1A4},+    {0xFCCD, 0xE1A5},+    {0xFCCE, 0xE1A6},+    {0xFCCF, 0xE1A7},+    {0xFCD0, 0xE1A8},+    {0xFCD1, 0xE1A9},+    {0xFCD2, 0xE1AA},+    {0xFCD3, 0xE1AB},+    {0xFCD4, 0xE1AC},+    {0xFCD5, 0xE1AD},+    {0xFCD6, 0xE1AE},+    {0xFCD7, 0xE1AF},+    {0xFCD8, 0xE1B0},+    {0xFCD9, 0xE1B1},+    {0xFCDA, 0xE1B2},+    {0xFCDB, 0xE1B3},+    {0xFCDC, 0xE1B4},+    {0xFCDD, 0xE1B5},+    {0xFCDE, 0xE1B6},+    {0xFCDF, 0xE1B7},+    {0xFCE0, 0xE1B8},+    {0xFCE1, 0xE1B9},+    {0xFCE2, 0xE1BA},+    {0xFCE3, 0xE1BB},+    {0xFCE4, 0xE1BC},+    {0xFCE5, 0xE1BD},+    {0xFCE6, 0xE1BE},+    {0xFCE7, 0xE1BF},+    {0xFCE8, 0xE1C0},+    {0xFCE9, 0xE1C1},+    {0xFCEA, 0xE1C2},+    {0xFCEB, 0xE1C3},+    {0xFCEC, 0xE1C4},+    {0xFCED, 0xE1C5},+    {0xFCEE, 0xE1C6},+    {0xFCEF, 0xE1C7},+    {0xFCF0, 0xE1C8},+    {0xFCF1, 0xE1C9},+    {0xFCF2, 0xE1CA},+    {0xFCF3, 0xE1CB},+    {0xFCF4, 0xE1CC},+    {0xFCF5, 0xE1CD},+    {0xFCF6, 0xE1CE},+    {0xFCF7, 0xE1CF},+    {0xFCF8, 0xE1D0},+    {0xFCF9, 0xE1D1},+    {0xFCFA, 0xE1D2},+    {0xFCFB, 0xE1D3},+    {0xFCFC, 0xE1D4},+    {0xFCFD, 0xE1D5},+    {0xFCFE, 0xE1D6},+    {0xFD40, 0xE1D7},+    {0xFD41, 0xE1D8},+    {0xFD42, 0xE1D9},+    {0xFD43, 0xE1DA},+    {0xFD44, 0xE1DB},+    {0xFD45, 0xE1DC},+    {0xFD46, 0xE1DD},+    {0xFD47, 0xE1DE},+    {0xFD48, 0xE1DF},+    {0xFD49, 0xE1E0},+    {0xFD4A, 0xE1E1},+    {0xFD4B, 0xE1E2},+    {0xFD4C, 0xE1E3},+    {0xFD4D, 0xE1E4},+    {0xFD4E, 0xE1E5},+    {0xFD4F, 0xE1E6},+    {0xFD50, 0xE1E7},+    {0xFD51, 0xE1E8},+    {0xFD52, 0xE1E9},+    {0xFD53, 0xE1EA},+    {0xFD54, 0xE1EB},+    {0xFD55, 0xE1EC},+    {0xFD56, 0xE1ED},+    {0xFD57, 0xE1EE},+    {0xFD58, 0xE1EF},+    {0xFD59, 0xE1F0},+    {0xFD5A, 0xE1F1},+    {0xFD5B, 0xE1F2},+    {0xFD5C, 0xE1F3},+    {0xFD5D, 0xE1F4},+    {0xFD5E, 0xE1F5},+    {0xFD5F, 0xE1F6},+    {0xFD60, 0xE1F7},+    {0xFD61, 0xE1F8},+    {0xFD62, 0xE1F9},+    {0xFD63, 0xE1FA},+    {0xFD64, 0xE1FB},+    {0xFD65, 0xE1FC},+    {0xFD66, 0xE1FD},+    {0xFD67, 0xE1FE},+    {0xFD68, 0xE1FF},+    {0xFD69, 0xE200},+    {0xFD6A, 0xE201},+    {0xFD6B, 0xE202},+    {0xFD6C, 0xE203},+    {0xFD6D, 0xE204},+    {0xFD6E, 0xE205},+    {0xFD6F, 0xE206},+    {0xFD70, 0xE207},+    {0xFD71, 0xE208},+    {0xFD72, 0xE209},+    {0xFD73, 0xE20A},+    {0xFD74, 0xE20B},+    {0xFD75, 0xE20C},+    {0xFD76, 0xE20D},+    {0xFD77, 0xE20E},+    {0xFD78, 0xE20F},+    {0xFD79, 0xE210},+    {0xFD7A, 0xE211},+    {0xFD7B, 0xE212},+    {0xFD7C, 0xE213},+    {0xFD7D, 0xE214},+    {0xFD7E, 0xE215},+    {0xFDA1, 0xE216},+    {0xFDA2, 0xE217},+    {0xFDA3, 0xE218},+    {0xFDA4, 0xE219},+    {0xFDA5, 0xE21A},+    {0xFDA6, 0xE21B},+    {0xFDA7, 0xE21C},+    {0xFDA8, 0xE21D},+    {0xFDA9, 0xE21E},+    {0xFDAA, 0xE21F},+    {0xFDAB, 0xE220},+    {0xFDAC, 0xE221},+    {0xFDAD, 0xE222},+    {0xFDAE, 0xE223},+    {0xFDAF, 0xE224},+    {0xFDB0, 0xE225},+    {0xFDB1, 0xE226},+    {0xFDB2, 0xE227},+    {0xFDB3, 0xE228},+    {0xFDB4, 0xE229},+    {0xFDB5, 0xE22A},+    {0xFDB6, 0xE22B},+    {0xFDB7, 0xE22C},+    {0xFDB8, 0xE22D},+    {0xFDB9, 0xE22E},+    {0xFDBA, 0xE22F},+    {0xFDBB, 0xE230},+    {0xFDBC, 0xE231},+    {0xFDBD, 0xE232},+    {0xFDBE, 0xE233},+    {0xFDBF, 0xE234},+    {0xFDC0, 0xE235},+    {0xFDC1, 0xE236},+    {0xFDC2, 0xE237},+    {0xFDC3, 0xE238},+    {0xFDC4, 0xE239},+    {0xFDC5, 0xE23A},+    {0xFDC6, 0xE23B},+    {0xFDC7, 0xE23C},+    {0xFDC8, 0xE23D},+    {0xFDC9, 0xE23E},+    {0xFDCA, 0xE23F},+    {0xFDCB, 0xE240},+    {0xFDCC, 0xE241},+    {0xFDCD, 0xE242},+    {0xFDCE, 0xE243},+    {0xFDCF, 0xE244},+    {0xFDD0, 0xE245},+    {0xFDD1, 0xE246},+    {0xFDD2, 0xE247},+    {0xFDD3, 0xE248},+    {0xFDD4, 0xE249},+    {0xFDD5, 0xE24A},+    {0xFDD6, 0xE24B},+    {0xFDD7, 0xE24C},+    {0xFDD8, 0xE24D},+    {0xFDD9, 0xE24E},+    {0xFDDA, 0xE24F},+    {0xFDDB, 0xE250},+    {0xFDDC, 0xE251},+    {0xFDDD, 0xE252},+    {0xFDDE, 0xE253},+    {0xFDDF, 0xE254},+    {0xFDE0, 0xE255},+    {0xFDE1, 0xE256},+    {0xFDE2, 0xE257},+    {0xFDE3, 0xE258},+    {0xFDE4, 0xE259},+    {0xFDE5, 0xE25A},+    {0xFDE6, 0xE25B},+    {0xFDE7, 0xE25C},+    {0xFDE8, 0xE25D},+    {0xFDE9, 0xE25E},+    {0xFDEA, 0xE25F},+    {0xFDEB, 0xE260},+    {0xFDEC, 0xE261},+    {0xFDED, 0xE262},+    {0xFDEE, 0xE263},+    {0xFDEF, 0xE264},+    {0xFDF0, 0xE265},+    {0xFDF1, 0xE266},+    {0xFDF2, 0xE267},+    {0xFDF3, 0xE268},+    {0xFDF4, 0xE269},+    {0xFDF5, 0xE26A},+    {0xFDF6, 0xE26B},+    {0xFDF7, 0xE26C},+    {0xFDF8, 0xE26D},+    {0xFDF9, 0xE26E},+    {0xFDFA, 0xE26F},+    {0xFDFB, 0xE270},+    {0xFDFC, 0xE271},+    {0xFDFD, 0xE272},+    {0xFDFE, 0xE273},+    {0xFE40, 0xE274},+    {0xFE41, 0xE275},+    {0xFE42, 0xE276},+    {0xFE43, 0xE277},+    {0xFE44, 0xE278},+    {0xFE45, 0xE279},+    {0xFE46, 0xE27A},+    {0xFE47, 0xE27B},+    {0xFE48, 0xE27C},+    {0xFE49, 0xE27D},+    {0xFE4A, 0xE27E},+    {0xFE4B, 0xE27F},+    {0xFE4C, 0xE280},+    {0xFE4D, 0xE281},+    {0xFE4E, 0xE282},+    {0xFE4F, 0xE283},+    {0xFE50, 0xE284},+    {0xFE51, 0xE285},+    {0xFE52, 0xE286},+    {0xFE53, 0xE287},+    {0xFE54, 0xE288},+    {0xFE55, 0xE289},+    {0xFE56, 0xE28A},+    {0xFE57, 0xE28B},+    {0xFE58, 0xE28C},+    {0xFE59, 0xE28D},+    {0xFE5A, 0xE28E},+    {0xFE5B, 0xE28F},+    {0xFE5C, 0xE290},+    {0xFE5D, 0xE291},+    {0xFE5E, 0xE292},+    {0xFE5F, 0xE293},+    {0xFE60, 0xE294},+    {0xFE61, 0xE295},+    {0xFE62, 0xE296},+    {0xFE63, 0xE297},+    {0xFE64, 0xE298},+    {0xFE65, 0xE299},+    {0xFE66, 0xE29A},+    {0xFE67, 0xE29B},+    {0xFE68, 0xE29C},+    {0xFE69, 0xE29D},+    {0xFE6A, 0xE29E},+    {0xFE6B, 0xE29F},+    {0xFE6C, 0xE2A0},+    {0xFE6D, 0xE2A1},+    {0xFE6E, 0xE2A2},+    {0xFE6F, 0xE2A3},+    {0xFE70, 0xE2A4},+    {0xFE71, 0xE2A5},+    {0xFE72, 0xE2A6},+    {0xFE73, 0xE2A7},+    {0xFE74, 0xE2A8},+    {0xFE75, 0xE2A9},+    {0xFE76, 0xE2AA},+    {0xFE77, 0xE2AB},+    {0xFE78, 0xE2AC},+    {0xFE79, 0xE2AD},+    {0xFE7A, 0xE2AE},+    {0xFE7B, 0xE2AF},+    {0xFE7C, 0xE2B0},+    {0xFE7D, 0xE2B1},+    {0xFE7E, 0xE2B2},+    {0xFEA1, 0xE2B3},+    {0xFEA2, 0xE2B4},+    {0xFEA3, 0xE2B5},+    {0xFEA4, 0xE2B6},+    {0xFEA5, 0xE2B7},+    {0xFEA6, 0xE2B8},+    {0xFEA7, 0xE2B9},+    {0xFEA8, 0xE2BA},+    {0xFEA9, 0xE2BB},+    {0xFEAA, 0xE2BC},+    {0xFEAB, 0xE2BD},+    {0xFEAC, 0xE2BE},+    {0xFEAD, 0xE2BF},+    {0xFEAE, 0xE2C0},+    {0xFEAF, 0xE2C1},+    {0xFEB0, 0xE2C2},+    {0xFEB1, 0xE2C3},+    {0xFEB2, 0xE2C4},+    {0xFEB3, 0xE2C5},+    {0xFEB4, 0xE2C6},+    {0xFEB5, 0xE2C7},+    {0xFEB6, 0xE2C8},+    {0xFEB7, 0xE2C9},+    {0xFEB8, 0xE2CA},+    {0xFEB9, 0xE2CB},+    {0xFEBA, 0xE2CC},+    {0xFEBB, 0xE2CD},+    {0xFEBC, 0xE2CE},+    {0xFEBD, 0xE2CF},+    {0xFEBE, 0xE2D0},+    {0xFEBF, 0xE2D1},+    {0xFEC0, 0xE2D2},+    {0xFEC1, 0xE2D3},+    {0xFEC2, 0xE2D4},+    {0xFEC3, 0xE2D5},+    {0xFEC4, 0xE2D6},+    {0xFEC5, 0xE2D7},+    {0xFEC6, 0xE2D8},+    {0xFEC7, 0xE2D9},+    {0xFEC8, 0xE2DA},+    {0xFEC9, 0xE2DB},+    {0xFECA, 0xE2DC},+    {0xFECB, 0xE2DD},+    {0xFECC, 0xE2DE},+    {0xFECD, 0xE2DF},+    {0xFECE, 0xE2E0},+    {0xFECF, 0xE2E1},+    {0xFED0, 0xE2E2},+    {0xFED1, 0xE2E3},+    {0xFED2, 0xE2E4},+    {0xFED3, 0xE2E5},+    {0xFED4, 0xE2E6},+    {0xFED5, 0xE2E7},+    {0xFED6, 0xE2E8},+    {0xFED7, 0xE2E9},+    {0xFED8, 0xE2EA},+    {0xFED9, 0xE2EB},+    {0xFEDA, 0xE2EC},+    {0xFEDB, 0xE2ED},+    {0xFEDC, 0xE2EE},+    {0xFEDD, 0xE2EF},+    {0xFEDE, 0xE2F0},+    {0xFEDF, 0xE2F1},+    {0xFEE0, 0xE2F2},+    {0xFEE1, 0xE2F3},+    {0xFEE2, 0xE2F4},+    {0xFEE3, 0xE2F5},+    {0xFEE4, 0xE2F6},+    {0xFEE5, 0xE2F7},+    {0xFEE6, 0xE2F8},+    {0xFEE7, 0xE2F9},+    {0xFEE8, 0xE2FA},+    {0xFEE9, 0xE2FB},+    {0xFEEA, 0xE2FC},+    {0xFEEB, 0xE2FD},+    {0xFEEC, 0xE2FE},+    {0xFEED, 0xE2FF},+    {0xFEEE, 0xE300},+    {0xFEEF, 0xE301},+    {0xFEF0, 0xE302},+    {0xFEF1, 0xE303},+    {0xFEF2, 0xE304},+    {0xFEF3, 0xE305},+    {0xFEF4, 0xE306},+    {0xFEF5, 0xE307},+    {0xFEF6, 0xE308},+    {0xFEF7, 0xE309},+    {0xFEF8, 0xE30A},+    {0xFEF9, 0xE30B},+    {0xFEFA, 0xE30C},+    {0xFEFB, 0xE30D},+    {0xFEFC, 0xE30E},+    {0xFEFD, 0xE30F},+    {0xFEFE, 0xE310},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_ETen_B5_H[] = {+    {0x20, 0x7E, 13648},+    {0xA140, 0xA158, 99},+    {0xA159, 0xA15C, 13743},+    {0xA15D, 0xA17E, 128},+    {0xA1A1, 0xA1F5, 162},+    {0xA1F6, 0xA1F6, 248},+    {0xA1F7, 0xA1F7, 247},+    {0xA1F8, 0xA1FE, 249},+    {0xA240, 0xA27E, 256},+    {0xA2A1, 0xA2FE, 319},+    {0xA340, 0xA37E, 413},+    {0xA3A1, 0xA3BB, 476},+    {0xA3BD, 0xA3BF, 503},+    {0xA440, 0xA47E, 595},+    {0xA4A1, 0xA4FE, 658},+    {0xA540, 0xA57E, 752},+    {0xA5A1, 0xA5FE, 815},+    {0xA640, 0xA67E, 909},+    {0xA6A1, 0xA6FE, 972},+    {0xA740, 0xA77E, 1066},+    {0xA7A1, 0xA7FE, 1129},+    {0xA840, 0xA87E, 1223},+    {0xA8A1, 0xA8FE, 1286},+    {0xA940, 0xA97E, 1380},+    {0xA9A1, 0xA9FE, 1443},+    {0xAA40, 0xAA7E, 1537},+    {0xAAA1, 0xAAFE, 1600},+    {0xAB40, 0xAB7E, 1694},+    {0xABA1, 0xABFE, 1757},+    {0xAC40, 0xAC7E, 1851},+    {0xACA1, 0xACFD, 1914},+    {0xACFE, 0xACFE, 2431},+    {0xAD40, 0xAD7E, 2007},+    {0xADA1, 0xADFE, 2070},+    {0xAE40, 0xAE7E, 2164},+    {0xAEA1, 0xAEFE, 2227},+    {0xAF40, 0xAF7E, 2321},+    {0xAFA1, 0xAFCF, 2384},+    {0xAFD0, 0xAFFE, 2432},+    {0xB040, 0xB07E, 2479},+    {0xB0A1, 0xB0FE, 2542},+    {0xB140, 0xB17E, 2636},+    {0xB1A1, 0xB1FE, 2699},+    {0xB240, 0xB27E, 2793},+    {0xB2A1, 0xB2FE, 2856},+    {0xB340, 0xB37E, 2950},+    {0xB3A1, 0xB3FE, 3013},+    {0xB440, 0xB47E, 3107},+    {0xB4A1, 0xB4FE, 3170},+    {0xB540, 0xB57E, 3264},+    {0xB5A1, 0xB5FE, 3327},+    {0xB640, 0xB67E, 3421},+    {0xB6A1, 0xB6FE, 3484},+    {0xB740, 0xB77E, 3578},+    {0xB7A1, 0xB7FE, 3641},+    {0xB840, 0xB87E, 3735},+    {0xB8A1, 0xB8FE, 3798},+    {0xB940, 0xB97E, 3892},+    {0xB9A1, 0xB9FE, 3955},+    {0xBA40, 0xBA7E, 4049},+    {0xBAA1, 0xBAFE, 4112},+    {0xBB40, 0xBB7E, 4206},+    {0xBBA1, 0xBBC7, 4269},+    {0xBBC8, 0xBBFE, 4309},+    {0xBC40, 0xBC7E, 4364},+    {0xBCA1, 0xBCFE, 4427},+    {0xBD40, 0xBD7E, 4521},+    {0xBDA1, 0xBDFE, 4584},+    {0xBE40, 0xBE51, 4678},+    {0xBE52, 0xBE52, 4308},+    {0xBE53, 0xBE7E, 4696},+    {0xBEA1, 0xBEFE, 4740},+    {0xBF40, 0xBF7E, 4834},+    {0xBFA1, 0xBFFE, 4897},+    {0xC040, 0xC07E, 4991},+    {0xC0A1, 0xC0FE, 5054},+    {0xC140, 0xC17E, 5148},+    {0xC1A1, 0xC1AA, 5211},+    {0xC1AB, 0xC1FE, 5222},+    {0xC240, 0xC27E, 5306},+    {0xC2A1, 0xC2CA, 5369},+    {0xC2CB, 0xC2CB, 5221},+    {0xC2CC, 0xC2FE, 5411},+    {0xC340, 0xC360, 5462},+    {0xC361, 0xC37E, 5496},+    {0xC3A1, 0xC3B8, 5526},+    {0xC3B9, 0xC3B9, 5551},+    {0xC3BA, 0xC3BA, 5550},+    {0xC3BB, 0xC3FE, 5552},+    {0xC440, 0xC455, 5620},+    {0xC456, 0xC456, 5495},+    {0xC457, 0xC47E, 5642},+    {0xC4A1, 0xC4FE, 5682},+    {0xC540, 0xC57E, 5776},+    {0xC5A1, 0xC5FE, 5839},+    {0xC640, 0xC67E, 5933},+    {0xC6A1, 0xC6BE, 506},+    {0xC6BF, 0xC6D7, 537},+    {0xC6D8, 0xC6DE, 13747},+    {0xC6DF, 0xC6DF, 6036},+    {0xC6E0, 0xC6FE, 13754},+    {0xC740, 0xC77E, 13785},+    {0xC7A1, 0xC7FE, 13848},+    {0xC840, 0xC87E, 13942},+    {0xC8A1, 0xC8D3, 14005},+    {0xC940, 0xC949, 5996},+    {0xC94A, 0xC94A, 628},+    {0xC94B, 0xC96B, 6006},+    {0xC96C, 0xC97E, 6040},+    {0xC9A1, 0xC9BD, 6059},+    {0xC9BE, 0xC9BE, 6039},+    {0xC9BF, 0xC9EC, 6088},+    {0xC9ED, 0xC9FE, 6135},+    {0xCA40, 0xCA7E, 6153},+    {0xCAA1, 0xCAF6, 6216},+    {0xCAF7, 0xCAF7, 6134},+    {0xCAF8, 0xCAFE, 6302},+    {0xCB40, 0xCB7E, 6309},+    {0xCBA1, 0xCBFE, 6372},+    {0xCC40, 0xCC7E, 6466},+    {0xCCA1, 0xCCFE, 6529},+    {0xCD40, 0xCD7E, 6623},+    {0xCDA1, 0xCDFE, 6686},+    {0xCE40, 0xCE7E, 6780},+    {0xCEA1, 0xCEFE, 6843},+    {0xCF40, 0xCF7E, 6937},+    {0xCFA1, 0xCFFE, 7000},+    {0xD040, 0xD07E, 7094},+    {0xD0A1, 0xD0FE, 7157},+    {0xD140, 0xD17E, 7251},+    {0xD1A1, 0xD1FE, 7314},+    {0xD240, 0xD27E, 7408},+    {0xD2A1, 0xD2FE, 7471},+    {0xD340, 0xD37E, 7565},+    {0xD3A1, 0xD3FE, 7628},+    {0xD440, 0xD47E, 7722},+    {0xD4A1, 0xD4FE, 7785},+    {0xD540, 0xD57E, 7879},+    {0xD5A1, 0xD5FE, 7942},+    {0xD640, 0xD67E, 8036},+    {0xD6A1, 0xD6CB, 8099},+    {0xD6CC, 0xD6CC, 8788},+    {0xD6CD, 0xD6FE, 8143},+    {0xD740, 0xD779, 8193},+    {0xD77A, 0xD77A, 8889},+    {0xD77B, 0xD77E, 8251},+    {0xD7A1, 0xD7FE, 8255},+    {0xD840, 0xD87E, 8349},+    {0xD8A1, 0xD8FE, 8412},+    {0xD940, 0xD97E, 8506},+    {0xD9A1, 0xD9FE, 8569},+    {0xDA40, 0xDA7E, 8663},+    {0xDAA1, 0xDADE, 8726},+    {0xDADF, 0xDADF, 8142},+    {0xDAE0, 0xDAFE, 8789},+    {0xDB40, 0xDB7E, 8820},+    {0xDBA1, 0xDBA6, 8883},+    {0xDBA7, 0xDBFE, 8890},+    {0xDC40, 0xDC7E, 8978},+    {0xDCA1, 0xDCFE, 9041},+    {0xDD40, 0xDD7E, 9135},+    {0xDDA1, 0xDDFB, 9198},+    {0xDDFC, 0xDDFC, 9089},+    {0xDDFD, 0xDDFE, 9289},+    {0xDE40, 0xDE7E, 9291},+    {0xDEA1, 0xDEFE, 9354},+    {0xDF40, 0xDF7E, 9448},+    {0xDFA1, 0xDFFE, 9511},+    {0xE040, 0xE07E, 9605},+    {0xE0A1, 0xE0FE, 9668},+    {0xE140, 0xE17E, 9762},+    {0xE1A1, 0xE1FE, 9825},+    {0xE240, 0xE27E, 9919},+    {0xE2A1, 0xE2FE, 9982},+    {0xE340, 0xE37E, 10076},+    {0xE3A1, 0xE3FE, 10139},+    {0xE440, 0xE47E, 10233},+    {0xE4A1, 0xE4FE, 10296},+    {0xE540, 0xE57E, 10390},+    {0xE5A1, 0xE5FE, 10453},+    {0xE640, 0xE67E, 10547},+    {0xE6A1, 0xE6FE, 10610},+    {0xE740, 0xE77E, 10704},+    {0xE7A1, 0xE7FE, 10767},+    {0xE840, 0xE87E, 10861},+    {0xE8A1, 0xE8A2, 10924},+    {0xE8A3, 0xE8FE, 10927},+    {0xE940, 0xE975, 11019},+    {0xE976, 0xE97E, 11074},+    {0xE9A1, 0xE9FE, 11083},+    {0xEA40, 0xEA7E, 11177},+    {0xEAA1, 0xEAFE, 11240},+    {0xEB40, 0xEB5A, 11334},+    {0xEB5B, 0xEB7E, 11362},+    {0xEBA1, 0xEBF0, 11398},+    {0xEBF1, 0xEBF1, 10926},+    {0xEBF2, 0xEBFE, 11478},+    {0xEC40, 0xEC7E, 11491},+    {0xECA1, 0xECDD, 11554},+    {0xECDE, 0xECDE, 11073},+    {0xECDF, 0xECFE, 11615},+    {0xED40, 0xED7E, 11647},+    {0xEDA1, 0xEDA9, 11710},+    {0xEDAA, 0xEDFE, 11720},+    {0xEE40, 0xEE7E, 11805},+    {0xEEA1, 0xEEEA, 11868},+    {0xEEEB, 0xEEEB, 12308},+    {0xEEEC, 0xEEFE, 11942},+    {0xEF40, 0xEF7E, 11961},+    {0xEFA1, 0xEFFE, 12024},+    {0xF040, 0xF055, 12118},+    {0xF056, 0xF056, 11719},+    {0xF057, 0xF07E, 12140},+    {0xF0A1, 0xF0CA, 12180},+    {0xF0CB, 0xF0CB, 11361},+    {0xF0CC, 0xF0FE, 12222},+    {0xF140, 0xF162, 12273},+    {0xF163, 0xF16A, 12309},+    {0xF16B, 0xF16B, 12640},+    {0xF16C, 0xF17E, 12317},+    {0xF1A1, 0xF1FE, 12336},+    {0xF240, 0xF267, 12430},+    {0xF268, 0xF268, 12783},+    {0xF269, 0xF27E, 12470},+    {0xF2A1, 0xF2C2, 12492},+    {0xF2C3, 0xF2FE, 12527},+    {0xF340, 0xF374, 12587},+    {0xF375, 0xF37E, 12641},+    {0xF3A1, 0xF3FE, 12651},+    {0xF440, 0xF465, 12745},+    {0xF466, 0xF47E, 12784},+    {0xF4A1, 0xF4B4, 12809},+    {0xF4B5, 0xF4B5, 12526},+    {0xF4B6, 0xF4FC, 12829},+    {0xF4FD, 0xF4FE, 12901},+    {0xF540, 0xF57E, 12903},+    {0xF5A1, 0xF5FE, 12966},+    {0xF640, 0xF662, 13060},+    {0xF663, 0xF663, 12900},+    {0xF664, 0xF67E, 13095},+    {0xF6A1, 0xF6FE, 13122},+    {0xF740, 0xF77E, 13216},+    {0xF7A1, 0xF7FE, 13279},+    {0xF840, 0xF87E, 13373},+    {0xF8A1, 0xF8FE, 13436},+    {0xF940, 0xF976, 13530},+    {0xF977, 0xF97E, 13586},+    {0xF9A1, 0xF9C3, 13594},+    {0xF9C4, 0xF9C4, 13585},+    {0xF9C5, 0xF9C5, 13629},+    {0xF9C6, 0xF9C6, 13641},+    {0xF9C7, 0xF9D1, 13630},+    {0xF9D2, 0xF9D5, 13642},+    {0xF7A1, 0xF7FE, 7609},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_ETen_B5_V[] = {+    {0xA14B, 0xA14B, 13646},+    {0xA15A, 0xA15A, 13743},+    {0xA15C, 0xA15C, 13745},+    {0xA15D, 0xA15E, 130},+    {0xA161, 0xA162, 134},+    {0xA165, 0xA166, 138},+    {0xA169, 0xA16A, 142},+    {0xA16D, 0xA16E, 146},+    {0xA171, 0xA172, 150},+    {0xA175, 0xA176, 154},+    {0xA179, 0xA17A, 158},+    {0xA1E3, 0xA1E3, 13647},+    {0xC6E4, 0xC6E5, 14097},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec ETen_B5_NOTDEF_RANGE = {0x00, 0x1F, 13648};+++static HPDF_BOOL+ETen_B5_IsLeadByte  (HPDF_Encoder    encoder,+                     HPDF_BYTE       b);+++static HPDF_BOOL+ETen_B5_IsTrialByte  (HPDF_Encoder    encoder,+                      HPDF_BYTE       b);+++static HPDF_STATUS+ETen_B5_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+ETen_B5_H_Init  (HPDF_Encoder    encoder);+++static HPDF_STATUS+ETen_B5_V_Init  (HPDF_Encoder    encoder);+++/*--------------------------------------------------------------------------*/++static HPDF_BOOL+ETen_B5_IsLeadByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b)+{+    return ((b >= 0x81 && b <= 0xfe));+}+++static HPDF_BOOL+ETen_B5_IsTrialByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0x40 && b <= 0xfe);+}+++static HPDF_STATUS+ETen_B5_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0xA140, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+ETen_B5_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_ETen_B5_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = ETen_B5_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, ETen_B5_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP950_UNICODE_ARRAY);++    attr->is_lead_byte_fn = ETen_B5_IsLeadByte;+    attr->is_trial_byte_fn = ETen_B5_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "CNS1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->uid_offset = 200;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25390;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+ETen_B5_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_ETen_B5_H)) !=+            HPDF_OK)+        return ret;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_ETen_B5_V)) !=+            HPDF_OK)+        return ret;++    if ((ret = ETen_B5_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, ETen_B5_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP950_UNICODE_ARRAY);++    attr->is_lead_byte_fn = ETen_B5_IsLeadByte;+    attr->is_trial_byte_fn = ETen_B5_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "CNS1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->uid_offset = 920;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25391;++    attr->writing_mode = HPDF_WMODE_VERTICAL;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++/*--------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNTEncodings   (HPDF_Doc   pdf)+{+    HPDF_Encoder encoder;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* Microsoft Code Page 950 (lfCharSet 0x88) Big Five character set with+     * ETen extensions+     */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "ETen-B5-H",+                ETen_B5_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* Microsoft Code Page 950 (lfCharSet 0x88) Big Five character set with+     * ETen extensions (vertical writing) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "ETen-B5-V",+                ETen_B5_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+
+ haru/hpdf_encoder_jp.c view
@@ -0,0 +1,16125 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encoder_jp.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encoder.h"+#include "hpdf.h"++static const HPDF_UnicodeMap_Rec CP932_UNICODE_ARRAY[] = {+    {0x00, 0x0000},+    {0x01, 0x0001},+    {0x02, 0x0002},+    {0x03, 0x0003},+    {0x04, 0x0004},+    {0x05, 0x0005},+    {0x06, 0x0006},+    {0x07, 0x0007},+    {0x08, 0x0008},+    {0x09, 0x0009},+    {0x0A, 0x000A},+    {0x0B, 0x000B},+    {0x0C, 0x000C},+    {0x0D, 0x000D},+    {0x0E, 0x000E},+    {0x0F, 0x000F},+    {0x10, 0x0010},+    {0x11, 0x0011},+    {0x12, 0x0012},+    {0x13, 0x0013},+    {0x14, 0x0014},+    {0x15, 0x0015},+    {0x16, 0x0016},+    {0x17, 0x0017},+    {0x18, 0x0018},+    {0x19, 0x0019},+    {0x1A, 0x001A},+    {0x1B, 0x001B},+    {0x1C, 0x001C},+    {0x1D, 0x001D},+    {0x1E, 0x001E},+    {0x1F, 0x001F},+    {0x20, 0x0020},+    {0x21, 0x0021},+    {0x22, 0x0022},+    {0x23, 0x0023},+    {0x24, 0x0024},+    {0x25, 0x0025},+    {0x26, 0x0026},+    {0x27, 0x0027},+    {0x28, 0x0028},+    {0x29, 0x0029},+    {0x2A, 0x002A},+    {0x2B, 0x002B},+    {0x2C, 0x002C},+    {0x2D, 0x002D},+    {0x2E, 0x002E},+    {0x2F, 0x002F},+    {0x30, 0x0030},+    {0x31, 0x0031},+    {0x32, 0x0032},+    {0x33, 0x0033},+    {0x34, 0x0034},+    {0x35, 0x0035},+    {0x36, 0x0036},+    {0x37, 0x0037},+    {0x38, 0x0038},+    {0x39, 0x0039},+    {0x3A, 0x003A},+    {0x3B, 0x003B},+    {0x3C, 0x003C},+    {0x3D, 0x003D},+    {0x3E, 0x003E},+    {0x3F, 0x003F},+    {0x40, 0x0040},+    {0x41, 0x0041},+    {0x42, 0x0042},+    {0x43, 0x0043},+    {0x44, 0x0044},+    {0x45, 0x0045},+    {0x46, 0x0046},+    {0x47, 0x0047},+    {0x48, 0x0048},+    {0x49, 0x0049},+    {0x4A, 0x004A},+    {0x4B, 0x004B},+    {0x4C, 0x004C},+    {0x4D, 0x004D},+    {0x4E, 0x004E},+    {0x4F, 0x004F},+    {0x50, 0x0050},+    {0x51, 0x0051},+    {0x52, 0x0052},+    {0x53, 0x0053},+    {0x54, 0x0054},+    {0x55, 0x0055},+    {0x56, 0x0056},+    {0x57, 0x0057},+    {0x58, 0x0058},+    {0x59, 0x0059},+    {0x5A, 0x005A},+    {0x5B, 0x005B},+    {0x5C, 0x005C},+    {0x5D, 0x005D},+    {0x5E, 0x005E},+    {0x5F, 0x005F},+    {0x60, 0x0060},+    {0x61, 0x0061},+    {0x62, 0x0062},+    {0x63, 0x0063},+    {0x64, 0x0064},+    {0x65, 0x0065},+    {0x66, 0x0066},+    {0x67, 0x0067},+    {0x68, 0x0068},+    {0x69, 0x0069},+    {0x6A, 0x006A},+    {0x6B, 0x006B},+    {0x6C, 0x006C},+    {0x6D, 0x006D},+    {0x6E, 0x006E},+    {0x6F, 0x006F},+    {0x70, 0x0070},+    {0x71, 0x0071},+    {0x72, 0x0072},+    {0x73, 0x0073},+    {0x74, 0x0074},+    {0x75, 0x0075},+    {0x76, 0x0076},+    {0x77, 0x0077},+    {0x78, 0x0078},+    {0x79, 0x0079},+    {0x7A, 0x007A},+    {0x7B, 0x007B},+    {0x7C, 0x007C},+    {0x7D, 0x007D},+    {0x7E, 0x007E},+    {0x7F, 0x007F},+    {0xA1, 0xFF61},+    {0xA2, 0xFF62},+    {0xA3, 0xFF63},+    {0xA4, 0xFF64},+    {0xA5, 0xFF65},+    {0xA6, 0xFF66},+    {0xA7, 0xFF67},+    {0xA8, 0xFF68},+    {0xA9, 0xFF69},+    {0xAA, 0xFF6A},+    {0xAB, 0xFF6B},+    {0xAC, 0xFF6C},+    {0xAD, 0xFF6D},+    {0xAE, 0xFF6E},+    {0xAF, 0xFF6F},+    {0xB0, 0xFF70},+    {0xB1, 0xFF71},+    {0xB2, 0xFF72},+    {0xB3, 0xFF73},+    {0xB4, 0xFF74},+    {0xB5, 0xFF75},+    {0xB6, 0xFF76},+    {0xB7, 0xFF77},+    {0xB8, 0xFF78},+    {0xB9, 0xFF79},+    {0xBA, 0xFF7A},+    {0xBB, 0xFF7B},+    {0xBC, 0xFF7C},+    {0xBD, 0xFF7D},+    {0xBE, 0xFF7E},+    {0xBF, 0xFF7F},+    {0xC0, 0xFF80},+    {0xC1, 0xFF81},+    {0xC2, 0xFF82},+    {0xC3, 0xFF83},+    {0xC4, 0xFF84},+    {0xC5, 0xFF85},+    {0xC6, 0xFF86},+    {0xC7, 0xFF87},+    {0xC8, 0xFF88},+    {0xC9, 0xFF89},+    {0xCA, 0xFF8A},+    {0xCB, 0xFF8B},+    {0xCC, 0xFF8C},+    {0xCD, 0xFF8D},+    {0xCE, 0xFF8E},+    {0xCF, 0xFF8F},+    {0xD0, 0xFF90},+    {0xD1, 0xFF91},+    {0xD2, 0xFF92},+    {0xD3, 0xFF93},+    {0xD4, 0xFF94},+    {0xD5, 0xFF95},+    {0xD6, 0xFF96},+    {0xD7, 0xFF97},+    {0xD8, 0xFF98},+    {0xD9, 0xFF99},+    {0xDA, 0xFF9A},+    {0xDB, 0xFF9B},+    {0xDC, 0xFF9C},+    {0xDD, 0xFF9D},+    {0xDE, 0xFF9E},+    {0xDF, 0xFF9F},+    {0x8140, 0x3000},+    {0x8141, 0x3001},+    {0x8142, 0x3002},+    {0x8143, 0xFF0C},+    {0x8144, 0xFF0E},+    {0x8145, 0x30FB},+    {0x8146, 0xFF1A},+    {0x8147, 0xFF1B},+    {0x8148, 0xFF1F},+    {0x8149, 0xFF01},+    {0x814A, 0x309B},+    {0x814B, 0x309C},+    {0x814C, 0x00B4},+    {0x814D, 0xFF40},+    {0x814E, 0x00A8},+    {0x814F, 0xFF3E},+    {0x8150, 0xFFE3},+    {0x8151, 0xFF3F},+    {0x8152, 0x30FD},+    {0x8153, 0x30FE},+    {0x8154, 0x309D},+    {0x8155, 0x309E},+    {0x8156, 0x3003},+    {0x8157, 0x4EDD},+    {0x8158, 0x3005},+    {0x8159, 0x3006},+    {0x815A, 0x3007},+    {0x815B, 0x30FC},+    {0x815C, 0x2015},+    {0x815D, 0x2010},+    {0x815E, 0xFF0F},+    {0x815F, 0xFF3C},+    {0x8160, 0xFF5E},+    {0x8161, 0x2225},+    {0x8162, 0xFF5C},+    {0x8163, 0x2026},+    {0x8164, 0x2025},+    {0x8165, 0x2018},+    {0x8166, 0x2019},+    {0x8167, 0x201C},+    {0x8168, 0x201D},+    {0x8169, 0xFF08},+    {0x816A, 0xFF09},+    {0x816B, 0x3014},+    {0x816C, 0x3015},+    {0x816D, 0xFF3B},+    {0x816E, 0xFF3D},+    {0x816F, 0xFF5B},+    {0x8170, 0xFF5D},+    {0x8171, 0x3008},+    {0x8172, 0x3009},+    {0x8173, 0x300A},+    {0x8174, 0x300B},+    {0x8175, 0x300C},+    {0x8176, 0x300D},+    {0x8177, 0x300E},+    {0x8178, 0x300F},+    {0x8179, 0x3010},+    {0x817A, 0x3011},+    {0x817B, 0xFF0B},+    {0x817C, 0xFF0D},+    {0x817D, 0x00B1},+    {0x817E, 0x00D7},+    {0x8180, 0x00F7},+    {0x8181, 0xFF1D},+    {0x8182, 0x2260},+    {0x8183, 0xFF1C},+    {0x8184, 0xFF1E},+    {0x8185, 0x2266},+    {0x8186, 0x2267},+    {0x8187, 0x221E},+    {0x8188, 0x2234},+    {0x8189, 0x2642},+    {0x818A, 0x2640},+    {0x818B, 0x00B0},+    {0x818C, 0x2032},+    {0x818D, 0x2033},+    {0x818E, 0x2103},+    {0x818F, 0xFFE5},+    {0x8190, 0xFF04},+    {0x8191, 0xFFE0},+    {0x8192, 0xFFE1},+    {0x8193, 0xFF05},+    {0x8194, 0xFF03},+    {0x8195, 0xFF06},+    {0x8196, 0xFF0A},+    {0x8197, 0xFF20},+    {0x8198, 0x00A7},+    {0x8199, 0x2606},+    {0x819A, 0x2605},+    {0x819B, 0x25CB},+    {0x819C, 0x25CF},+    {0x819D, 0x25CE},+    {0x819E, 0x25C7},+    {0x819F, 0x25C6},+    {0x81A0, 0x25A1},+    {0x81A1, 0x25A0},+    {0x81A2, 0x25B3},+    {0x81A3, 0x25B2},+    {0x81A4, 0x25BD},+    {0x81A5, 0x25BC},+    {0x81A6, 0x203B},+    {0x81A7, 0x3012},+    {0x81A8, 0x2192},+    {0x81A9, 0x2190},+    {0x81AA, 0x2191},+    {0x81AB, 0x2193},+    {0x81AC, 0x3013},+    {0x81B8, 0x2208},+    {0x81B9, 0x220B},+    {0x81BA, 0x2286},+    {0x81BB, 0x2287},+    {0x81BC, 0x2282},+    {0x81BD, 0x2283},+    {0x81BE, 0x222A},+    {0x81BF, 0x2229},+    {0x81C8, 0x2227},+    {0x81C9, 0x2228},+    {0x81CA, 0xFFE2},+    {0x81CB, 0x21D2},+    {0x81CC, 0x21D4},+    {0x81CD, 0x2200},+    {0x81CE, 0x2203},+    {0x81DA, 0x2220},+    {0x81DB, 0x22A5},+    {0x81DC, 0x2312},+    {0x81DD, 0x2202},+    {0x81DE, 0x2207},+    {0x81DF, 0x2261},+    {0x81E0, 0x2252},+    {0x81E1, 0x226A},+    {0x81E2, 0x226B},+    {0x81E3, 0x221A},+    {0x81E4, 0x223D},+    {0x81E5, 0x221D},+    {0x81E6, 0x2235},+    {0x81E7, 0x222B},+    {0x81E8, 0x222C},+    {0x81F0, 0x212B},+    {0x81F1, 0x2030},+    {0x81F2, 0x266F},+    {0x81F3, 0x266D},+    {0x81F4, 0x266A},+    {0x81F5, 0x2020},+    {0x81F6, 0x2021},+    {0x81F7, 0x00B6},+    {0x81FC, 0x25EF},+    {0x824F, 0xFF10},+    {0x8250, 0xFF11},+    {0x8251, 0xFF12},+    {0x8252, 0xFF13},+    {0x8253, 0xFF14},+    {0x8254, 0xFF15},+    {0x8255, 0xFF16},+    {0x8256, 0xFF17},+    {0x8257, 0xFF18},+    {0x8258, 0xFF19},+    {0x8260, 0xFF21},+    {0x8261, 0xFF22},+    {0x8262, 0xFF23},+    {0x8263, 0xFF24},+    {0x8264, 0xFF25},+    {0x8265, 0xFF26},+    {0x8266, 0xFF27},+    {0x8267, 0xFF28},+    {0x8268, 0xFF29},+    {0x8269, 0xFF2A},+    {0x826A, 0xFF2B},+    {0x826B, 0xFF2C},+    {0x826C, 0xFF2D},+    {0x826D, 0xFF2E},+    {0x826E, 0xFF2F},+    {0x826F, 0xFF30},+    {0x8270, 0xFF31},+    {0x8271, 0xFF32},+    {0x8272, 0xFF33},+    {0x8273, 0xFF34},+    {0x8274, 0xFF35},+    {0x8275, 0xFF36},+    {0x8276, 0xFF37},+    {0x8277, 0xFF38},+    {0x8278, 0xFF39},+    {0x8279, 0xFF3A},+    {0x8281, 0xFF41},+    {0x8282, 0xFF42},+    {0x8283, 0xFF43},+    {0x8284, 0xFF44},+    {0x8285, 0xFF45},+    {0x8286, 0xFF46},+    {0x8287, 0xFF47},+    {0x8288, 0xFF48},+    {0x8289, 0xFF49},+    {0x828A, 0xFF4A},+    {0x828B, 0xFF4B},+    {0x828C, 0xFF4C},+    {0x828D, 0xFF4D},+    {0x828E, 0xFF4E},+    {0x828F, 0xFF4F},+    {0x8290, 0xFF50},+    {0x8291, 0xFF51},+    {0x8292, 0xFF52},+    {0x8293, 0xFF53},+    {0x8294, 0xFF54},+    {0x8295, 0xFF55},+    {0x8296, 0xFF56},+    {0x8297, 0xFF57},+    {0x8298, 0xFF58},+    {0x8299, 0xFF59},+    {0x829A, 0xFF5A},+    {0x829F, 0x3041},+    {0x82A0, 0x3042},+    {0x82A1, 0x3043},+    {0x82A2, 0x3044},+    {0x82A3, 0x3045},+    {0x82A4, 0x3046},+    {0x82A5, 0x3047},+    {0x82A6, 0x3048},+    {0x82A7, 0x3049},+    {0x82A8, 0x304A},+    {0x82A9, 0x304B},+    {0x82AA, 0x304C},+    {0x82AB, 0x304D},+    {0x82AC, 0x304E},+    {0x82AD, 0x304F},+    {0x82AE, 0x3050},+    {0x82AF, 0x3051},+    {0x82B0, 0x3052},+    {0x82B1, 0x3053},+    {0x82B2, 0x3054},+    {0x82B3, 0x3055},+    {0x82B4, 0x3056},+    {0x82B5, 0x3057},+    {0x82B6, 0x3058},+    {0x82B7, 0x3059},+    {0x82B8, 0x305A},+    {0x82B9, 0x305B},+    {0x82BA, 0x305C},+    {0x82BB, 0x305D},+    {0x82BC, 0x305E},+    {0x82BD, 0x305F},+    {0x82BE, 0x3060},+    {0x82BF, 0x3061},+    {0x82C0, 0x3062},+    {0x82C1, 0x3063},+    {0x82C2, 0x3064},+    {0x82C3, 0x3065},+    {0x82C4, 0x3066},+    {0x82C5, 0x3067},+    {0x82C6, 0x3068},+    {0x82C7, 0x3069},+    {0x82C8, 0x306A},+    {0x82C9, 0x306B},+    {0x82CA, 0x306C},+    {0x82CB, 0x306D},+    {0x82CC, 0x306E},+    {0x82CD, 0x306F},+    {0x82CE, 0x3070},+    {0x82CF, 0x3071},+    {0x82D0, 0x3072},+    {0x82D1, 0x3073},+    {0x82D2, 0x3074},+    {0x82D3, 0x3075},+    {0x82D4, 0x3076},+    {0x82D5, 0x3077},+    {0x82D6, 0x3078},+    {0x82D7, 0x3079},+    {0x82D8, 0x307A},+    {0x82D9, 0x307B},+    {0x82DA, 0x307C},+    {0x82DB, 0x307D},+    {0x82DC, 0x307E},+    {0x82DD, 0x307F},+    {0x82DE, 0x3080},+    {0x82DF, 0x3081},+    {0x82E0, 0x3082},+    {0x82E1, 0x3083},+    {0x82E2, 0x3084},+    {0x82E3, 0x3085},+    {0x82E4, 0x3086},+    {0x82E5, 0x3087},+    {0x82E6, 0x3088},+    {0x82E7, 0x3089},+    {0x82E8, 0x308A},+    {0x82E9, 0x308B},+    {0x82EA, 0x308C},+    {0x82EB, 0x308D},+    {0x82EC, 0x308E},+    {0x82ED, 0x308F},+    {0x82EE, 0x3090},+    {0x82EF, 0x3091},+    {0x82F0, 0x3092},+    {0x82F1, 0x3093},+    {0x8340, 0x30A1},+    {0x8341, 0x30A2},+    {0x8342, 0x30A3},+    {0x8343, 0x30A4},+    {0x8344, 0x30A5},+    {0x8345, 0x30A6},+    {0x8346, 0x30A7},+    {0x8347, 0x30A8},+    {0x8348, 0x30A9},+    {0x8349, 0x30AA},+    {0x834A, 0x30AB},+    {0x834B, 0x30AC},+    {0x834C, 0x30AD},+    {0x834D, 0x30AE},+    {0x834E, 0x30AF},+    {0x834F, 0x30B0},+    {0x8350, 0x30B1},+    {0x8351, 0x30B2},+    {0x8352, 0x30B3},+    {0x8353, 0x30B4},+    {0x8354, 0x30B5},+    {0x8355, 0x30B6},+    {0x8356, 0x30B7},+    {0x8357, 0x30B8},+    {0x8358, 0x30B9},+    {0x8359, 0x30BA},+    {0x835A, 0x30BB},+    {0x835B, 0x30BC},+    {0x835C, 0x30BD},+    {0x835D, 0x30BE},+    {0x835E, 0x30BF},+    {0x835F, 0x30C0},+    {0x8360, 0x30C1},+    {0x8361, 0x30C2},+    {0x8362, 0x30C3},+    {0x8363, 0x30C4},+    {0x8364, 0x30C5},+    {0x8365, 0x30C6},+    {0x8366, 0x30C7},+    {0x8367, 0x30C8},+    {0x8368, 0x30C9},+    {0x8369, 0x30CA},+    {0x836A, 0x30CB},+    {0x836B, 0x30CC},+    {0x836C, 0x30CD},+    {0x836D, 0x30CE},+    {0x836E, 0x30CF},+    {0x836F, 0x30D0},+    {0x8370, 0x30D1},+    {0x8371, 0x30D2},+    {0x8372, 0x30D3},+    {0x8373, 0x30D4},+    {0x8374, 0x30D5},+    {0x8375, 0x30D6},+    {0x8376, 0x30D7},+    {0x8377, 0x30D8},+    {0x8378, 0x30D9},+    {0x8379, 0x30DA},+    {0x837A, 0x30DB},+    {0x837B, 0x30DC},+    {0x837C, 0x30DD},+    {0x837D, 0x30DE},+    {0x837E, 0x30DF},+    {0x8380, 0x30E0},+    {0x8381, 0x30E1},+    {0x8382, 0x30E2},+    {0x8383, 0x30E3},+    {0x8384, 0x30E4},+    {0x8385, 0x30E5},+    {0x8386, 0x30E6},+    {0x8387, 0x30E7},+    {0x8388, 0x30E8},+    {0x8389, 0x30E9},+    {0x838A, 0x30EA},+    {0x838B, 0x30EB},+    {0x838C, 0x30EC},+    {0x838D, 0x30ED},+    {0x838E, 0x30EE},+    {0x838F, 0x30EF},+    {0x8390, 0x30F0},+    {0x8391, 0x30F1},+    {0x8392, 0x30F2},+    {0x8393, 0x30F3},+    {0x8394, 0x30F4},+    {0x8395, 0x30F5},+    {0x8396, 0x30F6},+    {0x839F, 0x0391},+    {0x83A0, 0x0392},+    {0x83A1, 0x0393},+    {0x83A2, 0x0394},+    {0x83A3, 0x0395},+    {0x83A4, 0x0396},+    {0x83A5, 0x0397},+    {0x83A6, 0x0398},+    {0x83A7, 0x0399},+    {0x83A8, 0x039A},+    {0x83A9, 0x039B},+    {0x83AA, 0x039C},+    {0x83AB, 0x039D},+    {0x83AC, 0x039E},+    {0x83AD, 0x039F},+    {0x83AE, 0x03A0},+    {0x83AF, 0x03A1},+    {0x83B0, 0x03A3},+    {0x83B1, 0x03A4},+    {0x83B2, 0x03A5},+    {0x83B3, 0x03A6},+    {0x83B4, 0x03A7},+    {0x83B5, 0x03A8},+    {0x83B6, 0x03A9},+    {0x83BF, 0x03B1},+    {0x83C0, 0x03B2},+    {0x83C1, 0x03B3},+    {0x83C2, 0x03B4},+    {0x83C3, 0x03B5},+    {0x83C4, 0x03B6},+    {0x83C5, 0x03B7},+    {0x83C6, 0x03B8},+    {0x83C7, 0x03B9},+    {0x83C8, 0x03BA},+    {0x83C9, 0x03BB},+    {0x83CA, 0x03BC},+    {0x83CB, 0x03BD},+    {0x83CC, 0x03BE},+    {0x83CD, 0x03BF},+    {0x83CE, 0x03C0},+    {0x83CF, 0x03C1},+    {0x83D0, 0x03C3},+    {0x83D1, 0x03C4},+    {0x83D2, 0x03C5},+    {0x83D3, 0x03C6},+    {0x83D4, 0x03C7},+    {0x83D5, 0x03C8},+    {0x83D6, 0x03C9},+    {0x8440, 0x0410},+    {0x8441, 0x0411},+    {0x8442, 0x0412},+    {0x8443, 0x0413},+    {0x8444, 0x0414},+    {0x8445, 0x0415},+    {0x8446, 0x0401},+    {0x8447, 0x0416},+    {0x8448, 0x0417},+    {0x8449, 0x0418},+    {0x844A, 0x0419},+    {0x844B, 0x041A},+    {0x844C, 0x041B},+    {0x844D, 0x041C},+    {0x844E, 0x041D},+    {0x844F, 0x041E},+    {0x8450, 0x041F},+    {0x8451, 0x0420},+    {0x8452, 0x0421},+    {0x8453, 0x0422},+    {0x8454, 0x0423},+    {0x8455, 0x0424},+    {0x8456, 0x0425},+    {0x8457, 0x0426},+    {0x8458, 0x0427},+    {0x8459, 0x0428},+    {0x845A, 0x0429},+    {0x845B, 0x042A},+    {0x845C, 0x042B},+    {0x845D, 0x042C},+    {0x845E, 0x042D},+    {0x845F, 0x042E},+    {0x8460, 0x042F},+    {0x8470, 0x0430},+    {0x8471, 0x0431},+    {0x8472, 0x0432},+    {0x8473, 0x0433},+    {0x8474, 0x0434},+    {0x8475, 0x0435},+    {0x8476, 0x0451},+    {0x8477, 0x0436},+    {0x8478, 0x0437},+    {0x8479, 0x0438},+    {0x847A, 0x0439},+    {0x847B, 0x043A},+    {0x847C, 0x043B},+    {0x847D, 0x043C},+    {0x847E, 0x043D},+    {0x8480, 0x043E},+    {0x8481, 0x043F},+    {0x8482, 0x0440},+    {0x8483, 0x0441},+    {0x8484, 0x0442},+    {0x8485, 0x0443},+    {0x8486, 0x0444},+    {0x8487, 0x0445},+    {0x8488, 0x0446},+    {0x8489, 0x0447},+    {0x848A, 0x0448},+    {0x848B, 0x0449},+    {0x848C, 0x044A},+    {0x848D, 0x044B},+    {0x848E, 0x044C},+    {0x848F, 0x044D},+    {0x8490, 0x044E},+    {0x8491, 0x044F},+    {0x849F, 0x2500},+    {0x84A0, 0x2502},+    {0x84A1, 0x250C},+    {0x84A2, 0x2510},+    {0x84A3, 0x2518},+    {0x84A4, 0x2514},+    {0x84A5, 0x251C},+    {0x84A6, 0x252C},+    {0x84A7, 0x2524},+    {0x84A8, 0x2534},+    {0x84A9, 0x253C},+    {0x84AA, 0x2501},+    {0x84AB, 0x2503},+    {0x84AC, 0x250F},+    {0x84AD, 0x2513},+    {0x84AE, 0x251B},+    {0x84AF, 0x2517},+    {0x84B0, 0x2523},+    {0x84B1, 0x2533},+    {0x84B2, 0x252B},+    {0x84B3, 0x253B},+    {0x84B4, 0x254B},+    {0x84B5, 0x2520},+    {0x84B6, 0x252F},+    {0x84B7, 0x2528},+    {0x84B8, 0x2537},+    {0x84B9, 0x253F},+    {0x84BA, 0x251D},+    {0x84BB, 0x2530},+    {0x84BC, 0x2525},+    {0x84BD, 0x2538},+    {0x84BE, 0x2542},+    {0x8740, 0x2460},+    {0x8741, 0x2461},+    {0x8742, 0x2462},+    {0x8743, 0x2463},+    {0x8744, 0x2464},+    {0x8745, 0x2465},+    {0x8746, 0x2466},+    {0x8747, 0x2467},+    {0x8748, 0x2468},+    {0x8749, 0x2469},+    {0x874A, 0x246A},+    {0x874B, 0x246B},+    {0x874C, 0x246C},+    {0x874D, 0x246D},+    {0x874E, 0x246E},+    {0x874F, 0x246F},+    {0x8750, 0x2470},+    {0x8751, 0x2471},+    {0x8752, 0x2472},+    {0x8753, 0x2473},+    {0x8754, 0x2160},+    {0x8755, 0x2161},+    {0x8756, 0x2162},+    {0x8757, 0x2163},+    {0x8758, 0x2164},+    {0x8759, 0x2165},+    {0x875A, 0x2166},+    {0x875B, 0x2167},+    {0x875C, 0x2168},+    {0x875D, 0x2169},+    {0x875F, 0x3349},+    {0x8760, 0x3314},+    {0x8761, 0x3322},+    {0x8762, 0x334D},+    {0x8763, 0x3318},+    {0x8764, 0x3327},+    {0x8765, 0x3303},+    {0x8766, 0x3336},+    {0x8767, 0x3351},+    {0x8768, 0x3357},+    {0x8769, 0x330D},+    {0x876A, 0x3326},+    {0x876B, 0x3323},+    {0x876C, 0x332B},+    {0x876D, 0x334A},+    {0x876E, 0x333B},+    {0x876F, 0x339C},+    {0x8770, 0x339D},+    {0x8771, 0x339E},+    {0x8772, 0x338E},+    {0x8773, 0x338F},+    {0x8774, 0x33C4},+    {0x8775, 0x33A1},+    {0x877E, 0x337B},+    {0x8780, 0x301D},+    {0x8781, 0x301F},+    {0x8782, 0x2116},+    {0x8783, 0x33CD},+    {0x8784, 0x2121},+    {0x8785, 0x32A4},+    {0x8786, 0x32A5},+    {0x8787, 0x32A6},+    {0x8788, 0x32A7},+    {0x8789, 0x32A8},+    {0x878A, 0x3231},+    {0x878B, 0x3232},+    {0x878C, 0x3239},+    {0x878D, 0x337E},+    {0x878E, 0x337D},+    {0x878F, 0x337C},+    {0x8790, 0x2252},+    {0x8791, 0x2261},+    {0x8792, 0x222B},+    {0x8793, 0x222E},+    {0x8794, 0x2211},+    {0x8795, 0x221A},+    {0x8796, 0x22A5},+    {0x8797, 0x2220},+    {0x8798, 0x221F},+    {0x8799, 0x22BF},+    {0x879A, 0x2235},+    {0x879B, 0x2229},+    {0x879C, 0x222A},+    {0x889F, 0x4E9C},+    {0x88A0, 0x5516},+    {0x88A1, 0x5A03},+    {0x88A2, 0x963F},+    {0x88A3, 0x54C0},+    {0x88A4, 0x611B},+    {0x88A5, 0x6328},+    {0x88A6, 0x59F6},+    {0x88A7, 0x9022},+    {0x88A8, 0x8475},+    {0x88A9, 0x831C},+    {0x88AA, 0x7A50},+    {0x88AB, 0x60AA},+    {0x88AC, 0x63E1},+    {0x88AD, 0x6E25},+    {0x88AE, 0x65ED},+    {0x88AF, 0x8466},+    {0x88B0, 0x82A6},+    {0x88B1, 0x9BF5},+    {0x88B2, 0x6893},+    {0x88B3, 0x5727},+    {0x88B4, 0x65A1},+    {0x88B5, 0x6271},+    {0x88B6, 0x5B9B},+    {0x88B7, 0x59D0},+    {0x88B8, 0x867B},+    {0x88B9, 0x98F4},+    {0x88BA, 0x7D62},+    {0x88BB, 0x7DBE},+    {0x88BC, 0x9B8E},+    {0x88BD, 0x6216},+    {0x88BE, 0x7C9F},+    {0x88BF, 0x88B7},+    {0x88C0, 0x5B89},+    {0x88C1, 0x5EB5},+    {0x88C2, 0x6309},+    {0x88C3, 0x6697},+    {0x88C4, 0x6848},+    {0x88C5, 0x95C7},+    {0x88C6, 0x978D},+    {0x88C7, 0x674F},+    {0x88C8, 0x4EE5},+    {0x88C9, 0x4F0A},+    {0x88CA, 0x4F4D},+    {0x88CB, 0x4F9D},+    {0x88CC, 0x5049},+    {0x88CD, 0x56F2},+    {0x88CE, 0x5937},+    {0x88CF, 0x59D4},+    {0x88D0, 0x5A01},+    {0x88D1, 0x5C09},+    {0x88D2, 0x60DF},+    {0x88D3, 0x610F},+    {0x88D4, 0x6170},+    {0x88D5, 0x6613},+    {0x88D6, 0x6905},+    {0x88D7, 0x70BA},+    {0x88D8, 0x754F},+    {0x88D9, 0x7570},+    {0x88DA, 0x79FB},+    {0x88DB, 0x7DAD},+    {0x88DC, 0x7DEF},+    {0x88DD, 0x80C3},+    {0x88DE, 0x840E},+    {0x88DF, 0x8863},+    {0x88E0, 0x8B02},+    {0x88E1, 0x9055},+    {0x88E2, 0x907A},+    {0x88E3, 0x533B},+    {0x88E4, 0x4E95},+    {0x88E5, 0x4EA5},+    {0x88E6, 0x57DF},+    {0x88E7, 0x80B2},+    {0x88E8, 0x90C1},+    {0x88E9, 0x78EF},+    {0x88EA, 0x4E00},+    {0x88EB, 0x58F1},+    {0x88EC, 0x6EA2},+    {0x88ED, 0x9038},+    {0x88EE, 0x7A32},+    {0x88EF, 0x8328},+    {0x88F0, 0x828B},+    {0x88F1, 0x9C2F},+    {0x88F2, 0x5141},+    {0x88F3, 0x5370},+    {0x88F4, 0x54BD},+    {0x88F5, 0x54E1},+    {0x88F6, 0x56E0},+    {0x88F7, 0x59FB},+    {0x88F8, 0x5F15},+    {0x88F9, 0x98F2},+    {0x88FA, 0x6DEB},+    {0x88FB, 0x80E4},+    {0x88FC, 0x852D},+    {0x8940, 0x9662},+    {0x8941, 0x9670},+    {0x8942, 0x96A0},+    {0x8943, 0x97FB},+    {0x8944, 0x540B},+    {0x8945, 0x53F3},+    {0x8946, 0x5B87},+    {0x8947, 0x70CF},+    {0x8948, 0x7FBD},+    {0x8949, 0x8FC2},+    {0x894A, 0x96E8},+    {0x894B, 0x536F},+    {0x894C, 0x9D5C},+    {0x894D, 0x7ABA},+    {0x894E, 0x4E11},+    {0x894F, 0x7893},+    {0x8950, 0x81FC},+    {0x8951, 0x6E26},+    {0x8952, 0x5618},+    {0x8953, 0x5504},+    {0x8954, 0x6B1D},+    {0x8955, 0x851A},+    {0x8956, 0x9C3B},+    {0x8957, 0x59E5},+    {0x8958, 0x53A9},+    {0x8959, 0x6D66},+    {0x895A, 0x74DC},+    {0x895B, 0x958F},+    {0x895C, 0x5642},+    {0x895D, 0x4E91},+    {0x895E, 0x904B},+    {0x895F, 0x96F2},+    {0x8960, 0x834F},+    {0x8961, 0x990C},+    {0x8962, 0x53E1},+    {0x8963, 0x55B6},+    {0x8964, 0x5B30},+    {0x8965, 0x5F71},+    {0x8966, 0x6620},+    {0x8967, 0x66F3},+    {0x8968, 0x6804},+    {0x8969, 0x6C38},+    {0x896A, 0x6CF3},+    {0x896B, 0x6D29},+    {0x896C, 0x745B},+    {0x896D, 0x76C8},+    {0x896E, 0x7A4E},+    {0x896F, 0x9834},+    {0x8970, 0x82F1},+    {0x8971, 0x885B},+    {0x8972, 0x8A60},+    {0x8973, 0x92ED},+    {0x8974, 0x6DB2},+    {0x8975, 0x75AB},+    {0x8976, 0x76CA},+    {0x8977, 0x99C5},+    {0x8978, 0x60A6},+    {0x8979, 0x8B01},+    {0x897A, 0x8D8A},+    {0x897B, 0x95B2},+    {0x897C, 0x698E},+    {0x897D, 0x53AD},+    {0x897E, 0x5186},+    {0x8980, 0x5712},+    {0x8981, 0x5830},+    {0x8982, 0x5944},+    {0x8983, 0x5BB4},+    {0x8984, 0x5EF6},+    {0x8985, 0x6028},+    {0x8986, 0x63A9},+    {0x8987, 0x63F4},+    {0x8988, 0x6CBF},+    {0x8989, 0x6F14},+    {0x898A, 0x708E},+    {0x898B, 0x7114},+    {0x898C, 0x7159},+    {0x898D, 0x71D5},+    {0x898E, 0x733F},+    {0x898F, 0x7E01},+    {0x8990, 0x8276},+    {0x8991, 0x82D1},+    {0x8992, 0x8597},+    {0x8993, 0x9060},+    {0x8994, 0x925B},+    {0x8995, 0x9D1B},+    {0x8996, 0x5869},+    {0x8997, 0x65BC},+    {0x8998, 0x6C5A},+    {0x8999, 0x7525},+    {0x899A, 0x51F9},+    {0x899B, 0x592E},+    {0x899C, 0x5965},+    {0x899D, 0x5F80},+    {0x899E, 0x5FDC},+    {0x899F, 0x62BC},+    {0x89A0, 0x65FA},+    {0x89A1, 0x6A2A},+    {0x89A2, 0x6B27},+    {0x89A3, 0x6BB4},+    {0x89A4, 0x738B},+    {0x89A5, 0x7FC1},+    {0x89A6, 0x8956},+    {0x89A7, 0x9D2C},+    {0x89A8, 0x9D0E},+    {0x89A9, 0x9EC4},+    {0x89AA, 0x5CA1},+    {0x89AB, 0x6C96},+    {0x89AC, 0x837B},+    {0x89AD, 0x5104},+    {0x89AE, 0x5C4B},+    {0x89AF, 0x61B6},+    {0x89B0, 0x81C6},+    {0x89B1, 0x6876},+    {0x89B2, 0x7261},+    {0x89B3, 0x4E59},+    {0x89B4, 0x4FFA},+    {0x89B5, 0x5378},+    {0x89B6, 0x6069},+    {0x89B7, 0x6E29},+    {0x89B8, 0x7A4F},+    {0x89B9, 0x97F3},+    {0x89BA, 0x4E0B},+    {0x89BB, 0x5316},+    {0x89BC, 0x4EEE},+    {0x89BD, 0x4F55},+    {0x89BE, 0x4F3D},+    {0x89BF, 0x4FA1},+    {0x89C0, 0x4F73},+    {0x89C1, 0x52A0},+    {0x89C2, 0x53EF},+    {0x89C3, 0x5609},+    {0x89C4, 0x590F},+    {0x89C5, 0x5AC1},+    {0x89C6, 0x5BB6},+    {0x89C7, 0x5BE1},+    {0x89C8, 0x79D1},+    {0x89C9, 0x6687},+    {0x89CA, 0x679C},+    {0x89CB, 0x67B6},+    {0x89CC, 0x6B4C},+    {0x89CD, 0x6CB3},+    {0x89CE, 0x706B},+    {0x89CF, 0x73C2},+    {0x89D0, 0x798D},+    {0x89D1, 0x79BE},+    {0x89D2, 0x7A3C},+    {0x89D3, 0x7B87},+    {0x89D4, 0x82B1},+    {0x89D5, 0x82DB},+    {0x89D6, 0x8304},+    {0x89D7, 0x8377},+    {0x89D8, 0x83EF},+    {0x89D9, 0x83D3},+    {0x89DA, 0x8766},+    {0x89DB, 0x8AB2},+    {0x89DC, 0x5629},+    {0x89DD, 0x8CA8},+    {0x89DE, 0x8FE6},+    {0x89DF, 0x904E},+    {0x89E0, 0x971E},+    {0x89E1, 0x868A},+    {0x89E2, 0x4FC4},+    {0x89E3, 0x5CE8},+    {0x89E4, 0x6211},+    {0x89E5, 0x7259},+    {0x89E6, 0x753B},+    {0x89E7, 0x81E5},+    {0x89E8, 0x82BD},+    {0x89E9, 0x86FE},+    {0x89EA, 0x8CC0},+    {0x89EB, 0x96C5},+    {0x89EC, 0x9913},+    {0x89ED, 0x99D5},+    {0x89EE, 0x4ECB},+    {0x89EF, 0x4F1A},+    {0x89F0, 0x89E3},+    {0x89F1, 0x56DE},+    {0x89F2, 0x584A},+    {0x89F3, 0x58CA},+    {0x89F4, 0x5EFB},+    {0x89F5, 0x5FEB},+    {0x89F6, 0x602A},+    {0x89F7, 0x6094},+    {0x89F8, 0x6062},+    {0x89F9, 0x61D0},+    {0x89FA, 0x6212},+    {0x89FB, 0x62D0},+    {0x89FC, 0x6539},+    {0x8A40, 0x9B41},+    {0x8A41, 0x6666},+    {0x8A42, 0x68B0},+    {0x8A43, 0x6D77},+    {0x8A44, 0x7070},+    {0x8A45, 0x754C},+    {0x8A46, 0x7686},+    {0x8A47, 0x7D75},+    {0x8A48, 0x82A5},+    {0x8A49, 0x87F9},+    {0x8A4A, 0x958B},+    {0x8A4B, 0x968E},+    {0x8A4C, 0x8C9D},+    {0x8A4D, 0x51F1},+    {0x8A4E, 0x52BE},+    {0x8A4F, 0x5916},+    {0x8A50, 0x54B3},+    {0x8A51, 0x5BB3},+    {0x8A52, 0x5D16},+    {0x8A53, 0x6168},+    {0x8A54, 0x6982},+    {0x8A55, 0x6DAF},+    {0x8A56, 0x788D},+    {0x8A57, 0x84CB},+    {0x8A58, 0x8857},+    {0x8A59, 0x8A72},+    {0x8A5A, 0x93A7},+    {0x8A5B, 0x9AB8},+    {0x8A5C, 0x6D6C},+    {0x8A5D, 0x99A8},+    {0x8A5E, 0x86D9},+    {0x8A5F, 0x57A3},+    {0x8A60, 0x67FF},+    {0x8A61, 0x86CE},+    {0x8A62, 0x920E},+    {0x8A63, 0x5283},+    {0x8A64, 0x5687},+    {0x8A65, 0x5404},+    {0x8A66, 0x5ED3},+    {0x8A67, 0x62E1},+    {0x8A68, 0x64B9},+    {0x8A69, 0x683C},+    {0x8A6A, 0x6838},+    {0x8A6B, 0x6BBB},+    {0x8A6C, 0x7372},+    {0x8A6D, 0x78BA},+    {0x8A6E, 0x7A6B},+    {0x8A6F, 0x899A},+    {0x8A70, 0x89D2},+    {0x8A71, 0x8D6B},+    {0x8A72, 0x8F03},+    {0x8A73, 0x90ED},+    {0x8A74, 0x95A3},+    {0x8A75, 0x9694},+    {0x8A76, 0x9769},+    {0x8A77, 0x5B66},+    {0x8A78, 0x5CB3},+    {0x8A79, 0x697D},+    {0x8A7A, 0x984D},+    {0x8A7B, 0x984E},+    {0x8A7C, 0x639B},+    {0x8A7D, 0x7B20},+    {0x8A7E, 0x6A2B},+    {0x8A80, 0x6A7F},+    {0x8A81, 0x68B6},+    {0x8A82, 0x9C0D},+    {0x8A83, 0x6F5F},+    {0x8A84, 0x5272},+    {0x8A85, 0x559D},+    {0x8A86, 0x6070},+    {0x8A87, 0x62EC},+    {0x8A88, 0x6D3B},+    {0x8A89, 0x6E07},+    {0x8A8A, 0x6ED1},+    {0x8A8B, 0x845B},+    {0x8A8C, 0x8910},+    {0x8A8D, 0x8F44},+    {0x8A8E, 0x4E14},+    {0x8A8F, 0x9C39},+    {0x8A90, 0x53F6},+    {0x8A91, 0x691B},+    {0x8A92, 0x6A3A},+    {0x8A93, 0x9784},+    {0x8A94, 0x682A},+    {0x8A95, 0x515C},+    {0x8A96, 0x7AC3},+    {0x8A97, 0x84B2},+    {0x8A98, 0x91DC},+    {0x8A99, 0x938C},+    {0x8A9A, 0x565B},+    {0x8A9B, 0x9D28},+    {0x8A9C, 0x6822},+    {0x8A9D, 0x8305},+    {0x8A9E, 0x8431},+    {0x8A9F, 0x7CA5},+    {0x8AA0, 0x5208},+    {0x8AA1, 0x82C5},+    {0x8AA2, 0x74E6},+    {0x8AA3, 0x4E7E},+    {0x8AA4, 0x4F83},+    {0x8AA5, 0x51A0},+    {0x8AA6, 0x5BD2},+    {0x8AA7, 0x520A},+    {0x8AA8, 0x52D8},+    {0x8AA9, 0x52E7},+    {0x8AAA, 0x5DFB},+    {0x8AAB, 0x559A},+    {0x8AAC, 0x582A},+    {0x8AAD, 0x59E6},+    {0x8AAE, 0x5B8C},+    {0x8AAF, 0x5B98},+    {0x8AB0, 0x5BDB},+    {0x8AB1, 0x5E72},+    {0x8AB2, 0x5E79},+    {0x8AB3, 0x60A3},+    {0x8AB4, 0x611F},+    {0x8AB5, 0x6163},+    {0x8AB6, 0x61BE},+    {0x8AB7, 0x63DB},+    {0x8AB8, 0x6562},+    {0x8AB9, 0x67D1},+    {0x8ABA, 0x6853},+    {0x8ABB, 0x68FA},+    {0x8ABC, 0x6B3E},+    {0x8ABD, 0x6B53},+    {0x8ABE, 0x6C57},+    {0x8ABF, 0x6F22},+    {0x8AC0, 0x6F97},+    {0x8AC1, 0x6F45},+    {0x8AC2, 0x74B0},+    {0x8AC3, 0x7518},+    {0x8AC4, 0x76E3},+    {0x8AC5, 0x770B},+    {0x8AC6, 0x7AFF},+    {0x8AC7, 0x7BA1},+    {0x8AC8, 0x7C21},+    {0x8AC9, 0x7DE9},+    {0x8ACA, 0x7F36},+    {0x8ACB, 0x7FF0},+    {0x8ACC, 0x809D},+    {0x8ACD, 0x8266},+    {0x8ACE, 0x839E},+    {0x8ACF, 0x89B3},+    {0x8AD0, 0x8ACC},+    {0x8AD1, 0x8CAB},+    {0x8AD2, 0x9084},+    {0x8AD3, 0x9451},+    {0x8AD4, 0x9593},+    {0x8AD5, 0x9591},+    {0x8AD6, 0x95A2},+    {0x8AD7, 0x9665},+    {0x8AD8, 0x97D3},+    {0x8AD9, 0x9928},+    {0x8ADA, 0x8218},+    {0x8ADB, 0x4E38},+    {0x8ADC, 0x542B},+    {0x8ADD, 0x5CB8},+    {0x8ADE, 0x5DCC},+    {0x8ADF, 0x73A9},+    {0x8AE0, 0x764C},+    {0x8AE1, 0x773C},+    {0x8AE2, 0x5CA9},+    {0x8AE3, 0x7FEB},+    {0x8AE4, 0x8D0B},+    {0x8AE5, 0x96C1},+    {0x8AE6, 0x9811},+    {0x8AE7, 0x9854},+    {0x8AE8, 0x9858},+    {0x8AE9, 0x4F01},+    {0x8AEA, 0x4F0E},+    {0x8AEB, 0x5371},+    {0x8AEC, 0x559C},+    {0x8AED, 0x5668},+    {0x8AEE, 0x57FA},+    {0x8AEF, 0x5947},+    {0x8AF0, 0x5B09},+    {0x8AF1, 0x5BC4},+    {0x8AF2, 0x5C90},+    {0x8AF3, 0x5E0C},+    {0x8AF4, 0x5E7E},+    {0x8AF5, 0x5FCC},+    {0x8AF6, 0x63EE},+    {0x8AF7, 0x673A},+    {0x8AF8, 0x65D7},+    {0x8AF9, 0x65E2},+    {0x8AFA, 0x671F},+    {0x8AFB, 0x68CB},+    {0x8AFC, 0x68C4},+    {0x8B40, 0x6A5F},+    {0x8B41, 0x5E30},+    {0x8B42, 0x6BC5},+    {0x8B43, 0x6C17},+    {0x8B44, 0x6C7D},+    {0x8B45, 0x757F},+    {0x8B46, 0x7948},+    {0x8B47, 0x5B63},+    {0x8B48, 0x7A00},+    {0x8B49, 0x7D00},+    {0x8B4A, 0x5FBD},+    {0x8B4B, 0x898F},+    {0x8B4C, 0x8A18},+    {0x8B4D, 0x8CB4},+    {0x8B4E, 0x8D77},+    {0x8B4F, 0x8ECC},+    {0x8B50, 0x8F1D},+    {0x8B51, 0x98E2},+    {0x8B52, 0x9A0E},+    {0x8B53, 0x9B3C},+    {0x8B54, 0x4E80},+    {0x8B55, 0x507D},+    {0x8B56, 0x5100},+    {0x8B57, 0x5993},+    {0x8B58, 0x5B9C},+    {0x8B59, 0x622F},+    {0x8B5A, 0x6280},+    {0x8B5B, 0x64EC},+    {0x8B5C, 0x6B3A},+    {0x8B5D, 0x72A0},+    {0x8B5E, 0x7591},+    {0x8B5F, 0x7947},+    {0x8B60, 0x7FA9},+    {0x8B61, 0x87FB},+    {0x8B62, 0x8ABC},+    {0x8B63, 0x8B70},+    {0x8B64, 0x63AC},+    {0x8B65, 0x83CA},+    {0x8B66, 0x97A0},+    {0x8B67, 0x5409},+    {0x8B68, 0x5403},+    {0x8B69, 0x55AB},+    {0x8B6A, 0x6854},+    {0x8B6B, 0x6A58},+    {0x8B6C, 0x8A70},+    {0x8B6D, 0x7827},+    {0x8B6E, 0x6775},+    {0x8B6F, 0x9ECD},+    {0x8B70, 0x5374},+    {0x8B71, 0x5BA2},+    {0x8B72, 0x811A},+    {0x8B73, 0x8650},+    {0x8B74, 0x9006},+    {0x8B75, 0x4E18},+    {0x8B76, 0x4E45},+    {0x8B77, 0x4EC7},+    {0x8B78, 0x4F11},+    {0x8B79, 0x53CA},+    {0x8B7A, 0x5438},+    {0x8B7B, 0x5BAE},+    {0x8B7C, 0x5F13},+    {0x8B7D, 0x6025},+    {0x8B7E, 0x6551},+    {0x8B80, 0x673D},+    {0x8B81, 0x6C42},+    {0x8B82, 0x6C72},+    {0x8B83, 0x6CE3},+    {0x8B84, 0x7078},+    {0x8B85, 0x7403},+    {0x8B86, 0x7A76},+    {0x8B87, 0x7AAE},+    {0x8B88, 0x7B08},+    {0x8B89, 0x7D1A},+    {0x8B8A, 0x7CFE},+    {0x8B8B, 0x7D66},+    {0x8B8C, 0x65E7},+    {0x8B8D, 0x725B},+    {0x8B8E, 0x53BB},+    {0x8B8F, 0x5C45},+    {0x8B90, 0x5DE8},+    {0x8B91, 0x62D2},+    {0x8B92, 0x62E0},+    {0x8B93, 0x6319},+    {0x8B94, 0x6E20},+    {0x8B95, 0x865A},+    {0x8B96, 0x8A31},+    {0x8B97, 0x8DDD},+    {0x8B98, 0x92F8},+    {0x8B99, 0x6F01},+    {0x8B9A, 0x79A6},+    {0x8B9B, 0x9B5A},+    {0x8B9C, 0x4EA8},+    {0x8B9D, 0x4EAB},+    {0x8B9E, 0x4EAC},+    {0x8B9F, 0x4F9B},+    {0x8BA0, 0x4FA0},+    {0x8BA1, 0x50D1},+    {0x8BA2, 0x5147},+    {0x8BA3, 0x7AF6},+    {0x8BA4, 0x5171},+    {0x8BA5, 0x51F6},+    {0x8BA6, 0x5354},+    {0x8BA7, 0x5321},+    {0x8BA8, 0x537F},+    {0x8BA9, 0x53EB},+    {0x8BAA, 0x55AC},+    {0x8BAB, 0x5883},+    {0x8BAC, 0x5CE1},+    {0x8BAD, 0x5F37},+    {0x8BAE, 0x5F4A},+    {0x8BAF, 0x602F},+    {0x8BB0, 0x6050},+    {0x8BB1, 0x606D},+    {0x8BB2, 0x631F},+    {0x8BB3, 0x6559},+    {0x8BB4, 0x6A4B},+    {0x8BB5, 0x6CC1},+    {0x8BB6, 0x72C2},+    {0x8BB7, 0x72ED},+    {0x8BB8, 0x77EF},+    {0x8BB9, 0x80F8},+    {0x8BBA, 0x8105},+    {0x8BBB, 0x8208},+    {0x8BBC, 0x854E},+    {0x8BBD, 0x90F7},+    {0x8BBE, 0x93E1},+    {0x8BBF, 0x97FF},+    {0x8BC0, 0x9957},+    {0x8BC1, 0x9A5A},+    {0x8BC2, 0x4EF0},+    {0x8BC3, 0x51DD},+    {0x8BC4, 0x5C2D},+    {0x8BC5, 0x6681},+    {0x8BC6, 0x696D},+    {0x8BC7, 0x5C40},+    {0x8BC8, 0x66F2},+    {0x8BC9, 0x6975},+    {0x8BCA, 0x7389},+    {0x8BCB, 0x6850},+    {0x8BCC, 0x7C81},+    {0x8BCD, 0x50C5},+    {0x8BCE, 0x52E4},+    {0x8BCF, 0x5747},+    {0x8BD0, 0x5DFE},+    {0x8BD1, 0x9326},+    {0x8BD2, 0x65A4},+    {0x8BD3, 0x6B23},+    {0x8BD4, 0x6B3D},+    {0x8BD5, 0x7434},+    {0x8BD6, 0x7981},+    {0x8BD7, 0x79BD},+    {0x8BD8, 0x7B4B},+    {0x8BD9, 0x7DCA},+    {0x8BDA, 0x82B9},+    {0x8BDB, 0x83CC},+    {0x8BDC, 0x887F},+    {0x8BDD, 0x895F},+    {0x8BDE, 0x8B39},+    {0x8BDF, 0x8FD1},+    {0x8BE0, 0x91D1},+    {0x8BE1, 0x541F},+    {0x8BE2, 0x9280},+    {0x8BE3, 0x4E5D},+    {0x8BE4, 0x5036},+    {0x8BE5, 0x53E5},+    {0x8BE6, 0x533A},+    {0x8BE7, 0x72D7},+    {0x8BE8, 0x7396},+    {0x8BE9, 0x77E9},+    {0x8BEA, 0x82E6},+    {0x8BEB, 0x8EAF},+    {0x8BEC, 0x99C6},+    {0x8BED, 0x99C8},+    {0x8BEE, 0x99D2},+    {0x8BEF, 0x5177},+    {0x8BF0, 0x611A},+    {0x8BF1, 0x865E},+    {0x8BF2, 0x55B0},+    {0x8BF3, 0x7A7A},+    {0x8BF4, 0x5076},+    {0x8BF5, 0x5BD3},+    {0x8BF6, 0x9047},+    {0x8BF7, 0x9685},+    {0x8BF8, 0x4E32},+    {0x8BF9, 0x6ADB},+    {0x8BFA, 0x91E7},+    {0x8BFB, 0x5C51},+    {0x8BFC, 0x5C48},+    {0x8C40, 0x6398},+    {0x8C41, 0x7A9F},+    {0x8C42, 0x6C93},+    {0x8C43, 0x9774},+    {0x8C44, 0x8F61},+    {0x8C45, 0x7AAA},+    {0x8C46, 0x718A},+    {0x8C47, 0x9688},+    {0x8C48, 0x7C82},+    {0x8C49, 0x6817},+    {0x8C4A, 0x7E70},+    {0x8C4B, 0x6851},+    {0x8C4C, 0x936C},+    {0x8C4D, 0x52F2},+    {0x8C4E, 0x541B},+    {0x8C4F, 0x85AB},+    {0x8C50, 0x8A13},+    {0x8C51, 0x7FA4},+    {0x8C52, 0x8ECD},+    {0x8C53, 0x90E1},+    {0x8C54, 0x5366},+    {0x8C55, 0x8888},+    {0x8C56, 0x7941},+    {0x8C57, 0x4FC2},+    {0x8C58, 0x50BE},+    {0x8C59, 0x5211},+    {0x8C5A, 0x5144},+    {0x8C5B, 0x5553},+    {0x8C5C, 0x572D},+    {0x8C5D, 0x73EA},+    {0x8C5E, 0x578B},+    {0x8C5F, 0x5951},+    {0x8C60, 0x5F62},+    {0x8C61, 0x5F84},+    {0x8C62, 0x6075},+    {0x8C63, 0x6176},+    {0x8C64, 0x6167},+    {0x8C65, 0x61A9},+    {0x8C66, 0x63B2},+    {0x8C67, 0x643A},+    {0x8C68, 0x656C},+    {0x8C69, 0x666F},+    {0x8C6A, 0x6842},+    {0x8C6B, 0x6E13},+    {0x8C6C, 0x7566},+    {0x8C6D, 0x7A3D},+    {0x8C6E, 0x7CFB},+    {0x8C6F, 0x7D4C},+    {0x8C70, 0x7D99},+    {0x8C71, 0x7E4B},+    {0x8C72, 0x7F6B},+    {0x8C73, 0x830E},+    {0x8C74, 0x834A},+    {0x8C75, 0x86CD},+    {0x8C76, 0x8A08},+    {0x8C77, 0x8A63},+    {0x8C78, 0x8B66},+    {0x8C79, 0x8EFD},+    {0x8C7A, 0x981A},+    {0x8C7B, 0x9D8F},+    {0x8C7C, 0x82B8},+    {0x8C7D, 0x8FCE},+    {0x8C7E, 0x9BE8},+    {0x8C80, 0x5287},+    {0x8C81, 0x621F},+    {0x8C82, 0x6483},+    {0x8C83, 0x6FC0},+    {0x8C84, 0x9699},+    {0x8C85, 0x6841},+    {0x8C86, 0x5091},+    {0x8C87, 0x6B20},+    {0x8C88, 0x6C7A},+    {0x8C89, 0x6F54},+    {0x8C8A, 0x7A74},+    {0x8C8B, 0x7D50},+    {0x8C8C, 0x8840},+    {0x8C8D, 0x8A23},+    {0x8C8E, 0x6708},+    {0x8C8F, 0x4EF6},+    {0x8C90, 0x5039},+    {0x8C91, 0x5026},+    {0x8C92, 0x5065},+    {0x8C93, 0x517C},+    {0x8C94, 0x5238},+    {0x8C95, 0x5263},+    {0x8C96, 0x55A7},+    {0x8C97, 0x570F},+    {0x8C98, 0x5805},+    {0x8C99, 0x5ACC},+    {0x8C9A, 0x5EFA},+    {0x8C9B, 0x61B2},+    {0x8C9C, 0x61F8},+    {0x8C9D, 0x62F3},+    {0x8C9E, 0x6372},+    {0x8C9F, 0x691C},+    {0x8CA0, 0x6A29},+    {0x8CA1, 0x727D},+    {0x8CA2, 0x72AC},+    {0x8CA3, 0x732E},+    {0x8CA4, 0x7814},+    {0x8CA5, 0x786F},+    {0x8CA6, 0x7D79},+    {0x8CA7, 0x770C},+    {0x8CA8, 0x80A9},+    {0x8CA9, 0x898B},+    {0x8CAA, 0x8B19},+    {0x8CAB, 0x8CE2},+    {0x8CAC, 0x8ED2},+    {0x8CAD, 0x9063},+    {0x8CAE, 0x9375},+    {0x8CAF, 0x967A},+    {0x8CB0, 0x9855},+    {0x8CB1, 0x9A13},+    {0x8CB2, 0x9E78},+    {0x8CB3, 0x5143},+    {0x8CB4, 0x539F},+    {0x8CB5, 0x53B3},+    {0x8CB6, 0x5E7B},+    {0x8CB7, 0x5F26},+    {0x8CB8, 0x6E1B},+    {0x8CB9, 0x6E90},+    {0x8CBA, 0x7384},+    {0x8CBB, 0x73FE},+    {0x8CBC, 0x7D43},+    {0x8CBD, 0x8237},+    {0x8CBE, 0x8A00},+    {0x8CBF, 0x8AFA},+    {0x8CC0, 0x9650},+    {0x8CC1, 0x4E4E},+    {0x8CC2, 0x500B},+    {0x8CC3, 0x53E4},+    {0x8CC4, 0x547C},+    {0x8CC5, 0x56FA},+    {0x8CC6, 0x59D1},+    {0x8CC7, 0x5B64},+    {0x8CC8, 0x5DF1},+    {0x8CC9, 0x5EAB},+    {0x8CCA, 0x5F27},+    {0x8CCB, 0x6238},+    {0x8CCC, 0x6545},+    {0x8CCD, 0x67AF},+    {0x8CCE, 0x6E56},+    {0x8CCF, 0x72D0},+    {0x8CD0, 0x7CCA},+    {0x8CD1, 0x88B4},+    {0x8CD2, 0x80A1},+    {0x8CD3, 0x80E1},+    {0x8CD4, 0x83F0},+    {0x8CD5, 0x864E},+    {0x8CD6, 0x8A87},+    {0x8CD7, 0x8DE8},+    {0x8CD8, 0x9237},+    {0x8CD9, 0x96C7},+    {0x8CDA, 0x9867},+    {0x8CDB, 0x9F13},+    {0x8CDC, 0x4E94},+    {0x8CDD, 0x4E92},+    {0x8CDE, 0x4F0D},+    {0x8CDF, 0x5348},+    {0x8CE0, 0x5449},+    {0x8CE1, 0x543E},+    {0x8CE2, 0x5A2F},+    {0x8CE3, 0x5F8C},+    {0x8CE4, 0x5FA1},+    {0x8CE5, 0x609F},+    {0x8CE6, 0x68A7},+    {0x8CE7, 0x6A8E},+    {0x8CE8, 0x745A},+    {0x8CE9, 0x7881},+    {0x8CEA, 0x8A9E},+    {0x8CEB, 0x8AA4},+    {0x8CEC, 0x8B77},+    {0x8CED, 0x9190},+    {0x8CEE, 0x4E5E},+    {0x8CEF, 0x9BC9},+    {0x8CF0, 0x4EA4},+    {0x8CF1, 0x4F7C},+    {0x8CF2, 0x4FAF},+    {0x8CF3, 0x5019},+    {0x8CF4, 0x5016},+    {0x8CF5, 0x5149},+    {0x8CF6, 0x516C},+    {0x8CF7, 0x529F},+    {0x8CF8, 0x52B9},+    {0x8CF9, 0x52FE},+    {0x8CFA, 0x539A},+    {0x8CFB, 0x53E3},+    {0x8CFC, 0x5411},+    {0x8D40, 0x540E},+    {0x8D41, 0x5589},+    {0x8D42, 0x5751},+    {0x8D43, 0x57A2},+    {0x8D44, 0x597D},+    {0x8D45, 0x5B54},+    {0x8D46, 0x5B5D},+    {0x8D47, 0x5B8F},+    {0x8D48, 0x5DE5},+    {0x8D49, 0x5DE7},+    {0x8D4A, 0x5DF7},+    {0x8D4B, 0x5E78},+    {0x8D4C, 0x5E83},+    {0x8D4D, 0x5E9A},+    {0x8D4E, 0x5EB7},+    {0x8D4F, 0x5F18},+    {0x8D50, 0x6052},+    {0x8D51, 0x614C},+    {0x8D52, 0x6297},+    {0x8D53, 0x62D8},+    {0x8D54, 0x63A7},+    {0x8D55, 0x653B},+    {0x8D56, 0x6602},+    {0x8D57, 0x6643},+    {0x8D58, 0x66F4},+    {0x8D59, 0x676D},+    {0x8D5A, 0x6821},+    {0x8D5B, 0x6897},+    {0x8D5C, 0x69CB},+    {0x8D5D, 0x6C5F},+    {0x8D5E, 0x6D2A},+    {0x8D5F, 0x6D69},+    {0x8D60, 0x6E2F},+    {0x8D61, 0x6E9D},+    {0x8D62, 0x7532},+    {0x8D63, 0x7687},+    {0x8D64, 0x786C},+    {0x8D65, 0x7A3F},+    {0x8D66, 0x7CE0},+    {0x8D67, 0x7D05},+    {0x8D68, 0x7D18},+    {0x8D69, 0x7D5E},+    {0x8D6A, 0x7DB1},+    {0x8D6B, 0x8015},+    {0x8D6C, 0x8003},+    {0x8D6D, 0x80AF},+    {0x8D6E, 0x80B1},+    {0x8D6F, 0x8154},+    {0x8D70, 0x818F},+    {0x8D71, 0x822A},+    {0x8D72, 0x8352},+    {0x8D73, 0x884C},+    {0x8D74, 0x8861},+    {0x8D75, 0x8B1B},+    {0x8D76, 0x8CA2},+    {0x8D77, 0x8CFC},+    {0x8D78, 0x90CA},+    {0x8D79, 0x9175},+    {0x8D7A, 0x9271},+    {0x8D7B, 0x783F},+    {0x8D7C, 0x92FC},+    {0x8D7D, 0x95A4},+    {0x8D7E, 0x964D},+    {0x8D80, 0x9805},+    {0x8D81, 0x9999},+    {0x8D82, 0x9AD8},+    {0x8D83, 0x9D3B},+    {0x8D84, 0x525B},+    {0x8D85, 0x52AB},+    {0x8D86, 0x53F7},+    {0x8D87, 0x5408},+    {0x8D88, 0x58D5},+    {0x8D89, 0x62F7},+    {0x8D8A, 0x6FE0},+    {0x8D8B, 0x8C6A},+    {0x8D8C, 0x8F5F},+    {0x8D8D, 0x9EB9},+    {0x8D8E, 0x514B},+    {0x8D8F, 0x523B},+    {0x8D90, 0x544A},+    {0x8D91, 0x56FD},+    {0x8D92, 0x7A40},+    {0x8D93, 0x9177},+    {0x8D94, 0x9D60},+    {0x8D95, 0x9ED2},+    {0x8D96, 0x7344},+    {0x8D97, 0x6F09},+    {0x8D98, 0x8170},+    {0x8D99, 0x7511},+    {0x8D9A, 0x5FFD},+    {0x8D9B, 0x60DA},+    {0x8D9C, 0x9AA8},+    {0x8D9D, 0x72DB},+    {0x8D9E, 0x8FBC},+    {0x8D9F, 0x6B64},+    {0x8DA0, 0x9803},+    {0x8DA1, 0x4ECA},+    {0x8DA2, 0x56F0},+    {0x8DA3, 0x5764},+    {0x8DA4, 0x58BE},+    {0x8DA5, 0x5A5A},+    {0x8DA6, 0x6068},+    {0x8DA7, 0x61C7},+    {0x8DA8, 0x660F},+    {0x8DA9, 0x6606},+    {0x8DAA, 0x6839},+    {0x8DAB, 0x68B1},+    {0x8DAC, 0x6DF7},+    {0x8DAD, 0x75D5},+    {0x8DAE, 0x7D3A},+    {0x8DAF, 0x826E},+    {0x8DB0, 0x9B42},+    {0x8DB1, 0x4E9B},+    {0x8DB2, 0x4F50},+    {0x8DB3, 0x53C9},+    {0x8DB4, 0x5506},+    {0x8DB5, 0x5D6F},+    {0x8DB6, 0x5DE6},+    {0x8DB7, 0x5DEE},+    {0x8DB8, 0x67FB},+    {0x8DB9, 0x6C99},+    {0x8DBA, 0x7473},+    {0x8DBB, 0x7802},+    {0x8DBC, 0x8A50},+    {0x8DBD, 0x9396},+    {0x8DBE, 0x88DF},+    {0x8DBF, 0x5750},+    {0x8DC0, 0x5EA7},+    {0x8DC1, 0x632B},+    {0x8DC2, 0x50B5},+    {0x8DC3, 0x50AC},+    {0x8DC4, 0x518D},+    {0x8DC5, 0x6700},+    {0x8DC6, 0x54C9},+    {0x8DC7, 0x585E},+    {0x8DC8, 0x59BB},+    {0x8DC9, 0x5BB0},+    {0x8DCA, 0x5F69},+    {0x8DCB, 0x624D},+    {0x8DCC, 0x63A1},+    {0x8DCD, 0x683D},+    {0x8DCE, 0x6B73},+    {0x8DCF, 0x6E08},+    {0x8DD0, 0x707D},+    {0x8DD1, 0x91C7},+    {0x8DD2, 0x7280},+    {0x8DD3, 0x7815},+    {0x8DD4, 0x7826},+    {0x8DD5, 0x796D},+    {0x8DD6, 0x658E},+    {0x8DD7, 0x7D30},+    {0x8DD8, 0x83DC},+    {0x8DD9, 0x88C1},+    {0x8DDA, 0x8F09},+    {0x8DDB, 0x969B},+    {0x8DDC, 0x5264},+    {0x8DDD, 0x5728},+    {0x8DDE, 0x6750},+    {0x8DDF, 0x7F6A},+    {0x8DE0, 0x8CA1},+    {0x8DE1, 0x51B4},+    {0x8DE2, 0x5742},+    {0x8DE3, 0x962A},+    {0x8DE4, 0x583A},+    {0x8DE5, 0x698A},+    {0x8DE6, 0x80B4},+    {0x8DE7, 0x54B2},+    {0x8DE8, 0x5D0E},+    {0x8DE9, 0x57FC},+    {0x8DEA, 0x7895},+    {0x8DEB, 0x9DFA},+    {0x8DEC, 0x4F5C},+    {0x8DED, 0x524A},+    {0x8DEE, 0x548B},+    {0x8DEF, 0x643E},+    {0x8DF0, 0x6628},+    {0x8DF1, 0x6714},+    {0x8DF2, 0x67F5},+    {0x8DF3, 0x7A84},+    {0x8DF4, 0x7B56},+    {0x8DF5, 0x7D22},+    {0x8DF6, 0x932F},+    {0x8DF7, 0x685C},+    {0x8DF8, 0x9BAD},+    {0x8DF9, 0x7B39},+    {0x8DFA, 0x5319},+    {0x8DFB, 0x518A},+    {0x8DFC, 0x5237},+    {0x8E40, 0x5BDF},+    {0x8E41, 0x62F6},+    {0x8E42, 0x64AE},+    {0x8E43, 0x64E6},+    {0x8E44, 0x672D},+    {0x8E45, 0x6BBA},+    {0x8E46, 0x85A9},+    {0x8E47, 0x96D1},+    {0x8E48, 0x7690},+    {0x8E49, 0x9BD6},+    {0x8E4A, 0x634C},+    {0x8E4B, 0x9306},+    {0x8E4C, 0x9BAB},+    {0x8E4D, 0x76BF},+    {0x8E4E, 0x6652},+    {0x8E4F, 0x4E09},+    {0x8E50, 0x5098},+    {0x8E51, 0x53C2},+    {0x8E52, 0x5C71},+    {0x8E53, 0x60E8},+    {0x8E54, 0x6492},+    {0x8E55, 0x6563},+    {0x8E56, 0x685F},+    {0x8E57, 0x71E6},+    {0x8E58, 0x73CA},+    {0x8E59, 0x7523},+    {0x8E5A, 0x7B97},+    {0x8E5B, 0x7E82},+    {0x8E5C, 0x8695},+    {0x8E5D, 0x8B83},+    {0x8E5E, 0x8CDB},+    {0x8E5F, 0x9178},+    {0x8E60, 0x9910},+    {0x8E61, 0x65AC},+    {0x8E62, 0x66AB},+    {0x8E63, 0x6B8B},+    {0x8E64, 0x4ED5},+    {0x8E65, 0x4ED4},+    {0x8E66, 0x4F3A},+    {0x8E67, 0x4F7F},+    {0x8E68, 0x523A},+    {0x8E69, 0x53F8},+    {0x8E6A, 0x53F2},+    {0x8E6B, 0x55E3},+    {0x8E6C, 0x56DB},+    {0x8E6D, 0x58EB},+    {0x8E6E, 0x59CB},+    {0x8E6F, 0x59C9},+    {0x8E70, 0x59FF},+    {0x8E71, 0x5B50},+    {0x8E72, 0x5C4D},+    {0x8E73, 0x5E02},+    {0x8E74, 0x5E2B},+    {0x8E75, 0x5FD7},+    {0x8E76, 0x601D},+    {0x8E77, 0x6307},+    {0x8E78, 0x652F},+    {0x8E79, 0x5B5C},+    {0x8E7A, 0x65AF},+    {0x8E7B, 0x65BD},+    {0x8E7C, 0x65E8},+    {0x8E7D, 0x679D},+    {0x8E7E, 0x6B62},+    {0x8E80, 0x6B7B},+    {0x8E81, 0x6C0F},+    {0x8E82, 0x7345},+    {0x8E83, 0x7949},+    {0x8E84, 0x79C1},+    {0x8E85, 0x7CF8},+    {0x8E86, 0x7D19},+    {0x8E87, 0x7D2B},+    {0x8E88, 0x80A2},+    {0x8E89, 0x8102},+    {0x8E8A, 0x81F3},+    {0x8E8B, 0x8996},+    {0x8E8C, 0x8A5E},+    {0x8E8D, 0x8A69},+    {0x8E8E, 0x8A66},+    {0x8E8F, 0x8A8C},+    {0x8E90, 0x8AEE},+    {0x8E91, 0x8CC7},+    {0x8E92, 0x8CDC},+    {0x8E93, 0x96CC},+    {0x8E94, 0x98FC},+    {0x8E95, 0x6B6F},+    {0x8E96, 0x4E8B},+    {0x8E97, 0x4F3C},+    {0x8E98, 0x4F8D},+    {0x8E99, 0x5150},+    {0x8E9A, 0x5B57},+    {0x8E9B, 0x5BFA},+    {0x8E9C, 0x6148},+    {0x8E9D, 0x6301},+    {0x8E9E, 0x6642},+    {0x8E9F, 0x6B21},+    {0x8EA0, 0x6ECB},+    {0x8EA1, 0x6CBB},+    {0x8EA2, 0x723E},+    {0x8EA3, 0x74BD},+    {0x8EA4, 0x75D4},+    {0x8EA5, 0x78C1},+    {0x8EA6, 0x793A},+    {0x8EA7, 0x800C},+    {0x8EA8, 0x8033},+    {0x8EA9, 0x81EA},+    {0x8EAA, 0x8494},+    {0x8EAB, 0x8F9E},+    {0x8EAC, 0x6C50},+    {0x8EAD, 0x9E7F},+    {0x8EAE, 0x5F0F},+    {0x8EAF, 0x8B58},+    {0x8EB0, 0x9D2B},+    {0x8EB1, 0x7AFA},+    {0x8EB2, 0x8EF8},+    {0x8EB3, 0x5B8D},+    {0x8EB4, 0x96EB},+    {0x8EB5, 0x4E03},+    {0x8EB6, 0x53F1},+    {0x8EB7, 0x57F7},+    {0x8EB8, 0x5931},+    {0x8EB9, 0x5AC9},+    {0x8EBA, 0x5BA4},+    {0x8EBB, 0x6089},+    {0x8EBC, 0x6E7F},+    {0x8EBD, 0x6F06},+    {0x8EBE, 0x75BE},+    {0x8EBF, 0x8CEA},+    {0x8EC0, 0x5B9F},+    {0x8EC1, 0x8500},+    {0x8EC2, 0x7BE0},+    {0x8EC3, 0x5072},+    {0x8EC4, 0x67F4},+    {0x8EC5, 0x829D},+    {0x8EC6, 0x5C61},+    {0x8EC7, 0x854A},+    {0x8EC8, 0x7E1E},+    {0x8EC9, 0x820E},+    {0x8ECA, 0x5199},+    {0x8ECB, 0x5C04},+    {0x8ECC, 0x6368},+    {0x8ECD, 0x8D66},+    {0x8ECE, 0x659C},+    {0x8ECF, 0x716E},+    {0x8ED0, 0x793E},+    {0x8ED1, 0x7D17},+    {0x8ED2, 0x8005},+    {0x8ED3, 0x8B1D},+    {0x8ED4, 0x8ECA},+    {0x8ED5, 0x906E},+    {0x8ED6, 0x86C7},+    {0x8ED7, 0x90AA},+    {0x8ED8, 0x501F},+    {0x8ED9, 0x52FA},+    {0x8EDA, 0x5C3A},+    {0x8EDB, 0x6753},+    {0x8EDC, 0x707C},+    {0x8EDD, 0x7235},+    {0x8EDE, 0x914C},+    {0x8EDF, 0x91C8},+    {0x8EE0, 0x932B},+    {0x8EE1, 0x82E5},+    {0x8EE2, 0x5BC2},+    {0x8EE3, 0x5F31},+    {0x8EE4, 0x60F9},+    {0x8EE5, 0x4E3B},+    {0x8EE6, 0x53D6},+    {0x8EE7, 0x5B88},+    {0x8EE8, 0x624B},+    {0x8EE9, 0x6731},+    {0x8EEA, 0x6B8A},+    {0x8EEB, 0x72E9},+    {0x8EEC, 0x73E0},+    {0x8EED, 0x7A2E},+    {0x8EEE, 0x816B},+    {0x8EEF, 0x8DA3},+    {0x8EF0, 0x9152},+    {0x8EF1, 0x9996},+    {0x8EF2, 0x5112},+    {0x8EF3, 0x53D7},+    {0x8EF4, 0x546A},+    {0x8EF5, 0x5BFF},+    {0x8EF6, 0x6388},+    {0x8EF7, 0x6A39},+    {0x8EF8, 0x7DAC},+    {0x8EF9, 0x9700},+    {0x8EFA, 0x56DA},+    {0x8EFB, 0x53CE},+    {0x8EFC, 0x5468},+    {0x8F40, 0x5B97},+    {0x8F41, 0x5C31},+    {0x8F42, 0x5DDE},+    {0x8F43, 0x4FEE},+    {0x8F44, 0x6101},+    {0x8F45, 0x62FE},+    {0x8F46, 0x6D32},+    {0x8F47, 0x79C0},+    {0x8F48, 0x79CB},+    {0x8F49, 0x7D42},+    {0x8F4A, 0x7E4D},+    {0x8F4B, 0x7FD2},+    {0x8F4C, 0x81ED},+    {0x8F4D, 0x821F},+    {0x8F4E, 0x8490},+    {0x8F4F, 0x8846},+    {0x8F50, 0x8972},+    {0x8F51, 0x8B90},+    {0x8F52, 0x8E74},+    {0x8F53, 0x8F2F},+    {0x8F54, 0x9031},+    {0x8F55, 0x914B},+    {0x8F56, 0x916C},+    {0x8F57, 0x96C6},+    {0x8F58, 0x919C},+    {0x8F59, 0x4EC0},+    {0x8F5A, 0x4F4F},+    {0x8F5B, 0x5145},+    {0x8F5C, 0x5341},+    {0x8F5D, 0x5F93},+    {0x8F5E, 0x620E},+    {0x8F5F, 0x67D4},+    {0x8F60, 0x6C41},+    {0x8F61, 0x6E0B},+    {0x8F62, 0x7363},+    {0x8F63, 0x7E26},+    {0x8F64, 0x91CD},+    {0x8F65, 0x9283},+    {0x8F66, 0x53D4},+    {0x8F67, 0x5919},+    {0x8F68, 0x5BBF},+    {0x8F69, 0x6DD1},+    {0x8F6A, 0x795D},+    {0x8F6B, 0x7E2E},+    {0x8F6C, 0x7C9B},+    {0x8F6D, 0x587E},+    {0x8F6E, 0x719F},+    {0x8F6F, 0x51FA},+    {0x8F70, 0x8853},+    {0x8F71, 0x8FF0},+    {0x8F72, 0x4FCA},+    {0x8F73, 0x5CFB},+    {0x8F74, 0x6625},+    {0x8F75, 0x77AC},+    {0x8F76, 0x7AE3},+    {0x8F77, 0x821C},+    {0x8F78, 0x99FF},+    {0x8F79, 0x51C6},+    {0x8F7A, 0x5FAA},+    {0x8F7B, 0x65EC},+    {0x8F7C, 0x696F},+    {0x8F7D, 0x6B89},+    {0x8F7E, 0x6DF3},+    {0x8F80, 0x6E96},+    {0x8F81, 0x6F64},+    {0x8F82, 0x76FE},+    {0x8F83, 0x7D14},+    {0x8F84, 0x5DE1},+    {0x8F85, 0x9075},+    {0x8F86, 0x9187},+    {0x8F87, 0x9806},+    {0x8F88, 0x51E6},+    {0x8F89, 0x521D},+    {0x8F8A, 0x6240},+    {0x8F8B, 0x6691},+    {0x8F8C, 0x66D9},+    {0x8F8D, 0x6E1A},+    {0x8F8E, 0x5EB6},+    {0x8F8F, 0x7DD2},+    {0x8F90, 0x7F72},+    {0x8F91, 0x66F8},+    {0x8F92, 0x85AF},+    {0x8F93, 0x85F7},+    {0x8F94, 0x8AF8},+    {0x8F95, 0x52A9},+    {0x8F96, 0x53D9},+    {0x8F97, 0x5973},+    {0x8F98, 0x5E8F},+    {0x8F99, 0x5F90},+    {0x8F9A, 0x6055},+    {0x8F9B, 0x92E4},+    {0x8F9C, 0x9664},+    {0x8F9D, 0x50B7},+    {0x8F9E, 0x511F},+    {0x8F9F, 0x52DD},+    {0x8FA0, 0x5320},+    {0x8FA1, 0x5347},+    {0x8FA2, 0x53EC},+    {0x8FA3, 0x54E8},+    {0x8FA4, 0x5546},+    {0x8FA5, 0x5531},+    {0x8FA6, 0x5617},+    {0x8FA7, 0x5968},+    {0x8FA8, 0x59BE},+    {0x8FA9, 0x5A3C},+    {0x8FAA, 0x5BB5},+    {0x8FAB, 0x5C06},+    {0x8FAC, 0x5C0F},+    {0x8FAD, 0x5C11},+    {0x8FAE, 0x5C1A},+    {0x8FAF, 0x5E84},+    {0x8FB0, 0x5E8A},+    {0x8FB1, 0x5EE0},+    {0x8FB2, 0x5F70},+    {0x8FB3, 0x627F},+    {0x8FB4, 0x6284},+    {0x8FB5, 0x62DB},+    {0x8FB6, 0x638C},+    {0x8FB7, 0x6377},+    {0x8FB8, 0x6607},+    {0x8FB9, 0x660C},+    {0x8FBA, 0x662D},+    {0x8FBB, 0x6676},+    {0x8FBC, 0x677E},+    {0x8FBD, 0x68A2},+    {0x8FBE, 0x6A1F},+    {0x8FBF, 0x6A35},+    {0x8FC0, 0x6CBC},+    {0x8FC1, 0x6D88},+    {0x8FC2, 0x6E09},+    {0x8FC3, 0x6E58},+    {0x8FC4, 0x713C},+    {0x8FC5, 0x7126},+    {0x8FC6, 0x7167},+    {0x8FC7, 0x75C7},+    {0x8FC8, 0x7701},+    {0x8FC9, 0x785D},+    {0x8FCA, 0x7901},+    {0x8FCB, 0x7965},+    {0x8FCC, 0x79F0},+    {0x8FCD, 0x7AE0},+    {0x8FCE, 0x7B11},+    {0x8FCF, 0x7CA7},+    {0x8FD0, 0x7D39},+    {0x8FD1, 0x8096},+    {0x8FD2, 0x83D6},+    {0x8FD3, 0x848B},+    {0x8FD4, 0x8549},+    {0x8FD5, 0x885D},+    {0x8FD6, 0x88F3},+    {0x8FD7, 0x8A1F},+    {0x8FD8, 0x8A3C},+    {0x8FD9, 0x8A54},+    {0x8FDA, 0x8A73},+    {0x8FDB, 0x8C61},+    {0x8FDC, 0x8CDE},+    {0x8FDD, 0x91A4},+    {0x8FDE, 0x9266},+    {0x8FDF, 0x937E},+    {0x8FE0, 0x9418},+    {0x8FE1, 0x969C},+    {0x8FE2, 0x9798},+    {0x8FE3, 0x4E0A},+    {0x8FE4, 0x4E08},+    {0x8FE5, 0x4E1E},+    {0x8FE6, 0x4E57},+    {0x8FE7, 0x5197},+    {0x8FE8, 0x5270},+    {0x8FE9, 0x57CE},+    {0x8FEA, 0x5834},+    {0x8FEB, 0x58CC},+    {0x8FEC, 0x5B22},+    {0x8FED, 0x5E38},+    {0x8FEE, 0x60C5},+    {0x8FEF, 0x64FE},+    {0x8FF0, 0x6761},+    {0x8FF1, 0x6756},+    {0x8FF2, 0x6D44},+    {0x8FF3, 0x72B6},+    {0x8FF4, 0x7573},+    {0x8FF5, 0x7A63},+    {0x8FF6, 0x84B8},+    {0x8FF7, 0x8B72},+    {0x8FF8, 0x91B8},+    {0x8FF9, 0x9320},+    {0x8FFA, 0x5631},+    {0x8FFB, 0x57F4},+    {0x8FFC, 0x98FE},+    {0x9040, 0x62ED},+    {0x9041, 0x690D},+    {0x9042, 0x6B96},+    {0x9043, 0x71ED},+    {0x9044, 0x7E54},+    {0x9045, 0x8077},+    {0x9046, 0x8272},+    {0x9047, 0x89E6},+    {0x9048, 0x98DF},+    {0x9049, 0x8755},+    {0x904A, 0x8FB1},+    {0x904B, 0x5C3B},+    {0x904C, 0x4F38},+    {0x904D, 0x4FE1},+    {0x904E, 0x4FB5},+    {0x904F, 0x5507},+    {0x9050, 0x5A20},+    {0x9051, 0x5BDD},+    {0x9052, 0x5BE9},+    {0x9053, 0x5FC3},+    {0x9054, 0x614E},+    {0x9055, 0x632F},+    {0x9056, 0x65B0},+    {0x9057, 0x664B},+    {0x9058, 0x68EE},+    {0x9059, 0x699B},+    {0x905A, 0x6D78},+    {0x905B, 0x6DF1},+    {0x905C, 0x7533},+    {0x905D, 0x75B9},+    {0x905E, 0x771F},+    {0x905F, 0x795E},+    {0x9060, 0x79E6},+    {0x9061, 0x7D33},+    {0x9062, 0x81E3},+    {0x9063, 0x82AF},+    {0x9064, 0x85AA},+    {0x9065, 0x89AA},+    {0x9066, 0x8A3A},+    {0x9067, 0x8EAB},+    {0x9068, 0x8F9B},+    {0x9069, 0x9032},+    {0x906A, 0x91DD},+    {0x906B, 0x9707},+    {0x906C, 0x4EBA},+    {0x906D, 0x4EC1},+    {0x906E, 0x5203},+    {0x906F, 0x5875},+    {0x9070, 0x58EC},+    {0x9071, 0x5C0B},+    {0x9072, 0x751A},+    {0x9073, 0x5C3D},+    {0x9074, 0x814E},+    {0x9075, 0x8A0A},+    {0x9076, 0x8FC5},+    {0x9077, 0x9663},+    {0x9078, 0x976D},+    {0x9079, 0x7B25},+    {0x907A, 0x8ACF},+    {0x907B, 0x9808},+    {0x907C, 0x9162},+    {0x907D, 0x56F3},+    {0x907E, 0x53A8},+    {0x9080, 0x9017},+    {0x9081, 0x5439},+    {0x9082, 0x5782},+    {0x9083, 0x5E25},+    {0x9084, 0x63A8},+    {0x9085, 0x6C34},+    {0x9086, 0x708A},+    {0x9087, 0x7761},+    {0x9088, 0x7C8B},+    {0x9089, 0x7FE0},+    {0x908A, 0x8870},+    {0x908B, 0x9042},+    {0x908C, 0x9154},+    {0x908D, 0x9310},+    {0x908E, 0x9318},+    {0x908F, 0x968F},+    {0x9090, 0x745E},+    {0x9091, 0x9AC4},+    {0x9092, 0x5D07},+    {0x9093, 0x5D69},+    {0x9094, 0x6570},+    {0x9095, 0x67A2},+    {0x9096, 0x8DA8},+    {0x9097, 0x96DB},+    {0x9098, 0x636E},+    {0x9099, 0x6749},+    {0x909A, 0x6919},+    {0x909B, 0x83C5},+    {0x909C, 0x9817},+    {0x909D, 0x96C0},+    {0x909E, 0x88FE},+    {0x909F, 0x6F84},+    {0x90A0, 0x647A},+    {0x90A1, 0x5BF8},+    {0x90A2, 0x4E16},+    {0x90A3, 0x702C},+    {0x90A4, 0x755D},+    {0x90A5, 0x662F},+    {0x90A6, 0x51C4},+    {0x90A7, 0x5236},+    {0x90A8, 0x52E2},+    {0x90A9, 0x59D3},+    {0x90AA, 0x5F81},+    {0x90AB, 0x6027},+    {0x90AC, 0x6210},+    {0x90AD, 0x653F},+    {0x90AE, 0x6574},+    {0x90AF, 0x661F},+    {0x90B0, 0x6674},+    {0x90B1, 0x68F2},+    {0x90B2, 0x6816},+    {0x90B3, 0x6B63},+    {0x90B4, 0x6E05},+    {0x90B5, 0x7272},+    {0x90B6, 0x751F},+    {0x90B7, 0x76DB},+    {0x90B8, 0x7CBE},+    {0x90B9, 0x8056},+    {0x90BA, 0x58F0},+    {0x90BB, 0x88FD},+    {0x90BC, 0x897F},+    {0x90BD, 0x8AA0},+    {0x90BE, 0x8A93},+    {0x90BF, 0x8ACB},+    {0x90C0, 0x901D},+    {0x90C1, 0x9192},+    {0x90C2, 0x9752},+    {0x90C3, 0x9759},+    {0x90C4, 0x6589},+    {0x90C5, 0x7A0E},+    {0x90C6, 0x8106},+    {0x90C7, 0x96BB},+    {0x90C8, 0x5E2D},+    {0x90C9, 0x60DC},+    {0x90CA, 0x621A},+    {0x90CB, 0x65A5},+    {0x90CC, 0x6614},+    {0x90CD, 0x6790},+    {0x90CE, 0x77F3},+    {0x90CF, 0x7A4D},+    {0x90D0, 0x7C4D},+    {0x90D1, 0x7E3E},+    {0x90D2, 0x810A},+    {0x90D3, 0x8CAC},+    {0x90D4, 0x8D64},+    {0x90D5, 0x8DE1},+    {0x90D6, 0x8E5F},+    {0x90D7, 0x78A9},+    {0x90D8, 0x5207},+    {0x90D9, 0x62D9},+    {0x90DA, 0x63A5},+    {0x90DB, 0x6442},+    {0x90DC, 0x6298},+    {0x90DD, 0x8A2D},+    {0x90DE, 0x7A83},+    {0x90DF, 0x7BC0},+    {0x90E0, 0x8AAC},+    {0x90E1, 0x96EA},+    {0x90E2, 0x7D76},+    {0x90E3, 0x820C},+    {0x90E4, 0x8749},+    {0x90E5, 0x4ED9},+    {0x90E6, 0x5148},+    {0x90E7, 0x5343},+    {0x90E8, 0x5360},+    {0x90E9, 0x5BA3},+    {0x90EA, 0x5C02},+    {0x90EB, 0x5C16},+    {0x90EC, 0x5DDD},+    {0x90ED, 0x6226},+    {0x90EE, 0x6247},+    {0x90EF, 0x64B0},+    {0x90F0, 0x6813},+    {0x90F1, 0x6834},+    {0x90F2, 0x6CC9},+    {0x90F3, 0x6D45},+    {0x90F4, 0x6D17},+    {0x90F5, 0x67D3},+    {0x90F6, 0x6F5C},+    {0x90F7, 0x714E},+    {0x90F8, 0x717D},+    {0x90F9, 0x65CB},+    {0x90FA, 0x7A7F},+    {0x90FB, 0x7BAD},+    {0x90FC, 0x7DDA},+    {0x9140, 0x7E4A},+    {0x9141, 0x7FA8},+    {0x9142, 0x817A},+    {0x9143, 0x821B},+    {0x9144, 0x8239},+    {0x9145, 0x85A6},+    {0x9146, 0x8A6E},+    {0x9147, 0x8CCE},+    {0x9148, 0x8DF5},+    {0x9149, 0x9078},+    {0x914A, 0x9077},+    {0x914B, 0x92AD},+    {0x914C, 0x9291},+    {0x914D, 0x9583},+    {0x914E, 0x9BAE},+    {0x914F, 0x524D},+    {0x9150, 0x5584},+    {0x9151, 0x6F38},+    {0x9152, 0x7136},+    {0x9153, 0x5168},+    {0x9154, 0x7985},+    {0x9155, 0x7E55},+    {0x9156, 0x81B3},+    {0x9157, 0x7CCE},+    {0x9158, 0x564C},+    {0x9159, 0x5851},+    {0x915A, 0x5CA8},+    {0x915B, 0x63AA},+    {0x915C, 0x66FE},+    {0x915D, 0x66FD},+    {0x915E, 0x695A},+    {0x915F, 0x72D9},+    {0x9160, 0x758F},+    {0x9161, 0x758E},+    {0x9162, 0x790E},+    {0x9163, 0x7956},+    {0x9164, 0x79DF},+    {0x9165, 0x7C97},+    {0x9166, 0x7D20},+    {0x9167, 0x7D44},+    {0x9168, 0x8607},+    {0x9169, 0x8A34},+    {0x916A, 0x963B},+    {0x916B, 0x9061},+    {0x916C, 0x9F20},+    {0x916D, 0x50E7},+    {0x916E, 0x5275},+    {0x916F, 0x53CC},+    {0x9170, 0x53E2},+    {0x9171, 0x5009},+    {0x9172, 0x55AA},+    {0x9173, 0x58EE},+    {0x9174, 0x594F},+    {0x9175, 0x723D},+    {0x9176, 0x5B8B},+    {0x9177, 0x5C64},+    {0x9178, 0x531D},+    {0x9179, 0x60E3},+    {0x917A, 0x60F3},+    {0x917B, 0x635C},+    {0x917C, 0x6383},+    {0x917D, 0x633F},+    {0x917E, 0x63BB},+    {0x9180, 0x64CD},+    {0x9181, 0x65E9},+    {0x9182, 0x66F9},+    {0x9183, 0x5DE3},+    {0x9184, 0x69CD},+    {0x9185, 0x69FD},+    {0x9186, 0x6F15},+    {0x9187, 0x71E5},+    {0x9188, 0x4E89},+    {0x9189, 0x75E9},+    {0x918A, 0x76F8},+    {0x918B, 0x7A93},+    {0x918C, 0x7CDF},+    {0x918D, 0x7DCF},+    {0x918E, 0x7D9C},+    {0x918F, 0x8061},+    {0x9190, 0x8349},+    {0x9191, 0x8358},+    {0x9192, 0x846C},+    {0x9193, 0x84BC},+    {0x9194, 0x85FB},+    {0x9195, 0x88C5},+    {0x9196, 0x8D70},+    {0x9197, 0x9001},+    {0x9198, 0x906D},+    {0x9199, 0x9397},+    {0x919A, 0x971C},+    {0x919B, 0x9A12},+    {0x919C, 0x50CF},+    {0x919D, 0x5897},+    {0x919E, 0x618E},+    {0x919F, 0x81D3},+    {0x91A0, 0x8535},+    {0x91A1, 0x8D08},+    {0x91A2, 0x9020},+    {0x91A3, 0x4FC3},+    {0x91A4, 0x5074},+    {0x91A5, 0x5247},+    {0x91A6, 0x5373},+    {0x91A7, 0x606F},+    {0x91A8, 0x6349},+    {0x91A9, 0x675F},+    {0x91AA, 0x6E2C},+    {0x91AB, 0x8DB3},+    {0x91AC, 0x901F},+    {0x91AD, 0x4FD7},+    {0x91AE, 0x5C5E},+    {0x91AF, 0x8CCA},+    {0x91B0, 0x65CF},+    {0x91B1, 0x7D9A},+    {0x91B2, 0x5352},+    {0x91B3, 0x8896},+    {0x91B4, 0x5176},+    {0x91B5, 0x63C3},+    {0x91B6, 0x5B58},+    {0x91B7, 0x5B6B},+    {0x91B8, 0x5C0A},+    {0x91B9, 0x640D},+    {0x91BA, 0x6751},+    {0x91BB, 0x905C},+    {0x91BC, 0x4ED6},+    {0x91BD, 0x591A},+    {0x91BE, 0x592A},+    {0x91BF, 0x6C70},+    {0x91C0, 0x8A51},+    {0x91C1, 0x553E},+    {0x91C2, 0x5815},+    {0x91C3, 0x59A5},+    {0x91C4, 0x60F0},+    {0x91C5, 0x6253},+    {0x91C6, 0x67C1},+    {0x91C7, 0x8235},+    {0x91C8, 0x6955},+    {0x91C9, 0x9640},+    {0x91CA, 0x99C4},+    {0x91CB, 0x9A28},+    {0x91CC, 0x4F53},+    {0x91CD, 0x5806},+    {0x91CE, 0x5BFE},+    {0x91CF, 0x8010},+    {0x91D0, 0x5CB1},+    {0x91D1, 0x5E2F},+    {0x91D2, 0x5F85},+    {0x91D3, 0x6020},+    {0x91D4, 0x614B},+    {0x91D5, 0x6234},+    {0x91D6, 0x66FF},+    {0x91D7, 0x6CF0},+    {0x91D8, 0x6EDE},+    {0x91D9, 0x80CE},+    {0x91DA, 0x817F},+    {0x91DB, 0x82D4},+    {0x91DC, 0x888B},+    {0x91DD, 0x8CB8},+    {0x91DE, 0x9000},+    {0x91DF, 0x902E},+    {0x91E0, 0x968A},+    {0x91E1, 0x9EDB},+    {0x91E2, 0x9BDB},+    {0x91E3, 0x4EE3},+    {0x91E4, 0x53F0},+    {0x91E5, 0x5927},+    {0x91E6, 0x7B2C},+    {0x91E7, 0x918D},+    {0x91E8, 0x984C},+    {0x91E9, 0x9DF9},+    {0x91EA, 0x6EDD},+    {0x91EB, 0x7027},+    {0x91EC, 0x5353},+    {0x91ED, 0x5544},+    {0x91EE, 0x5B85},+    {0x91EF, 0x6258},+    {0x91F0, 0x629E},+    {0x91F1, 0x62D3},+    {0x91F2, 0x6CA2},+    {0x91F3, 0x6FEF},+    {0x91F4, 0x7422},+    {0x91F5, 0x8A17},+    {0x91F6, 0x9438},+    {0x91F7, 0x6FC1},+    {0x91F8, 0x8AFE},+    {0x91F9, 0x8338},+    {0x91FA, 0x51E7},+    {0x91FB, 0x86F8},+    {0x91FC, 0x53EA},+    {0x9240, 0x53E9},+    {0x9241, 0x4F46},+    {0x9242, 0x9054},+    {0x9243, 0x8FB0},+    {0x9244, 0x596A},+    {0x9245, 0x8131},+    {0x9246, 0x5DFD},+    {0x9247, 0x7AEA},+    {0x9248, 0x8FBF},+    {0x9249, 0x68DA},+    {0x924A, 0x8C37},+    {0x924B, 0x72F8},+    {0x924C, 0x9C48},+    {0x924D, 0x6A3D},+    {0x924E, 0x8AB0},+    {0x924F, 0x4E39},+    {0x9250, 0x5358},+    {0x9251, 0x5606},+    {0x9252, 0x5766},+    {0x9253, 0x62C5},+    {0x9254, 0x63A2},+    {0x9255, 0x65E6},+    {0x9256, 0x6B4E},+    {0x9257, 0x6DE1},+    {0x9258, 0x6E5B},+    {0x9259, 0x70AD},+    {0x925A, 0x77ED},+    {0x925B, 0x7AEF},+    {0x925C, 0x7BAA},+    {0x925D, 0x7DBB},+    {0x925E, 0x803D},+    {0x925F, 0x80C6},+    {0x9260, 0x86CB},+    {0x9261, 0x8A95},+    {0x9262, 0x935B},+    {0x9263, 0x56E3},+    {0x9264, 0x58C7},+    {0x9265, 0x5F3E},+    {0x9266, 0x65AD},+    {0x9267, 0x6696},+    {0x9268, 0x6A80},+    {0x9269, 0x6BB5},+    {0x926A, 0x7537},+    {0x926B, 0x8AC7},+    {0x926C, 0x5024},+    {0x926D, 0x77E5},+    {0x926E, 0x5730},+    {0x926F, 0x5F1B},+    {0x9270, 0x6065},+    {0x9271, 0x667A},+    {0x9272, 0x6C60},+    {0x9273, 0x75F4},+    {0x9274, 0x7A1A},+    {0x9275, 0x7F6E},+    {0x9276, 0x81F4},+    {0x9277, 0x8718},+    {0x9278, 0x9045},+    {0x9279, 0x99B3},+    {0x927A, 0x7BC9},+    {0x927B, 0x755C},+    {0x927C, 0x7AF9},+    {0x927D, 0x7B51},+    {0x927E, 0x84C4},+    {0x9280, 0x9010},+    {0x9281, 0x79E9},+    {0x9282, 0x7A92},+    {0x9283, 0x8336},+    {0x9284, 0x5AE1},+    {0x9285, 0x7740},+    {0x9286, 0x4E2D},+    {0x9287, 0x4EF2},+    {0x9288, 0x5B99},+    {0x9289, 0x5FE0},+    {0x928A, 0x62BD},+    {0x928B, 0x663C},+    {0x928C, 0x67F1},+    {0x928D, 0x6CE8},+    {0x928E, 0x866B},+    {0x928F, 0x8877},+    {0x9290, 0x8A3B},+    {0x9291, 0x914E},+    {0x9292, 0x92F3},+    {0x9293, 0x99D0},+    {0x9294, 0x6A17},+    {0x9295, 0x7026},+    {0x9296, 0x732A},+    {0x9297, 0x82E7},+    {0x9298, 0x8457},+    {0x9299, 0x8CAF},+    {0x929A, 0x4E01},+    {0x929B, 0x5146},+    {0x929C, 0x51CB},+    {0x929D, 0x558B},+    {0x929E, 0x5BF5},+    {0x929F, 0x5E16},+    {0x92A0, 0x5E33},+    {0x92A1, 0x5E81},+    {0x92A2, 0x5F14},+    {0x92A3, 0x5F35},+    {0x92A4, 0x5F6B},+    {0x92A5, 0x5FB4},+    {0x92A6, 0x61F2},+    {0x92A7, 0x6311},+    {0x92A8, 0x66A2},+    {0x92A9, 0x671D},+    {0x92AA, 0x6F6E},+    {0x92AB, 0x7252},+    {0x92AC, 0x753A},+    {0x92AD, 0x773A},+    {0x92AE, 0x8074},+    {0x92AF, 0x8139},+    {0x92B0, 0x8178},+    {0x92B1, 0x8776},+    {0x92B2, 0x8ABF},+    {0x92B3, 0x8ADC},+    {0x92B4, 0x8D85},+    {0x92B5, 0x8DF3},+    {0x92B6, 0x929A},+    {0x92B7, 0x9577},+    {0x92B8, 0x9802},+    {0x92B9, 0x9CE5},+    {0x92BA, 0x52C5},+    {0x92BB, 0x6357},+    {0x92BC, 0x76F4},+    {0x92BD, 0x6715},+    {0x92BE, 0x6C88},+    {0x92BF, 0x73CD},+    {0x92C0, 0x8CC3},+    {0x92C1, 0x93AE},+    {0x92C2, 0x9673},+    {0x92C3, 0x6D25},+    {0x92C4, 0x589C},+    {0x92C5, 0x690E},+    {0x92C6, 0x69CC},+    {0x92C7, 0x8FFD},+    {0x92C8, 0x939A},+    {0x92C9, 0x75DB},+    {0x92CA, 0x901A},+    {0x92CB, 0x585A},+    {0x92CC, 0x6802},+    {0x92CD, 0x63B4},+    {0x92CE, 0x69FB},+    {0x92CF, 0x4F43},+    {0x92D0, 0x6F2C},+    {0x92D1, 0x67D8},+    {0x92D2, 0x8FBB},+    {0x92D3, 0x8526},+    {0x92D4, 0x7DB4},+    {0x92D5, 0x9354},+    {0x92D6, 0x693F},+    {0x92D7, 0x6F70},+    {0x92D8, 0x576A},+    {0x92D9, 0x58F7},+    {0x92DA, 0x5B2C},+    {0x92DB, 0x7D2C},+    {0x92DC, 0x722A},+    {0x92DD, 0x540A},+    {0x92DE, 0x91E3},+    {0x92DF, 0x9DB4},+    {0x92E0, 0x4EAD},+    {0x92E1, 0x4F4E},+    {0x92E2, 0x505C},+    {0x92E3, 0x5075},+    {0x92E4, 0x5243},+    {0x92E5, 0x8C9E},+    {0x92E6, 0x5448},+    {0x92E7, 0x5824},+    {0x92E8, 0x5B9A},+    {0x92E9, 0x5E1D},+    {0x92EA, 0x5E95},+    {0x92EB, 0x5EAD},+    {0x92EC, 0x5EF7},+    {0x92ED, 0x5F1F},+    {0x92EE, 0x608C},+    {0x92EF, 0x62B5},+    {0x92F0, 0x633A},+    {0x92F1, 0x63D0},+    {0x92F2, 0x68AF},+    {0x92F3, 0x6C40},+    {0x92F4, 0x7887},+    {0x92F5, 0x798E},+    {0x92F6, 0x7A0B},+    {0x92F7, 0x7DE0},+    {0x92F8, 0x8247},+    {0x92F9, 0x8A02},+    {0x92FA, 0x8AE6},+    {0x92FB, 0x8E44},+    {0x92FC, 0x9013},+    {0x9340, 0x90B8},+    {0x9341, 0x912D},+    {0x9342, 0x91D8},+    {0x9343, 0x9F0E},+    {0x9344, 0x6CE5},+    {0x9345, 0x6458},+    {0x9346, 0x64E2},+    {0x9347, 0x6575},+    {0x9348, 0x6EF4},+    {0x9349, 0x7684},+    {0x934A, 0x7B1B},+    {0x934B, 0x9069},+    {0x934C, 0x93D1},+    {0x934D, 0x6EBA},+    {0x934E, 0x54F2},+    {0x934F, 0x5FB9},+    {0x9350, 0x64A4},+    {0x9351, 0x8F4D},+    {0x9352, 0x8FED},+    {0x9353, 0x9244},+    {0x9354, 0x5178},+    {0x9355, 0x586B},+    {0x9356, 0x5929},+    {0x9357, 0x5C55},+    {0x9358, 0x5E97},+    {0x9359, 0x6DFB},+    {0x935A, 0x7E8F},+    {0x935B, 0x751C},+    {0x935C, 0x8CBC},+    {0x935D, 0x8EE2},+    {0x935E, 0x985B},+    {0x935F, 0x70B9},+    {0x9360, 0x4F1D},+    {0x9361, 0x6BBF},+    {0x9362, 0x6FB1},+    {0x9363, 0x7530},+    {0x9364, 0x96FB},+    {0x9365, 0x514E},+    {0x9366, 0x5410},+    {0x9367, 0x5835},+    {0x9368, 0x5857},+    {0x9369, 0x59AC},+    {0x936A, 0x5C60},+    {0x936B, 0x5F92},+    {0x936C, 0x6597},+    {0x936D, 0x675C},+    {0x936E, 0x6E21},+    {0x936F, 0x767B},+    {0x9370, 0x83DF},+    {0x9371, 0x8CED},+    {0x9372, 0x9014},+    {0x9373, 0x90FD},+    {0x9374, 0x934D},+    {0x9375, 0x7825},+    {0x9376, 0x783A},+    {0x9377, 0x52AA},+    {0x9378, 0x5EA6},+    {0x9379, 0x571F},+    {0x937A, 0x5974},+    {0x937B, 0x6012},+    {0x937C, 0x5012},+    {0x937D, 0x515A},+    {0x937E, 0x51AC},+    {0x9380, 0x51CD},+    {0x9381, 0x5200},+    {0x9382, 0x5510},+    {0x9383, 0x5854},+    {0x9384, 0x5858},+    {0x9385, 0x5957},+    {0x9386, 0x5B95},+    {0x9387, 0x5CF6},+    {0x9388, 0x5D8B},+    {0x9389, 0x60BC},+    {0x938A, 0x6295},+    {0x938B, 0x642D},+    {0x938C, 0x6771},+    {0x938D, 0x6843},+    {0x938E, 0x68BC},+    {0x938F, 0x68DF},+    {0x9390, 0x76D7},+    {0x9391, 0x6DD8},+    {0x9392, 0x6E6F},+    {0x9393, 0x6D9B},+    {0x9394, 0x706F},+    {0x9395, 0x71C8},+    {0x9396, 0x5F53},+    {0x9397, 0x75D8},+    {0x9398, 0x7977},+    {0x9399, 0x7B49},+    {0x939A, 0x7B54},+    {0x939B, 0x7B52},+    {0x939C, 0x7CD6},+    {0x939D, 0x7D71},+    {0x939E, 0x5230},+    {0x939F, 0x8463},+    {0x93A0, 0x8569},+    {0x93A1, 0x85E4},+    {0x93A2, 0x8A0E},+    {0x93A3, 0x8B04},+    {0x93A4, 0x8C46},+    {0x93A5, 0x8E0F},+    {0x93A6, 0x9003},+    {0x93A7, 0x900F},+    {0x93A8, 0x9419},+    {0x93A9, 0x9676},+    {0x93AA, 0x982D},+    {0x93AB, 0x9A30},+    {0x93AC, 0x95D8},+    {0x93AD, 0x50CD},+    {0x93AE, 0x52D5},+    {0x93AF, 0x540C},+    {0x93B0, 0x5802},+    {0x93B1, 0x5C0E},+    {0x93B2, 0x61A7},+    {0x93B3, 0x649E},+    {0x93B4, 0x6D1E},+    {0x93B5, 0x77B3},+    {0x93B6, 0x7AE5},+    {0x93B7, 0x80F4},+    {0x93B8, 0x8404},+    {0x93B9, 0x9053},+    {0x93BA, 0x9285},+    {0x93BB, 0x5CE0},+    {0x93BC, 0x9D07},+    {0x93BD, 0x533F},+    {0x93BE, 0x5F97},+    {0x93BF, 0x5FB3},+    {0x93C0, 0x6D9C},+    {0x93C1, 0x7279},+    {0x93C2, 0x7763},+    {0x93C3, 0x79BF},+    {0x93C4, 0x7BE4},+    {0x93C5, 0x6BD2},+    {0x93C6, 0x72EC},+    {0x93C7, 0x8AAD},+    {0x93C8, 0x6803},+    {0x93C9, 0x6A61},+    {0x93CA, 0x51F8},+    {0x93CB, 0x7A81},+    {0x93CC, 0x6934},+    {0x93CD, 0x5C4A},+    {0x93CE, 0x9CF6},+    {0x93CF, 0x82EB},+    {0x93D0, 0x5BC5},+    {0x93D1, 0x9149},+    {0x93D2, 0x701E},+    {0x93D3, 0x5678},+    {0x93D4, 0x5C6F},+    {0x93D5, 0x60C7},+    {0x93D6, 0x6566},+    {0x93D7, 0x6C8C},+    {0x93D8, 0x8C5A},+    {0x93D9, 0x9041},+    {0x93DA, 0x9813},+    {0x93DB, 0x5451},+    {0x93DC, 0x66C7},+    {0x93DD, 0x920D},+    {0x93DE, 0x5948},+    {0x93DF, 0x90A3},+    {0x93E0, 0x5185},+    {0x93E1, 0x4E4D},+    {0x93E2, 0x51EA},+    {0x93E3, 0x8599},+    {0x93E4, 0x8B0E},+    {0x93E5, 0x7058},+    {0x93E6, 0x637A},+    {0x93E7, 0x934B},+    {0x93E8, 0x6962},+    {0x93E9, 0x99B4},+    {0x93EA, 0x7E04},+    {0x93EB, 0x7577},+    {0x93EC, 0x5357},+    {0x93ED, 0x6960},+    {0x93EE, 0x8EDF},+    {0x93EF, 0x96E3},+    {0x93F0, 0x6C5D},+    {0x93F1, 0x4E8C},+    {0x93F2, 0x5C3C},+    {0x93F3, 0x5F10},+    {0x93F4, 0x8FE9},+    {0x93F5, 0x5302},+    {0x93F6, 0x8CD1},+    {0x93F7, 0x8089},+    {0x93F8, 0x8679},+    {0x93F9, 0x5EFF},+    {0x93FA, 0x65E5},+    {0x93FB, 0x4E73},+    {0x93FC, 0x5165},+    {0x9440, 0x5982},+    {0x9441, 0x5C3F},+    {0x9442, 0x97EE},+    {0x9443, 0x4EFB},+    {0x9444, 0x598A},+    {0x9445, 0x5FCD},+    {0x9446, 0x8A8D},+    {0x9447, 0x6FE1},+    {0x9448, 0x79B0},+    {0x9449, 0x7962},+    {0x944A, 0x5BE7},+    {0x944B, 0x8471},+    {0x944C, 0x732B},+    {0x944D, 0x71B1},+    {0x944E, 0x5E74},+    {0x944F, 0x5FF5},+    {0x9450, 0x637B},+    {0x9451, 0x649A},+    {0x9452, 0x71C3},+    {0x9453, 0x7C98},+    {0x9454, 0x4E43},+    {0x9455, 0x5EFC},+    {0x9456, 0x4E4B},+    {0x9457, 0x57DC},+    {0x9458, 0x56A2},+    {0x9459, 0x60A9},+    {0x945A, 0x6FC3},+    {0x945B, 0x7D0D},+    {0x945C, 0x80FD},+    {0x945D, 0x8133},+    {0x945E, 0x81BF},+    {0x945F, 0x8FB2},+    {0x9460, 0x8997},+    {0x9461, 0x86A4},+    {0x9462, 0x5DF4},+    {0x9463, 0x628A},+    {0x9464, 0x64AD},+    {0x9465, 0x8987},+    {0x9466, 0x6777},+    {0x9467, 0x6CE2},+    {0x9468, 0x6D3E},+    {0x9469, 0x7436},+    {0x946A, 0x7834},+    {0x946B, 0x5A46},+    {0x946C, 0x7F75},+    {0x946D, 0x82AD},+    {0x946E, 0x99AC},+    {0x946F, 0x4FF3},+    {0x9470, 0x5EC3},+    {0x9471, 0x62DD},+    {0x9472, 0x6392},+    {0x9473, 0x6557},+    {0x9474, 0x676F},+    {0x9475, 0x76C3},+    {0x9476, 0x724C},+    {0x9477, 0x80CC},+    {0x9478, 0x80BA},+    {0x9479, 0x8F29},+    {0x947A, 0x914D},+    {0x947B, 0x500D},+    {0x947C, 0x57F9},+    {0x947D, 0x5A92},+    {0x947E, 0x6885},+    {0x9480, 0x6973},+    {0x9481, 0x7164},+    {0x9482, 0x72FD},+    {0x9483, 0x8CB7},+    {0x9484, 0x58F2},+    {0x9485, 0x8CE0},+    {0x9486, 0x966A},+    {0x9487, 0x9019},+    {0x9488, 0x877F},+    {0x9489, 0x79E4},+    {0x948A, 0x77E7},+    {0x948B, 0x8429},+    {0x948C, 0x4F2F},+    {0x948D, 0x5265},+    {0x948E, 0x535A},+    {0x948F, 0x62CD},+    {0x9490, 0x67CF},+    {0x9491, 0x6CCA},+    {0x9492, 0x767D},+    {0x9493, 0x7B94},+    {0x9494, 0x7C95},+    {0x9495, 0x8236},+    {0x9496, 0x8584},+    {0x9497, 0x8FEB},+    {0x9498, 0x66DD},+    {0x9499, 0x6F20},+    {0x949A, 0x7206},+    {0x949B, 0x7E1B},+    {0x949C, 0x83AB},+    {0x949D, 0x99C1},+    {0x949E, 0x9EA6},+    {0x949F, 0x51FD},+    {0x94A0, 0x7BB1},+    {0x94A1, 0x7872},+    {0x94A2, 0x7BB8},+    {0x94A3, 0x8087},+    {0x94A4, 0x7B48},+    {0x94A5, 0x6AE8},+    {0x94A6, 0x5E61},+    {0x94A7, 0x808C},+    {0x94A8, 0x7551},+    {0x94A9, 0x7560},+    {0x94AA, 0x516B},+    {0x94AB, 0x9262},+    {0x94AC, 0x6E8C},+    {0x94AD, 0x767A},+    {0x94AE, 0x9197},+    {0x94AF, 0x9AEA},+    {0x94B0, 0x4F10},+    {0x94B1, 0x7F70},+    {0x94B2, 0x629C},+    {0x94B3, 0x7B4F},+    {0x94B4, 0x95A5},+    {0x94B5, 0x9CE9},+    {0x94B6, 0x567A},+    {0x94B7, 0x5859},+    {0x94B8, 0x86E4},+    {0x94B9, 0x96BC},+    {0x94BA, 0x4F34},+    {0x94BB, 0x5224},+    {0x94BC, 0x534A},+    {0x94BD, 0x53CD},+    {0x94BE, 0x53DB},+    {0x94BF, 0x5E06},+    {0x94C0, 0x642C},+    {0x94C1, 0x6591},+    {0x94C2, 0x677F},+    {0x94C3, 0x6C3E},+    {0x94C4, 0x6C4E},+    {0x94C5, 0x7248},+    {0x94C6, 0x72AF},+    {0x94C7, 0x73ED},+    {0x94C8, 0x7554},+    {0x94C9, 0x7E41},+    {0x94CA, 0x822C},+    {0x94CB, 0x85E9},+    {0x94CC, 0x8CA9},+    {0x94CD, 0x7BC4},+    {0x94CE, 0x91C6},+    {0x94CF, 0x7169},+    {0x94D0, 0x9812},+    {0x94D1, 0x98EF},+    {0x94D2, 0x633D},+    {0x94D3, 0x6669},+    {0x94D4, 0x756A},+    {0x94D5, 0x76E4},+    {0x94D6, 0x78D0},+    {0x94D7, 0x8543},+    {0x94D8, 0x86EE},+    {0x94D9, 0x532A},+    {0x94DA, 0x5351},+    {0x94DB, 0x5426},+    {0x94DC, 0x5983},+    {0x94DD, 0x5E87},+    {0x94DE, 0x5F7C},+    {0x94DF, 0x60B2},+    {0x94E0, 0x6249},+    {0x94E1, 0x6279},+    {0x94E2, 0x62AB},+    {0x94E3, 0x6590},+    {0x94E4, 0x6BD4},+    {0x94E5, 0x6CCC},+    {0x94E6, 0x75B2},+    {0x94E7, 0x76AE},+    {0x94E8, 0x7891},+    {0x94E9, 0x79D8},+    {0x94EA, 0x7DCB},+    {0x94EB, 0x7F77},+    {0x94EC, 0x80A5},+    {0x94ED, 0x88AB},+    {0x94EE, 0x8AB9},+    {0x94EF, 0x8CBB},+    {0x94F0, 0x907F},+    {0x94F1, 0x975E},+    {0x94F2, 0x98DB},+    {0x94F3, 0x6A0B},+    {0x94F4, 0x7C38},+    {0x94F5, 0x5099},+    {0x94F6, 0x5C3E},+    {0x94F7, 0x5FAE},+    {0x94F8, 0x6787},+    {0x94F9, 0x6BD8},+    {0x94FA, 0x7435},+    {0x94FB, 0x7709},+    {0x94FC, 0x7F8E},+    {0x9540, 0x9F3B},+    {0x9541, 0x67CA},+    {0x9542, 0x7A17},+    {0x9543, 0x5339},+    {0x9544, 0x758B},+    {0x9545, 0x9AED},+    {0x9546, 0x5F66},+    {0x9547, 0x819D},+    {0x9548, 0x83F1},+    {0x9549, 0x8098},+    {0x954A, 0x5F3C},+    {0x954B, 0x5FC5},+    {0x954C, 0x7562},+    {0x954D, 0x7B46},+    {0x954E, 0x903C},+    {0x954F, 0x6867},+    {0x9550, 0x59EB},+    {0x9551, 0x5A9B},+    {0x9552, 0x7D10},+    {0x9553, 0x767E},+    {0x9554, 0x8B2C},+    {0x9555, 0x4FF5},+    {0x9556, 0x5F6A},+    {0x9557, 0x6A19},+    {0x9558, 0x6C37},+    {0x9559, 0x6F02},+    {0x955A, 0x74E2},+    {0x955B, 0x7968},+    {0x955C, 0x8868},+    {0x955D, 0x8A55},+    {0x955E, 0x8C79},+    {0x955F, 0x5EDF},+    {0x9560, 0x63CF},+    {0x9561, 0x75C5},+    {0x9562, 0x79D2},+    {0x9563, 0x82D7},+    {0x9564, 0x9328},+    {0x9565, 0x92F2},+    {0x9566, 0x849C},+    {0x9567, 0x86ED},+    {0x9568, 0x9C2D},+    {0x9569, 0x54C1},+    {0x956A, 0x5F6C},+    {0x956B, 0x658C},+    {0x956C, 0x6D5C},+    {0x956D, 0x7015},+    {0x956E, 0x8CA7},+    {0x956F, 0x8CD3},+    {0x9570, 0x983B},+    {0x9571, 0x654F},+    {0x9572, 0x74F6},+    {0x9573, 0x4E0D},+    {0x9574, 0x4ED8},+    {0x9575, 0x57E0},+    {0x9576, 0x592B},+    {0x9577, 0x5A66},+    {0x9578, 0x5BCC},+    {0x9579, 0x51A8},+    {0x957A, 0x5E03},+    {0x957B, 0x5E9C},+    {0x957C, 0x6016},+    {0x957D, 0x6276},+    {0x957E, 0x6577},+    {0x9580, 0x65A7},+    {0x9581, 0x666E},+    {0x9582, 0x6D6E},+    {0x9583, 0x7236},+    {0x9584, 0x7B26},+    {0x9585, 0x8150},+    {0x9586, 0x819A},+    {0x9587, 0x8299},+    {0x9588, 0x8B5C},+    {0x9589, 0x8CA0},+    {0x958A, 0x8CE6},+    {0x958B, 0x8D74},+    {0x958C, 0x961C},+    {0x958D, 0x9644},+    {0x958E, 0x4FAE},+    {0x958F, 0x64AB},+    {0x9590, 0x6B66},+    {0x9591, 0x821E},+    {0x9592, 0x8461},+    {0x9593, 0x856A},+    {0x9594, 0x90E8},+    {0x9595, 0x5C01},+    {0x9596, 0x6953},+    {0x9597, 0x98A8},+    {0x9598, 0x847A},+    {0x9599, 0x8557},+    {0x959A, 0x4F0F},+    {0x959B, 0x526F},+    {0x959C, 0x5FA9},+    {0x959D, 0x5E45},+    {0x959E, 0x670D},+    {0x959F, 0x798F},+    {0x95A0, 0x8179},+    {0x95A1, 0x8907},+    {0x95A2, 0x8986},+    {0x95A3, 0x6DF5},+    {0x95A4, 0x5F17},+    {0x95A5, 0x6255},+    {0x95A6, 0x6CB8},+    {0x95A7, 0x4ECF},+    {0x95A8, 0x7269},+    {0x95A9, 0x9B92},+    {0x95AA, 0x5206},+    {0x95AB, 0x543B},+    {0x95AC, 0x5674},+    {0x95AD, 0x58B3},+    {0x95AE, 0x61A4},+    {0x95AF, 0x626E},+    {0x95B0, 0x711A},+    {0x95B1, 0x596E},+    {0x95B2, 0x7C89},+    {0x95B3, 0x7CDE},+    {0x95B4, 0x7D1B},+    {0x95B5, 0x96F0},+    {0x95B6, 0x6587},+    {0x95B7, 0x805E},+    {0x95B8, 0x4E19},+    {0x95B9, 0x4F75},+    {0x95BA, 0x5175},+    {0x95BB, 0x5840},+    {0x95BC, 0x5E63},+    {0x95BD, 0x5E73},+    {0x95BE, 0x5F0A},+    {0x95BF, 0x67C4},+    {0x95C0, 0x4E26},+    {0x95C1, 0x853D},+    {0x95C2, 0x9589},+    {0x95C3, 0x965B},+    {0x95C4, 0x7C73},+    {0x95C5, 0x9801},+    {0x95C6, 0x50FB},+    {0x95C7, 0x58C1},+    {0x95C8, 0x7656},+    {0x95C9, 0x78A7},+    {0x95CA, 0x5225},+    {0x95CB, 0x77A5},+    {0x95CC, 0x8511},+    {0x95CD, 0x7B86},+    {0x95CE, 0x504F},+    {0x95CF, 0x5909},+    {0x95D0, 0x7247},+    {0x95D1, 0x7BC7},+    {0x95D2, 0x7DE8},+    {0x95D3, 0x8FBA},+    {0x95D4, 0x8FD4},+    {0x95D5, 0x904D},+    {0x95D6, 0x4FBF},+    {0x95D7, 0x52C9},+    {0x95D8, 0x5A29},+    {0x95D9, 0x5F01},+    {0x95DA, 0x97AD},+    {0x95DB, 0x4FDD},+    {0x95DC, 0x8217},+    {0x95DD, 0x92EA},+    {0x95DE, 0x5703},+    {0x95DF, 0x6355},+    {0x95E0, 0x6B69},+    {0x95E1, 0x752B},+    {0x95E2, 0x88DC},+    {0x95E3, 0x8F14},+    {0x95E4, 0x7A42},+    {0x95E5, 0x52DF},+    {0x95E6, 0x5893},+    {0x95E7, 0x6155},+    {0x95E8, 0x620A},+    {0x95E9, 0x66AE},+    {0x95EA, 0x6BCD},+    {0x95EB, 0x7C3F},+    {0x95EC, 0x83E9},+    {0x95ED, 0x5023},+    {0x95EE, 0x4FF8},+    {0x95EF, 0x5305},+    {0x95F0, 0x5446},+    {0x95F1, 0x5831},+    {0x95F2, 0x5949},+    {0x95F3, 0x5B9D},+    {0x95F4, 0x5CF0},+    {0x95F5, 0x5CEF},+    {0x95F6, 0x5D29},+    {0x95F7, 0x5E96},+    {0x95F8, 0x62B1},+    {0x95F9, 0x6367},+    {0x95FA, 0x653E},+    {0x95FB, 0x65B9},+    {0x95FC, 0x670B},+    {0x9640, 0x6CD5},+    {0x9641, 0x6CE1},+    {0x9642, 0x70F9},+    {0x9643, 0x7832},+    {0x9644, 0x7E2B},+    {0x9645, 0x80DE},+    {0x9646, 0x82B3},+    {0x9647, 0x840C},+    {0x9648, 0x84EC},+    {0x9649, 0x8702},+    {0x964A, 0x8912},+    {0x964B, 0x8A2A},+    {0x964C, 0x8C4A},+    {0x964D, 0x90A6},+    {0x964E, 0x92D2},+    {0x964F, 0x98FD},+    {0x9650, 0x9CF3},+    {0x9651, 0x9D6C},+    {0x9652, 0x4E4F},+    {0x9653, 0x4EA1},+    {0x9654, 0x508D},+    {0x9655, 0x5256},+    {0x9656, 0x574A},+    {0x9657, 0x59A8},+    {0x9658, 0x5E3D},+    {0x9659, 0x5FD8},+    {0x965A, 0x5FD9},+    {0x965B, 0x623F},+    {0x965C, 0x66B4},+    {0x965D, 0x671B},+    {0x965E, 0x67D0},+    {0x965F, 0x68D2},+    {0x9660, 0x5192},+    {0x9661, 0x7D21},+    {0x9662, 0x80AA},+    {0x9663, 0x81A8},+    {0x9664, 0x8B00},+    {0x9665, 0x8C8C},+    {0x9666, 0x8CBF},+    {0x9667, 0x927E},+    {0x9668, 0x9632},+    {0x9669, 0x5420},+    {0x966A, 0x982C},+    {0x966B, 0x5317},+    {0x966C, 0x50D5},+    {0x966D, 0x535C},+    {0x966E, 0x58A8},+    {0x966F, 0x64B2},+    {0x9670, 0x6734},+    {0x9671, 0x7267},+    {0x9672, 0x7766},+    {0x9673, 0x7A46},+    {0x9674, 0x91E6},+    {0x9675, 0x52C3},+    {0x9676, 0x6CA1},+    {0x9677, 0x6B86},+    {0x9678, 0x5800},+    {0x9679, 0x5E4C},+    {0x967A, 0x5954},+    {0x967B, 0x672C},+    {0x967C, 0x7FFB},+    {0x967D, 0x51E1},+    {0x967E, 0x76C6},+    {0x9680, 0x6469},+    {0x9681, 0x78E8},+    {0x9682, 0x9B54},+    {0x9683, 0x9EBB},+    {0x9684, 0x57CB},+    {0x9685, 0x59B9},+    {0x9686, 0x6627},+    {0x9687, 0x679A},+    {0x9688, 0x6BCE},+    {0x9689, 0x54E9},+    {0x968A, 0x69D9},+    {0x968B, 0x5E55},+    {0x968C, 0x819C},+    {0x968D, 0x6795},+    {0x968E, 0x9BAA},+    {0x968F, 0x67FE},+    {0x9690, 0x9C52},+    {0x9691, 0x685D},+    {0x9692, 0x4EA6},+    {0x9693, 0x4FE3},+    {0x9694, 0x53C8},+    {0x9695, 0x62B9},+    {0x9696, 0x672B},+    {0x9697, 0x6CAB},+    {0x9698, 0x8FC4},+    {0x9699, 0x4FAD},+    {0x969A, 0x7E6D},+    {0x969B, 0x9EBF},+    {0x969C, 0x4E07},+    {0x969D, 0x6162},+    {0x969E, 0x6E80},+    {0x969F, 0x6F2B},+    {0x96A0, 0x8513},+    {0x96A1, 0x5473},+    {0x96A2, 0x672A},+    {0x96A3, 0x9B45},+    {0x96A4, 0x5DF3},+    {0x96A5, 0x7B95},+    {0x96A6, 0x5CAC},+    {0x96A7, 0x5BC6},+    {0x96A8, 0x871C},+    {0x96A9, 0x6E4A},+    {0x96AA, 0x84D1},+    {0x96AB, 0x7A14},+    {0x96AC, 0x8108},+    {0x96AD, 0x5999},+    {0x96AE, 0x7C8D},+    {0x96AF, 0x6C11},+    {0x96B0, 0x7720},+    {0x96B1, 0x52D9},+    {0x96B2, 0x5922},+    {0x96B3, 0x7121},+    {0x96B4, 0x725F},+    {0x96B5, 0x77DB},+    {0x96B6, 0x9727},+    {0x96B7, 0x9D61},+    {0x96B8, 0x690B},+    {0x96B9, 0x5A7F},+    {0x96BA, 0x5A18},+    {0x96BB, 0x51A5},+    {0x96BC, 0x540D},+    {0x96BD, 0x547D},+    {0x96BE, 0x660E},+    {0x96BF, 0x76DF},+    {0x96C0, 0x8FF7},+    {0x96C1, 0x9298},+    {0x96C2, 0x9CF4},+    {0x96C3, 0x59EA},+    {0x96C4, 0x725D},+    {0x96C5, 0x6EC5},+    {0x96C6, 0x514D},+    {0x96C7, 0x68C9},+    {0x96C8, 0x7DBF},+    {0x96C9, 0x7DEC},+    {0x96CA, 0x9762},+    {0x96CB, 0x9EBA},+    {0x96CC, 0x6478},+    {0x96CD, 0x6A21},+    {0x96CE, 0x8302},+    {0x96CF, 0x5984},+    {0x96D0, 0x5B5F},+    {0x96D1, 0x6BDB},+    {0x96D2, 0x731B},+    {0x96D3, 0x76F2},+    {0x96D4, 0x7DB2},+    {0x96D5, 0x8017},+    {0x96D6, 0x8499},+    {0x96D7, 0x5132},+    {0x96D8, 0x6728},+    {0x96D9, 0x9ED9},+    {0x96DA, 0x76EE},+    {0x96DB, 0x6762},+    {0x96DC, 0x52FF},+    {0x96DD, 0x9905},+    {0x96DE, 0x5C24},+    {0x96DF, 0x623B},+    {0x96E0, 0x7C7E},+    {0x96E1, 0x8CB0},+    {0x96E2, 0x554F},+    {0x96E3, 0x60B6},+    {0x96E4, 0x7D0B},+    {0x96E5, 0x9580},+    {0x96E6, 0x5301},+    {0x96E7, 0x4E5F},+    {0x96E8, 0x51B6},+    {0x96E9, 0x591C},+    {0x96EA, 0x723A},+    {0x96EB, 0x8036},+    {0x96EC, 0x91CE},+    {0x96ED, 0x5F25},+    {0x96EE, 0x77E2},+    {0x96EF, 0x5384},+    {0x96F0, 0x5F79},+    {0x96F1, 0x7D04},+    {0x96F2, 0x85AC},+    {0x96F3, 0x8A33},+    {0x96F4, 0x8E8D},+    {0x96F5, 0x9756},+    {0x96F6, 0x67F3},+    {0x96F7, 0x85AE},+    {0x96F8, 0x9453},+    {0x96F9, 0x6109},+    {0x96FA, 0x6108},+    {0x96FB, 0x6CB9},+    {0x96FC, 0x7652},+    {0x9740, 0x8AED},+    {0x9741, 0x8F38},+    {0x9742, 0x552F},+    {0x9743, 0x4F51},+    {0x9744, 0x512A},+    {0x9745, 0x52C7},+    {0x9746, 0x53CB},+    {0x9747, 0x5BA5},+    {0x9748, 0x5E7D},+    {0x9749, 0x60A0},+    {0x974A, 0x6182},+    {0x974B, 0x63D6},+    {0x974C, 0x6709},+    {0x974D, 0x67DA},+    {0x974E, 0x6E67},+    {0x974F, 0x6D8C},+    {0x9750, 0x7336},+    {0x9751, 0x7337},+    {0x9752, 0x7531},+    {0x9753, 0x7950},+    {0x9754, 0x88D5},+    {0x9755, 0x8A98},+    {0x9756, 0x904A},+    {0x9757, 0x9091},+    {0x9758, 0x90F5},+    {0x9759, 0x96C4},+    {0x975A, 0x878D},+    {0x975B, 0x5915},+    {0x975C, 0x4E88},+    {0x975D, 0x4F59},+    {0x975E, 0x4E0E},+    {0x975F, 0x8A89},+    {0x9760, 0x8F3F},+    {0x9761, 0x9810},+    {0x9762, 0x50AD},+    {0x9763, 0x5E7C},+    {0x9764, 0x5996},+    {0x9765, 0x5BB9},+    {0x9766, 0x5EB8},+    {0x9767, 0x63DA},+    {0x9768, 0x63FA},+    {0x9769, 0x64C1},+    {0x976A, 0x66DC},+    {0x976B, 0x694A},+    {0x976C, 0x69D8},+    {0x976D, 0x6D0B},+    {0x976E, 0x6EB6},+    {0x976F, 0x7194},+    {0x9770, 0x7528},+    {0x9771, 0x7AAF},+    {0x9772, 0x7F8A},+    {0x9773, 0x8000},+    {0x9774, 0x8449},+    {0x9775, 0x84C9},+    {0x9776, 0x8981},+    {0x9777, 0x8B21},+    {0x9778, 0x8E0A},+    {0x9779, 0x9065},+    {0x977A, 0x967D},+    {0x977B, 0x990A},+    {0x977C, 0x617E},+    {0x977D, 0x6291},+    {0x977E, 0x6B32},+    {0x9780, 0x6C83},+    {0x9781, 0x6D74},+    {0x9782, 0x7FCC},+    {0x9783, 0x7FFC},+    {0x9784, 0x6DC0},+    {0x9785, 0x7F85},+    {0x9786, 0x87BA},+    {0x9787, 0x88F8},+    {0x9788, 0x6765},+    {0x9789, 0x83B1},+    {0x978A, 0x983C},+    {0x978B, 0x96F7},+    {0x978C, 0x6D1B},+    {0x978D, 0x7D61},+    {0x978E, 0x843D},+    {0x978F, 0x916A},+    {0x9790, 0x4E71},+    {0x9791, 0x5375},+    {0x9792, 0x5D50},+    {0x9793, 0x6B04},+    {0x9794, 0x6FEB},+    {0x9795, 0x85CD},+    {0x9796, 0x862D},+    {0x9797, 0x89A7},+    {0x9798, 0x5229},+    {0x9799, 0x540F},+    {0x979A, 0x5C65},+    {0x979B, 0x674E},+    {0x979C, 0x68A8},+    {0x979D, 0x7406},+    {0x979E, 0x7483},+    {0x979F, 0x75E2},+    {0x97A0, 0x88CF},+    {0x97A1, 0x88E1},+    {0x97A2, 0x91CC},+    {0x97A3, 0x96E2},+    {0x97A4, 0x9678},+    {0x97A5, 0x5F8B},+    {0x97A6, 0x7387},+    {0x97A7, 0x7ACB},+    {0x97A8, 0x844E},+    {0x97A9, 0x63A0},+    {0x97AA, 0x7565},+    {0x97AB, 0x5289},+    {0x97AC, 0x6D41},+    {0x97AD, 0x6E9C},+    {0x97AE, 0x7409},+    {0x97AF, 0x7559},+    {0x97B0, 0x786B},+    {0x97B1, 0x7C92},+    {0x97B2, 0x9686},+    {0x97B3, 0x7ADC},+    {0x97B4, 0x9F8D},+    {0x97B5, 0x4FB6},+    {0x97B6, 0x616E},+    {0x97B7, 0x65C5},+    {0x97B8, 0x865C},+    {0x97B9, 0x4E86},+    {0x97BA, 0x4EAE},+    {0x97BB, 0x50DA},+    {0x97BC, 0x4E21},+    {0x97BD, 0x51CC},+    {0x97BE, 0x5BEE},+    {0x97BF, 0x6599},+    {0x97C0, 0x6881},+    {0x97C1, 0x6DBC},+    {0x97C2, 0x731F},+    {0x97C3, 0x7642},+    {0x97C4, 0x77AD},+    {0x97C5, 0x7A1C},+    {0x97C6, 0x7CE7},+    {0x97C7, 0x826F},+    {0x97C8, 0x8AD2},+    {0x97C9, 0x907C},+    {0x97CA, 0x91CF},+    {0x97CB, 0x9675},+    {0x97CC, 0x9818},+    {0x97CD, 0x529B},+    {0x97CE, 0x7DD1},+    {0x97CF, 0x502B},+    {0x97D0, 0x5398},+    {0x97D1, 0x6797},+    {0x97D2, 0x6DCB},+    {0x97D3, 0x71D0},+    {0x97D4, 0x7433},+    {0x97D5, 0x81E8},+    {0x97D6, 0x8F2A},+    {0x97D7, 0x96A3},+    {0x97D8, 0x9C57},+    {0x97D9, 0x9E9F},+    {0x97DA, 0x7460},+    {0x97DB, 0x5841},+    {0x97DC, 0x6D99},+    {0x97DD, 0x7D2F},+    {0x97DE, 0x985E},+    {0x97DF, 0x4EE4},+    {0x97E0, 0x4F36},+    {0x97E1, 0x4F8B},+    {0x97E2, 0x51B7},+    {0x97E3, 0x52B1},+    {0x97E4, 0x5DBA},+    {0x97E5, 0x601C},+    {0x97E6, 0x73B2},+    {0x97E7, 0x793C},+    {0x97E8, 0x82D3},+    {0x97E9, 0x9234},+    {0x97EA, 0x96B7},+    {0x97EB, 0x96F6},+    {0x97EC, 0x970A},+    {0x97ED, 0x9E97},+    {0x97EE, 0x9F62},+    {0x97EF, 0x66A6},+    {0x97F0, 0x6B74},+    {0x97F1, 0x5217},+    {0x97F2, 0x52A3},+    {0x97F3, 0x70C8},+    {0x97F4, 0x88C2},+    {0x97F5, 0x5EC9},+    {0x97F6, 0x604B},+    {0x97F7, 0x6190},+    {0x97F8, 0x6F23},+    {0x97F9, 0x7149},+    {0x97FA, 0x7C3E},+    {0x97FB, 0x7DF4},+    {0x97FC, 0x806F},+    {0x9840, 0x84EE},+    {0x9841, 0x9023},+    {0x9842, 0x932C},+    {0x9843, 0x5442},+    {0x9844, 0x9B6F},+    {0x9845, 0x6AD3},+    {0x9846, 0x7089},+    {0x9847, 0x8CC2},+    {0x9848, 0x8DEF},+    {0x9849, 0x9732},+    {0x984A, 0x52B4},+    {0x984B, 0x5A41},+    {0x984C, 0x5ECA},+    {0x984D, 0x5F04},+    {0x984E, 0x6717},+    {0x984F, 0x697C},+    {0x9850, 0x6994},+    {0x9851, 0x6D6A},+    {0x9852, 0x6F0F},+    {0x9853, 0x7262},+    {0x9854, 0x72FC},+    {0x9855, 0x7BED},+    {0x9856, 0x8001},+    {0x9857, 0x807E},+    {0x9858, 0x874B},+    {0x9859, 0x90CE},+    {0x985A, 0x516D},+    {0x985B, 0x9E93},+    {0x985C, 0x7984},+    {0x985D, 0x808B},+    {0x985E, 0x9332},+    {0x985F, 0x8AD6},+    {0x9860, 0x502D},+    {0x9861, 0x548C},+    {0x9862, 0x8A71},+    {0x9863, 0x6B6A},+    {0x9864, 0x8CC4},+    {0x9865, 0x8107},+    {0x9866, 0x60D1},+    {0x9867, 0x67A0},+    {0x9868, 0x9DF2},+    {0x9869, 0x4E99},+    {0x986A, 0x4E98},+    {0x986B, 0x9C10},+    {0x986C, 0x8A6B},+    {0x986D, 0x85C1},+    {0x986E, 0x8568},+    {0x986F, 0x6900},+    {0x9870, 0x6E7E},+    {0x9871, 0x7897},+    {0x9872, 0x8155},+    {0x989F, 0x5F0C},+    {0x98A0, 0x4E10},+    {0x98A1, 0x4E15},+    {0x98A2, 0x4E2A},+    {0x98A3, 0x4E31},+    {0x98A4, 0x4E36},+    {0x98A5, 0x4E3C},+    {0x98A6, 0x4E3F},+    {0x98A7, 0x4E42},+    {0x98A8, 0x4E56},+    {0x98A9, 0x4E58},+    {0x98AA, 0x4E82},+    {0x98AB, 0x4E85},+    {0x98AC, 0x8C6B},+    {0x98AD, 0x4E8A},+    {0x98AE, 0x8212},+    {0x98AF, 0x5F0D},+    {0x98B0, 0x4E8E},+    {0x98B1, 0x4E9E},+    {0x98B2, 0x4E9F},+    {0x98B3, 0x4EA0},+    {0x98B4, 0x4EA2},+    {0x98B5, 0x4EB0},+    {0x98B6, 0x4EB3},+    {0x98B7, 0x4EB6},+    {0x98B8, 0x4ECE},+    {0x98B9, 0x4ECD},+    {0x98BA, 0x4EC4},+    {0x98BB, 0x4EC6},+    {0x98BC, 0x4EC2},+    {0x98BD, 0x4ED7},+    {0x98BE, 0x4EDE},+    {0x98BF, 0x4EED},+    {0x98C0, 0x4EDF},+    {0x98C1, 0x4EF7},+    {0x98C2, 0x4F09},+    {0x98C3, 0x4F5A},+    {0x98C4, 0x4F30},+    {0x98C5, 0x4F5B},+    {0x98C6, 0x4F5D},+    {0x98C7, 0x4F57},+    {0x98C8, 0x4F47},+    {0x98C9, 0x4F76},+    {0x98CA, 0x4F88},+    {0x98CB, 0x4F8F},+    {0x98CC, 0x4F98},+    {0x98CD, 0x4F7B},+    {0x98CE, 0x4F69},+    {0x98CF, 0x4F70},+    {0x98D0, 0x4F91},+    {0x98D1, 0x4F6F},+    {0x98D2, 0x4F86},+    {0x98D3, 0x4F96},+    {0x98D4, 0x5118},+    {0x98D5, 0x4FD4},+    {0x98D6, 0x4FDF},+    {0x98D7, 0x4FCE},+    {0x98D8, 0x4FD8},+    {0x98D9, 0x4FDB},+    {0x98DA, 0x4FD1},+    {0x98DB, 0x4FDA},+    {0x98DC, 0x4FD0},+    {0x98DD, 0x4FE4},+    {0x98DE, 0x4FE5},+    {0x98DF, 0x501A},+    {0x98E0, 0x5028},+    {0x98E1, 0x5014},+    {0x98E2, 0x502A},+    {0x98E3, 0x5025},+    {0x98E4, 0x5005},+    {0x98E5, 0x4F1C},+    {0x98E6, 0x4FF6},+    {0x98E7, 0x5021},+    {0x98E8, 0x5029},+    {0x98E9, 0x502C},+    {0x98EA, 0x4FFE},+    {0x98EB, 0x4FEF},+    {0x98EC, 0x5011},+    {0x98ED, 0x5006},+    {0x98EE, 0x5043},+    {0x98EF, 0x5047},+    {0x98F0, 0x6703},+    {0x98F1, 0x5055},+    {0x98F2, 0x5050},+    {0x98F3, 0x5048},+    {0x98F4, 0x505A},+    {0x98F5, 0x5056},+    {0x98F6, 0x506C},+    {0x98F7, 0x5078},+    {0x98F8, 0x5080},+    {0x98F9, 0x509A},+    {0x98FA, 0x5085},+    {0x98FB, 0x50B4},+    {0x98FC, 0x50B2},+    {0x9940, 0x50C9},+    {0x9941, 0x50CA},+    {0x9942, 0x50B3},+    {0x9943, 0x50C2},+    {0x9944, 0x50D6},+    {0x9945, 0x50DE},+    {0x9946, 0x50E5},+    {0x9947, 0x50ED},+    {0x9948, 0x50E3},+    {0x9949, 0x50EE},+    {0x994A, 0x50F9},+    {0x994B, 0x50F5},+    {0x994C, 0x5109},+    {0x994D, 0x5101},+    {0x994E, 0x5102},+    {0x994F, 0x5116},+    {0x9950, 0x5115},+    {0x9951, 0x5114},+    {0x9952, 0x511A},+    {0x9953, 0x5121},+    {0x9954, 0x513A},+    {0x9955, 0x5137},+    {0x9956, 0x513C},+    {0x9957, 0x513B},+    {0x9958, 0x513F},+    {0x9959, 0x5140},+    {0x995A, 0x5152},+    {0x995B, 0x514C},+    {0x995C, 0x5154},+    {0x995D, 0x5162},+    {0x995E, 0x7AF8},+    {0x995F, 0x5169},+    {0x9960, 0x516A},+    {0x9961, 0x516E},+    {0x9962, 0x5180},+    {0x9963, 0x5182},+    {0x9964, 0x56D8},+    {0x9965, 0x518C},+    {0x9966, 0x5189},+    {0x9967, 0x518F},+    {0x9968, 0x5191},+    {0x9969, 0x5193},+    {0x996A, 0x5195},+    {0x996B, 0x5196},+    {0x996C, 0x51A4},+    {0x996D, 0x51A6},+    {0x996E, 0x51A2},+    {0x996F, 0x51A9},+    {0x9970, 0x51AA},+    {0x9971, 0x51AB},+    {0x9972, 0x51B3},+    {0x9973, 0x51B1},+    {0x9974, 0x51B2},+    {0x9975, 0x51B0},+    {0x9976, 0x51B5},+    {0x9977, 0x51BD},+    {0x9978, 0x51C5},+    {0x9979, 0x51C9},+    {0x997A, 0x51DB},+    {0x997B, 0x51E0},+    {0x997C, 0x8655},+    {0x997D, 0x51E9},+    {0x997E, 0x51ED},+    {0x9980, 0x51F0},+    {0x9981, 0x51F5},+    {0x9982, 0x51FE},+    {0x9983, 0x5204},+    {0x9984, 0x520B},+    {0x9985, 0x5214},+    {0x9986, 0x520E},+    {0x9987, 0x5227},+    {0x9988, 0x522A},+    {0x9989, 0x522E},+    {0x998A, 0x5233},+    {0x998B, 0x5239},+    {0x998C, 0x524F},+    {0x998D, 0x5244},+    {0x998E, 0x524B},+    {0x998F, 0x524C},+    {0x9990, 0x525E},+    {0x9991, 0x5254},+    {0x9992, 0x526A},+    {0x9993, 0x5274},+    {0x9994, 0x5269},+    {0x9995, 0x5273},+    {0x9996, 0x527F},+    {0x9997, 0x527D},+    {0x9998, 0x528D},+    {0x9999, 0x5294},+    {0x999A, 0x5292},+    {0x999B, 0x5271},+    {0x999C, 0x5288},+    {0x999D, 0x5291},+    {0x999E, 0x8FA8},+    {0x999F, 0x8FA7},+    {0x99A0, 0x52AC},+    {0x99A1, 0x52AD},+    {0x99A2, 0x52BC},+    {0x99A3, 0x52B5},+    {0x99A4, 0x52C1},+    {0x99A5, 0x52CD},+    {0x99A6, 0x52D7},+    {0x99A7, 0x52DE},+    {0x99A8, 0x52E3},+    {0x99A9, 0x52E6},+    {0x99AA, 0x98ED},+    {0x99AB, 0x52E0},+    {0x99AC, 0x52F3},+    {0x99AD, 0x52F5},+    {0x99AE, 0x52F8},+    {0x99AF, 0x52F9},+    {0x99B0, 0x5306},+    {0x99B1, 0x5308},+    {0x99B2, 0x7538},+    {0x99B3, 0x530D},+    {0x99B4, 0x5310},+    {0x99B5, 0x530F},+    {0x99B6, 0x5315},+    {0x99B7, 0x531A},+    {0x99B8, 0x5323},+    {0x99B9, 0x532F},+    {0x99BA, 0x5331},+    {0x99BB, 0x5333},+    {0x99BC, 0x5338},+    {0x99BD, 0x5340},+    {0x99BE, 0x5346},+    {0x99BF, 0x5345},+    {0x99C0, 0x4E17},+    {0x99C1, 0x5349},+    {0x99C2, 0x534D},+    {0x99C3, 0x51D6},+    {0x99C4, 0x535E},+    {0x99C5, 0x5369},+    {0x99C6, 0x536E},+    {0x99C7, 0x5918},+    {0x99C8, 0x537B},+    {0x99C9, 0x5377},+    {0x99CA, 0x5382},+    {0x99CB, 0x5396},+    {0x99CC, 0x53A0},+    {0x99CD, 0x53A6},+    {0x99CE, 0x53A5},+    {0x99CF, 0x53AE},+    {0x99D0, 0x53B0},+    {0x99D1, 0x53B6},+    {0x99D2, 0x53C3},+    {0x99D3, 0x7C12},+    {0x99D4, 0x96D9},+    {0x99D5, 0x53DF},+    {0x99D6, 0x66FC},+    {0x99D7, 0x71EE},+    {0x99D8, 0x53EE},+    {0x99D9, 0x53E8},+    {0x99DA, 0x53ED},+    {0x99DB, 0x53FA},+    {0x99DC, 0x5401},+    {0x99DD, 0x543D},+    {0x99DE, 0x5440},+    {0x99DF, 0x542C},+    {0x99E0, 0x542D},+    {0x99E1, 0x543C},+    {0x99E2, 0x542E},+    {0x99E3, 0x5436},+    {0x99E4, 0x5429},+    {0x99E5, 0x541D},+    {0x99E6, 0x544E},+    {0x99E7, 0x548F},+    {0x99E8, 0x5475},+    {0x99E9, 0x548E},+    {0x99EA, 0x545F},+    {0x99EB, 0x5471},+    {0x99EC, 0x5477},+    {0x99ED, 0x5470},+    {0x99EE, 0x5492},+    {0x99EF, 0x547B},+    {0x99F0, 0x5480},+    {0x99F1, 0x5476},+    {0x99F2, 0x5484},+    {0x99F3, 0x5490},+    {0x99F4, 0x5486},+    {0x99F5, 0x54C7},+    {0x99F6, 0x54A2},+    {0x99F7, 0x54B8},+    {0x99F8, 0x54A5},+    {0x99F9, 0x54AC},+    {0x99FA, 0x54C4},+    {0x99FB, 0x54C8},+    {0x99FC, 0x54A8},+    {0x9A40, 0x54AB},+    {0x9A41, 0x54C2},+    {0x9A42, 0x54A4},+    {0x9A43, 0x54BE},+    {0x9A44, 0x54BC},+    {0x9A45, 0x54D8},+    {0x9A46, 0x54E5},+    {0x9A47, 0x54E6},+    {0x9A48, 0x550F},+    {0x9A49, 0x5514},+    {0x9A4A, 0x54FD},+    {0x9A4B, 0x54EE},+    {0x9A4C, 0x54ED},+    {0x9A4D, 0x54FA},+    {0x9A4E, 0x54E2},+    {0x9A4F, 0x5539},+    {0x9A50, 0x5540},+    {0x9A51, 0x5563},+    {0x9A52, 0x554C},+    {0x9A53, 0x552E},+    {0x9A54, 0x555C},+    {0x9A55, 0x5545},+    {0x9A56, 0x5556},+    {0x9A57, 0x5557},+    {0x9A58, 0x5538},+    {0x9A59, 0x5533},+    {0x9A5A, 0x555D},+    {0x9A5B, 0x5599},+    {0x9A5C, 0x5580},+    {0x9A5D, 0x54AF},+    {0x9A5E, 0x558A},+    {0x9A5F, 0x559F},+    {0x9A60, 0x557B},+    {0x9A61, 0x557E},+    {0x9A62, 0x5598},+    {0x9A63, 0x559E},+    {0x9A64, 0x55AE},+    {0x9A65, 0x557C},+    {0x9A66, 0x5583},+    {0x9A67, 0x55A9},+    {0x9A68, 0x5587},+    {0x9A69, 0x55A8},+    {0x9A6A, 0x55DA},+    {0x9A6B, 0x55C5},+    {0x9A6C, 0x55DF},+    {0x9A6D, 0x55C4},+    {0x9A6E, 0x55DC},+    {0x9A6F, 0x55E4},+    {0x9A70, 0x55D4},+    {0x9A71, 0x5614},+    {0x9A72, 0x55F7},+    {0x9A73, 0x5616},+    {0x9A74, 0x55FE},+    {0x9A75, 0x55FD},+    {0x9A76, 0x561B},+    {0x9A77, 0x55F9},+    {0x9A78, 0x564E},+    {0x9A79, 0x5650},+    {0x9A7A, 0x71DF},+    {0x9A7B, 0x5634},+    {0x9A7C, 0x5636},+    {0x9A7D, 0x5632},+    {0x9A7E, 0x5638},+    {0x9A80, 0x566B},+    {0x9A81, 0x5664},+    {0x9A82, 0x562F},+    {0x9A83, 0x566C},+    {0x9A84, 0x566A},+    {0x9A85, 0x5686},+    {0x9A86, 0x5680},+    {0x9A87, 0x568A},+    {0x9A88, 0x56A0},+    {0x9A89, 0x5694},+    {0x9A8A, 0x568F},+    {0x9A8B, 0x56A5},+    {0x9A8C, 0x56AE},+    {0x9A8D, 0x56B6},+    {0x9A8E, 0x56B4},+    {0x9A8F, 0x56C2},+    {0x9A90, 0x56BC},+    {0x9A91, 0x56C1},+    {0x9A92, 0x56C3},+    {0x9A93, 0x56C0},+    {0x9A94, 0x56C8},+    {0x9A95, 0x56CE},+    {0x9A96, 0x56D1},+    {0x9A97, 0x56D3},+    {0x9A98, 0x56D7},+    {0x9A99, 0x56EE},+    {0x9A9A, 0x56F9},+    {0x9A9B, 0x5700},+    {0x9A9C, 0x56FF},+    {0x9A9D, 0x5704},+    {0x9A9E, 0x5709},+    {0x9A9F, 0x5708},+    {0x9AA0, 0x570B},+    {0x9AA1, 0x570D},+    {0x9AA2, 0x5713},+    {0x9AA3, 0x5718},+    {0x9AA4, 0x5716},+    {0x9AA5, 0x55C7},+    {0x9AA6, 0x571C},+    {0x9AA7, 0x5726},+    {0x9AA8, 0x5737},+    {0x9AA9, 0x5738},+    {0x9AAA, 0x574E},+    {0x9AAB, 0x573B},+    {0x9AAC, 0x5740},+    {0x9AAD, 0x574F},+    {0x9AAE, 0x5769},+    {0x9AAF, 0x57C0},+    {0x9AB0, 0x5788},+    {0x9AB1, 0x5761},+    {0x9AB2, 0x577F},+    {0x9AB3, 0x5789},+    {0x9AB4, 0x5793},+    {0x9AB5, 0x57A0},+    {0x9AB6, 0x57B3},+    {0x9AB7, 0x57A4},+    {0x9AB8, 0x57AA},+    {0x9AB9, 0x57B0},+    {0x9ABA, 0x57C3},+    {0x9ABB, 0x57C6},+    {0x9ABC, 0x57D4},+    {0x9ABD, 0x57D2},+    {0x9ABE, 0x57D3},+    {0x9ABF, 0x580A},+    {0x9AC0, 0x57D6},+    {0x9AC1, 0x57E3},+    {0x9AC2, 0x580B},+    {0x9AC3, 0x5819},+    {0x9AC4, 0x581D},+    {0x9AC5, 0x5872},+    {0x9AC6, 0x5821},+    {0x9AC7, 0x5862},+    {0x9AC8, 0x584B},+    {0x9AC9, 0x5870},+    {0x9ACA, 0x6BC0},+    {0x9ACB, 0x5852},+    {0x9ACC, 0x583D},+    {0x9ACD, 0x5879},+    {0x9ACE, 0x5885},+    {0x9ACF, 0x58B9},+    {0x9AD0, 0x589F},+    {0x9AD1, 0x58AB},+    {0x9AD2, 0x58BA},+    {0x9AD3, 0x58DE},+    {0x9AD4, 0x58BB},+    {0x9AD5, 0x58B8},+    {0x9AD6, 0x58AE},+    {0x9AD7, 0x58C5},+    {0x9AD8, 0x58D3},+    {0x9AD9, 0x58D1},+    {0x9ADA, 0x58D7},+    {0x9ADB, 0x58D9},+    {0x9ADC, 0x58D8},+    {0x9ADD, 0x58E5},+    {0x9ADE, 0x58DC},+    {0x9ADF, 0x58E4},+    {0x9AE0, 0x58DF},+    {0x9AE1, 0x58EF},+    {0x9AE2, 0x58FA},+    {0x9AE3, 0x58F9},+    {0x9AE4, 0x58FB},+    {0x9AE5, 0x58FC},+    {0x9AE6, 0x58FD},+    {0x9AE7, 0x5902},+    {0x9AE8, 0x590A},+    {0x9AE9, 0x5910},+    {0x9AEA, 0x591B},+    {0x9AEB, 0x68A6},+    {0x9AEC, 0x5925},+    {0x9AED, 0x592C},+    {0x9AEE, 0x592D},+    {0x9AEF, 0x5932},+    {0x9AF0, 0x5938},+    {0x9AF1, 0x593E},+    {0x9AF2, 0x7AD2},+    {0x9AF3, 0x5955},+    {0x9AF4, 0x5950},+    {0x9AF5, 0x594E},+    {0x9AF6, 0x595A},+    {0x9AF7, 0x5958},+    {0x9AF8, 0x5962},+    {0x9AF9, 0x5960},+    {0x9AFA, 0x5967},+    {0x9AFB, 0x596C},+    {0x9AFC, 0x5969},+    {0x9B40, 0x5978},+    {0x9B41, 0x5981},+    {0x9B42, 0x599D},+    {0x9B43, 0x4F5E},+    {0x9B44, 0x4FAB},+    {0x9B45, 0x59A3},+    {0x9B46, 0x59B2},+    {0x9B47, 0x59C6},+    {0x9B48, 0x59E8},+    {0x9B49, 0x59DC},+    {0x9B4A, 0x598D},+    {0x9B4B, 0x59D9},+    {0x9B4C, 0x59DA},+    {0x9B4D, 0x5A25},+    {0x9B4E, 0x5A1F},+    {0x9B4F, 0x5A11},+    {0x9B50, 0x5A1C},+    {0x9B51, 0x5A09},+    {0x9B52, 0x5A1A},+    {0x9B53, 0x5A40},+    {0x9B54, 0x5A6C},+    {0x9B55, 0x5A49},+    {0x9B56, 0x5A35},+    {0x9B57, 0x5A36},+    {0x9B58, 0x5A62},+    {0x9B59, 0x5A6A},+    {0x9B5A, 0x5A9A},+    {0x9B5B, 0x5ABC},+    {0x9B5C, 0x5ABE},+    {0x9B5D, 0x5ACB},+    {0x9B5E, 0x5AC2},+    {0x9B5F, 0x5ABD},+    {0x9B60, 0x5AE3},+    {0x9B61, 0x5AD7},+    {0x9B62, 0x5AE6},+    {0x9B63, 0x5AE9},+    {0x9B64, 0x5AD6},+    {0x9B65, 0x5AFA},+    {0x9B66, 0x5AFB},+    {0x9B67, 0x5B0C},+    {0x9B68, 0x5B0B},+    {0x9B69, 0x5B16},+    {0x9B6A, 0x5B32},+    {0x9B6B, 0x5AD0},+    {0x9B6C, 0x5B2A},+    {0x9B6D, 0x5B36},+    {0x9B6E, 0x5B3E},+    {0x9B6F, 0x5B43},+    {0x9B70, 0x5B45},+    {0x9B71, 0x5B40},+    {0x9B72, 0x5B51},+    {0x9B73, 0x5B55},+    {0x9B74, 0x5B5A},+    {0x9B75, 0x5B5B},+    {0x9B76, 0x5B65},+    {0x9B77, 0x5B69},+    {0x9B78, 0x5B70},+    {0x9B79, 0x5B73},+    {0x9B7A, 0x5B75},+    {0x9B7B, 0x5B78},+    {0x9B7C, 0x6588},+    {0x9B7D, 0x5B7A},+    {0x9B7E, 0x5B80},+    {0x9B80, 0x5B83},+    {0x9B81, 0x5BA6},+    {0x9B82, 0x5BB8},+    {0x9B83, 0x5BC3},+    {0x9B84, 0x5BC7},+    {0x9B85, 0x5BC9},+    {0x9B86, 0x5BD4},+    {0x9B87, 0x5BD0},+    {0x9B88, 0x5BE4},+    {0x9B89, 0x5BE6},+    {0x9B8A, 0x5BE2},+    {0x9B8B, 0x5BDE},+    {0x9B8C, 0x5BE5},+    {0x9B8D, 0x5BEB},+    {0x9B8E, 0x5BF0},+    {0x9B8F, 0x5BF6},+    {0x9B90, 0x5BF3},+    {0x9B91, 0x5C05},+    {0x9B92, 0x5C07},+    {0x9B93, 0x5C08},+    {0x9B94, 0x5C0D},+    {0x9B95, 0x5C13},+    {0x9B96, 0x5C20},+    {0x9B97, 0x5C22},+    {0x9B98, 0x5C28},+    {0x9B99, 0x5C38},+    {0x9B9A, 0x5C39},+    {0x9B9B, 0x5C41},+    {0x9B9C, 0x5C46},+    {0x9B9D, 0x5C4E},+    {0x9B9E, 0x5C53},+    {0x9B9F, 0x5C50},+    {0x9BA0, 0x5C4F},+    {0x9BA1, 0x5B71},+    {0x9BA2, 0x5C6C},+    {0x9BA3, 0x5C6E},+    {0x9BA4, 0x4E62},+    {0x9BA5, 0x5C76},+    {0x9BA6, 0x5C79},+    {0x9BA7, 0x5C8C},+    {0x9BA8, 0x5C91},+    {0x9BA9, 0x5C94},+    {0x9BAA, 0x599B},+    {0x9BAB, 0x5CAB},+    {0x9BAC, 0x5CBB},+    {0x9BAD, 0x5CB6},+    {0x9BAE, 0x5CBC},+    {0x9BAF, 0x5CB7},+    {0x9BB0, 0x5CC5},+    {0x9BB1, 0x5CBE},+    {0x9BB2, 0x5CC7},+    {0x9BB3, 0x5CD9},+    {0x9BB4, 0x5CE9},+    {0x9BB5, 0x5CFD},+    {0x9BB6, 0x5CFA},+    {0x9BB7, 0x5CED},+    {0x9BB8, 0x5D8C},+    {0x9BB9, 0x5CEA},+    {0x9BBA, 0x5D0B},+    {0x9BBB, 0x5D15},+    {0x9BBC, 0x5D17},+    {0x9BBD, 0x5D5C},+    {0x9BBE, 0x5D1F},+    {0x9BBF, 0x5D1B},+    {0x9BC0, 0x5D11},+    {0x9BC1, 0x5D14},+    {0x9BC2, 0x5D22},+    {0x9BC3, 0x5D1A},+    {0x9BC4, 0x5D19},+    {0x9BC5, 0x5D18},+    {0x9BC6, 0x5D4C},+    {0x9BC7, 0x5D52},+    {0x9BC8, 0x5D4E},+    {0x9BC9, 0x5D4B},+    {0x9BCA, 0x5D6C},+    {0x9BCB, 0x5D73},+    {0x9BCC, 0x5D76},+    {0x9BCD, 0x5D87},+    {0x9BCE, 0x5D84},+    {0x9BCF, 0x5D82},+    {0x9BD0, 0x5DA2},+    {0x9BD1, 0x5D9D},+    {0x9BD2, 0x5DAC},+    {0x9BD3, 0x5DAE},+    {0x9BD4, 0x5DBD},+    {0x9BD5, 0x5D90},+    {0x9BD6, 0x5DB7},+    {0x9BD7, 0x5DBC},+    {0x9BD8, 0x5DC9},+    {0x9BD9, 0x5DCD},+    {0x9BDA, 0x5DD3},+    {0x9BDB, 0x5DD2},+    {0x9BDC, 0x5DD6},+    {0x9BDD, 0x5DDB},+    {0x9BDE, 0x5DEB},+    {0x9BDF, 0x5DF2},+    {0x9BE0, 0x5DF5},+    {0x9BE1, 0x5E0B},+    {0x9BE2, 0x5E1A},+    {0x9BE3, 0x5E19},+    {0x9BE4, 0x5E11},+    {0x9BE5, 0x5E1B},+    {0x9BE6, 0x5E36},+    {0x9BE7, 0x5E37},+    {0x9BE8, 0x5E44},+    {0x9BE9, 0x5E43},+    {0x9BEA, 0x5E40},+    {0x9BEB, 0x5E4E},+    {0x9BEC, 0x5E57},+    {0x9BED, 0x5E54},+    {0x9BEE, 0x5E5F},+    {0x9BEF, 0x5E62},+    {0x9BF0, 0x5E64},+    {0x9BF1, 0x5E47},+    {0x9BF2, 0x5E75},+    {0x9BF3, 0x5E76},+    {0x9BF4, 0x5E7A},+    {0x9BF5, 0x9EBC},+    {0x9BF6, 0x5E7F},+    {0x9BF7, 0x5EA0},+    {0x9BF8, 0x5EC1},+    {0x9BF9, 0x5EC2},+    {0x9BFA, 0x5EC8},+    {0x9BFB, 0x5ED0},+    {0x9BFC, 0x5ECF},+    {0x9C40, 0x5ED6},+    {0x9C41, 0x5EE3},+    {0x9C42, 0x5EDD},+    {0x9C43, 0x5EDA},+    {0x9C44, 0x5EDB},+    {0x9C45, 0x5EE2},+    {0x9C46, 0x5EE1},+    {0x9C47, 0x5EE8},+    {0x9C48, 0x5EE9},+    {0x9C49, 0x5EEC},+    {0x9C4A, 0x5EF1},+    {0x9C4B, 0x5EF3},+    {0x9C4C, 0x5EF0},+    {0x9C4D, 0x5EF4},+    {0x9C4E, 0x5EF8},+    {0x9C4F, 0x5EFE},+    {0x9C50, 0x5F03},+    {0x9C51, 0x5F09},+    {0x9C52, 0x5F5D},+    {0x9C53, 0x5F5C},+    {0x9C54, 0x5F0B},+    {0x9C55, 0x5F11},+    {0x9C56, 0x5F16},+    {0x9C57, 0x5F29},+    {0x9C58, 0x5F2D},+    {0x9C59, 0x5F38},+    {0x9C5A, 0x5F41},+    {0x9C5B, 0x5F48},+    {0x9C5C, 0x5F4C},+    {0x9C5D, 0x5F4E},+    {0x9C5E, 0x5F2F},+    {0x9C5F, 0x5F51},+    {0x9C60, 0x5F56},+    {0x9C61, 0x5F57},+    {0x9C62, 0x5F59},+    {0x9C63, 0x5F61},+    {0x9C64, 0x5F6D},+    {0x9C65, 0x5F73},+    {0x9C66, 0x5F77},+    {0x9C67, 0x5F83},+    {0x9C68, 0x5F82},+    {0x9C69, 0x5F7F},+    {0x9C6A, 0x5F8A},+    {0x9C6B, 0x5F88},+    {0x9C6C, 0x5F91},+    {0x9C6D, 0x5F87},+    {0x9C6E, 0x5F9E},+    {0x9C6F, 0x5F99},+    {0x9C70, 0x5F98},+    {0x9C71, 0x5FA0},+    {0x9C72, 0x5FA8},+    {0x9C73, 0x5FAD},+    {0x9C74, 0x5FBC},+    {0x9C75, 0x5FD6},+    {0x9C76, 0x5FFB},+    {0x9C77, 0x5FE4},+    {0x9C78, 0x5FF8},+    {0x9C79, 0x5FF1},+    {0x9C7A, 0x5FDD},+    {0x9C7B, 0x60B3},+    {0x9C7C, 0x5FFF},+    {0x9C7D, 0x6021},+    {0x9C7E, 0x6060},+    {0x9C80, 0x6019},+    {0x9C81, 0x6010},+    {0x9C82, 0x6029},+    {0x9C83, 0x600E},+    {0x9C84, 0x6031},+    {0x9C85, 0x601B},+    {0x9C86, 0x6015},+    {0x9C87, 0x602B},+    {0x9C88, 0x6026},+    {0x9C89, 0x600F},+    {0x9C8A, 0x603A},+    {0x9C8B, 0x605A},+    {0x9C8C, 0x6041},+    {0x9C8D, 0x606A},+    {0x9C8E, 0x6077},+    {0x9C8F, 0x605F},+    {0x9C90, 0x604A},+    {0x9C91, 0x6046},+    {0x9C92, 0x604D},+    {0x9C93, 0x6063},+    {0x9C94, 0x6043},+    {0x9C95, 0x6064},+    {0x9C96, 0x6042},+    {0x9C97, 0x606C},+    {0x9C98, 0x606B},+    {0x9C99, 0x6059},+    {0x9C9A, 0x6081},+    {0x9C9B, 0x608D},+    {0x9C9C, 0x60E7},+    {0x9C9D, 0x6083},+    {0x9C9E, 0x609A},+    {0x9C9F, 0x6084},+    {0x9CA0, 0x609B},+    {0x9CA1, 0x6096},+    {0x9CA2, 0x6097},+    {0x9CA3, 0x6092},+    {0x9CA4, 0x60A7},+    {0x9CA5, 0x608B},+    {0x9CA6, 0x60E1},+    {0x9CA7, 0x60B8},+    {0x9CA8, 0x60E0},+    {0x9CA9, 0x60D3},+    {0x9CAA, 0x60B4},+    {0x9CAB, 0x5FF0},+    {0x9CAC, 0x60BD},+    {0x9CAD, 0x60C6},+    {0x9CAE, 0x60B5},+    {0x9CAF, 0x60D8},+    {0x9CB0, 0x614D},+    {0x9CB1, 0x6115},+    {0x9CB2, 0x6106},+    {0x9CB3, 0x60F6},+    {0x9CB4, 0x60F7},+    {0x9CB5, 0x6100},+    {0x9CB6, 0x60F4},+    {0x9CB7, 0x60FA},+    {0x9CB8, 0x6103},+    {0x9CB9, 0x6121},+    {0x9CBA, 0x60FB},+    {0x9CBB, 0x60F1},+    {0x9CBC, 0x610D},+    {0x9CBD, 0x610E},+    {0x9CBE, 0x6147},+    {0x9CBF, 0x613E},+    {0x9CC0, 0x6128},+    {0x9CC1, 0x6127},+    {0x9CC2, 0x614A},+    {0x9CC3, 0x613F},+    {0x9CC4, 0x613C},+    {0x9CC5, 0x612C},+    {0x9CC6, 0x6134},+    {0x9CC7, 0x613D},+    {0x9CC8, 0x6142},+    {0x9CC9, 0x6144},+    {0x9CCA, 0x6173},+    {0x9CCB, 0x6177},+    {0x9CCC, 0x6158},+    {0x9CCD, 0x6159},+    {0x9CCE, 0x615A},+    {0x9CCF, 0x616B},+    {0x9CD0, 0x6174},+    {0x9CD1, 0x616F},+    {0x9CD2, 0x6165},+    {0x9CD3, 0x6171},+    {0x9CD4, 0x615F},+    {0x9CD5, 0x615D},+    {0x9CD6, 0x6153},+    {0x9CD7, 0x6175},+    {0x9CD8, 0x6199},+    {0x9CD9, 0x6196},+    {0x9CDA, 0x6187},+    {0x9CDB, 0x61AC},+    {0x9CDC, 0x6194},+    {0x9CDD, 0x619A},+    {0x9CDE, 0x618A},+    {0x9CDF, 0x6191},+    {0x9CE0, 0x61AB},+    {0x9CE1, 0x61AE},+    {0x9CE2, 0x61CC},+    {0x9CE3, 0x61CA},+    {0x9CE4, 0x61C9},+    {0x9CE5, 0x61F7},+    {0x9CE6, 0x61C8},+    {0x9CE7, 0x61C3},+    {0x9CE8, 0x61C6},+    {0x9CE9, 0x61BA},+    {0x9CEA, 0x61CB},+    {0x9CEB, 0x7F79},+    {0x9CEC, 0x61CD},+    {0x9CED, 0x61E6},+    {0x9CEE, 0x61E3},+    {0x9CEF, 0x61F6},+    {0x9CF0, 0x61FA},+    {0x9CF1, 0x61F4},+    {0x9CF2, 0x61FF},+    {0x9CF3, 0x61FD},+    {0x9CF4, 0x61FC},+    {0x9CF5, 0x61FE},+    {0x9CF6, 0x6200},+    {0x9CF7, 0x6208},+    {0x9CF8, 0x6209},+    {0x9CF9, 0x620D},+    {0x9CFA, 0x620C},+    {0x9CFB, 0x6214},+    {0x9CFC, 0x621B},+    {0x9D40, 0x621E},+    {0x9D41, 0x6221},+    {0x9D42, 0x622A},+    {0x9D43, 0x622E},+    {0x9D44, 0x6230},+    {0x9D45, 0x6232},+    {0x9D46, 0x6233},+    {0x9D47, 0x6241},+    {0x9D48, 0x624E},+    {0x9D49, 0x625E},+    {0x9D4A, 0x6263},+    {0x9D4B, 0x625B},+    {0x9D4C, 0x6260},+    {0x9D4D, 0x6268},+    {0x9D4E, 0x627C},+    {0x9D4F, 0x6282},+    {0x9D50, 0x6289},+    {0x9D51, 0x627E},+    {0x9D52, 0x6292},+    {0x9D53, 0x6293},+    {0x9D54, 0x6296},+    {0x9D55, 0x62D4},+    {0x9D56, 0x6283},+    {0x9D57, 0x6294},+    {0x9D58, 0x62D7},+    {0x9D59, 0x62D1},+    {0x9D5A, 0x62BB},+    {0x9D5B, 0x62CF},+    {0x9D5C, 0x62FF},+    {0x9D5D, 0x62C6},+    {0x9D5E, 0x64D4},+    {0x9D5F, 0x62C8},+    {0x9D60, 0x62DC},+    {0x9D61, 0x62CC},+    {0x9D62, 0x62CA},+    {0x9D63, 0x62C2},+    {0x9D64, 0x62C7},+    {0x9D65, 0x629B},+    {0x9D66, 0x62C9},+    {0x9D67, 0x630C},+    {0x9D68, 0x62EE},+    {0x9D69, 0x62F1},+    {0x9D6A, 0x6327},+    {0x9D6B, 0x6302},+    {0x9D6C, 0x6308},+    {0x9D6D, 0x62EF},+    {0x9D6E, 0x62F5},+    {0x9D6F, 0x6350},+    {0x9D70, 0x633E},+    {0x9D71, 0x634D},+    {0x9D72, 0x641C},+    {0x9D73, 0x634F},+    {0x9D74, 0x6396},+    {0x9D75, 0x638E},+    {0x9D76, 0x6380},+    {0x9D77, 0x63AB},+    {0x9D78, 0x6376},+    {0x9D79, 0x63A3},+    {0x9D7A, 0x638F},+    {0x9D7B, 0x6389},+    {0x9D7C, 0x639F},+    {0x9D7D, 0x63B5},+    {0x9D7E, 0x636B},+    {0x9D80, 0x6369},+    {0x9D81, 0x63BE},+    {0x9D82, 0x63E9},+    {0x9D83, 0x63C0},+    {0x9D84, 0x63C6},+    {0x9D85, 0x63E3},+    {0x9D86, 0x63C9},+    {0x9D87, 0x63D2},+    {0x9D88, 0x63F6},+    {0x9D89, 0x63C4},+    {0x9D8A, 0x6416},+    {0x9D8B, 0x6434},+    {0x9D8C, 0x6406},+    {0x9D8D, 0x6413},+    {0x9D8E, 0x6426},+    {0x9D8F, 0x6436},+    {0x9D90, 0x651D},+    {0x9D91, 0x6417},+    {0x9D92, 0x6428},+    {0x9D93, 0x640F},+    {0x9D94, 0x6467},+    {0x9D95, 0x646F},+    {0x9D96, 0x6476},+    {0x9D97, 0x644E},+    {0x9D98, 0x652A},+    {0x9D99, 0x6495},+    {0x9D9A, 0x6493},+    {0x9D9B, 0x64A5},+    {0x9D9C, 0x64A9},+    {0x9D9D, 0x6488},+    {0x9D9E, 0x64BC},+    {0x9D9F, 0x64DA},+    {0x9DA0, 0x64D2},+    {0x9DA1, 0x64C5},+    {0x9DA2, 0x64C7},+    {0x9DA3, 0x64BB},+    {0x9DA4, 0x64D8},+    {0x9DA5, 0x64C2},+    {0x9DA6, 0x64F1},+    {0x9DA7, 0x64E7},+    {0x9DA8, 0x8209},+    {0x9DA9, 0x64E0},+    {0x9DAA, 0x64E1},+    {0x9DAB, 0x62AC},+    {0x9DAC, 0x64E3},+    {0x9DAD, 0x64EF},+    {0x9DAE, 0x652C},+    {0x9DAF, 0x64F6},+    {0x9DB0, 0x64F4},+    {0x9DB1, 0x64F2},+    {0x9DB2, 0x64FA},+    {0x9DB3, 0x6500},+    {0x9DB4, 0x64FD},+    {0x9DB5, 0x6518},+    {0x9DB6, 0x651C},+    {0x9DB7, 0x6505},+    {0x9DB8, 0x6524},+    {0x9DB9, 0x6523},+    {0x9DBA, 0x652B},+    {0x9DBB, 0x6534},+    {0x9DBC, 0x6535},+    {0x9DBD, 0x6537},+    {0x9DBE, 0x6536},+    {0x9DBF, 0x6538},+    {0x9DC0, 0x754B},+    {0x9DC1, 0x6548},+    {0x9DC2, 0x6556},+    {0x9DC3, 0x6555},+    {0x9DC4, 0x654D},+    {0x9DC5, 0x6558},+    {0x9DC6, 0x655E},+    {0x9DC7, 0x655D},+    {0x9DC8, 0x6572},+    {0x9DC9, 0x6578},+    {0x9DCA, 0x6582},+    {0x9DCB, 0x6583},+    {0x9DCC, 0x8B8A},+    {0x9DCD, 0x659B},+    {0x9DCE, 0x659F},+    {0x9DCF, 0x65AB},+    {0x9DD0, 0x65B7},+    {0x9DD1, 0x65C3},+    {0x9DD2, 0x65C6},+    {0x9DD3, 0x65C1},+    {0x9DD4, 0x65C4},+    {0x9DD5, 0x65CC},+    {0x9DD6, 0x65D2},+    {0x9DD7, 0x65DB},+    {0x9DD8, 0x65D9},+    {0x9DD9, 0x65E0},+    {0x9DDA, 0x65E1},+    {0x9DDB, 0x65F1},+    {0x9DDC, 0x6772},+    {0x9DDD, 0x660A},+    {0x9DDE, 0x6603},+    {0x9DDF, 0x65FB},+    {0x9DE0, 0x6773},+    {0x9DE1, 0x6635},+    {0x9DE2, 0x6636},+    {0x9DE3, 0x6634},+    {0x9DE4, 0x661C},+    {0x9DE5, 0x664F},+    {0x9DE6, 0x6644},+    {0x9DE7, 0x6649},+    {0x9DE8, 0x6641},+    {0x9DE9, 0x665E},+    {0x9DEA, 0x665D},+    {0x9DEB, 0x6664},+    {0x9DEC, 0x6667},+    {0x9DED, 0x6668},+    {0x9DEE, 0x665F},+    {0x9DEF, 0x6662},+    {0x9DF0, 0x6670},+    {0x9DF1, 0x6683},+    {0x9DF2, 0x6688},+    {0x9DF3, 0x668E},+    {0x9DF4, 0x6689},+    {0x9DF5, 0x6684},+    {0x9DF6, 0x6698},+    {0x9DF7, 0x669D},+    {0x9DF8, 0x66C1},+    {0x9DF9, 0x66B9},+    {0x9DFA, 0x66C9},+    {0x9DFB, 0x66BE},+    {0x9DFC, 0x66BC},+    {0x9E40, 0x66C4},+    {0x9E41, 0x66B8},+    {0x9E42, 0x66D6},+    {0x9E43, 0x66DA},+    {0x9E44, 0x66E0},+    {0x9E45, 0x663F},+    {0x9E46, 0x66E6},+    {0x9E47, 0x66E9},+    {0x9E48, 0x66F0},+    {0x9E49, 0x66F5},+    {0x9E4A, 0x66F7},+    {0x9E4B, 0x670F},+    {0x9E4C, 0x6716},+    {0x9E4D, 0x671E},+    {0x9E4E, 0x6726},+    {0x9E4F, 0x6727},+    {0x9E50, 0x9738},+    {0x9E51, 0x672E},+    {0x9E52, 0x673F},+    {0x9E53, 0x6736},+    {0x9E54, 0x6741},+    {0x9E55, 0x6738},+    {0x9E56, 0x6737},+    {0x9E57, 0x6746},+    {0x9E58, 0x675E},+    {0x9E59, 0x6760},+    {0x9E5A, 0x6759},+    {0x9E5B, 0x6763},+    {0x9E5C, 0x6764},+    {0x9E5D, 0x6789},+    {0x9E5E, 0x6770},+    {0x9E5F, 0x67A9},+    {0x9E60, 0x677C},+    {0x9E61, 0x676A},+    {0x9E62, 0x678C},+    {0x9E63, 0x678B},+    {0x9E64, 0x67A6},+    {0x9E65, 0x67A1},+    {0x9E66, 0x6785},+    {0x9E67, 0x67B7},+    {0x9E68, 0x67EF},+    {0x9E69, 0x67B4},+    {0x9E6A, 0x67EC},+    {0x9E6B, 0x67B3},+    {0x9E6C, 0x67E9},+    {0x9E6D, 0x67B8},+    {0x9E6E, 0x67E4},+    {0x9E6F, 0x67DE},+    {0x9E70, 0x67DD},+    {0x9E71, 0x67E2},+    {0x9E72, 0x67EE},+    {0x9E73, 0x67B9},+    {0x9E74, 0x67CE},+    {0x9E75, 0x67C6},+    {0x9E76, 0x67E7},+    {0x9E77, 0x6A9C},+    {0x9E78, 0x681E},+    {0x9E79, 0x6846},+    {0x9E7A, 0x6829},+    {0x9E7B, 0x6840},+    {0x9E7C, 0x684D},+    {0x9E7D, 0x6832},+    {0x9E7E, 0x684E},+    {0x9E80, 0x68B3},+    {0x9E81, 0x682B},+    {0x9E82, 0x6859},+    {0x9E83, 0x6863},+    {0x9E84, 0x6877},+    {0x9E85, 0x687F},+    {0x9E86, 0x689F},+    {0x9E87, 0x688F},+    {0x9E88, 0x68AD},+    {0x9E89, 0x6894},+    {0x9E8A, 0x689D},+    {0x9E8B, 0x689B},+    {0x9E8C, 0x6883},+    {0x9E8D, 0x6AAE},+    {0x9E8E, 0x68B9},+    {0x9E8F, 0x6874},+    {0x9E90, 0x68B5},+    {0x9E91, 0x68A0},+    {0x9E92, 0x68BA},+    {0x9E93, 0x690F},+    {0x9E94, 0x688D},+    {0x9E95, 0x687E},+    {0x9E96, 0x6901},+    {0x9E97, 0x68CA},+    {0x9E98, 0x6908},+    {0x9E99, 0x68D8},+    {0x9E9A, 0x6922},+    {0x9E9B, 0x6926},+    {0x9E9C, 0x68E1},+    {0x9E9D, 0x690C},+    {0x9E9E, 0x68CD},+    {0x9E9F, 0x68D4},+    {0x9EA0, 0x68E7},+    {0x9EA1, 0x68D5},+    {0x9EA2, 0x6936},+    {0x9EA3, 0x6912},+    {0x9EA4, 0x6904},+    {0x9EA5, 0x68D7},+    {0x9EA6, 0x68E3},+    {0x9EA7, 0x6925},+    {0x9EA8, 0x68F9},+    {0x9EA9, 0x68E0},+    {0x9EAA, 0x68EF},+    {0x9EAB, 0x6928},+    {0x9EAC, 0x692A},+    {0x9EAD, 0x691A},+    {0x9EAE, 0x6923},+    {0x9EAF, 0x6921},+    {0x9EB0, 0x68C6},+    {0x9EB1, 0x6979},+    {0x9EB2, 0x6977},+    {0x9EB3, 0x695C},+    {0x9EB4, 0x6978},+    {0x9EB5, 0x696B},+    {0x9EB6, 0x6954},+    {0x9EB7, 0x697E},+    {0x9EB8, 0x696E},+    {0x9EB9, 0x6939},+    {0x9EBA, 0x6974},+    {0x9EBB, 0x693D},+    {0x9EBC, 0x6959},+    {0x9EBD, 0x6930},+    {0x9EBE, 0x6961},+    {0x9EBF, 0x695E},+    {0x9EC0, 0x695D},+    {0x9EC1, 0x6981},+    {0x9EC2, 0x696A},+    {0x9EC3, 0x69B2},+    {0x9EC4, 0x69AE},+    {0x9EC5, 0x69D0},+    {0x9EC6, 0x69BF},+    {0x9EC7, 0x69C1},+    {0x9EC8, 0x69D3},+    {0x9EC9, 0x69BE},+    {0x9ECA, 0x69CE},+    {0x9ECB, 0x5BE8},+    {0x9ECC, 0x69CA},+    {0x9ECD, 0x69DD},+    {0x9ECE, 0x69BB},+    {0x9ECF, 0x69C3},+    {0x9ED0, 0x69A7},+    {0x9ED1, 0x6A2E},+    {0x9ED2, 0x6991},+    {0x9ED3, 0x69A0},+    {0x9ED4, 0x699C},+    {0x9ED5, 0x6995},+    {0x9ED6, 0x69B4},+    {0x9ED7, 0x69DE},+    {0x9ED8, 0x69E8},+    {0x9ED9, 0x6A02},+    {0x9EDA, 0x6A1B},+    {0x9EDB, 0x69FF},+    {0x9EDC, 0x6B0A},+    {0x9EDD, 0x69F9},+    {0x9EDE, 0x69F2},+    {0x9EDF, 0x69E7},+    {0x9EE0, 0x6A05},+    {0x9EE1, 0x69B1},+    {0x9EE2, 0x6A1E},+    {0x9EE3, 0x69ED},+    {0x9EE4, 0x6A14},+    {0x9EE5, 0x69EB},+    {0x9EE6, 0x6A0A},+    {0x9EE7, 0x6A12},+    {0x9EE8, 0x6AC1},+    {0x9EE9, 0x6A23},+    {0x9EEA, 0x6A13},+    {0x9EEB, 0x6A44},+    {0x9EEC, 0x6A0C},+    {0x9EED, 0x6A72},+    {0x9EEE, 0x6A36},+    {0x9EEF, 0x6A78},+    {0x9EF0, 0x6A47},+    {0x9EF1, 0x6A62},+    {0x9EF2, 0x6A59},+    {0x9EF3, 0x6A66},+    {0x9EF4, 0x6A48},+    {0x9EF5, 0x6A38},+    {0x9EF6, 0x6A22},+    {0x9EF7, 0x6A90},+    {0x9EF8, 0x6A8D},+    {0x9EF9, 0x6AA0},+    {0x9EFA, 0x6A84},+    {0x9EFB, 0x6AA2},+    {0x9EFC, 0x6AA3},+    {0x9F40, 0x6A97},+    {0x9F41, 0x8617},+    {0x9F42, 0x6ABB},+    {0x9F43, 0x6AC3},+    {0x9F44, 0x6AC2},+    {0x9F45, 0x6AB8},+    {0x9F46, 0x6AB3},+    {0x9F47, 0x6AAC},+    {0x9F48, 0x6ADE},+    {0x9F49, 0x6AD1},+    {0x9F4A, 0x6ADF},+    {0x9F4B, 0x6AAA},+    {0x9F4C, 0x6ADA},+    {0x9F4D, 0x6AEA},+    {0x9F4E, 0x6AFB},+    {0x9F4F, 0x6B05},+    {0x9F50, 0x8616},+    {0x9F51, 0x6AFA},+    {0x9F52, 0x6B12},+    {0x9F53, 0x6B16},+    {0x9F54, 0x9B31},+    {0x9F55, 0x6B1F},+    {0x9F56, 0x6B38},+    {0x9F57, 0x6B37},+    {0x9F58, 0x76DC},+    {0x9F59, 0x6B39},+    {0x9F5A, 0x98EE},+    {0x9F5B, 0x6B47},+    {0x9F5C, 0x6B43},+    {0x9F5D, 0x6B49},+    {0x9F5E, 0x6B50},+    {0x9F5F, 0x6B59},+    {0x9F60, 0x6B54},+    {0x9F61, 0x6B5B},+    {0x9F62, 0x6B5F},+    {0x9F63, 0x6B61},+    {0x9F64, 0x6B78},+    {0x9F65, 0x6B79},+    {0x9F66, 0x6B7F},+    {0x9F67, 0x6B80},+    {0x9F68, 0x6B84},+    {0x9F69, 0x6B83},+    {0x9F6A, 0x6B8D},+    {0x9F6B, 0x6B98},+    {0x9F6C, 0x6B95},+    {0x9F6D, 0x6B9E},+    {0x9F6E, 0x6BA4},+    {0x9F6F, 0x6BAA},+    {0x9F70, 0x6BAB},+    {0x9F71, 0x6BAF},+    {0x9F72, 0x6BB2},+    {0x9F73, 0x6BB1},+    {0x9F74, 0x6BB3},+    {0x9F75, 0x6BB7},+    {0x9F76, 0x6BBC},+    {0x9F77, 0x6BC6},+    {0x9F78, 0x6BCB},+    {0x9F79, 0x6BD3},+    {0x9F7A, 0x6BDF},+    {0x9F7B, 0x6BEC},+    {0x9F7C, 0x6BEB},+    {0x9F7D, 0x6BF3},+    {0x9F7E, 0x6BEF},+    {0x9F80, 0x9EBE},+    {0x9F81, 0x6C08},+    {0x9F82, 0x6C13},+    {0x9F83, 0x6C14},+    {0x9F84, 0x6C1B},+    {0x9F85, 0x6C24},+    {0x9F86, 0x6C23},+    {0x9F87, 0x6C5E},+    {0x9F88, 0x6C55},+    {0x9F89, 0x6C62},+    {0x9F8A, 0x6C6A},+    {0x9F8B, 0x6C82},+    {0x9F8C, 0x6C8D},+    {0x9F8D, 0x6C9A},+    {0x9F8E, 0x6C81},+    {0x9F8F, 0x6C9B},+    {0x9F90, 0x6C7E},+    {0x9F91, 0x6C68},+    {0x9F92, 0x6C73},+    {0x9F93, 0x6C92},+    {0x9F94, 0x6C90},+    {0x9F95, 0x6CC4},+    {0x9F96, 0x6CF1},+    {0x9F97, 0x6CD3},+    {0x9F98, 0x6CBD},+    {0x9F99, 0x6CD7},+    {0x9F9A, 0x6CC5},+    {0x9F9B, 0x6CDD},+    {0x9F9C, 0x6CAE},+    {0x9F9D, 0x6CB1},+    {0x9F9E, 0x6CBE},+    {0x9F9F, 0x6CBA},+    {0x9FA0, 0x6CDB},+    {0x9FA1, 0x6CEF},+    {0x9FA2, 0x6CD9},+    {0x9FA3, 0x6CEA},+    {0x9FA4, 0x6D1F},+    {0x9FA5, 0x884D},+    {0x9FA6, 0x6D36},+    {0x9FA7, 0x6D2B},+    {0x9FA8, 0x6D3D},+    {0x9FA9, 0x6D38},+    {0x9FAA, 0x6D19},+    {0x9FAB, 0x6D35},+    {0x9FAC, 0x6D33},+    {0x9FAD, 0x6D12},+    {0x9FAE, 0x6D0C},+    {0x9FAF, 0x6D63},+    {0x9FB0, 0x6D93},+    {0x9FB1, 0x6D64},+    {0x9FB2, 0x6D5A},+    {0x9FB3, 0x6D79},+    {0x9FB4, 0x6D59},+    {0x9FB5, 0x6D8E},+    {0x9FB6, 0x6D95},+    {0x9FB7, 0x6FE4},+    {0x9FB8, 0x6D85},+    {0x9FB9, 0x6DF9},+    {0x9FBA, 0x6E15},+    {0x9FBB, 0x6E0A},+    {0x9FBC, 0x6DB5},+    {0x9FBD, 0x6DC7},+    {0x9FBE, 0x6DE6},+    {0x9FBF, 0x6DB8},+    {0x9FC0, 0x6DC6},+    {0x9FC1, 0x6DEC},+    {0x9FC2, 0x6DDE},+    {0x9FC3, 0x6DCC},+    {0x9FC4, 0x6DE8},+    {0x9FC5, 0x6DD2},+    {0x9FC6, 0x6DC5},+    {0x9FC7, 0x6DFA},+    {0x9FC8, 0x6DD9},+    {0x9FC9, 0x6DE4},+    {0x9FCA, 0x6DD5},+    {0x9FCB, 0x6DEA},+    {0x9FCC, 0x6DEE},+    {0x9FCD, 0x6E2D},+    {0x9FCE, 0x6E6E},+    {0x9FCF, 0x6E2E},+    {0x9FD0, 0x6E19},+    {0x9FD1, 0x6E72},+    {0x9FD2, 0x6E5F},+    {0x9FD3, 0x6E3E},+    {0x9FD4, 0x6E23},+    {0x9FD5, 0x6E6B},+    {0x9FD6, 0x6E2B},+    {0x9FD7, 0x6E76},+    {0x9FD8, 0x6E4D},+    {0x9FD9, 0x6E1F},+    {0x9FDA, 0x6E43},+    {0x9FDB, 0x6E3A},+    {0x9FDC, 0x6E4E},+    {0x9FDD, 0x6E24},+    {0x9FDE, 0x6EFF},+    {0x9FDF, 0x6E1D},+    {0x9FE0, 0x6E38},+    {0x9FE1, 0x6E82},+    {0x9FE2, 0x6EAA},+    {0x9FE3, 0x6E98},+    {0x9FE4, 0x6EC9},+    {0x9FE5, 0x6EB7},+    {0x9FE6, 0x6ED3},+    {0x9FE7, 0x6EBD},+    {0x9FE8, 0x6EAF},+    {0x9FE9, 0x6EC4},+    {0x9FEA, 0x6EB2},+    {0x9FEB, 0x6ED4},+    {0x9FEC, 0x6ED5},+    {0x9FED, 0x6E8F},+    {0x9FEE, 0x6EA5},+    {0x9FEF, 0x6EC2},+    {0x9FF0, 0x6E9F},+    {0x9FF1, 0x6F41},+    {0x9FF2, 0x6F11},+    {0x9FF3, 0x704C},+    {0x9FF4, 0x6EEC},+    {0x9FF5, 0x6EF8},+    {0x9FF6, 0x6EFE},+    {0x9FF7, 0x6F3F},+    {0x9FF8, 0x6EF2},+    {0x9FF9, 0x6F31},+    {0x9FFA, 0x6EEF},+    {0x9FFB, 0x6F32},+    {0x9FFC, 0x6ECC},+    {0xE040, 0x6F3E},+    {0xE041, 0x6F13},+    {0xE042, 0x6EF7},+    {0xE043, 0x6F86},+    {0xE044, 0x6F7A},+    {0xE045, 0x6F78},+    {0xE046, 0x6F81},+    {0xE047, 0x6F80},+    {0xE048, 0x6F6F},+    {0xE049, 0x6F5B},+    {0xE04A, 0x6FF3},+    {0xE04B, 0x6F6D},+    {0xE04C, 0x6F82},+    {0xE04D, 0x6F7C},+    {0xE04E, 0x6F58},+    {0xE04F, 0x6F8E},+    {0xE050, 0x6F91},+    {0xE051, 0x6FC2},+    {0xE052, 0x6F66},+    {0xE053, 0x6FB3},+    {0xE054, 0x6FA3},+    {0xE055, 0x6FA1},+    {0xE056, 0x6FA4},+    {0xE057, 0x6FB9},+    {0xE058, 0x6FC6},+    {0xE059, 0x6FAA},+    {0xE05A, 0x6FDF},+    {0xE05B, 0x6FD5},+    {0xE05C, 0x6FEC},+    {0xE05D, 0x6FD4},+    {0xE05E, 0x6FD8},+    {0xE05F, 0x6FF1},+    {0xE060, 0x6FEE},+    {0xE061, 0x6FDB},+    {0xE062, 0x7009},+    {0xE063, 0x700B},+    {0xE064, 0x6FFA},+    {0xE065, 0x7011},+    {0xE066, 0x7001},+    {0xE067, 0x700F},+    {0xE068, 0x6FFE},+    {0xE069, 0x701B},+    {0xE06A, 0x701A},+    {0xE06B, 0x6F74},+    {0xE06C, 0x701D},+    {0xE06D, 0x7018},+    {0xE06E, 0x701F},+    {0xE06F, 0x7030},+    {0xE070, 0x703E},+    {0xE071, 0x7032},+    {0xE072, 0x7051},+    {0xE073, 0x7063},+    {0xE074, 0x7099},+    {0xE075, 0x7092},+    {0xE076, 0x70AF},+    {0xE077, 0x70F1},+    {0xE078, 0x70AC},+    {0xE079, 0x70B8},+    {0xE07A, 0x70B3},+    {0xE07B, 0x70AE},+    {0xE07C, 0x70DF},+    {0xE07D, 0x70CB},+    {0xE07E, 0x70DD},+    {0xE080, 0x70D9},+    {0xE081, 0x7109},+    {0xE082, 0x70FD},+    {0xE083, 0x711C},+    {0xE084, 0x7119},+    {0xE085, 0x7165},+    {0xE086, 0x7155},+    {0xE087, 0x7188},+    {0xE088, 0x7166},+    {0xE089, 0x7162},+    {0xE08A, 0x714C},+    {0xE08B, 0x7156},+    {0xE08C, 0x716C},+    {0xE08D, 0x718F},+    {0xE08E, 0x71FB},+    {0xE08F, 0x7184},+    {0xE090, 0x7195},+    {0xE091, 0x71A8},+    {0xE092, 0x71AC},+    {0xE093, 0x71D7},+    {0xE094, 0x71B9},+    {0xE095, 0x71BE},+    {0xE096, 0x71D2},+    {0xE097, 0x71C9},+    {0xE098, 0x71D4},+    {0xE099, 0x71CE},+    {0xE09A, 0x71E0},+    {0xE09B, 0x71EC},+    {0xE09C, 0x71E7},+    {0xE09D, 0x71F5},+    {0xE09E, 0x71FC},+    {0xE09F, 0x71F9},+    {0xE0A0, 0x71FF},+    {0xE0A1, 0x720D},+    {0xE0A2, 0x7210},+    {0xE0A3, 0x721B},+    {0xE0A4, 0x7228},+    {0xE0A5, 0x722D},+    {0xE0A6, 0x722C},+    {0xE0A7, 0x7230},+    {0xE0A8, 0x7232},+    {0xE0A9, 0x723B},+    {0xE0AA, 0x723C},+    {0xE0AB, 0x723F},+    {0xE0AC, 0x7240},+    {0xE0AD, 0x7246},+    {0xE0AE, 0x724B},+    {0xE0AF, 0x7258},+    {0xE0B0, 0x7274},+    {0xE0B1, 0x727E},+    {0xE0B2, 0x7282},+    {0xE0B3, 0x7281},+    {0xE0B4, 0x7287},+    {0xE0B5, 0x7292},+    {0xE0B6, 0x7296},+    {0xE0B7, 0x72A2},+    {0xE0B8, 0x72A7},+    {0xE0B9, 0x72B9},+    {0xE0BA, 0x72B2},+    {0xE0BB, 0x72C3},+    {0xE0BC, 0x72C6},+    {0xE0BD, 0x72C4},+    {0xE0BE, 0x72CE},+    {0xE0BF, 0x72D2},+    {0xE0C0, 0x72E2},+    {0xE0C1, 0x72E0},+    {0xE0C2, 0x72E1},+    {0xE0C3, 0x72F9},+    {0xE0C4, 0x72F7},+    {0xE0C5, 0x500F},+    {0xE0C6, 0x7317},+    {0xE0C7, 0x730A},+    {0xE0C8, 0x731C},+    {0xE0C9, 0x7316},+    {0xE0CA, 0x731D},+    {0xE0CB, 0x7334},+    {0xE0CC, 0x732F},+    {0xE0CD, 0x7329},+    {0xE0CE, 0x7325},+    {0xE0CF, 0x733E},+    {0xE0D0, 0x734E},+    {0xE0D1, 0x734F},+    {0xE0D2, 0x9ED8},+    {0xE0D3, 0x7357},+    {0xE0D4, 0x736A},+    {0xE0D5, 0x7368},+    {0xE0D6, 0x7370},+    {0xE0D7, 0x7378},+    {0xE0D8, 0x7375},+    {0xE0D9, 0x737B},+    {0xE0DA, 0x737A},+    {0xE0DB, 0x73C8},+    {0xE0DC, 0x73B3},+    {0xE0DD, 0x73CE},+    {0xE0DE, 0x73BB},+    {0xE0DF, 0x73C0},+    {0xE0E0, 0x73E5},+    {0xE0E1, 0x73EE},+    {0xE0E2, 0x73DE},+    {0xE0E3, 0x74A2},+    {0xE0E4, 0x7405},+    {0xE0E5, 0x746F},+    {0xE0E6, 0x7425},+    {0xE0E7, 0x73F8},+    {0xE0E8, 0x7432},+    {0xE0E9, 0x743A},+    {0xE0EA, 0x7455},+    {0xE0EB, 0x743F},+    {0xE0EC, 0x745F},+    {0xE0ED, 0x7459},+    {0xE0EE, 0x7441},+    {0xE0EF, 0x745C},+    {0xE0F0, 0x7469},+    {0xE0F1, 0x7470},+    {0xE0F2, 0x7463},+    {0xE0F3, 0x746A},+    {0xE0F4, 0x7476},+    {0xE0F5, 0x747E},+    {0xE0F6, 0x748B},+    {0xE0F7, 0x749E},+    {0xE0F8, 0x74A7},+    {0xE0F9, 0x74CA},+    {0xE0FA, 0x74CF},+    {0xE0FB, 0x74D4},+    {0xE0FC, 0x73F1},+    {0xE140, 0x74E0},+    {0xE141, 0x74E3},+    {0xE142, 0x74E7},+    {0xE143, 0x74E9},+    {0xE144, 0x74EE},+    {0xE145, 0x74F2},+    {0xE146, 0x74F0},+    {0xE147, 0x74F1},+    {0xE148, 0x74F8},+    {0xE149, 0x74F7},+    {0xE14A, 0x7504},+    {0xE14B, 0x7503},+    {0xE14C, 0x7505},+    {0xE14D, 0x750C},+    {0xE14E, 0x750E},+    {0xE14F, 0x750D},+    {0xE150, 0x7515},+    {0xE151, 0x7513},+    {0xE152, 0x751E},+    {0xE153, 0x7526},+    {0xE154, 0x752C},+    {0xE155, 0x753C},+    {0xE156, 0x7544},+    {0xE157, 0x754D},+    {0xE158, 0x754A},+    {0xE159, 0x7549},+    {0xE15A, 0x755B},+    {0xE15B, 0x7546},+    {0xE15C, 0x755A},+    {0xE15D, 0x7569},+    {0xE15E, 0x7564},+    {0xE15F, 0x7567},+    {0xE160, 0x756B},+    {0xE161, 0x756D},+    {0xE162, 0x7578},+    {0xE163, 0x7576},+    {0xE164, 0x7586},+    {0xE165, 0x7587},+    {0xE166, 0x7574},+    {0xE167, 0x758A},+    {0xE168, 0x7589},+    {0xE169, 0x7582},+    {0xE16A, 0x7594},+    {0xE16B, 0x759A},+    {0xE16C, 0x759D},+    {0xE16D, 0x75A5},+    {0xE16E, 0x75A3},+    {0xE16F, 0x75C2},+    {0xE170, 0x75B3},+    {0xE171, 0x75C3},+    {0xE172, 0x75B5},+    {0xE173, 0x75BD},+    {0xE174, 0x75B8},+    {0xE175, 0x75BC},+    {0xE176, 0x75B1},+    {0xE177, 0x75CD},+    {0xE178, 0x75CA},+    {0xE179, 0x75D2},+    {0xE17A, 0x75D9},+    {0xE17B, 0x75E3},+    {0xE17C, 0x75DE},+    {0xE17D, 0x75FE},+    {0xE17E, 0x75FF},+    {0xE180, 0x75FC},+    {0xE181, 0x7601},+    {0xE182, 0x75F0},+    {0xE183, 0x75FA},+    {0xE184, 0x75F2},+    {0xE185, 0x75F3},+    {0xE186, 0x760B},+    {0xE187, 0x760D},+    {0xE188, 0x7609},+    {0xE189, 0x761F},+    {0xE18A, 0x7627},+    {0xE18B, 0x7620},+    {0xE18C, 0x7621},+    {0xE18D, 0x7622},+    {0xE18E, 0x7624},+    {0xE18F, 0x7634},+    {0xE190, 0x7630},+    {0xE191, 0x763B},+    {0xE192, 0x7647},+    {0xE193, 0x7648},+    {0xE194, 0x7646},+    {0xE195, 0x765C},+    {0xE196, 0x7658},+    {0xE197, 0x7661},+    {0xE198, 0x7662},+    {0xE199, 0x7668},+    {0xE19A, 0x7669},+    {0xE19B, 0x766A},+    {0xE19C, 0x7667},+    {0xE19D, 0x766C},+    {0xE19E, 0x7670},+    {0xE19F, 0x7672},+    {0xE1A0, 0x7676},+    {0xE1A1, 0x7678},+    {0xE1A2, 0x767C},+    {0xE1A3, 0x7680},+    {0xE1A4, 0x7683},+    {0xE1A5, 0x7688},+    {0xE1A6, 0x768B},+    {0xE1A7, 0x768E},+    {0xE1A8, 0x7696},+    {0xE1A9, 0x7693},+    {0xE1AA, 0x7699},+    {0xE1AB, 0x769A},+    {0xE1AC, 0x76B0},+    {0xE1AD, 0x76B4},+    {0xE1AE, 0x76B8},+    {0xE1AF, 0x76B9},+    {0xE1B0, 0x76BA},+    {0xE1B1, 0x76C2},+    {0xE1B2, 0x76CD},+    {0xE1B3, 0x76D6},+    {0xE1B4, 0x76D2},+    {0xE1B5, 0x76DE},+    {0xE1B6, 0x76E1},+    {0xE1B7, 0x76E5},+    {0xE1B8, 0x76E7},+    {0xE1B9, 0x76EA},+    {0xE1BA, 0x862F},+    {0xE1BB, 0x76FB},+    {0xE1BC, 0x7708},+    {0xE1BD, 0x7707},+    {0xE1BE, 0x7704},+    {0xE1BF, 0x7729},+    {0xE1C0, 0x7724},+    {0xE1C1, 0x771E},+    {0xE1C2, 0x7725},+    {0xE1C3, 0x7726},+    {0xE1C4, 0x771B},+    {0xE1C5, 0x7737},+    {0xE1C6, 0x7738},+    {0xE1C7, 0x7747},+    {0xE1C8, 0x775A},+    {0xE1C9, 0x7768},+    {0xE1CA, 0x776B},+    {0xE1CB, 0x775B},+    {0xE1CC, 0x7765},+    {0xE1CD, 0x777F},+    {0xE1CE, 0x777E},+    {0xE1CF, 0x7779},+    {0xE1D0, 0x778E},+    {0xE1D1, 0x778B},+    {0xE1D2, 0x7791},+    {0xE1D3, 0x77A0},+    {0xE1D4, 0x779E},+    {0xE1D5, 0x77B0},+    {0xE1D6, 0x77B6},+    {0xE1D7, 0x77B9},+    {0xE1D8, 0x77BF},+    {0xE1D9, 0x77BC},+    {0xE1DA, 0x77BD},+    {0xE1DB, 0x77BB},+    {0xE1DC, 0x77C7},+    {0xE1DD, 0x77CD},+    {0xE1DE, 0x77D7},+    {0xE1DF, 0x77DA},+    {0xE1E0, 0x77DC},+    {0xE1E1, 0x77E3},+    {0xE1E2, 0x77EE},+    {0xE1E3, 0x77FC},+    {0xE1E4, 0x780C},+    {0xE1E5, 0x7812},+    {0xE1E6, 0x7926},+    {0xE1E7, 0x7820},+    {0xE1E8, 0x792A},+    {0xE1E9, 0x7845},+    {0xE1EA, 0x788E},+    {0xE1EB, 0x7874},+    {0xE1EC, 0x7886},+    {0xE1ED, 0x787C},+    {0xE1EE, 0x789A},+    {0xE1EF, 0x788C},+    {0xE1F0, 0x78A3},+    {0xE1F1, 0x78B5},+    {0xE1F2, 0x78AA},+    {0xE1F3, 0x78AF},+    {0xE1F4, 0x78D1},+    {0xE1F5, 0x78C6},+    {0xE1F6, 0x78CB},+    {0xE1F7, 0x78D4},+    {0xE1F8, 0x78BE},+    {0xE1F9, 0x78BC},+    {0xE1FA, 0x78C5},+    {0xE1FB, 0x78CA},+    {0xE1FC, 0x78EC},+    {0xE240, 0x78E7},+    {0xE241, 0x78DA},+    {0xE242, 0x78FD},+    {0xE243, 0x78F4},+    {0xE244, 0x7907},+    {0xE245, 0x7912},+    {0xE246, 0x7911},+    {0xE247, 0x7919},+    {0xE248, 0x792C},+    {0xE249, 0x792B},+    {0xE24A, 0x7940},+    {0xE24B, 0x7960},+    {0xE24C, 0x7957},+    {0xE24D, 0x795F},+    {0xE24E, 0x795A},+    {0xE24F, 0x7955},+    {0xE250, 0x7953},+    {0xE251, 0x797A},+    {0xE252, 0x797F},+    {0xE253, 0x798A},+    {0xE254, 0x799D},+    {0xE255, 0x79A7},+    {0xE256, 0x9F4B},+    {0xE257, 0x79AA},+    {0xE258, 0x79AE},+    {0xE259, 0x79B3},+    {0xE25A, 0x79B9},+    {0xE25B, 0x79BA},+    {0xE25C, 0x79C9},+    {0xE25D, 0x79D5},+    {0xE25E, 0x79E7},+    {0xE25F, 0x79EC},+    {0xE260, 0x79E1},+    {0xE261, 0x79E3},+    {0xE262, 0x7A08},+    {0xE263, 0x7A0D},+    {0xE264, 0x7A18},+    {0xE265, 0x7A19},+    {0xE266, 0x7A20},+    {0xE267, 0x7A1F},+    {0xE268, 0x7980},+    {0xE269, 0x7A31},+    {0xE26A, 0x7A3B},+    {0xE26B, 0x7A3E},+    {0xE26C, 0x7A37},+    {0xE26D, 0x7A43},+    {0xE26E, 0x7A57},+    {0xE26F, 0x7A49},+    {0xE270, 0x7A61},+    {0xE271, 0x7A62},+    {0xE272, 0x7A69},+    {0xE273, 0x9F9D},+    {0xE274, 0x7A70},+    {0xE275, 0x7A79},+    {0xE276, 0x7A7D},+    {0xE277, 0x7A88},+    {0xE278, 0x7A97},+    {0xE279, 0x7A95},+    {0xE27A, 0x7A98},+    {0xE27B, 0x7A96},+    {0xE27C, 0x7AA9},+    {0xE27D, 0x7AC8},+    {0xE27E, 0x7AB0},+    {0xE280, 0x7AB6},+    {0xE281, 0x7AC5},+    {0xE282, 0x7AC4},+    {0xE283, 0x7ABF},+    {0xE284, 0x9083},+    {0xE285, 0x7AC7},+    {0xE286, 0x7ACA},+    {0xE287, 0x7ACD},+    {0xE288, 0x7ACF},+    {0xE289, 0x7AD5},+    {0xE28A, 0x7AD3},+    {0xE28B, 0x7AD9},+    {0xE28C, 0x7ADA},+    {0xE28D, 0x7ADD},+    {0xE28E, 0x7AE1},+    {0xE28F, 0x7AE2},+    {0xE290, 0x7AE6},+    {0xE291, 0x7AED},+    {0xE292, 0x7AF0},+    {0xE293, 0x7B02},+    {0xE294, 0x7B0F},+    {0xE295, 0x7B0A},+    {0xE296, 0x7B06},+    {0xE297, 0x7B33},+    {0xE298, 0x7B18},+    {0xE299, 0x7B19},+    {0xE29A, 0x7B1E},+    {0xE29B, 0x7B35},+    {0xE29C, 0x7B28},+    {0xE29D, 0x7B36},+    {0xE29E, 0x7B50},+    {0xE29F, 0x7B7A},+    {0xE2A0, 0x7B04},+    {0xE2A1, 0x7B4D},+    {0xE2A2, 0x7B0B},+    {0xE2A3, 0x7B4C},+    {0xE2A4, 0x7B45},+    {0xE2A5, 0x7B75},+    {0xE2A6, 0x7B65},+    {0xE2A7, 0x7B74},+    {0xE2A8, 0x7B67},+    {0xE2A9, 0x7B70},+    {0xE2AA, 0x7B71},+    {0xE2AB, 0x7B6C},+    {0xE2AC, 0x7B6E},+    {0xE2AD, 0x7B9D},+    {0xE2AE, 0x7B98},+    {0xE2AF, 0x7B9F},+    {0xE2B0, 0x7B8D},+    {0xE2B1, 0x7B9C},+    {0xE2B2, 0x7B9A},+    {0xE2B3, 0x7B8B},+    {0xE2B4, 0x7B92},+    {0xE2B5, 0x7B8F},+    {0xE2B6, 0x7B5D},+    {0xE2B7, 0x7B99},+    {0xE2B8, 0x7BCB},+    {0xE2B9, 0x7BC1},+    {0xE2BA, 0x7BCC},+    {0xE2BB, 0x7BCF},+    {0xE2BC, 0x7BB4},+    {0xE2BD, 0x7BC6},+    {0xE2BE, 0x7BDD},+    {0xE2BF, 0x7BE9},+    {0xE2C0, 0x7C11},+    {0xE2C1, 0x7C14},+    {0xE2C2, 0x7BE6},+    {0xE2C3, 0x7BE5},+    {0xE2C4, 0x7C60},+    {0xE2C5, 0x7C00},+    {0xE2C6, 0x7C07},+    {0xE2C7, 0x7C13},+    {0xE2C8, 0x7BF3},+    {0xE2C9, 0x7BF7},+    {0xE2CA, 0x7C17},+    {0xE2CB, 0x7C0D},+    {0xE2CC, 0x7BF6},+    {0xE2CD, 0x7C23},+    {0xE2CE, 0x7C27},+    {0xE2CF, 0x7C2A},+    {0xE2D0, 0x7C1F},+    {0xE2D1, 0x7C37},+    {0xE2D2, 0x7C2B},+    {0xE2D3, 0x7C3D},+    {0xE2D4, 0x7C4C},+    {0xE2D5, 0x7C43},+    {0xE2D6, 0x7C54},+    {0xE2D7, 0x7C4F},+    {0xE2D8, 0x7C40},+    {0xE2D9, 0x7C50},+    {0xE2DA, 0x7C58},+    {0xE2DB, 0x7C5F},+    {0xE2DC, 0x7C64},+    {0xE2DD, 0x7C56},+    {0xE2DE, 0x7C65},+    {0xE2DF, 0x7C6C},+    {0xE2E0, 0x7C75},+    {0xE2E1, 0x7C83},+    {0xE2E2, 0x7C90},+    {0xE2E3, 0x7CA4},+    {0xE2E4, 0x7CAD},+    {0xE2E5, 0x7CA2},+    {0xE2E6, 0x7CAB},+    {0xE2E7, 0x7CA1},+    {0xE2E8, 0x7CA8},+    {0xE2E9, 0x7CB3},+    {0xE2EA, 0x7CB2},+    {0xE2EB, 0x7CB1},+    {0xE2EC, 0x7CAE},+    {0xE2ED, 0x7CB9},+    {0xE2EE, 0x7CBD},+    {0xE2EF, 0x7CC0},+    {0xE2F0, 0x7CC5},+    {0xE2F1, 0x7CC2},+    {0xE2F2, 0x7CD8},+    {0xE2F3, 0x7CD2},+    {0xE2F4, 0x7CDC},+    {0xE2F5, 0x7CE2},+    {0xE2F6, 0x9B3B},+    {0xE2F7, 0x7CEF},+    {0xE2F8, 0x7CF2},+    {0xE2F9, 0x7CF4},+    {0xE2FA, 0x7CF6},+    {0xE2FB, 0x7CFA},+    {0xE2FC, 0x7D06},+    {0xE340, 0x7D02},+    {0xE341, 0x7D1C},+    {0xE342, 0x7D15},+    {0xE343, 0x7D0A},+    {0xE344, 0x7D45},+    {0xE345, 0x7D4B},+    {0xE346, 0x7D2E},+    {0xE347, 0x7D32},+    {0xE348, 0x7D3F},+    {0xE349, 0x7D35},+    {0xE34A, 0x7D46},+    {0xE34B, 0x7D73},+    {0xE34C, 0x7D56},+    {0xE34D, 0x7D4E},+    {0xE34E, 0x7D72},+    {0xE34F, 0x7D68},+    {0xE350, 0x7D6E},+    {0xE351, 0x7D4F},+    {0xE352, 0x7D63},+    {0xE353, 0x7D93},+    {0xE354, 0x7D89},+    {0xE355, 0x7D5B},+    {0xE356, 0x7D8F},+    {0xE357, 0x7D7D},+    {0xE358, 0x7D9B},+    {0xE359, 0x7DBA},+    {0xE35A, 0x7DAE},+    {0xE35B, 0x7DA3},+    {0xE35C, 0x7DB5},+    {0xE35D, 0x7DC7},+    {0xE35E, 0x7DBD},+    {0xE35F, 0x7DAB},+    {0xE360, 0x7E3D},+    {0xE361, 0x7DA2},+    {0xE362, 0x7DAF},+    {0xE363, 0x7DDC},+    {0xE364, 0x7DB8},+    {0xE365, 0x7D9F},+    {0xE366, 0x7DB0},+    {0xE367, 0x7DD8},+    {0xE368, 0x7DDD},+    {0xE369, 0x7DE4},+    {0xE36A, 0x7DDE},+    {0xE36B, 0x7DFB},+    {0xE36C, 0x7DF2},+    {0xE36D, 0x7DE1},+    {0xE36E, 0x7E05},+    {0xE36F, 0x7E0A},+    {0xE370, 0x7E23},+    {0xE371, 0x7E21},+    {0xE372, 0x7E12},+    {0xE373, 0x7E31},+    {0xE374, 0x7E1F},+    {0xE375, 0x7E09},+    {0xE376, 0x7E0B},+    {0xE377, 0x7E22},+    {0xE378, 0x7E46},+    {0xE379, 0x7E66},+    {0xE37A, 0x7E3B},+    {0xE37B, 0x7E35},+    {0xE37C, 0x7E39},+    {0xE37D, 0x7E43},+    {0xE37E, 0x7E37},+    {0xE380, 0x7E32},+    {0xE381, 0x7E3A},+    {0xE382, 0x7E67},+    {0xE383, 0x7E5D},+    {0xE384, 0x7E56},+    {0xE385, 0x7E5E},+    {0xE386, 0x7E59},+    {0xE387, 0x7E5A},+    {0xE388, 0x7E79},+    {0xE389, 0x7E6A},+    {0xE38A, 0x7E69},+    {0xE38B, 0x7E7C},+    {0xE38C, 0x7E7B},+    {0xE38D, 0x7E83},+    {0xE38E, 0x7DD5},+    {0xE38F, 0x7E7D},+    {0xE390, 0x8FAE},+    {0xE391, 0x7E7F},+    {0xE392, 0x7E88},+    {0xE393, 0x7E89},+    {0xE394, 0x7E8C},+    {0xE395, 0x7E92},+    {0xE396, 0x7E90},+    {0xE397, 0x7E93},+    {0xE398, 0x7E94},+    {0xE399, 0x7E96},+    {0xE39A, 0x7E8E},+    {0xE39B, 0x7E9B},+    {0xE39C, 0x7E9C},+    {0xE39D, 0x7F38},+    {0xE39E, 0x7F3A},+    {0xE39F, 0x7F45},+    {0xE3A0, 0x7F4C},+    {0xE3A1, 0x7F4D},+    {0xE3A2, 0x7F4E},+    {0xE3A3, 0x7F50},+    {0xE3A4, 0x7F51},+    {0xE3A5, 0x7F55},+    {0xE3A6, 0x7F54},+    {0xE3A7, 0x7F58},+    {0xE3A8, 0x7F5F},+    {0xE3A9, 0x7F60},+    {0xE3AA, 0x7F68},+    {0xE3AB, 0x7F69},+    {0xE3AC, 0x7F67},+    {0xE3AD, 0x7F78},+    {0xE3AE, 0x7F82},+    {0xE3AF, 0x7F86},+    {0xE3B0, 0x7F83},+    {0xE3B1, 0x7F88},+    {0xE3B2, 0x7F87},+    {0xE3B3, 0x7F8C},+    {0xE3B4, 0x7F94},+    {0xE3B5, 0x7F9E},+    {0xE3B6, 0x7F9D},+    {0xE3B7, 0x7F9A},+    {0xE3B8, 0x7FA3},+    {0xE3B9, 0x7FAF},+    {0xE3BA, 0x7FB2},+    {0xE3BB, 0x7FB9},+    {0xE3BC, 0x7FAE},+    {0xE3BD, 0x7FB6},+    {0xE3BE, 0x7FB8},+    {0xE3BF, 0x8B71},+    {0xE3C0, 0x7FC5},+    {0xE3C1, 0x7FC6},+    {0xE3C2, 0x7FCA},+    {0xE3C3, 0x7FD5},+    {0xE3C4, 0x7FD4},+    {0xE3C5, 0x7FE1},+    {0xE3C6, 0x7FE6},+    {0xE3C7, 0x7FE9},+    {0xE3C8, 0x7FF3},+    {0xE3C9, 0x7FF9},+    {0xE3CA, 0x98DC},+    {0xE3CB, 0x8006},+    {0xE3CC, 0x8004},+    {0xE3CD, 0x800B},+    {0xE3CE, 0x8012},+    {0xE3CF, 0x8018},+    {0xE3D0, 0x8019},+    {0xE3D1, 0x801C},+    {0xE3D2, 0x8021},+    {0xE3D3, 0x8028},+    {0xE3D4, 0x803F},+    {0xE3D5, 0x803B},+    {0xE3D6, 0x804A},+    {0xE3D7, 0x8046},+    {0xE3D8, 0x8052},+    {0xE3D9, 0x8058},+    {0xE3DA, 0x805A},+    {0xE3DB, 0x805F},+    {0xE3DC, 0x8062},+    {0xE3DD, 0x8068},+    {0xE3DE, 0x8073},+    {0xE3DF, 0x8072},+    {0xE3E0, 0x8070},+    {0xE3E1, 0x8076},+    {0xE3E2, 0x8079},+    {0xE3E3, 0x807D},+    {0xE3E4, 0x807F},+    {0xE3E5, 0x8084},+    {0xE3E6, 0x8086},+    {0xE3E7, 0x8085},+    {0xE3E8, 0x809B},+    {0xE3E9, 0x8093},+    {0xE3EA, 0x809A},+    {0xE3EB, 0x80AD},+    {0xE3EC, 0x5190},+    {0xE3ED, 0x80AC},+    {0xE3EE, 0x80DB},+    {0xE3EF, 0x80E5},+    {0xE3F0, 0x80D9},+    {0xE3F1, 0x80DD},+    {0xE3F2, 0x80C4},+    {0xE3F3, 0x80DA},+    {0xE3F4, 0x80D6},+    {0xE3F5, 0x8109},+    {0xE3F6, 0x80EF},+    {0xE3F7, 0x80F1},+    {0xE3F8, 0x811B},+    {0xE3F9, 0x8129},+    {0xE3FA, 0x8123},+    {0xE3FB, 0x812F},+    {0xE3FC, 0x814B},+    {0xE440, 0x968B},+    {0xE441, 0x8146},+    {0xE442, 0x813E},+    {0xE443, 0x8153},+    {0xE444, 0x8151},+    {0xE445, 0x80FC},+    {0xE446, 0x8171},+    {0xE447, 0x816E},+    {0xE448, 0x8165},+    {0xE449, 0x8166},+    {0xE44A, 0x8174},+    {0xE44B, 0x8183},+    {0xE44C, 0x8188},+    {0xE44D, 0x818A},+    {0xE44E, 0x8180},+    {0xE44F, 0x8182},+    {0xE450, 0x81A0},+    {0xE451, 0x8195},+    {0xE452, 0x81A4},+    {0xE453, 0x81A3},+    {0xE454, 0x815F},+    {0xE455, 0x8193},+    {0xE456, 0x81A9},+    {0xE457, 0x81B0},+    {0xE458, 0x81B5},+    {0xE459, 0x81BE},+    {0xE45A, 0x81B8},+    {0xE45B, 0x81BD},+    {0xE45C, 0x81C0},+    {0xE45D, 0x81C2},+    {0xE45E, 0x81BA},+    {0xE45F, 0x81C9},+    {0xE460, 0x81CD},+    {0xE461, 0x81D1},+    {0xE462, 0x81D9},+    {0xE463, 0x81D8},+    {0xE464, 0x81C8},+    {0xE465, 0x81DA},+    {0xE466, 0x81DF},+    {0xE467, 0x81E0},+    {0xE468, 0x81E7},+    {0xE469, 0x81FA},+    {0xE46A, 0x81FB},+    {0xE46B, 0x81FE},+    {0xE46C, 0x8201},+    {0xE46D, 0x8202},+    {0xE46E, 0x8205},+    {0xE46F, 0x8207},+    {0xE470, 0x820A},+    {0xE471, 0x820D},+    {0xE472, 0x8210},+    {0xE473, 0x8216},+    {0xE474, 0x8229},+    {0xE475, 0x822B},+    {0xE476, 0x8238},+    {0xE477, 0x8233},+    {0xE478, 0x8240},+    {0xE479, 0x8259},+    {0xE47A, 0x8258},+    {0xE47B, 0x825D},+    {0xE47C, 0x825A},+    {0xE47D, 0x825F},+    {0xE47E, 0x8264},+    {0xE480, 0x8262},+    {0xE481, 0x8268},+    {0xE482, 0x826A},+    {0xE483, 0x826B},+    {0xE484, 0x822E},+    {0xE485, 0x8271},+    {0xE486, 0x8277},+    {0xE487, 0x8278},+    {0xE488, 0x827E},+    {0xE489, 0x828D},+    {0xE48A, 0x8292},+    {0xE48B, 0x82AB},+    {0xE48C, 0x829F},+    {0xE48D, 0x82BB},+    {0xE48E, 0x82AC},+    {0xE48F, 0x82E1},+    {0xE490, 0x82E3},+    {0xE491, 0x82DF},+    {0xE492, 0x82D2},+    {0xE493, 0x82F4},+    {0xE494, 0x82F3},+    {0xE495, 0x82FA},+    {0xE496, 0x8393},+    {0xE497, 0x8303},+    {0xE498, 0x82FB},+    {0xE499, 0x82F9},+    {0xE49A, 0x82DE},+    {0xE49B, 0x8306},+    {0xE49C, 0x82DC},+    {0xE49D, 0x8309},+    {0xE49E, 0x82D9},+    {0xE49F, 0x8335},+    {0xE4A0, 0x8334},+    {0xE4A1, 0x8316},+    {0xE4A2, 0x8332},+    {0xE4A3, 0x8331},+    {0xE4A4, 0x8340},+    {0xE4A5, 0x8339},+    {0xE4A6, 0x8350},+    {0xE4A7, 0x8345},+    {0xE4A8, 0x832F},+    {0xE4A9, 0x832B},+    {0xE4AA, 0x8317},+    {0xE4AB, 0x8318},+    {0xE4AC, 0x8385},+    {0xE4AD, 0x839A},+    {0xE4AE, 0x83AA},+    {0xE4AF, 0x839F},+    {0xE4B0, 0x83A2},+    {0xE4B1, 0x8396},+    {0xE4B2, 0x8323},+    {0xE4B3, 0x838E},+    {0xE4B4, 0x8387},+    {0xE4B5, 0x838A},+    {0xE4B6, 0x837C},+    {0xE4B7, 0x83B5},+    {0xE4B8, 0x8373},+    {0xE4B9, 0x8375},+    {0xE4BA, 0x83A0},+    {0xE4BB, 0x8389},+    {0xE4BC, 0x83A8},+    {0xE4BD, 0x83F4},+    {0xE4BE, 0x8413},+    {0xE4BF, 0x83EB},+    {0xE4C0, 0x83CE},+    {0xE4C1, 0x83FD},+    {0xE4C2, 0x8403},+    {0xE4C3, 0x83D8},+    {0xE4C4, 0x840B},+    {0xE4C5, 0x83C1},+    {0xE4C6, 0x83F7},+    {0xE4C7, 0x8407},+    {0xE4C8, 0x83E0},+    {0xE4C9, 0x83F2},+    {0xE4CA, 0x840D},+    {0xE4CB, 0x8422},+    {0xE4CC, 0x8420},+    {0xE4CD, 0x83BD},+    {0xE4CE, 0x8438},+    {0xE4CF, 0x8506},+    {0xE4D0, 0x83FB},+    {0xE4D1, 0x846D},+    {0xE4D2, 0x842A},+    {0xE4D3, 0x843C},+    {0xE4D4, 0x855A},+    {0xE4D5, 0x8484},+    {0xE4D6, 0x8477},+    {0xE4D7, 0x846B},+    {0xE4D8, 0x84AD},+    {0xE4D9, 0x846E},+    {0xE4DA, 0x8482},+    {0xE4DB, 0x8469},+    {0xE4DC, 0x8446},+    {0xE4DD, 0x842C},+    {0xE4DE, 0x846F},+    {0xE4DF, 0x8479},+    {0xE4E0, 0x8435},+    {0xE4E1, 0x84CA},+    {0xE4E2, 0x8462},+    {0xE4E3, 0x84B9},+    {0xE4E4, 0x84BF},+    {0xE4E5, 0x849F},+    {0xE4E6, 0x84D9},+    {0xE4E7, 0x84CD},+    {0xE4E8, 0x84BB},+    {0xE4E9, 0x84DA},+    {0xE4EA, 0x84D0},+    {0xE4EB, 0x84C1},+    {0xE4EC, 0x84C6},+    {0xE4ED, 0x84D6},+    {0xE4EE, 0x84A1},+    {0xE4EF, 0x8521},+    {0xE4F0, 0x84FF},+    {0xE4F1, 0x84F4},+    {0xE4F2, 0x8517},+    {0xE4F3, 0x8518},+    {0xE4F4, 0x852C},+    {0xE4F5, 0x851F},+    {0xE4F6, 0x8515},+    {0xE4F7, 0x8514},+    {0xE4F8, 0x84FC},+    {0xE4F9, 0x8540},+    {0xE4FA, 0x8563},+    {0xE4FB, 0x8558},+    {0xE4FC, 0x8548},+    {0xE540, 0x8541},+    {0xE541, 0x8602},+    {0xE542, 0x854B},+    {0xE543, 0x8555},+    {0xE544, 0x8580},+    {0xE545, 0x85A4},+    {0xE546, 0x8588},+    {0xE547, 0x8591},+    {0xE548, 0x858A},+    {0xE549, 0x85A8},+    {0xE54A, 0x856D},+    {0xE54B, 0x8594},+    {0xE54C, 0x859B},+    {0xE54D, 0x85EA},+    {0xE54E, 0x8587},+    {0xE54F, 0x859C},+    {0xE550, 0x8577},+    {0xE551, 0x857E},+    {0xE552, 0x8590},+    {0xE553, 0x85C9},+    {0xE554, 0x85BA},+    {0xE555, 0x85CF},+    {0xE556, 0x85B9},+    {0xE557, 0x85D0},+    {0xE558, 0x85D5},+    {0xE559, 0x85DD},+    {0xE55A, 0x85E5},+    {0xE55B, 0x85DC},+    {0xE55C, 0x85F9},+    {0xE55D, 0x860A},+    {0xE55E, 0x8613},+    {0xE55F, 0x860B},+    {0xE560, 0x85FE},+    {0xE561, 0x85FA},+    {0xE562, 0x8606},+    {0xE563, 0x8622},+    {0xE564, 0x861A},+    {0xE565, 0x8630},+    {0xE566, 0x863F},+    {0xE567, 0x864D},+    {0xE568, 0x4E55},+    {0xE569, 0x8654},+    {0xE56A, 0x865F},+    {0xE56B, 0x8667},+    {0xE56C, 0x8671},+    {0xE56D, 0x8693},+    {0xE56E, 0x86A3},+    {0xE56F, 0x86A9},+    {0xE570, 0x86AA},+    {0xE571, 0x868B},+    {0xE572, 0x868C},+    {0xE573, 0x86B6},+    {0xE574, 0x86AF},+    {0xE575, 0x86C4},+    {0xE576, 0x86C6},+    {0xE577, 0x86B0},+    {0xE578, 0x86C9},+    {0xE579, 0x8823},+    {0xE57A, 0x86AB},+    {0xE57B, 0x86D4},+    {0xE57C, 0x86DE},+    {0xE57D, 0x86E9},+    {0xE57E, 0x86EC},+    {0xE580, 0x86DF},+    {0xE581, 0x86DB},+    {0xE582, 0x86EF},+    {0xE583, 0x8712},+    {0xE584, 0x8706},+    {0xE585, 0x8708},+    {0xE586, 0x8700},+    {0xE587, 0x8703},+    {0xE588, 0x86FB},+    {0xE589, 0x8711},+    {0xE58A, 0x8709},+    {0xE58B, 0x870D},+    {0xE58C, 0x86F9},+    {0xE58D, 0x870A},+    {0xE58E, 0x8734},+    {0xE58F, 0x873F},+    {0xE590, 0x8737},+    {0xE591, 0x873B},+    {0xE592, 0x8725},+    {0xE593, 0x8729},+    {0xE594, 0x871A},+    {0xE595, 0x8760},+    {0xE596, 0x875F},+    {0xE597, 0x8778},+    {0xE598, 0x874C},+    {0xE599, 0x874E},+    {0xE59A, 0x8774},+    {0xE59B, 0x8757},+    {0xE59C, 0x8768},+    {0xE59D, 0x876E},+    {0xE59E, 0x8759},+    {0xE59F, 0x8753},+    {0xE5A0, 0x8763},+    {0xE5A1, 0x876A},+    {0xE5A2, 0x8805},+    {0xE5A3, 0x87A2},+    {0xE5A4, 0x879F},+    {0xE5A5, 0x8782},+    {0xE5A6, 0x87AF},+    {0xE5A7, 0x87CB},+    {0xE5A8, 0x87BD},+    {0xE5A9, 0x87C0},+    {0xE5AA, 0x87D0},+    {0xE5AB, 0x96D6},+    {0xE5AC, 0x87AB},+    {0xE5AD, 0x87C4},+    {0xE5AE, 0x87B3},+    {0xE5AF, 0x87C7},+    {0xE5B0, 0x87C6},+    {0xE5B1, 0x87BB},+    {0xE5B2, 0x87EF},+    {0xE5B3, 0x87F2},+    {0xE5B4, 0x87E0},+    {0xE5B5, 0x880F},+    {0xE5B6, 0x880D},+    {0xE5B7, 0x87FE},+    {0xE5B8, 0x87F6},+    {0xE5B9, 0x87F7},+    {0xE5BA, 0x880E},+    {0xE5BB, 0x87D2},+    {0xE5BC, 0x8811},+    {0xE5BD, 0x8816},+    {0xE5BE, 0x8815},+    {0xE5BF, 0x8822},+    {0xE5C0, 0x8821},+    {0xE5C1, 0x8831},+    {0xE5C2, 0x8836},+    {0xE5C3, 0x8839},+    {0xE5C4, 0x8827},+    {0xE5C5, 0x883B},+    {0xE5C6, 0x8844},+    {0xE5C7, 0x8842},+    {0xE5C8, 0x8852},+    {0xE5C9, 0x8859},+    {0xE5CA, 0x885E},+    {0xE5CB, 0x8862},+    {0xE5CC, 0x886B},+    {0xE5CD, 0x8881},+    {0xE5CE, 0x887E},+    {0xE5CF, 0x889E},+    {0xE5D0, 0x8875},+    {0xE5D1, 0x887D},+    {0xE5D2, 0x88B5},+    {0xE5D3, 0x8872},+    {0xE5D4, 0x8882},+    {0xE5D5, 0x8897},+    {0xE5D6, 0x8892},+    {0xE5D7, 0x88AE},+    {0xE5D8, 0x8899},+    {0xE5D9, 0x88A2},+    {0xE5DA, 0x888D},+    {0xE5DB, 0x88A4},+    {0xE5DC, 0x88B0},+    {0xE5DD, 0x88BF},+    {0xE5DE, 0x88B1},+    {0xE5DF, 0x88C3},+    {0xE5E0, 0x88C4},+    {0xE5E1, 0x88D4},+    {0xE5E2, 0x88D8},+    {0xE5E3, 0x88D9},+    {0xE5E4, 0x88DD},+    {0xE5E5, 0x88F9},+    {0xE5E6, 0x8902},+    {0xE5E7, 0x88FC},+    {0xE5E8, 0x88F4},+    {0xE5E9, 0x88E8},+    {0xE5EA, 0x88F2},+    {0xE5EB, 0x8904},+    {0xE5EC, 0x890C},+    {0xE5ED, 0x890A},+    {0xE5EE, 0x8913},+    {0xE5EF, 0x8943},+    {0xE5F0, 0x891E},+    {0xE5F1, 0x8925},+    {0xE5F2, 0x892A},+    {0xE5F3, 0x892B},+    {0xE5F4, 0x8941},+    {0xE5F5, 0x8944},+    {0xE5F6, 0x893B},+    {0xE5F7, 0x8936},+    {0xE5F8, 0x8938},+    {0xE5F9, 0x894C},+    {0xE5FA, 0x891D},+    {0xE5FB, 0x8960},+    {0xE5FC, 0x895E},+    {0xE640, 0x8966},+    {0xE641, 0x8964},+    {0xE642, 0x896D},+    {0xE643, 0x896A},+    {0xE644, 0x896F},+    {0xE645, 0x8974},+    {0xE646, 0x8977},+    {0xE647, 0x897E},+    {0xE648, 0x8983},+    {0xE649, 0x8988},+    {0xE64A, 0x898A},+    {0xE64B, 0x8993},+    {0xE64C, 0x8998},+    {0xE64D, 0x89A1},+    {0xE64E, 0x89A9},+    {0xE64F, 0x89A6},+    {0xE650, 0x89AC},+    {0xE651, 0x89AF},+    {0xE652, 0x89B2},+    {0xE653, 0x89BA},+    {0xE654, 0x89BD},+    {0xE655, 0x89BF},+    {0xE656, 0x89C0},+    {0xE657, 0x89DA},+    {0xE658, 0x89DC},+    {0xE659, 0x89DD},+    {0xE65A, 0x89E7},+    {0xE65B, 0x89F4},+    {0xE65C, 0x89F8},+    {0xE65D, 0x8A03},+    {0xE65E, 0x8A16},+    {0xE65F, 0x8A10},+    {0xE660, 0x8A0C},+    {0xE661, 0x8A1B},+    {0xE662, 0x8A1D},+    {0xE663, 0x8A25},+    {0xE664, 0x8A36},+    {0xE665, 0x8A41},+    {0xE666, 0x8A5B},+    {0xE667, 0x8A52},+    {0xE668, 0x8A46},+    {0xE669, 0x8A48},+    {0xE66A, 0x8A7C},+    {0xE66B, 0x8A6D},+    {0xE66C, 0x8A6C},+    {0xE66D, 0x8A62},+    {0xE66E, 0x8A85},+    {0xE66F, 0x8A82},+    {0xE670, 0x8A84},+    {0xE671, 0x8AA8},+    {0xE672, 0x8AA1},+    {0xE673, 0x8A91},+    {0xE674, 0x8AA5},+    {0xE675, 0x8AA6},+    {0xE676, 0x8A9A},+    {0xE677, 0x8AA3},+    {0xE678, 0x8AC4},+    {0xE679, 0x8ACD},+    {0xE67A, 0x8AC2},+    {0xE67B, 0x8ADA},+    {0xE67C, 0x8AEB},+    {0xE67D, 0x8AF3},+    {0xE67E, 0x8AE7},+    {0xE680, 0x8AE4},+    {0xE681, 0x8AF1},+    {0xE682, 0x8B14},+    {0xE683, 0x8AE0},+    {0xE684, 0x8AE2},+    {0xE685, 0x8AF7},+    {0xE686, 0x8ADE},+    {0xE687, 0x8ADB},+    {0xE688, 0x8B0C},+    {0xE689, 0x8B07},+    {0xE68A, 0x8B1A},+    {0xE68B, 0x8AE1},+    {0xE68C, 0x8B16},+    {0xE68D, 0x8B10},+    {0xE68E, 0x8B17},+    {0xE68F, 0x8B20},+    {0xE690, 0x8B33},+    {0xE691, 0x97AB},+    {0xE692, 0x8B26},+    {0xE693, 0x8B2B},+    {0xE694, 0x8B3E},+    {0xE695, 0x8B28},+    {0xE696, 0x8B41},+    {0xE697, 0x8B4C},+    {0xE698, 0x8B4F},+    {0xE699, 0x8B4E},+    {0xE69A, 0x8B49},+    {0xE69B, 0x8B56},+    {0xE69C, 0x8B5B},+    {0xE69D, 0x8B5A},+    {0xE69E, 0x8B6B},+    {0xE69F, 0x8B5F},+    {0xE6A0, 0x8B6C},+    {0xE6A1, 0x8B6F},+    {0xE6A2, 0x8B74},+    {0xE6A3, 0x8B7D},+    {0xE6A4, 0x8B80},+    {0xE6A5, 0x8B8C},+    {0xE6A6, 0x8B8E},+    {0xE6A7, 0x8B92},+    {0xE6A8, 0x8B93},+    {0xE6A9, 0x8B96},+    {0xE6AA, 0x8B99},+    {0xE6AB, 0x8B9A},+    {0xE6AC, 0x8C3A},+    {0xE6AD, 0x8C41},+    {0xE6AE, 0x8C3F},+    {0xE6AF, 0x8C48},+    {0xE6B0, 0x8C4C},+    {0xE6B1, 0x8C4E},+    {0xE6B2, 0x8C50},+    {0xE6B3, 0x8C55},+    {0xE6B4, 0x8C62},+    {0xE6B5, 0x8C6C},+    {0xE6B6, 0x8C78},+    {0xE6B7, 0x8C7A},+    {0xE6B8, 0x8C82},+    {0xE6B9, 0x8C89},+    {0xE6BA, 0x8C85},+    {0xE6BB, 0x8C8A},+    {0xE6BC, 0x8C8D},+    {0xE6BD, 0x8C8E},+    {0xE6BE, 0x8C94},+    {0xE6BF, 0x8C7C},+    {0xE6C0, 0x8C98},+    {0xE6C1, 0x621D},+    {0xE6C2, 0x8CAD},+    {0xE6C3, 0x8CAA},+    {0xE6C4, 0x8CBD},+    {0xE6C5, 0x8CB2},+    {0xE6C6, 0x8CB3},+    {0xE6C7, 0x8CAE},+    {0xE6C8, 0x8CB6},+    {0xE6C9, 0x8CC8},+    {0xE6CA, 0x8CC1},+    {0xE6CB, 0x8CE4},+    {0xE6CC, 0x8CE3},+    {0xE6CD, 0x8CDA},+    {0xE6CE, 0x8CFD},+    {0xE6CF, 0x8CFA},+    {0xE6D0, 0x8CFB},+    {0xE6D1, 0x8D04},+    {0xE6D2, 0x8D05},+    {0xE6D3, 0x8D0A},+    {0xE6D4, 0x8D07},+    {0xE6D5, 0x8D0F},+    {0xE6D6, 0x8D0D},+    {0xE6D7, 0x8D10},+    {0xE6D8, 0x9F4E},+    {0xE6D9, 0x8D13},+    {0xE6DA, 0x8CCD},+    {0xE6DB, 0x8D14},+    {0xE6DC, 0x8D16},+    {0xE6DD, 0x8D67},+    {0xE6DE, 0x8D6D},+    {0xE6DF, 0x8D71},+    {0xE6E0, 0x8D73},+    {0xE6E1, 0x8D81},+    {0xE6E2, 0x8D99},+    {0xE6E3, 0x8DC2},+    {0xE6E4, 0x8DBE},+    {0xE6E5, 0x8DBA},+    {0xE6E6, 0x8DCF},+    {0xE6E7, 0x8DDA},+    {0xE6E8, 0x8DD6},+    {0xE6E9, 0x8DCC},+    {0xE6EA, 0x8DDB},+    {0xE6EB, 0x8DCB},+    {0xE6EC, 0x8DEA},+    {0xE6ED, 0x8DEB},+    {0xE6EE, 0x8DDF},+    {0xE6EF, 0x8DE3},+    {0xE6F0, 0x8DFC},+    {0xE6F1, 0x8E08},+    {0xE6F2, 0x8E09},+    {0xE6F3, 0x8DFF},+    {0xE6F4, 0x8E1D},+    {0xE6F5, 0x8E1E},+    {0xE6F6, 0x8E10},+    {0xE6F7, 0x8E1F},+    {0xE6F8, 0x8E42},+    {0xE6F9, 0x8E35},+    {0xE6FA, 0x8E30},+    {0xE6FB, 0x8E34},+    {0xE6FC, 0x8E4A},+    {0xE740, 0x8E47},+    {0xE741, 0x8E49},+    {0xE742, 0x8E4C},+    {0xE743, 0x8E50},+    {0xE744, 0x8E48},+    {0xE745, 0x8E59},+    {0xE746, 0x8E64},+    {0xE747, 0x8E60},+    {0xE748, 0x8E2A},+    {0xE749, 0x8E63},+    {0xE74A, 0x8E55},+    {0xE74B, 0x8E76},+    {0xE74C, 0x8E72},+    {0xE74D, 0x8E7C},+    {0xE74E, 0x8E81},+    {0xE74F, 0x8E87},+    {0xE750, 0x8E85},+    {0xE751, 0x8E84},+    {0xE752, 0x8E8B},+    {0xE753, 0x8E8A},+    {0xE754, 0x8E93},+    {0xE755, 0x8E91},+    {0xE756, 0x8E94},+    {0xE757, 0x8E99},+    {0xE758, 0x8EAA},+    {0xE759, 0x8EA1},+    {0xE75A, 0x8EAC},+    {0xE75B, 0x8EB0},+    {0xE75C, 0x8EC6},+    {0xE75D, 0x8EB1},+    {0xE75E, 0x8EBE},+    {0xE75F, 0x8EC5},+    {0xE760, 0x8EC8},+    {0xE761, 0x8ECB},+    {0xE762, 0x8EDB},+    {0xE763, 0x8EE3},+    {0xE764, 0x8EFC},+    {0xE765, 0x8EFB},+    {0xE766, 0x8EEB},+    {0xE767, 0x8EFE},+    {0xE768, 0x8F0A},+    {0xE769, 0x8F05},+    {0xE76A, 0x8F15},+    {0xE76B, 0x8F12},+    {0xE76C, 0x8F19},+    {0xE76D, 0x8F13},+    {0xE76E, 0x8F1C},+    {0xE76F, 0x8F1F},+    {0xE770, 0x8F1B},+    {0xE771, 0x8F0C},+    {0xE772, 0x8F26},+    {0xE773, 0x8F33},+    {0xE774, 0x8F3B},+    {0xE775, 0x8F39},+    {0xE776, 0x8F45},+    {0xE777, 0x8F42},+    {0xE778, 0x8F3E},+    {0xE779, 0x8F4C},+    {0xE77A, 0x8F49},+    {0xE77B, 0x8F46},+    {0xE77C, 0x8F4E},+    {0xE77D, 0x8F57},+    {0xE77E, 0x8F5C},+    {0xE780, 0x8F62},+    {0xE781, 0x8F63},+    {0xE782, 0x8F64},+    {0xE783, 0x8F9C},+    {0xE784, 0x8F9F},+    {0xE785, 0x8FA3},+    {0xE786, 0x8FAD},+    {0xE787, 0x8FAF},+    {0xE788, 0x8FB7},+    {0xE789, 0x8FDA},+    {0xE78A, 0x8FE5},+    {0xE78B, 0x8FE2},+    {0xE78C, 0x8FEA},+    {0xE78D, 0x8FEF},+    {0xE78E, 0x9087},+    {0xE78F, 0x8FF4},+    {0xE790, 0x9005},+    {0xE791, 0x8FF9},+    {0xE792, 0x8FFA},+    {0xE793, 0x9011},+    {0xE794, 0x9015},+    {0xE795, 0x9021},+    {0xE796, 0x900D},+    {0xE797, 0x901E},+    {0xE798, 0x9016},+    {0xE799, 0x900B},+    {0xE79A, 0x9027},+    {0xE79B, 0x9036},+    {0xE79C, 0x9035},+    {0xE79D, 0x9039},+    {0xE79E, 0x8FF8},+    {0xE79F, 0x904F},+    {0xE7A0, 0x9050},+    {0xE7A1, 0x9051},+    {0xE7A2, 0x9052},+    {0xE7A3, 0x900E},+    {0xE7A4, 0x9049},+    {0xE7A5, 0x903E},+    {0xE7A6, 0x9056},+    {0xE7A7, 0x9058},+    {0xE7A8, 0x905E},+    {0xE7A9, 0x9068},+    {0xE7AA, 0x906F},+    {0xE7AB, 0x9076},+    {0xE7AC, 0x96A8},+    {0xE7AD, 0x9072},+    {0xE7AE, 0x9082},+    {0xE7AF, 0x907D},+    {0xE7B0, 0x9081},+    {0xE7B1, 0x9080},+    {0xE7B2, 0x908A},+    {0xE7B3, 0x9089},+    {0xE7B4, 0x908F},+    {0xE7B5, 0x90A8},+    {0xE7B6, 0x90AF},+    {0xE7B7, 0x90B1},+    {0xE7B8, 0x90B5},+    {0xE7B9, 0x90E2},+    {0xE7BA, 0x90E4},+    {0xE7BB, 0x6248},+    {0xE7BC, 0x90DB},+    {0xE7BD, 0x9102},+    {0xE7BE, 0x9112},+    {0xE7BF, 0x9119},+    {0xE7C0, 0x9132},+    {0xE7C1, 0x9130},+    {0xE7C2, 0x914A},+    {0xE7C3, 0x9156},+    {0xE7C4, 0x9158},+    {0xE7C5, 0x9163},+    {0xE7C6, 0x9165},+    {0xE7C7, 0x9169},+    {0xE7C8, 0x9173},+    {0xE7C9, 0x9172},+    {0xE7CA, 0x918B},+    {0xE7CB, 0x9189},+    {0xE7CC, 0x9182},+    {0xE7CD, 0x91A2},+    {0xE7CE, 0x91AB},+    {0xE7CF, 0x91AF},+    {0xE7D0, 0x91AA},+    {0xE7D1, 0x91B5},+    {0xE7D2, 0x91B4},+    {0xE7D3, 0x91BA},+    {0xE7D4, 0x91C0},+    {0xE7D5, 0x91C1},+    {0xE7D6, 0x91C9},+    {0xE7D7, 0x91CB},+    {0xE7D8, 0x91D0},+    {0xE7D9, 0x91D6},+    {0xE7DA, 0x91DF},+    {0xE7DB, 0x91E1},+    {0xE7DC, 0x91DB},+    {0xE7DD, 0x91FC},+    {0xE7DE, 0x91F5},+    {0xE7DF, 0x91F6},+    {0xE7E0, 0x921E},+    {0xE7E1, 0x91FF},+    {0xE7E2, 0x9214},+    {0xE7E3, 0x922C},+    {0xE7E4, 0x9215},+    {0xE7E5, 0x9211},+    {0xE7E6, 0x925E},+    {0xE7E7, 0x9257},+    {0xE7E8, 0x9245},+    {0xE7E9, 0x9249},+    {0xE7EA, 0x9264},+    {0xE7EB, 0x9248},+    {0xE7EC, 0x9295},+    {0xE7ED, 0x923F},+    {0xE7EE, 0x924B},+    {0xE7EF, 0x9250},+    {0xE7F0, 0x929C},+    {0xE7F1, 0x9296},+    {0xE7F2, 0x9293},+    {0xE7F3, 0x929B},+    {0xE7F4, 0x925A},+    {0xE7F5, 0x92CF},+    {0xE7F6, 0x92B9},+    {0xE7F7, 0x92B7},+    {0xE7F8, 0x92E9},+    {0xE7F9, 0x930F},+    {0xE7FA, 0x92FA},+    {0xE7FB, 0x9344},+    {0xE7FC, 0x932E},+    {0xE840, 0x9319},+    {0xE841, 0x9322},+    {0xE842, 0x931A},+    {0xE843, 0x9323},+    {0xE844, 0x933A},+    {0xE845, 0x9335},+    {0xE846, 0x933B},+    {0xE847, 0x935C},+    {0xE848, 0x9360},+    {0xE849, 0x937C},+    {0xE84A, 0x936E},+    {0xE84B, 0x9356},+    {0xE84C, 0x93B0},+    {0xE84D, 0x93AC},+    {0xE84E, 0x93AD},+    {0xE84F, 0x9394},+    {0xE850, 0x93B9},+    {0xE851, 0x93D6},+    {0xE852, 0x93D7},+    {0xE853, 0x93E8},+    {0xE854, 0x93E5},+    {0xE855, 0x93D8},+    {0xE856, 0x93C3},+    {0xE857, 0x93DD},+    {0xE858, 0x93D0},+    {0xE859, 0x93C8},+    {0xE85A, 0x93E4},+    {0xE85B, 0x941A},+    {0xE85C, 0x9414},+    {0xE85D, 0x9413},+    {0xE85E, 0x9403},+    {0xE85F, 0x9407},+    {0xE860, 0x9410},+    {0xE861, 0x9436},+    {0xE862, 0x942B},+    {0xE863, 0x9435},+    {0xE864, 0x9421},+    {0xE865, 0x943A},+    {0xE866, 0x9441},+    {0xE867, 0x9452},+    {0xE868, 0x9444},+    {0xE869, 0x945B},+    {0xE86A, 0x9460},+    {0xE86B, 0x9462},+    {0xE86C, 0x945E},+    {0xE86D, 0x946A},+    {0xE86E, 0x9229},+    {0xE86F, 0x9470},+    {0xE870, 0x9475},+    {0xE871, 0x9477},+    {0xE872, 0x947D},+    {0xE873, 0x945A},+    {0xE874, 0x947C},+    {0xE875, 0x947E},+    {0xE876, 0x9481},+    {0xE877, 0x947F},+    {0xE878, 0x9582},+    {0xE879, 0x9587},+    {0xE87A, 0x958A},+    {0xE87B, 0x9594},+    {0xE87C, 0x9596},+    {0xE87D, 0x9598},+    {0xE87E, 0x9599},+    {0xE880, 0x95A0},+    {0xE881, 0x95A8},+    {0xE882, 0x95A7},+    {0xE883, 0x95AD},+    {0xE884, 0x95BC},+    {0xE885, 0x95BB},+    {0xE886, 0x95B9},+    {0xE887, 0x95BE},+    {0xE888, 0x95CA},+    {0xE889, 0x6FF6},+    {0xE88A, 0x95C3},+    {0xE88B, 0x95CD},+    {0xE88C, 0x95CC},+    {0xE88D, 0x95D5},+    {0xE88E, 0x95D4},+    {0xE88F, 0x95D6},+    {0xE890, 0x95DC},+    {0xE891, 0x95E1},+    {0xE892, 0x95E5},+    {0xE893, 0x95E2},+    {0xE894, 0x9621},+    {0xE895, 0x9628},+    {0xE896, 0x962E},+    {0xE897, 0x962F},+    {0xE898, 0x9642},+    {0xE899, 0x964C},+    {0xE89A, 0x964F},+    {0xE89B, 0x964B},+    {0xE89C, 0x9677},+    {0xE89D, 0x965C},+    {0xE89E, 0x965E},+    {0xE89F, 0x965D},+    {0xE8A0, 0x965F},+    {0xE8A1, 0x9666},+    {0xE8A2, 0x9672},+    {0xE8A3, 0x966C},+    {0xE8A4, 0x968D},+    {0xE8A5, 0x9698},+    {0xE8A6, 0x9695},+    {0xE8A7, 0x9697},+    {0xE8A8, 0x96AA},+    {0xE8A9, 0x96A7},+    {0xE8AA, 0x96B1},+    {0xE8AB, 0x96B2},+    {0xE8AC, 0x96B0},+    {0xE8AD, 0x96B4},+    {0xE8AE, 0x96B6},+    {0xE8AF, 0x96B8},+    {0xE8B0, 0x96B9},+    {0xE8B1, 0x96CE},+    {0xE8B2, 0x96CB},+    {0xE8B3, 0x96C9},+    {0xE8B4, 0x96CD},+    {0xE8B5, 0x894D},+    {0xE8B6, 0x96DC},+    {0xE8B7, 0x970D},+    {0xE8B8, 0x96D5},+    {0xE8B9, 0x96F9},+    {0xE8BA, 0x9704},+    {0xE8BB, 0x9706},+    {0xE8BC, 0x9708},+    {0xE8BD, 0x9713},+    {0xE8BE, 0x970E},+    {0xE8BF, 0x9711},+    {0xE8C0, 0x970F},+    {0xE8C1, 0x9716},+    {0xE8C2, 0x9719},+    {0xE8C3, 0x9724},+    {0xE8C4, 0x972A},+    {0xE8C5, 0x9730},+    {0xE8C6, 0x9739},+    {0xE8C7, 0x973D},+    {0xE8C8, 0x973E},+    {0xE8C9, 0x9744},+    {0xE8CA, 0x9746},+    {0xE8CB, 0x9748},+    {0xE8CC, 0x9742},+    {0xE8CD, 0x9749},+    {0xE8CE, 0x975C},+    {0xE8CF, 0x9760},+    {0xE8D0, 0x9764},+    {0xE8D1, 0x9766},+    {0xE8D2, 0x9768},+    {0xE8D3, 0x52D2},+    {0xE8D4, 0x976B},+    {0xE8D5, 0x9771},+    {0xE8D6, 0x9779},+    {0xE8D7, 0x9785},+    {0xE8D8, 0x977C},+    {0xE8D9, 0x9781},+    {0xE8DA, 0x977A},+    {0xE8DB, 0x9786},+    {0xE8DC, 0x978B},+    {0xE8DD, 0x978F},+    {0xE8DE, 0x9790},+    {0xE8DF, 0x979C},+    {0xE8E0, 0x97A8},+    {0xE8E1, 0x97A6},+    {0xE8E2, 0x97A3},+    {0xE8E3, 0x97B3},+    {0xE8E4, 0x97B4},+    {0xE8E5, 0x97C3},+    {0xE8E6, 0x97C6},+    {0xE8E7, 0x97C8},+    {0xE8E8, 0x97CB},+    {0xE8E9, 0x97DC},+    {0xE8EA, 0x97ED},+    {0xE8EB, 0x9F4F},+    {0xE8EC, 0x97F2},+    {0xE8ED, 0x7ADF},+    {0xE8EE, 0x97F6},+    {0xE8EF, 0x97F5},+    {0xE8F0, 0x980F},+    {0xE8F1, 0x980C},+    {0xE8F2, 0x9838},+    {0xE8F3, 0x9824},+    {0xE8F4, 0x9821},+    {0xE8F5, 0x9837},+    {0xE8F6, 0x983D},+    {0xE8F7, 0x9846},+    {0xE8F8, 0x984F},+    {0xE8F9, 0x984B},+    {0xE8FA, 0x986B},+    {0xE8FB, 0x986F},+    {0xE8FC, 0x9870},+    {0xE940, 0x9871},+    {0xE941, 0x9874},+    {0xE942, 0x9873},+    {0xE943, 0x98AA},+    {0xE944, 0x98AF},+    {0xE945, 0x98B1},+    {0xE946, 0x98B6},+    {0xE947, 0x98C4},+    {0xE948, 0x98C3},+    {0xE949, 0x98C6},+    {0xE94A, 0x98E9},+    {0xE94B, 0x98EB},+    {0xE94C, 0x9903},+    {0xE94D, 0x9909},+    {0xE94E, 0x9912},+    {0xE94F, 0x9914},+    {0xE950, 0x9918},+    {0xE951, 0x9921},+    {0xE952, 0x991D},+    {0xE953, 0x991E},+    {0xE954, 0x9924},+    {0xE955, 0x9920},+    {0xE956, 0x992C},+    {0xE957, 0x992E},+    {0xE958, 0x993D},+    {0xE959, 0x993E},+    {0xE95A, 0x9942},+    {0xE95B, 0x9949},+    {0xE95C, 0x9945},+    {0xE95D, 0x9950},+    {0xE95E, 0x994B},+    {0xE95F, 0x9951},+    {0xE960, 0x9952},+    {0xE961, 0x994C},+    {0xE962, 0x9955},+    {0xE963, 0x9997},+    {0xE964, 0x9998},+    {0xE965, 0x99A5},+    {0xE966, 0x99AD},+    {0xE967, 0x99AE},+    {0xE968, 0x99BC},+    {0xE969, 0x99DF},+    {0xE96A, 0x99DB},+    {0xE96B, 0x99DD},+    {0xE96C, 0x99D8},+    {0xE96D, 0x99D1},+    {0xE96E, 0x99ED},+    {0xE96F, 0x99EE},+    {0xE970, 0x99F1},+    {0xE971, 0x99F2},+    {0xE972, 0x99FB},+    {0xE973, 0x99F8},+    {0xE974, 0x9A01},+    {0xE975, 0x9A0F},+    {0xE976, 0x9A05},+    {0xE977, 0x99E2},+    {0xE978, 0x9A19},+    {0xE979, 0x9A2B},+    {0xE97A, 0x9A37},+    {0xE97B, 0x9A45},+    {0xE97C, 0x9A42},+    {0xE97D, 0x9A40},+    {0xE97E, 0x9A43},+    {0xE980, 0x9A3E},+    {0xE981, 0x9A55},+    {0xE982, 0x9A4D},+    {0xE983, 0x9A5B},+    {0xE984, 0x9A57},+    {0xE985, 0x9A5F},+    {0xE986, 0x9A62},+    {0xE987, 0x9A65},+    {0xE988, 0x9A64},+    {0xE989, 0x9A69},+    {0xE98A, 0x9A6B},+    {0xE98B, 0x9A6A},+    {0xE98C, 0x9AAD},+    {0xE98D, 0x9AB0},+    {0xE98E, 0x9ABC},+    {0xE98F, 0x9AC0},+    {0xE990, 0x9ACF},+    {0xE991, 0x9AD1},+    {0xE992, 0x9AD3},+    {0xE993, 0x9AD4},+    {0xE994, 0x9ADE},+    {0xE995, 0x9ADF},+    {0xE996, 0x9AE2},+    {0xE997, 0x9AE3},+    {0xE998, 0x9AE6},+    {0xE999, 0x9AEF},+    {0xE99A, 0x9AEB},+    {0xE99B, 0x9AEE},+    {0xE99C, 0x9AF4},+    {0xE99D, 0x9AF1},+    {0xE99E, 0x9AF7},+    {0xE99F, 0x9AFB},+    {0xE9A0, 0x9B06},+    {0xE9A1, 0x9B18},+    {0xE9A2, 0x9B1A},+    {0xE9A3, 0x9B1F},+    {0xE9A4, 0x9B22},+    {0xE9A5, 0x9B23},+    {0xE9A6, 0x9B25},+    {0xE9A7, 0x9B27},+    {0xE9A8, 0x9B28},+    {0xE9A9, 0x9B29},+    {0xE9AA, 0x9B2A},+    {0xE9AB, 0x9B2E},+    {0xE9AC, 0x9B2F},+    {0xE9AD, 0x9B32},+    {0xE9AE, 0x9B44},+    {0xE9AF, 0x9B43},+    {0xE9B0, 0x9B4F},+    {0xE9B1, 0x9B4D},+    {0xE9B2, 0x9B4E},+    {0xE9B3, 0x9B51},+    {0xE9B4, 0x9B58},+    {0xE9B5, 0x9B74},+    {0xE9B6, 0x9B93},+    {0xE9B7, 0x9B83},+    {0xE9B8, 0x9B91},+    {0xE9B9, 0x9B96},+    {0xE9BA, 0x9B97},+    {0xE9BB, 0x9B9F},+    {0xE9BC, 0x9BA0},+    {0xE9BD, 0x9BA8},+    {0xE9BE, 0x9BB4},+    {0xE9BF, 0x9BC0},+    {0xE9C0, 0x9BCA},+    {0xE9C1, 0x9BB9},+    {0xE9C2, 0x9BC6},+    {0xE9C3, 0x9BCF},+    {0xE9C4, 0x9BD1},+    {0xE9C5, 0x9BD2},+    {0xE9C6, 0x9BE3},+    {0xE9C7, 0x9BE2},+    {0xE9C8, 0x9BE4},+    {0xE9C9, 0x9BD4},+    {0xE9CA, 0x9BE1},+    {0xE9CB, 0x9C3A},+    {0xE9CC, 0x9BF2},+    {0xE9CD, 0x9BF1},+    {0xE9CE, 0x9BF0},+    {0xE9CF, 0x9C15},+    {0xE9D0, 0x9C14},+    {0xE9D1, 0x9C09},+    {0xE9D2, 0x9C13},+    {0xE9D3, 0x9C0C},+    {0xE9D4, 0x9C06},+    {0xE9D5, 0x9C08},+    {0xE9D6, 0x9C12},+    {0xE9D7, 0x9C0A},+    {0xE9D8, 0x9C04},+    {0xE9D9, 0x9C2E},+    {0xE9DA, 0x9C1B},+    {0xE9DB, 0x9C25},+    {0xE9DC, 0x9C24},+    {0xE9DD, 0x9C21},+    {0xE9DE, 0x9C30},+    {0xE9DF, 0x9C47},+    {0xE9E0, 0x9C32},+    {0xE9E1, 0x9C46},+    {0xE9E2, 0x9C3E},+    {0xE9E3, 0x9C5A},+    {0xE9E4, 0x9C60},+    {0xE9E5, 0x9C67},+    {0xE9E6, 0x9C76},+    {0xE9E7, 0x9C78},+    {0xE9E8, 0x9CE7},+    {0xE9E9, 0x9CEC},+    {0xE9EA, 0x9CF0},+    {0xE9EB, 0x9D09},+    {0xE9EC, 0x9D08},+    {0xE9ED, 0x9CEB},+    {0xE9EE, 0x9D03},+    {0xE9EF, 0x9D06},+    {0xE9F0, 0x9D2A},+    {0xE9F1, 0x9D26},+    {0xE9F2, 0x9DAF},+    {0xE9F3, 0x9D23},+    {0xE9F4, 0x9D1F},+    {0xE9F5, 0x9D44},+    {0xE9F6, 0x9D15},+    {0xE9F7, 0x9D12},+    {0xE9F8, 0x9D41},+    {0xE9F9, 0x9D3F},+    {0xE9FA, 0x9D3E},+    {0xE9FB, 0x9D46},+    {0xE9FC, 0x9D48},+    {0xEA40, 0x9D5D},+    {0xEA41, 0x9D5E},+    {0xEA42, 0x9D64},+    {0xEA43, 0x9D51},+    {0xEA44, 0x9D50},+    {0xEA45, 0x9D59},+    {0xEA46, 0x9D72},+    {0xEA47, 0x9D89},+    {0xEA48, 0x9D87},+    {0xEA49, 0x9DAB},+    {0xEA4A, 0x9D6F},+    {0xEA4B, 0x9D7A},+    {0xEA4C, 0x9D9A},+    {0xEA4D, 0x9DA4},+    {0xEA4E, 0x9DA9},+    {0xEA4F, 0x9DB2},+    {0xEA50, 0x9DC4},+    {0xEA51, 0x9DC1},+    {0xEA52, 0x9DBB},+    {0xEA53, 0x9DB8},+    {0xEA54, 0x9DBA},+    {0xEA55, 0x9DC6},+    {0xEA56, 0x9DCF},+    {0xEA57, 0x9DC2},+    {0xEA58, 0x9DD9},+    {0xEA59, 0x9DD3},+    {0xEA5A, 0x9DF8},+    {0xEA5B, 0x9DE6},+    {0xEA5C, 0x9DED},+    {0xEA5D, 0x9DEF},+    {0xEA5E, 0x9DFD},+    {0xEA5F, 0x9E1A},+    {0xEA60, 0x9E1B},+    {0xEA61, 0x9E1E},+    {0xEA62, 0x9E75},+    {0xEA63, 0x9E79},+    {0xEA64, 0x9E7D},+    {0xEA65, 0x9E81},+    {0xEA66, 0x9E88},+    {0xEA67, 0x9E8B},+    {0xEA68, 0x9E8C},+    {0xEA69, 0x9E92},+    {0xEA6A, 0x9E95},+    {0xEA6B, 0x9E91},+    {0xEA6C, 0x9E9D},+    {0xEA6D, 0x9EA5},+    {0xEA6E, 0x9EA9},+    {0xEA6F, 0x9EB8},+    {0xEA70, 0x9EAA},+    {0xEA71, 0x9EAD},+    {0xEA72, 0x9761},+    {0xEA73, 0x9ECC},+    {0xEA74, 0x9ECE},+    {0xEA75, 0x9ECF},+    {0xEA76, 0x9ED0},+    {0xEA77, 0x9ED4},+    {0xEA78, 0x9EDC},+    {0xEA79, 0x9EDE},+    {0xEA7A, 0x9EDD},+    {0xEA7B, 0x9EE0},+    {0xEA7C, 0x9EE5},+    {0xEA7D, 0x9EE8},+    {0xEA7E, 0x9EEF},+    {0xEA80, 0x9EF4},+    {0xEA81, 0x9EF6},+    {0xEA82, 0x9EF7},+    {0xEA83, 0x9EF9},+    {0xEA84, 0x9EFB},+    {0xEA85, 0x9EFC},+    {0xEA86, 0x9EFD},+    {0xEA87, 0x9F07},+    {0xEA88, 0x9F08},+    {0xEA89, 0x76B7},+    {0xEA8A, 0x9F15},+    {0xEA8B, 0x9F21},+    {0xEA8C, 0x9F2C},+    {0xEA8D, 0x9F3E},+    {0xEA8E, 0x9F4A},+    {0xEA8F, 0x9F52},+    {0xEA90, 0x9F54},+    {0xEA91, 0x9F63},+    {0xEA92, 0x9F5F},+    {0xEA93, 0x9F60},+    {0xEA94, 0x9F61},+    {0xEA95, 0x9F66},+    {0xEA96, 0x9F67},+    {0xEA97, 0x9F6C},+    {0xEA98, 0x9F6A},+    {0xEA99, 0x9F77},+    {0xEA9A, 0x9F72},+    {0xEA9B, 0x9F76},+    {0xEA9C, 0x9F95},+    {0xEA9D, 0x9F9C},+    {0xEA9E, 0x9FA0},+    {0xEA9F, 0x582F},+    {0xEAA0, 0x69C7},+    {0xEAA1, 0x9059},+    {0xEAA2, 0x7464},+    {0xEAA3, 0x51DC},+    {0xEAA4, 0x7199},+    {0xED40, 0x7E8A},+    {0xED41, 0x891C},+    {0xED42, 0x9348},+    {0xED43, 0x9288},+    {0xED44, 0x84DC},+    {0xED45, 0x4FC9},+    {0xED46, 0x70BB},+    {0xED47, 0x6631},+    {0xED48, 0x68C8},+    {0xED49, 0x92F9},+    {0xED4A, 0x66FB},+    {0xED4B, 0x5F45},+    {0xED4C, 0x4E28},+    {0xED4D, 0x4EE1},+    {0xED4E, 0x4EFC},+    {0xED4F, 0x4F00},+    {0xED50, 0x4F03},+    {0xED51, 0x4F39},+    {0xED52, 0x4F56},+    {0xED53, 0x4F92},+    {0xED54, 0x4F8A},+    {0xED55, 0x4F9A},+    {0xED56, 0x4F94},+    {0xED57, 0x4FCD},+    {0xED58, 0x5040},+    {0xED59, 0x5022},+    {0xED5A, 0x4FFF},+    {0xED5B, 0x501E},+    {0xED5C, 0x5046},+    {0xED5D, 0x5070},+    {0xED5E, 0x5042},+    {0xED5F, 0x5094},+    {0xED60, 0x50F4},+    {0xED61, 0x50D8},+    {0xED62, 0x514A},+    {0xED63, 0x5164},+    {0xED64, 0x519D},+    {0xED65, 0x51BE},+    {0xED66, 0x51EC},+    {0xED67, 0x5215},+    {0xED68, 0x529C},+    {0xED69, 0x52A6},+    {0xED6A, 0x52C0},+    {0xED6B, 0x52DB},+    {0xED6C, 0x5300},+    {0xED6D, 0x5307},+    {0xED6E, 0x5324},+    {0xED6F, 0x5372},+    {0xED70, 0x5393},+    {0xED71, 0x53B2},+    {0xED72, 0x53DD},+    {0xED73, 0xFA0E},+    {0xED74, 0x549C},+    {0xED75, 0x548A},+    {0xED76, 0x54A9},+    {0xED77, 0x54FF},+    {0xED78, 0x5586},+    {0xED79, 0x5759},+    {0xED7A, 0x5765},+    {0xED7B, 0x57AC},+    {0xED7C, 0x57C8},+    {0xED7D, 0x57C7},+    {0xED7E, 0xFA0F},+    {0xED80, 0xFA10},+    {0xED81, 0x589E},+    {0xED82, 0x58B2},+    {0xED83, 0x590B},+    {0xED84, 0x5953},+    {0xED85, 0x595B},+    {0xED86, 0x595D},+    {0xED87, 0x5963},+    {0xED88, 0x59A4},+    {0xED89, 0x59BA},+    {0xED8A, 0x5B56},+    {0xED8B, 0x5BC0},+    {0xED8C, 0x752F},+    {0xED8D, 0x5BD8},+    {0xED8E, 0x5BEC},+    {0xED8F, 0x5C1E},+    {0xED90, 0x5CA6},+    {0xED91, 0x5CBA},+    {0xED92, 0x5CF5},+    {0xED93, 0x5D27},+    {0xED94, 0x5D53},+    {0xED95, 0xFA11},+    {0xED96, 0x5D42},+    {0xED97, 0x5D6D},+    {0xED98, 0x5DB8},+    {0xED99, 0x5DB9},+    {0xED9A, 0x5DD0},+    {0xED9B, 0x5F21},+    {0xED9C, 0x5F34},+    {0xED9D, 0x5F67},+    {0xED9E, 0x5FB7},+    {0xED9F, 0x5FDE},+    {0xEDA0, 0x605D},+    {0xEDA1, 0x6085},+    {0xEDA2, 0x608A},+    {0xEDA3, 0x60DE},+    {0xEDA4, 0x60D5},+    {0xEDA5, 0x6120},+    {0xEDA6, 0x60F2},+    {0xEDA7, 0x6111},+    {0xEDA8, 0x6137},+    {0xEDA9, 0x6130},+    {0xEDAA, 0x6198},+    {0xEDAB, 0x6213},+    {0xEDAC, 0x62A6},+    {0xEDAD, 0x63F5},+    {0xEDAE, 0x6460},+    {0xEDAF, 0x649D},+    {0xEDB0, 0x64CE},+    {0xEDB1, 0x654E},+    {0xEDB2, 0x6600},+    {0xEDB3, 0x6615},+    {0xEDB4, 0x663B},+    {0xEDB5, 0x6609},+    {0xEDB6, 0x662E},+    {0xEDB7, 0x661E},+    {0xEDB8, 0x6624},+    {0xEDB9, 0x6665},+    {0xEDBA, 0x6657},+    {0xEDBB, 0x6659},+    {0xEDBC, 0xFA12},+    {0xEDBD, 0x6673},+    {0xEDBE, 0x6699},+    {0xEDBF, 0x66A0},+    {0xEDC0, 0x66B2},+    {0xEDC1, 0x66BF},+    {0xEDC2, 0x66FA},+    {0xEDC3, 0x670E},+    {0xEDC4, 0xF929},+    {0xEDC5, 0x6766},+    {0xEDC6, 0x67BB},+    {0xEDC7, 0x6852},+    {0xEDC8, 0x67C0},+    {0xEDC9, 0x6801},+    {0xEDCA, 0x6844},+    {0xEDCB, 0x68CF},+    {0xEDCC, 0xFA13},+    {0xEDCD, 0x6968},+    {0xEDCE, 0xFA14},+    {0xEDCF, 0x6998},+    {0xEDD0, 0x69E2},+    {0xEDD1, 0x6A30},+    {0xEDD2, 0x6A6B},+    {0xEDD3, 0x6A46},+    {0xEDD4, 0x6A73},+    {0xEDD5, 0x6A7E},+    {0xEDD6, 0x6AE2},+    {0xEDD7, 0x6AE4},+    {0xEDD8, 0x6BD6},+    {0xEDD9, 0x6C3F},+    {0xEDDA, 0x6C5C},+    {0xEDDB, 0x6C86},+    {0xEDDC, 0x6C6F},+    {0xEDDD, 0x6CDA},+    {0xEDDE, 0x6D04},+    {0xEDDF, 0x6D87},+    {0xEDE0, 0x6D6F},+    {0xEDE1, 0x6D96},+    {0xEDE2, 0x6DAC},+    {0xEDE3, 0x6DCF},+    {0xEDE4, 0x6DF8},+    {0xEDE5, 0x6DF2},+    {0xEDE6, 0x6DFC},+    {0xEDE7, 0x6E39},+    {0xEDE8, 0x6E5C},+    {0xEDE9, 0x6E27},+    {0xEDEA, 0x6E3C},+    {0xEDEB, 0x6EBF},+    {0xEDEC, 0x6F88},+    {0xEDED, 0x6FB5},+    {0xEDEE, 0x6FF5},+    {0xEDEF, 0x7005},+    {0xEDF0, 0x7007},+    {0xEDF1, 0x7028},+    {0xEDF2, 0x7085},+    {0xEDF3, 0x70AB},+    {0xEDF4, 0x710F},+    {0xEDF5, 0x7104},+    {0xEDF6, 0x715C},+    {0xEDF7, 0x7146},+    {0xEDF8, 0x7147},+    {0xEDF9, 0xFA15},+    {0xEDFA, 0x71C1},+    {0xEDFB, 0x71FE},+    {0xEDFC, 0x72B1},+    {0xEE40, 0x72BE},+    {0xEE41, 0x7324},+    {0xEE42, 0xFA16},+    {0xEE43, 0x7377},+    {0xEE44, 0x73BD},+    {0xEE45, 0x73C9},+    {0xEE46, 0x73D6},+    {0xEE47, 0x73E3},+    {0xEE48, 0x73D2},+    {0xEE49, 0x7407},+    {0xEE4A, 0x73F5},+    {0xEE4B, 0x7426},+    {0xEE4C, 0x742A},+    {0xEE4D, 0x7429},+    {0xEE4E, 0x742E},+    {0xEE4F, 0x7462},+    {0xEE50, 0x7489},+    {0xEE51, 0x749F},+    {0xEE52, 0x7501},+    {0xEE53, 0x756F},+    {0xEE54, 0x7682},+    {0xEE55, 0x769C},+    {0xEE56, 0x769E},+    {0xEE57, 0x769B},+    {0xEE58, 0x76A6},+    {0xEE59, 0xFA17},+    {0xEE5A, 0x7746},+    {0xEE5B, 0x52AF},+    {0xEE5C, 0x7821},+    {0xEE5D, 0x784E},+    {0xEE5E, 0x7864},+    {0xEE5F, 0x787A},+    {0xEE60, 0x7930},+    {0xEE61, 0xFA18},+    {0xEE62, 0xFA19},+    {0xEE63, 0xFA1A},+    {0xEE64, 0x7994},+    {0xEE65, 0xFA1B},+    {0xEE66, 0x799B},+    {0xEE67, 0x7AD1},+    {0xEE68, 0x7AE7},+    {0xEE69, 0xFA1C},+    {0xEE6A, 0x7AEB},+    {0xEE6B, 0x7B9E},+    {0xEE6C, 0xFA1D},+    {0xEE6D, 0x7D48},+    {0xEE6E, 0x7D5C},+    {0xEE6F, 0x7DB7},+    {0xEE70, 0x7DA0},+    {0xEE71, 0x7DD6},+    {0xEE72, 0x7E52},+    {0xEE73, 0x7F47},+    {0xEE74, 0x7FA1},+    {0xEE75, 0xFA1E},+    {0xEE76, 0x8301},+    {0xEE77, 0x8362},+    {0xEE78, 0x837F},+    {0xEE79, 0x83C7},+    {0xEE7A, 0x83F6},+    {0xEE7B, 0x8448},+    {0xEE7C, 0x84B4},+    {0xEE7D, 0x8553},+    {0xEE7E, 0x8559},+    {0xEE80, 0x856B},+    {0xEE81, 0xFA1F},+    {0xEE82, 0x85B0},+    {0xEE83, 0xFA20},+    {0xEE84, 0xFA21},+    {0xEE85, 0x8807},+    {0xEE86, 0x88F5},+    {0xEE87, 0x8A12},+    {0xEE88, 0x8A37},+    {0xEE89, 0x8A79},+    {0xEE8A, 0x8AA7},+    {0xEE8B, 0x8ABE},+    {0xEE8C, 0x8ADF},+    {0xEE8D, 0xFA22},+    {0xEE8E, 0x8AF6},+    {0xEE8F, 0x8B53},+    {0xEE90, 0x8B7F},+    {0xEE91, 0x8CF0},+    {0xEE92, 0x8CF4},+    {0xEE93, 0x8D12},+    {0xEE94, 0x8D76},+    {0xEE95, 0xFA23},+    {0xEE96, 0x8ECF},+    {0xEE97, 0xFA24},+    {0xEE98, 0xFA25},+    {0xEE99, 0x9067},+    {0xEE9A, 0x90DE},+    {0xEE9B, 0xFA26},+    {0xEE9C, 0x9115},+    {0xEE9D, 0x9127},+    {0xEE9E, 0x91DA},+    {0xEE9F, 0x91D7},+    {0xEEA0, 0x91DE},+    {0xEEA1, 0x91ED},+    {0xEEA2, 0x91EE},+    {0xEEA3, 0x91E4},+    {0xEEA4, 0x91E5},+    {0xEEA5, 0x9206},+    {0xEEA6, 0x9210},+    {0xEEA7, 0x920A},+    {0xEEA8, 0x923A},+    {0xEEA9, 0x9240},+    {0xEEAA, 0x923C},+    {0xEEAB, 0x924E},+    {0xEEAC, 0x9259},+    {0xEEAD, 0x9251},+    {0xEEAE, 0x9239},+    {0xEEAF, 0x9267},+    {0xEEB0, 0x92A7},+    {0xEEB1, 0x9277},+    {0xEEB2, 0x9278},+    {0xEEB3, 0x92E7},+    {0xEEB4, 0x92D7},+    {0xEEB5, 0x92D9},+    {0xEEB6, 0x92D0},+    {0xEEB7, 0xFA27},+    {0xEEB8, 0x92D5},+    {0xEEB9, 0x92E0},+    {0xEEBA, 0x92D3},+    {0xEEBB, 0x9325},+    {0xEEBC, 0x9321},+    {0xEEBD, 0x92FB},+    {0xEEBE, 0xFA28},+    {0xEEBF, 0x931E},+    {0xEEC0, 0x92FF},+    {0xEEC1, 0x931D},+    {0xEEC2, 0x9302},+    {0xEEC3, 0x9370},+    {0xEEC4, 0x9357},+    {0xEEC5, 0x93A4},+    {0xEEC6, 0x93C6},+    {0xEEC7, 0x93DE},+    {0xEEC8, 0x93F8},+    {0xEEC9, 0x9431},+    {0xEECA, 0x9445},+    {0xEECB, 0x9448},+    {0xEECC, 0x9592},+    {0xEECD, 0xF9DC},+    {0xEECE, 0xFA29},+    {0xEECF, 0x969D},+    {0xEED0, 0x96AF},+    {0xEED1, 0x9733},+    {0xEED2, 0x973B},+    {0xEED3, 0x9743},+    {0xEED4, 0x974D},+    {0xEED5, 0x974F},+    {0xEED6, 0x9751},+    {0xEED7, 0x9755},+    {0xEED8, 0x9857},+    {0xEED9, 0x9865},+    {0xEEDA, 0xFA2A},+    {0xEEDB, 0xFA2B},+    {0xEEDC, 0x9927},+    {0xEEDD, 0xFA2C},+    {0xEEDE, 0x999E},+    {0xEEDF, 0x9A4E},+    {0xEEE0, 0x9AD9},+    {0xEEE1, 0x9ADC},+    {0xEEE2, 0x9B75},+    {0xEEE3, 0x9B72},+    {0xEEE4, 0x9B8F},+    {0xEEE5, 0x9BB1},+    {0xEEE6, 0x9BBB},+    {0xEEE7, 0x9C00},+    {0xEEE8, 0x9D70},+    {0xEEE9, 0x9D6B},+    {0xEEEA, 0xFA2D},+    {0xEEEB, 0x9E19},+    {0xEEEC, 0x9ED1},+    {0xEEEF, 0x2170},+    {0xEEF0, 0x2171},+    {0xEEF1, 0x2172},+    {0xEEF2, 0x2173},+    {0xEEF3, 0x2174},+    {0xEEF4, 0x2175},+    {0xEEF5, 0x2176},+    {0xEEF6, 0x2177},+    {0xEEF7, 0x2178},+    {0xEEF8, 0x2179},+    {0xEEF9, 0xFFE2},+    {0xEEFA, 0xFFE4},+    {0xEEFB, 0xFF07},+    {0xEEFC, 0xFF02},+    {0xFA40, 0x2170},+    {0xFA41, 0x2171},+    {0xFA42, 0x2172},+    {0xFA43, 0x2173},+    {0xFA44, 0x2174},+    {0xFA45, 0x2175},+    {0xFA46, 0x2176},+    {0xFA47, 0x2177},+    {0xFA48, 0x2178},+    {0xFA49, 0x2179},+    {0xFA4A, 0x2160},+    {0xFA4B, 0x2161},+    {0xFA4C, 0x2162},+    {0xFA4D, 0x2163},+    {0xFA4E, 0x2164},+    {0xFA4F, 0x2165},+    {0xFA50, 0x2166},+    {0xFA51, 0x2167},+    {0xFA52, 0x2168},+    {0xFA53, 0x2169},+    {0xFA54, 0xFFE2},+    {0xFA55, 0xFFE4},+    {0xFA56, 0xFF07},+    {0xFA57, 0xFF02},+    {0xFA58, 0x3231},+    {0xFA59, 0x2116},+    {0xFA5A, 0x2121},+    {0xFA5B, 0x2235},+    {0xFA5C, 0x7E8A},+    {0xFA5D, 0x891C},+    {0xFA5E, 0x9348},+    {0xFA5F, 0x9288},+    {0xFA60, 0x84DC},+    {0xFA61, 0x4FC9},+    {0xFA62, 0x70BB},+    {0xFA63, 0x6631},+    {0xFA64, 0x68C8},+    {0xFA65, 0x92F9},+    {0xFA66, 0x66FB},+    {0xFA67, 0x5F45},+    {0xFA68, 0x4E28},+    {0xFA69, 0x4EE1},+    {0xFA6A, 0x4EFC},+    {0xFA6B, 0x4F00},+    {0xFA6C, 0x4F03},+    {0xFA6D, 0x4F39},+    {0xFA6E, 0x4F56},+    {0xFA6F, 0x4F92},+    {0xFA70, 0x4F8A},+    {0xFA71, 0x4F9A},+    {0xFA72, 0x4F94},+    {0xFA73, 0x4FCD},+    {0xFA74, 0x5040},+    {0xFA75, 0x5022},+    {0xFA76, 0x4FFF},+    {0xFA77, 0x501E},+    {0xFA78, 0x5046},+    {0xFA79, 0x5070},+    {0xFA7A, 0x5042},+    {0xFA7B, 0x5094},+    {0xFA7C, 0x50F4},+    {0xFA7D, 0x50D8},+    {0xFA7E, 0x514A},+    {0xFA80, 0x5164},+    {0xFA81, 0x519D},+    {0xFA82, 0x51BE},+    {0xFA83, 0x51EC},+    {0xFA84, 0x5215},+    {0xFA85, 0x529C},+    {0xFA86, 0x52A6},+    {0xFA87, 0x52C0},+    {0xFA88, 0x52DB},+    {0xFA89, 0x5300},+    {0xFA8A, 0x5307},+    {0xFA8B, 0x5324},+    {0xFA8C, 0x5372},+    {0xFA8D, 0x5393},+    {0xFA8E, 0x53B2},+    {0xFA8F, 0x53DD},+    {0xFA90, 0xFA0E},+    {0xFA91, 0x549C},+    {0xFA92, 0x548A},+    {0xFA93, 0x54A9},+    {0xFA94, 0x54FF},+    {0xFA95, 0x5586},+    {0xFA96, 0x5759},+    {0xFA97, 0x5765},+    {0xFA98, 0x57AC},+    {0xFA99, 0x57C8},+    {0xFA9A, 0x57C7},+    {0xFA9B, 0xFA0F},+    {0xFA9C, 0xFA10},+    {0xFA9D, 0x589E},+    {0xFA9E, 0x58B2},+    {0xFA9F, 0x590B},+    {0xFAA0, 0x5953},+    {0xFAA1, 0x595B},+    {0xFAA2, 0x595D},+    {0xFAA3, 0x5963},+    {0xFAA4, 0x59A4},+    {0xFAA5, 0x59BA},+    {0xFAA6, 0x5B56},+    {0xFAA7, 0x5BC0},+    {0xFAA8, 0x752F},+    {0xFAA9, 0x5BD8},+    {0xFAAA, 0x5BEC},+    {0xFAAB, 0x5C1E},+    {0xFAAC, 0x5CA6},+    {0xFAAD, 0x5CBA},+    {0xFAAE, 0x5CF5},+    {0xFAAF, 0x5D27},+    {0xFAB0, 0x5D53},+    {0xFAB1, 0xFA11},+    {0xFAB2, 0x5D42},+    {0xFAB3, 0x5D6D},+    {0xFAB4, 0x5DB8},+    {0xFAB5, 0x5DB9},+    {0xFAB6, 0x5DD0},+    {0xFAB7, 0x5F21},+    {0xFAB8, 0x5F34},+    {0xFAB9, 0x5F67},+    {0xFABA, 0x5FB7},+    {0xFABB, 0x5FDE},+    {0xFABC, 0x605D},+    {0xFABD, 0x6085},+    {0xFABE, 0x608A},+    {0xFABF, 0x60DE},+    {0xFAC0, 0x60D5},+    {0xFAC1, 0x6120},+    {0xFAC2, 0x60F2},+    {0xFAC3, 0x6111},+    {0xFAC4, 0x6137},+    {0xFAC5, 0x6130},+    {0xFAC6, 0x6198},+    {0xFAC7, 0x6213},+    {0xFAC8, 0x62A6},+    {0xFAC9, 0x63F5},+    {0xFACA, 0x6460},+    {0xFACB, 0x649D},+    {0xFACC, 0x64CE},+    {0xFACD, 0x654E},+    {0xFACE, 0x6600},+    {0xFACF, 0x6615},+    {0xFAD0, 0x663B},+    {0xFAD1, 0x6609},+    {0xFAD2, 0x662E},+    {0xFAD3, 0x661E},+    {0xFAD4, 0x6624},+    {0xFAD5, 0x6665},+    {0xFAD6, 0x6657},+    {0xFAD7, 0x6659},+    {0xFAD8, 0xFA12},+    {0xFAD9, 0x6673},+    {0xFADA, 0x6699},+    {0xFADB, 0x66A0},+    {0xFADC, 0x66B2},+    {0xFADD, 0x66BF},+    {0xFADE, 0x66FA},+    {0xFADF, 0x670E},+    {0xFAE0, 0xF929},+    {0xFAE1, 0x6766},+    {0xFAE2, 0x67BB},+    {0xFAE3, 0x6852},+    {0xFAE4, 0x67C0},+    {0xFAE5, 0x6801},+    {0xFAE6, 0x6844},+    {0xFAE7, 0x68CF},+    {0xFAE8, 0xFA13},+    {0xFAE9, 0x6968},+    {0xFAEA, 0xFA14},+    {0xFAEB, 0x6998},+    {0xFAEC, 0x69E2},+    {0xFAED, 0x6A30},+    {0xFAEE, 0x6A6B},+    {0xFAEF, 0x6A46},+    {0xFAF0, 0x6A73},+    {0xFAF1, 0x6A7E},+    {0xFAF2, 0x6AE2},+    {0xFAF3, 0x6AE4},+    {0xFAF4, 0x6BD6},+    {0xFAF5, 0x6C3F},+    {0xFAF6, 0x6C5C},+    {0xFAF7, 0x6C86},+    {0xFAF8, 0x6C6F},+    {0xFAF9, 0x6CDA},+    {0xFAFA, 0x6D04},+    {0xFAFB, 0x6D87},+    {0xFAFC, 0x6D6F},+    {0xFB40, 0x6D96},+    {0xFB41, 0x6DAC},+    {0xFB42, 0x6DCF},+    {0xFB43, 0x6DF8},+    {0xFB44, 0x6DF2},+    {0xFB45, 0x6DFC},+    {0xFB46, 0x6E39},+    {0xFB47, 0x6E5C},+    {0xFB48, 0x6E27},+    {0xFB49, 0x6E3C},+    {0xFB4A, 0x6EBF},+    {0xFB4B, 0x6F88},+    {0xFB4C, 0x6FB5},+    {0xFB4D, 0x6FF5},+    {0xFB4E, 0x7005},+    {0xFB4F, 0x7007},+    {0xFB50, 0x7028},+    {0xFB51, 0x7085},+    {0xFB52, 0x70AB},+    {0xFB53, 0x710F},+    {0xFB54, 0x7104},+    {0xFB55, 0x715C},+    {0xFB56, 0x7146},+    {0xFB57, 0x7147},+    {0xFB58, 0xFA15},+    {0xFB59, 0x71C1},+    {0xFB5A, 0x71FE},+    {0xFB5B, 0x72B1},+    {0xFB5C, 0x72BE},+    {0xFB5D, 0x7324},+    {0xFB5E, 0xFA16},+    {0xFB5F, 0x7377},+    {0xFB60, 0x73BD},+    {0xFB61, 0x73C9},+    {0xFB62, 0x73D6},+    {0xFB63, 0x73E3},+    {0xFB64, 0x73D2},+    {0xFB65, 0x7407},+    {0xFB66, 0x73F5},+    {0xFB67, 0x7426},+    {0xFB68, 0x742A},+    {0xFB69, 0x7429},+    {0xFB6A, 0x742E},+    {0xFB6B, 0x7462},+    {0xFB6C, 0x7489},+    {0xFB6D, 0x749F},+    {0xFB6E, 0x7501},+    {0xFB6F, 0x756F},+    {0xFB70, 0x7682},+    {0xFB71, 0x769C},+    {0xFB72, 0x769E},+    {0xFB73, 0x769B},+    {0xFB74, 0x76A6},+    {0xFB75, 0xFA17},+    {0xFB76, 0x7746},+    {0xFB77, 0x52AF},+    {0xFB78, 0x7821},+    {0xFB79, 0x784E},+    {0xFB7A, 0x7864},+    {0xFB7B, 0x787A},+    {0xFB7C, 0x7930},+    {0xFB7D, 0xFA18},+    {0xFB7E, 0xFA19},+    {0xFB80, 0xFA1A},+    {0xFB81, 0x7994},+    {0xFB82, 0xFA1B},+    {0xFB83, 0x799B},+    {0xFB84, 0x7AD1},+    {0xFB85, 0x7AE7},+    {0xFB86, 0xFA1C},+    {0xFB87, 0x7AEB},+    {0xFB88, 0x7B9E},+    {0xFB89, 0xFA1D},+    {0xFB8A, 0x7D48},+    {0xFB8B, 0x7D5C},+    {0xFB8C, 0x7DB7},+    {0xFB8D, 0x7DA0},+    {0xFB8E, 0x7DD6},+    {0xFB8F, 0x7E52},+    {0xFB90, 0x7F47},+    {0xFB91, 0x7FA1},+    {0xFB92, 0xFA1E},+    {0xFB93, 0x8301},+    {0xFB94, 0x8362},+    {0xFB95, 0x837F},+    {0xFB96, 0x83C7},+    {0xFB97, 0x83F6},+    {0xFB98, 0x8448},+    {0xFB99, 0x84B4},+    {0xFB9A, 0x8553},+    {0xFB9B, 0x8559},+    {0xFB9C, 0x856B},+    {0xFB9D, 0xFA1F},+    {0xFB9E, 0x85B0},+    {0xFB9F, 0xFA20},+    {0xFBA0, 0xFA21},+    {0xFBA1, 0x8807},+    {0xFBA2, 0x88F5},+    {0xFBA3, 0x8A12},+    {0xFBA4, 0x8A37},+    {0xFBA5, 0x8A79},+    {0xFBA6, 0x8AA7},+    {0xFBA7, 0x8ABE},+    {0xFBA8, 0x8ADF},+    {0xFBA9, 0xFA22},+    {0xFBAA, 0x8AF6},+    {0xFBAB, 0x8B53},+    {0xFBAC, 0x8B7F},+    {0xFBAD, 0x8CF0},+    {0xFBAE, 0x8CF4},+    {0xFBAF, 0x8D12},+    {0xFBB0, 0x8D76},+    {0xFBB1, 0xFA23},+    {0xFBB2, 0x8ECF},+    {0xFBB3, 0xFA24},+    {0xFBB4, 0xFA25},+    {0xFBB5, 0x9067},+    {0xFBB6, 0x90DE},+    {0xFBB7, 0xFA26},+    {0xFBB8, 0x9115},+    {0xFBB9, 0x9127},+    {0xFBBA, 0x91DA},+    {0xFBBB, 0x91D7},+    {0xFBBC, 0x91DE},+    {0xFBBD, 0x91ED},+    {0xFBBE, 0x91EE},+    {0xFBBF, 0x91E4},+    {0xFBC0, 0x91E5},+    {0xFBC1, 0x9206},+    {0xFBC2, 0x9210},+    {0xFBC3, 0x920A},+    {0xFBC4, 0x923A},+    {0xFBC5, 0x9240},+    {0xFBC6, 0x923C},+    {0xFBC7, 0x924E},+    {0xFBC8, 0x9259},+    {0xFBC9, 0x9251},+    {0xFBCA, 0x9239},+    {0xFBCB, 0x9267},+    {0xFBCC, 0x92A7},+    {0xFBCD, 0x9277},+    {0xFBCE, 0x9278},+    {0xFBCF, 0x92E7},+    {0xFBD0, 0x92D7},+    {0xFBD1, 0x92D9},+    {0xFBD2, 0x92D0},+    {0xFBD3, 0xFA27},+    {0xFBD4, 0x92D5},+    {0xFBD5, 0x92E0},+    {0xFBD6, 0x92D3},+    {0xFBD7, 0x9325},+    {0xFBD8, 0x9321},+    {0xFBD9, 0x92FB},+    {0xFBDA, 0xFA28},+    {0xFBDB, 0x931E},+    {0xFBDC, 0x92FF},+    {0xFBDD, 0x931D},+    {0xFBDE, 0x9302},+    {0xFBDF, 0x9370},+    {0xFBE0, 0x9357},+    {0xFBE1, 0x93A4},+    {0xFBE2, 0x93C6},+    {0xFBE3, 0x93DE},+    {0xFBE4, 0x93F8},+    {0xFBE5, 0x9431},+    {0xFBE6, 0x9445},+    {0xFBE7, 0x9448},+    {0xFBE8, 0x9592},+    {0xFBE9, 0xF9DC},+    {0xFBEA, 0xFA29},+    {0xFBEB, 0x969D},+    {0xFBEC, 0x96AF},+    {0xFBED, 0x9733},+    {0xFBEE, 0x973B},+    {0xFBEF, 0x9743},+    {0xFBF0, 0x974D},+    {0xFBF1, 0x974F},+    {0xFBF2, 0x9751},+    {0xFBF3, 0x9755},+    {0xFBF4, 0x9857},+    {0xFBF5, 0x9865},+    {0xFBF6, 0xFA2A},+    {0xFBF7, 0xFA2B},+    {0xFBF8, 0x9927},+    {0xFBF9, 0xFA2C},+    {0xFBFA, 0x999E},+    {0xFBFB, 0x9A4E},+    {0xFBFC, 0x9AD9},+    {0xFC40, 0x9ADC},+    {0xFC41, 0x9B75},+    {0xFC42, 0x9B72},+    {0xFC43, 0x9B8F},+    {0xFC44, 0x9BB1},+    {0xFC45, 0x9BBB},+    {0xFC46, 0x9C00},+    {0xFC47, 0x9D70},+    {0xFC48, 0x9D6B},+    {0xFC49, 0xFA2D},+    {0xFC4A, 0x9E19},+    {0xFC4B, 0x9ED1},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_UnicodeMap_Rec EUC_UNICODE_ARRAY[] = {+    {0x00, 0x0000},+    {0x01, 0x0001},+    {0x02, 0x0002},+    {0x03, 0x0003},+    {0x04, 0x0004},+    {0x05, 0x0005},+    {0x06, 0x0006},+    {0x07, 0x0007},+    {0x08, 0x0008},+    {0x09, 0x0009},+    {0x0A, 0x000A},+    {0x0B, 0x000B},+    {0x0C, 0x000C},+    {0x0D, 0x000D},+    {0x0E, 0x000E},+    {0x0F, 0x000F},+    {0x10, 0x0010},+    {0x11, 0x0011},+    {0x12, 0x0012},+    {0x13, 0x0013},+    {0x14, 0x0014},+    {0x15, 0x0015},+    {0x16, 0x0016},+    {0x17, 0x0017},+    {0x18, 0x0018},+    {0x19, 0x0019},+    {0x1A, 0x001A},+    {0x1B, 0x001B},+    {0x1C, 0x001C},+    {0x1D, 0x001D},+    {0x1E, 0x001E},+    {0x1F, 0x001F},+    {0x20, 0x0020},+    {0x21, 0x0021},+    {0x22, 0x0022},+    {0x23, 0x0023},+    {0x24, 0x0024},+    {0x25, 0x0025},+    {0x26, 0x0026},+    {0x27, 0x0027},+    {0x28, 0x0028},+    {0x29, 0x0029},+    {0x2A, 0x002A},+    {0x2B, 0x002B},+    {0x2C, 0x002C},+    {0x2D, 0x002D},+    {0x2E, 0x002E},+    {0x2F, 0x002F},+    {0x30, 0x0030},+    {0x31, 0x0031},+    {0x32, 0x0032},+    {0x33, 0x0033},+    {0x34, 0x0034},+    {0x35, 0x0035},+    {0x36, 0x0036},+    {0x37, 0x0037},+    {0x38, 0x0038},+    {0x39, 0x0039},+    {0x3A, 0x003A},+    {0x3B, 0x003B},+    {0x3C, 0x003C},+    {0x3D, 0x003D},+    {0x3E, 0x003E},+    {0x3F, 0x003F},+    {0x40, 0x0040},+    {0x41, 0x0041},+    {0x42, 0x0042},+    {0x43, 0x0043},+    {0x44, 0x0044},+    {0x45, 0x0045},+    {0x46, 0x0046},+    {0x47, 0x0047},+    {0x48, 0x0048},+    {0x49, 0x0049},+    {0x4A, 0x004A},+    {0x4B, 0x004B},+    {0x4C, 0x004C},+    {0x4D, 0x004D},+    {0x4E, 0x004E},+    {0x4F, 0x004F},+    {0x50, 0x0050},+    {0x51, 0x0051},+    {0x52, 0x0052},+    {0x53, 0x0053},+    {0x54, 0x0054},+    {0x55, 0x0055},+    {0x56, 0x0056},+    {0x57, 0x0057},+    {0x58, 0x0058},+    {0x59, 0x0059},+    {0x5A, 0x005A},+    {0x5B, 0x005B},+    {0x5C, 0x005C},+    {0x5D, 0x005D},+    {0x5E, 0x005E},+    {0x5F, 0x005F},+    {0x60, 0x0060},+    {0x61, 0x0061},+    {0x62, 0x0062},+    {0x63, 0x0063},+    {0x64, 0x0064},+    {0x65, 0x0065},+    {0x66, 0x0066},+    {0x67, 0x0067},+    {0x68, 0x0068},+    {0x69, 0x0069},+    {0x6A, 0x006A},+    {0x6B, 0x006B},+    {0x6C, 0x006C},+    {0x6D, 0x006D},+    {0x6E, 0x006E},+    {0x6F, 0x006F},+    {0x70, 0x0070},+    {0x71, 0x0071},+    {0x72, 0x0072},+    {0x73, 0x0073},+    {0x74, 0x0074},+    {0x75, 0x0075},+    {0x76, 0x0076},+    {0x77, 0x0077},+    {0x78, 0x0078},+    {0x79, 0x0079},+    {0x7A, 0x007A},+    {0x7B, 0x007B},+    {0x7C, 0x007C},+    {0x7D, 0x007D},+    {0x7E, 0x007E},+    {0x7F, 0x007F},+    {0x80, 0x0080},+    {0x81, 0x0081},+    {0x82, 0x0082},+    {0x83, 0x0083},+    {0x84, 0x0084},+    {0x85, 0x0085},+    {0x86, 0x0086},+    {0x87, 0x0087},+    {0x88, 0x0088},+    {0x89, 0x0089},+    {0x8A, 0x008A},+    {0x8B, 0x008B},+    {0x8C, 0x008C},+    {0x8D, 0x008D},+    {0x8E, 0x008E},+    {0x8F, 0x008F},+    {0x90, 0x0090},+    {0x91, 0x0091},+    {0x92, 0x0092},+    {0x93, 0x0093},+    {0x94, 0x0094},+    {0x95, 0x0095},+    {0x96, 0x0096},+    {0x97, 0x0097},+    {0x98, 0x0098},+    {0x99, 0x0099},+    {0x9A, 0x009A},+    {0x9B, 0x009B},+    {0x9C, 0x009C},+    {0x9D, 0x009D},+    {0x9E, 0x009E},+    {0x9F, 0x009F},+    {0xA1A1, 0x3000},+    {0xA1A2, 0x3001},+    {0xA1A3, 0x3002},+    {0xA1A4, 0xFF0C},+    {0xA1A5, 0xFF0E},+    {0xA1A6, 0x30FB},+    {0xA1A7, 0xFF1A},+    {0xA1A8, 0xFF1B},+    {0xA1A9, 0xFF1F},+    {0xA1AA, 0xFF01},+    {0xA1AB, 0x309B},+    {0xA1AC, 0x309C},+    {0xA1AD, 0x00B4},+    {0xA1AE, 0xFF40},+    {0xA1AF, 0x00A8},+    {0xA1B0, 0xFF3E},+    {0xA1B1, 0x203E},+    {0xA1B2, 0xFF3F},+    {0xA1B3, 0x30FD},+    {0xA1B4, 0x30FE},+    {0xA1B5, 0x309D},+    {0xA1B6, 0x309E},+    {0xA1B7, 0x3003},+    {0xA1B8, 0x4EDD},+    {0xA1B9, 0x3005},+    {0xA1BA, 0x3006},+    {0xA1BB, 0x3007},+    {0xA1BC, 0x30FC},+    {0xA1BD, 0x2014},+    {0xA1BE, 0x2010},+    {0xA1BF, 0xFF0F},+    {0xA1C0, 0xFF3C},+    {0xA1C1, 0x301C},+    {0xA1C2, 0x2016},+    {0xA1C3, 0xFF5C},+    {0xA1C4, 0x2026},+    {0xA1C5, 0x2025},+    {0xA1C6, 0x2018},+    {0xA1C7, 0x2019},+    {0xA1C8, 0x201C},+    {0xA1C9, 0x201D},+    {0xA1CA, 0xFF08},+    {0xA1CB, 0xFF09},+    {0xA1CC, 0x3014},+    {0xA1CD, 0x3015},+    {0xA1CE, 0xFF3B},+    {0xA1CF, 0xFF3D},+    {0xA1D0, 0xFF5B},+    {0xA1D1, 0xFF5D},+    {0xA1D2, 0x3008},+    {0xA1D3, 0x3009},+    {0xA1D4, 0x300A},+    {0xA1D5, 0x300B},+    {0xA1D6, 0x300C},+    {0xA1D7, 0x300D},+    {0xA1D8, 0x300E},+    {0xA1D9, 0x300F},+    {0xA1DA, 0x3010},+    {0xA1DB, 0x3011},+    {0xA1DC, 0xFF0B},+    {0xA1DD, 0x2212},+    {0xA1DE, 0x00B1},+    {0xA1DF, 0x00D7},+    {0xA1E0, 0x00F7},+    {0xA1E1, 0xFF1D},+    {0xA1E2, 0x2260},+    {0xA1E3, 0xFF1C},+    {0xA1E4, 0xFF1E},+    {0xA1E5, 0x2266},+    {0xA1E6, 0x2267},+    {0xA1E7, 0x221E},+    {0xA1E8, 0x2234},+    {0xA1E9, 0x2642},+    {0xA1EA, 0x2640},+    {0xA1EB, 0x00B0},+    {0xA1EC, 0x2032},+    {0xA1ED, 0x2033},+    {0xA1EE, 0x2103},+    {0xA1EF, 0x00A5},+    {0xA1F0, 0xFF04},+    {0xA1F1, 0x00A2},+    {0xA1F2, 0x00A3},+    {0xA1F3, 0xFF05},+    {0xA1F4, 0xFF03},+    {0xA1F5, 0xFF06},+    {0xA1F6, 0xFF0A},+    {0xA1F7, 0xFF20},+    {0xA1F8, 0x00A7},+    {0xA1F9, 0x2606},+    {0xA1FA, 0x2605},+    {0xA1FB, 0x25CB},+    {0xA1FC, 0x25CF},+    {0xA1FD, 0x25CE},+    {0xA1FE, 0x25C7},+    {0xA2A1, 0x25C6},+    {0xA2A2, 0x25A1},+    {0xA2A3, 0x25A0},+    {0xA2A4, 0x25B3},+    {0xA2A5, 0x25B2},+    {0xA2A6, 0x25BD},+    {0xA2A7, 0x25BC},+    {0xA2A8, 0x203B},+    {0xA2A9, 0x3012},+    {0xA2AA, 0x2192},+    {0xA2AB, 0x2190},+    {0xA2AC, 0x2191},+    {0xA2AD, 0x2193},+    {0xA2AE, 0x3013},+    {0xA2AF, 0xFF07},+    {0xA2BA, 0x2208},+    {0xA2BB, 0x220B},+    {0xA2BC, 0x2286},+    {0xA2BD, 0x2287},+    {0xA2BE, 0x2282},+    {0xA2BF, 0x2283},+    {0xA2C0, 0x222A},+    {0xA2C1, 0x2229},+    {0xA2CA, 0x2227},+    {0xA2CB, 0x2228},+    {0xA2CC, 0x00AC},+    {0xA2CD, 0x21D2},+    {0xA2CE, 0x21D4},+    {0xA2CF, 0x2200},+    {0xA2D0, 0x2203},+    {0xA2DC, 0x2220},+    {0xA2DD, 0x22A5},+    {0xA2DE, 0x2312},+    {0xA2DF, 0x2202},+    {0xA2E0, 0x2207},+    {0xA2E1, 0x2261},+    {0xA2E2, 0x2252},+    {0xA2E3, 0x226A},+    {0xA2E4, 0x226B},+    {0xA2E5, 0x221A},+    {0xA2E6, 0x223D},+    {0xA2E7, 0x221D},+    {0xA2E8, 0x2235},+    {0xA2E9, 0x222B},+    {0xA2EA, 0x222C},+    {0xA2F2, 0x212B},+    {0xA2F3, 0x2030},+    {0xA2F4, 0x266F},+    {0xA2F5, 0x266D},+    {0xA2F6, 0x266A},+    {0xA2F7, 0x2020},+    {0xA2F8, 0x2021},+    {0xA2F9, 0x00B6},+    {0xA2FE, 0x25EF},+    {0xA3B0, 0xFF10},+    {0xA3B1, 0xFF11},+    {0xA3B2, 0xFF12},+    {0xA3B3, 0xFF13},+    {0xA3B4, 0xFF14},+    {0xA3B5, 0xFF15},+    {0xA3B6, 0xFF16},+    {0xA3B7, 0xFF17},+    {0xA3B8, 0xFF18},+    {0xA3B9, 0xFF19},+    {0xA3C1, 0xFF21},+    {0xA3C2, 0xFF22},+    {0xA3C3, 0xFF23},+    {0xA3C4, 0xFF24},+    {0xA3C5, 0xFF25},+    {0xA3C6, 0xFF26},+    {0xA3C7, 0xFF27},+    {0xA3C8, 0xFF28},+    {0xA3C9, 0xFF29},+    {0xA3CA, 0xFF2A},+    {0xA3CB, 0xFF2B},+    {0xA3CC, 0xFF2C},+    {0xA3CD, 0xFF2D},+    {0xA3CE, 0xFF2E},+    {0xA3CF, 0xFF2F},+    {0xA3D0, 0xFF30},+    {0xA3D1, 0xFF31},+    {0xA3D2, 0xFF32},+    {0xA3D3, 0xFF33},+    {0xA3D4, 0xFF34},+    {0xA3D5, 0xFF35},+    {0xA3D6, 0xFF36},+    {0xA3D7, 0xFF37},+    {0xA3D8, 0xFF38},+    {0xA3D9, 0xFF39},+    {0xA3DA, 0xFF3A},+    {0xA3E1, 0xFF41},+    {0xA3E2, 0xFF42},+    {0xA3E3, 0xFF43},+    {0xA3E4, 0xFF44},+    {0xA3E5, 0xFF45},+    {0xA3E6, 0xFF46},+    {0xA3E7, 0xFF47},+    {0xA3E8, 0xFF48},+    {0xA3E9, 0xFF49},+    {0xA3EA, 0xFF4A},+    {0xA3EB, 0xFF4B},+    {0xA3EC, 0xFF4C},+    {0xA3ED, 0xFF4D},+    {0xA3EE, 0xFF4E},+    {0xA3EF, 0xFF4F},+    {0xA3F0, 0xFF50},+    {0xA3F1, 0xFF51},+    {0xA3F2, 0xFF52},+    {0xA3F3, 0xFF53},+    {0xA3F4, 0xFF54},+    {0xA3F5, 0xFF55},+    {0xA3F6, 0xFF56},+    {0xA3F7, 0xFF57},+    {0xA3F8, 0xFF58},+    {0xA3F9, 0xFF59},+    {0xA3FA, 0xFF5A},+    {0xA4A1, 0x3041},+    {0xA4A2, 0x3042},+    {0xA4A3, 0x3043},+    {0xA4A4, 0x3044},+    {0xA4A5, 0x3045},+    {0xA4A6, 0x3046},+    {0xA4A7, 0x3047},+    {0xA4A8, 0x3048},+    {0xA4A9, 0x3049},+    {0xA4AA, 0x304A},+    {0xA4AB, 0x304B},+    {0xA4AC, 0x304C},+    {0xA4AD, 0x304D},+    {0xA4AE, 0x304E},+    {0xA4AF, 0x304F},+    {0xA4B0, 0x3050},+    {0xA4B1, 0x3051},+    {0xA4B2, 0x3052},+    {0xA4B3, 0x3053},+    {0xA4B4, 0x3054},+    {0xA4B5, 0x3055},+    {0xA4B6, 0x3056},+    {0xA4B7, 0x3057},+    {0xA4B8, 0x3058},+    {0xA4B9, 0x3059},+    {0xA4BA, 0x305A},+    {0xA4BB, 0x305B},+    {0xA4BC, 0x305C},+    {0xA4BD, 0x305D},+    {0xA4BE, 0x305E},+    {0xA4BF, 0x305F},+    {0xA4C0, 0x3060},+    {0xA4C1, 0x3061},+    {0xA4C2, 0x3062},+    {0xA4C3, 0x3063},+    {0xA4C4, 0x3064},+    {0xA4C5, 0x3065},+    {0xA4C6, 0x3066},+    {0xA4C7, 0x3067},+    {0xA4C8, 0x3068},+    {0xA4C9, 0x3069},+    {0xA4CA, 0x306A},+    {0xA4CB, 0x306B},+    {0xA4CC, 0x306C},+    {0xA4CD, 0x306D},+    {0xA4CE, 0x306E},+    {0xA4CF, 0x306F},+    {0xA4D0, 0x3070},+    {0xA4D1, 0x3071},+    {0xA4D2, 0x3072},+    {0xA4D3, 0x3073},+    {0xA4D4, 0x3074},+    {0xA4D5, 0x3075},+    {0xA4D6, 0x3076},+    {0xA4D7, 0x3077},+    {0xA4D8, 0x3078},+    {0xA4D9, 0x3079},+    {0xA4DA, 0x307A},+    {0xA4DB, 0x307B},+    {0xA4DC, 0x307C},+    {0xA4DD, 0x307D},+    {0xA4DE, 0x307E},+    {0xA4DF, 0x307F},+    {0xA4E0, 0x3080},+    {0xA4E1, 0x3081},+    {0xA4E2, 0x3082},+    {0xA4E3, 0x3083},+    {0xA4E4, 0x3084},+    {0xA4E5, 0x3085},+    {0xA4E6, 0x3086},+    {0xA4E7, 0x3087},+    {0xA4E8, 0x3088},+    {0xA4E9, 0x3089},+    {0xA4EA, 0x308A},+    {0xA4EB, 0x308B},+    {0xA4EC, 0x308C},+    {0xA4ED, 0x308D},+    {0xA4EE, 0x308E},+    {0xA4EF, 0x308F},+    {0xA4F0, 0x3090},+    {0xA4F1, 0x3091},+    {0xA4F2, 0x3092},+    {0xA4F3, 0x3093},+    {0xA5A1, 0x30A1},+    {0xA5A2, 0x30A2},+    {0xA5A3, 0x30A3},+    {0xA5A4, 0x30A4},+    {0xA5A5, 0x30A5},+    {0xA5A6, 0x30A6},+    {0xA5A7, 0x30A7},+    {0xA5A8, 0x30A8},+    {0xA5A9, 0x30A9},+    {0xA5AA, 0x30AA},+    {0xA5AB, 0x30AB},+    {0xA5AC, 0x30AC},+    {0xA5AD, 0x30AD},+    {0xA5AE, 0x30AE},+    {0xA5AF, 0x30AF},+    {0xA5B0, 0x30B0},+    {0xA5B1, 0x30B1},+    {0xA5B2, 0x30B2},+    {0xA5B3, 0x30B3},+    {0xA5B4, 0x30B4},+    {0xA5B5, 0x30B5},+    {0xA5B6, 0x30B6},+    {0xA5B7, 0x30B7},+    {0xA5B8, 0x30B8},+    {0xA5B9, 0x30B9},+    {0xA5BA, 0x30BA},+    {0xA5BB, 0x30BB},+    {0xA5BC, 0x30BC},+    {0xA5BD, 0x30BD},+    {0xA5BE, 0x30BE},+    {0xA5BF, 0x30BF},+    {0xA5C0, 0x30C0},+    {0xA5C1, 0x30C1},+    {0xA5C2, 0x30C2},+    {0xA5C3, 0x30C3},+    {0xA5C4, 0x30C4},+    {0xA5C5, 0x30C5},+    {0xA5C6, 0x30C6},+    {0xA5C7, 0x30C7},+    {0xA5C8, 0x30C8},+    {0xA5C9, 0x30C9},+    {0xA5CA, 0x30CA},+    {0xA5CB, 0x30CB},+    {0xA5CC, 0x30CC},+    {0xA5CD, 0x30CD},+    {0xA5CE, 0x30CE},+    {0xA5CF, 0x30CF},+    {0xA5D0, 0x30D0},+    {0xA5D1, 0x30D1},+    {0xA5D2, 0x30D2},+    {0xA5D3, 0x30D3},+    {0xA5D4, 0x30D4},+    {0xA5D5, 0x30D5},+    {0xA5D6, 0x30D6},+    {0xA5D7, 0x30D7},+    {0xA5D8, 0x30D8},+    {0xA5D9, 0x30D9},+    {0xA5DA, 0x30DA},+    {0xA5DB, 0x30DB},+    {0xA5DC, 0x30DC},+    {0xA5DD, 0x30DD},+    {0xA5DE, 0x30DE},+    {0xA5DF, 0x30DF},+    {0xA5E0, 0x30E0},+    {0xA5E1, 0x30E1},+    {0xA5E2, 0x30E2},+    {0xA5E3, 0x30E3},+    {0xA5E4, 0x30E4},+    {0xA5E5, 0x30E5},+    {0xA5E6, 0x30E6},+    {0xA5E7, 0x30E7},+    {0xA5E8, 0x30E8},+    {0xA5E9, 0x30E9},+    {0xA5EA, 0x30EA},+    {0xA5EB, 0x30EB},+    {0xA5EC, 0x30EC},+    {0xA5ED, 0x30ED},+    {0xA5EE, 0x30EE},+    {0xA5EF, 0x30EF},+    {0xA5F0, 0x30F0},+    {0xA5F1, 0x30F1},+    {0xA5F2, 0x30F2},+    {0xA5F3, 0x30F3},+    {0xA5F4, 0x30F4},+    {0xA5F5, 0x30F5},+    {0xA5F6, 0x30F6},+    {0xA6A1, 0x0391},+    {0xA6A2, 0x0392},+    {0xA6A3, 0x0393},+    {0xA6A4, 0x0394},+    {0xA6A5, 0x0395},+    {0xA6A6, 0x0396},+    {0xA6A7, 0x0397},+    {0xA6A8, 0x0398},+    {0xA6A9, 0x0399},+    {0xA6AA, 0x039A},+    {0xA6AB, 0x039B},+    {0xA6AC, 0x039C},+    {0xA6AD, 0x039D},+    {0xA6AE, 0x039E},+    {0xA6AF, 0x039F},+    {0xA6B0, 0x03A0},+    {0xA6B1, 0x03A1},+    {0xA6B2, 0x03A3},+    {0xA6B3, 0x03A4},+    {0xA6B4, 0x03A5},+    {0xA6B5, 0x03A6},+    {0xA6B6, 0x03A7},+    {0xA6B7, 0x03A8},+    {0xA6B8, 0x03A9},+    {0xA6C1, 0x03B1},+    {0xA6C2, 0x03B2},+    {0xA6C3, 0x03B3},+    {0xA6C4, 0x03B4},+    {0xA6C5, 0x03B5},+    {0xA6C6, 0x03B6},+    {0xA6C7, 0x03B7},+    {0xA6C8, 0x03B8},+    {0xA6C9, 0x03B9},+    {0xA6CA, 0x03BA},+    {0xA6CB, 0x03BB},+    {0xA6CC, 0x03BC},+    {0xA6CD, 0x03BD},+    {0xA6CE, 0x03BE},+    {0xA6CF, 0x03BF},+    {0xA6D0, 0x03C0},+    {0xA6D1, 0x03C1},+    {0xA6D2, 0x03C3},+    {0xA6D3, 0x03C4},+    {0xA6D4, 0x03C5},+    {0xA6D5, 0x03C6},+    {0xA6D6, 0x03C7},+    {0xA6D7, 0x03C8},+    {0xA6D8, 0x03C9},+    {0xA7A1, 0x0410},+    {0xA7A2, 0x0411},+    {0xA7A3, 0x0412},+    {0xA7A4, 0x0413},+    {0xA7A5, 0x0414},+    {0xA7A6, 0x0415},+    {0xA7A7, 0x0401},+    {0xA7A8, 0x0416},+    {0xA7A9, 0x0417},+    {0xA7AA, 0x0418},+    {0xA7AB, 0x0419},+    {0xA7AC, 0x041A},+    {0xA7AD, 0x041B},+    {0xA7AE, 0x041C},+    {0xA7AF, 0x041D},+    {0xA7B0, 0x041E},+    {0xA7B1, 0x041F},+    {0xA7B2, 0x0420},+    {0xA7B3, 0x0421},+    {0xA7B4, 0x0422},+    {0xA7B5, 0x0423},+    {0xA7B6, 0x0424},+    {0xA7B7, 0x0425},+    {0xA7B8, 0x0426},+    {0xA7B9, 0x0427},+    {0xA7BA, 0x0428},+    {0xA7BB, 0x0429},+    {0xA7BC, 0x042A},+    {0xA7BD, 0x042B},+    {0xA7BE, 0x042C},+    {0xA7BF, 0x042D},+    {0xA7C0, 0x042E},+    {0xA7C1, 0x042F},+    {0xA7D1, 0x0430},+    {0xA7D2, 0x0431},+    {0xA7D3, 0x0432},+    {0xA7D4, 0x0433},+    {0xA7D5, 0x0434},+    {0xA7D6, 0x0435},+    {0xA7D7, 0x0451},+    {0xA7D8, 0x0436},+    {0xA7D9, 0x0437},+    {0xA7DA, 0x0438},+    {0xA7DB, 0x0439},+    {0xA7DC, 0x043A},+    {0xA7DD, 0x043B},+    {0xA7DE, 0x043C},+    {0xA7DF, 0x043D},+    {0xA7E0, 0x043E},+    {0xA7E1, 0x043F},+    {0xA7E2, 0x0440},+    {0xA7E3, 0x0441},+    {0xA7E4, 0x0442},+    {0xA7E5, 0x0443},+    {0xA7E6, 0x0444},+    {0xA7E7, 0x0445},+    {0xA7E8, 0x0446},+    {0xA7E9, 0x0447},+    {0xA7EA, 0x0448},+    {0xA7EB, 0x0449},+    {0xA7EC, 0x044A},+    {0xA7ED, 0x044B},+    {0xA7EE, 0x044C},+    {0xA7EF, 0x044D},+    {0xA7F0, 0x044E},+    {0xA7F1, 0x044F},+    {0xA8A1, 0x2500},+    {0xA8A2, 0x2502},+    {0xA8A3, 0x250C},+    {0xA8A4, 0x2510},+    {0xA8A5, 0x2518},+    {0xA8A6, 0x2514},+    {0xA8A7, 0x251C},+    {0xA8A8, 0x252C},+    {0xA8A9, 0x2524},+    {0xA8AA, 0x2534},+    {0xA8AB, 0x253C},+    {0xA8AC, 0x2501},+    {0xA8AD, 0x2503},+    {0xA8AE, 0x250F},+    {0xA8AF, 0x2513},+    {0xA8B0, 0x251B},+    {0xA8B1, 0x2517},+    {0xA8B2, 0x2523},+    {0xA8B3, 0x2533},+    {0xA8B4, 0x252B},+    {0xA8B5, 0x253B},+    {0xA8B6, 0x254B},+    {0xA8B7, 0x2520},+    {0xA8B8, 0x252F},+    {0xA8B9, 0x2528},+    {0xA8BA, 0x2537},+    {0xA8BB, 0x253F},+    {0xA8BC, 0x251D},+    {0xA8BD, 0x2530},+    {0xA8BE, 0x2525},+    {0xA8BF, 0x2538},+    {0xA8C0, 0x2542},+    {0xB0A1, 0x4E9C},+    {0xB0A2, 0x5516},+    {0xB0A3, 0x5A03},+    {0xB0A4, 0x963F},+    {0xB0A5, 0x54C0},+    {0xB0A6, 0x611B},+    {0xB0A7, 0x6328},+    {0xB0A8, 0x59F6},+    {0xB0A9, 0x9022},+    {0xB0AA, 0x8475},+    {0xB0AB, 0x831C},+    {0xB0AC, 0x7A50},+    {0xB0AD, 0x60AA},+    {0xB0AE, 0x63E1},+    {0xB0AF, 0x6E25},+    {0xB0B0, 0x65ED},+    {0xB0B1, 0x8466},+    {0xB0B2, 0x82A6},+    {0xB0B3, 0x9BF5},+    {0xB0B4, 0x6893},+    {0xB0B5, 0x5727},+    {0xB0B6, 0x65A1},+    {0xB0B7, 0x6271},+    {0xB0B8, 0x5B9B},+    {0xB0B9, 0x59D0},+    {0xB0BA, 0x867B},+    {0xB0BB, 0x98F4},+    {0xB0BC, 0x7D62},+    {0xB0BD, 0x7DBE},+    {0xB0BE, 0x9B8E},+    {0xB0BF, 0x6216},+    {0xB0C0, 0x7C9F},+    {0xB0C1, 0x88B7},+    {0xB0C2, 0x5B89},+    {0xB0C3, 0x5EB5},+    {0xB0C4, 0x6309},+    {0xB0C5, 0x6697},+    {0xB0C6, 0x6848},+    {0xB0C7, 0x95C7},+    {0xB0C8, 0x978D},+    {0xB0C9, 0x674F},+    {0xB0CA, 0x4EE5},+    {0xB0CB, 0x4F0A},+    {0xB0CC, 0x4F4D},+    {0xB0CD, 0x4F9D},+    {0xB0CE, 0x5049},+    {0xB0CF, 0x56F2},+    {0xB0D0, 0x5937},+    {0xB0D1, 0x59D4},+    {0xB0D2, 0x5A01},+    {0xB0D3, 0x5C09},+    {0xB0D4, 0x60DF},+    {0xB0D5, 0x610F},+    {0xB0D6, 0x6170},+    {0xB0D7, 0x6613},+    {0xB0D8, 0x6905},+    {0xB0D9, 0x70BA},+    {0xB0DA, 0x754F},+    {0xB0DB, 0x7570},+    {0xB0DC, 0x79FB},+    {0xB0DD, 0x7DAD},+    {0xB0DE, 0x7DEF},+    {0xB0DF, 0x80C3},+    {0xB0E0, 0x840E},+    {0xB0E1, 0x8863},+    {0xB0E2, 0x8B02},+    {0xB0E3, 0x9055},+    {0xB0E4, 0x907A},+    {0xB0E5, 0x533B},+    {0xB0E6, 0x4E95},+    {0xB0E7, 0x4EA5},+    {0xB0E8, 0x57DF},+    {0xB0E9, 0x80B2},+    {0xB0EA, 0x90C1},+    {0xB0EB, 0x78EF},+    {0xB0EC, 0x4E00},+    {0xB0ED, 0x58F1},+    {0xB0EE, 0x6EA2},+    {0xB0EF, 0x9038},+    {0xB0F0, 0x7A32},+    {0xB0F1, 0x8328},+    {0xB0F2, 0x828B},+    {0xB0F3, 0x9C2F},+    {0xB0F4, 0x5141},+    {0xB0F5, 0x5370},+    {0xB0F6, 0x54BD},+    {0xB0F7, 0x54E1},+    {0xB0F8, 0x56E0},+    {0xB0F9, 0x59FB},+    {0xB0FA, 0x5F15},+    {0xB0FB, 0x98F2},+    {0xB0FC, 0x6DEB},+    {0xB0FD, 0x80E4},+    {0xB0FE, 0x852D},+    {0xB1A1, 0x9662},+    {0xB1A2, 0x9670},+    {0xB1A3, 0x96A0},+    {0xB1A4, 0x97FB},+    {0xB1A5, 0x540B},+    {0xB1A6, 0x53F3},+    {0xB1A7, 0x5B87},+    {0xB1A8, 0x70CF},+    {0xB1A9, 0x7FBD},+    {0xB1AA, 0x8FC2},+    {0xB1AB, 0x96E8},+    {0xB1AC, 0x536F},+    {0xB1AD, 0x9D5C},+    {0xB1AE, 0x7ABA},+    {0xB1AF, 0x4E11},+    {0xB1B0, 0x7893},+    {0xB1B1, 0x81FC},+    {0xB1B2, 0x6E26},+    {0xB1B3, 0x5618},+    {0xB1B4, 0x5504},+    {0xB1B5, 0x6B1D},+    {0xB1B6, 0x851A},+    {0xB1B7, 0x9C3B},+    {0xB1B8, 0x59E5},+    {0xB1B9, 0x53A9},+    {0xB1BA, 0x6D66},+    {0xB1BB, 0x74DC},+    {0xB1BC, 0x958F},+    {0xB1BD, 0x5642},+    {0xB1BE, 0x4E91},+    {0xB1BF, 0x904B},+    {0xB1C0, 0x96F2},+    {0xB1C1, 0x834F},+    {0xB1C2, 0x990C},+    {0xB1C3, 0x53E1},+    {0xB1C4, 0x55B6},+    {0xB1C5, 0x5B30},+    {0xB1C6, 0x5F71},+    {0xB1C7, 0x6620},+    {0xB1C8, 0x66F3},+    {0xB1C9, 0x6804},+    {0xB1CA, 0x6C38},+    {0xB1CB, 0x6CF3},+    {0xB1CC, 0x6D29},+    {0xB1CD, 0x745B},+    {0xB1CE, 0x76C8},+    {0xB1CF, 0x7A4E},+    {0xB1D0, 0x9834},+    {0xB1D1, 0x82F1},+    {0xB1D2, 0x885B},+    {0xB1D3, 0x8A60},+    {0xB1D4, 0x92ED},+    {0xB1D5, 0x6DB2},+    {0xB1D6, 0x75AB},+    {0xB1D7, 0x76CA},+    {0xB1D8, 0x99C5},+    {0xB1D9, 0x60A6},+    {0xB1DA, 0x8B01},+    {0xB1DB, 0x8D8A},+    {0xB1DC, 0x95B2},+    {0xB1DD, 0x698E},+    {0xB1DE, 0x53AD},+    {0xB1DF, 0x5186},+    {0xB1E0, 0x5712},+    {0xB1E1, 0x5830},+    {0xB1E2, 0x5944},+    {0xB1E3, 0x5BB4},+    {0xB1E4, 0x5EF6},+    {0xB1E5, 0x6028},+    {0xB1E6, 0x63A9},+    {0xB1E7, 0x63F4},+    {0xB1E8, 0x6CBF},+    {0xB1E9, 0x6F14},+    {0xB1EA, 0x708E},+    {0xB1EB, 0x7114},+    {0xB1EC, 0x7159},+    {0xB1ED, 0x71D5},+    {0xB1EE, 0x733F},+    {0xB1EF, 0x7E01},+    {0xB1F0, 0x8276},+    {0xB1F1, 0x82D1},+    {0xB1F2, 0x8597},+    {0xB1F3, 0x9060},+    {0xB1F4, 0x925B},+    {0xB1F5, 0x9D1B},+    {0xB1F6, 0x5869},+    {0xB1F7, 0x65BC},+    {0xB1F8, 0x6C5A},+    {0xB1F9, 0x7525},+    {0xB1FA, 0x51F9},+    {0xB1FB, 0x592E},+    {0xB1FC, 0x5965},+    {0xB1FD, 0x5F80},+    {0xB1FE, 0x5FDC},+    {0xB2A1, 0x62BC},+    {0xB2A2, 0x65FA},+    {0xB2A3, 0x6A2A},+    {0xB2A4, 0x6B27},+    {0xB2A5, 0x6BB4},+    {0xB2A6, 0x738B},+    {0xB2A7, 0x7FC1},+    {0xB2A8, 0x8956},+    {0xB2A9, 0x9D2C},+    {0xB2AA, 0x9D0E},+    {0xB2AB, 0x9EC4},+    {0xB2AC, 0x5CA1},+    {0xB2AD, 0x6C96},+    {0xB2AE, 0x837B},+    {0xB2AF, 0x5104},+    {0xB2B0, 0x5C4B},+    {0xB2B1, 0x61B6},+    {0xB2B2, 0x81C6},+    {0xB2B3, 0x6876},+    {0xB2B4, 0x7261},+    {0xB2B5, 0x4E59},+    {0xB2B6, 0x4FFA},+    {0xB2B7, 0x5378},+    {0xB2B8, 0x6069},+    {0xB2B9, 0x6E29},+    {0xB2BA, 0x7A4F},+    {0xB2BB, 0x97F3},+    {0xB2BC, 0x4E0B},+    {0xB2BD, 0x5316},+    {0xB2BE, 0x4EEE},+    {0xB2BF, 0x4F55},+    {0xB2C0, 0x4F3D},+    {0xB2C1, 0x4FA1},+    {0xB2C2, 0x4F73},+    {0xB2C3, 0x52A0},+    {0xB2C4, 0x53EF},+    {0xB2C5, 0x5609},+    {0xB2C6, 0x590F},+    {0xB2C7, 0x5AC1},+    {0xB2C8, 0x5BB6},+    {0xB2C9, 0x5BE1},+    {0xB2CA, 0x79D1},+    {0xB2CB, 0x6687},+    {0xB2CC, 0x679C},+    {0xB2CD, 0x67B6},+    {0xB2CE, 0x6B4C},+    {0xB2CF, 0x6CB3},+    {0xB2D0, 0x706B},+    {0xB2D1, 0x73C2},+    {0xB2D2, 0x798D},+    {0xB2D3, 0x79BE},+    {0xB2D4, 0x7A3C},+    {0xB2D5, 0x7B87},+    {0xB2D6, 0x82B1},+    {0xB2D7, 0x82DB},+    {0xB2D8, 0x8304},+    {0xB2D9, 0x8377},+    {0xB2DA, 0x83EF},+    {0xB2DB, 0x83D3},+    {0xB2DC, 0x8766},+    {0xB2DD, 0x8AB2},+    {0xB2DE, 0x5629},+    {0xB2DF, 0x8CA8},+    {0xB2E0, 0x8FE6},+    {0xB2E1, 0x904E},+    {0xB2E2, 0x971E},+    {0xB2E3, 0x868A},+    {0xB2E4, 0x4FC4},+    {0xB2E5, 0x5CE8},+    {0xB2E6, 0x6211},+    {0xB2E7, 0x7259},+    {0xB2E8, 0x753B},+    {0xB2E9, 0x81E5},+    {0xB2EA, 0x82BD},+    {0xB2EB, 0x86FE},+    {0xB2EC, 0x8CC0},+    {0xB2ED, 0x96C5},+    {0xB2EE, 0x9913},+    {0xB2EF, 0x99D5},+    {0xB2F0, 0x4ECB},+    {0xB2F1, 0x4F1A},+    {0xB2F2, 0x89E3},+    {0xB2F3, 0x56DE},+    {0xB2F4, 0x584A},+    {0xB2F5, 0x58CA},+    {0xB2F6, 0x5EFB},+    {0xB2F7, 0x5FEB},+    {0xB2F8, 0x602A},+    {0xB2F9, 0x6094},+    {0xB2FA, 0x6062},+    {0xB2FB, 0x61D0},+    {0xB2FC, 0x6212},+    {0xB2FD, 0x62D0},+    {0xB2FE, 0x6539},+    {0xB3A1, 0x9B41},+    {0xB3A2, 0x6666},+    {0xB3A3, 0x68B0},+    {0xB3A4, 0x6D77},+    {0xB3A5, 0x7070},+    {0xB3A6, 0x754C},+    {0xB3A7, 0x7686},+    {0xB3A8, 0x7D75},+    {0xB3A9, 0x82A5},+    {0xB3AA, 0x87F9},+    {0xB3AB, 0x958B},+    {0xB3AC, 0x968E},+    {0xB3AD, 0x8C9D},+    {0xB3AE, 0x51F1},+    {0xB3AF, 0x52BE},+    {0xB3B0, 0x5916},+    {0xB3B1, 0x54B3},+    {0xB3B2, 0x5BB3},+    {0xB3B3, 0x5D16},+    {0xB3B4, 0x6168},+    {0xB3B5, 0x6982},+    {0xB3B6, 0x6DAF},+    {0xB3B7, 0x788D},+    {0xB3B8, 0x84CB},+    {0xB3B9, 0x8857},+    {0xB3BA, 0x8A72},+    {0xB3BB, 0x93A7},+    {0xB3BC, 0x9AB8},+    {0xB3BD, 0x6D6C},+    {0xB3BE, 0x99A8},+    {0xB3BF, 0x86D9},+    {0xB3C0, 0x57A3},+    {0xB3C1, 0x67FF},+    {0xB3C2, 0x86CE},+    {0xB3C3, 0x920E},+    {0xB3C4, 0x5283},+    {0xB3C5, 0x5687},+    {0xB3C6, 0x5404},+    {0xB3C7, 0x5ED3},+    {0xB3C8, 0x62E1},+    {0xB3C9, 0x64B9},+    {0xB3CA, 0x683C},+    {0xB3CB, 0x6838},+    {0xB3CC, 0x6BBB},+    {0xB3CD, 0x7372},+    {0xB3CE, 0x78BA},+    {0xB3CF, 0x7A6B},+    {0xB3D0, 0x899A},+    {0xB3D1, 0x89D2},+    {0xB3D2, 0x8D6B},+    {0xB3D3, 0x8F03},+    {0xB3D4, 0x90ED},+    {0xB3D5, 0x95A3},+    {0xB3D6, 0x9694},+    {0xB3D7, 0x9769},+    {0xB3D8, 0x5B66},+    {0xB3D9, 0x5CB3},+    {0xB3DA, 0x697D},+    {0xB3DB, 0x984D},+    {0xB3DC, 0x984E},+    {0xB3DD, 0x639B},+    {0xB3DE, 0x7B20},+    {0xB3DF, 0x6A2B},+    {0xB3E0, 0x6A7F},+    {0xB3E1, 0x68B6},+    {0xB3E2, 0x9C0D},+    {0xB3E3, 0x6F5F},+    {0xB3E4, 0x5272},+    {0xB3E5, 0x559D},+    {0xB3E6, 0x6070},+    {0xB3E7, 0x62EC},+    {0xB3E8, 0x6D3B},+    {0xB3E9, 0x6E07},+    {0xB3EA, 0x6ED1},+    {0xB3EB, 0x845B},+    {0xB3EC, 0x8910},+    {0xB3ED, 0x8F44},+    {0xB3EE, 0x4E14},+    {0xB3EF, 0x9C39},+    {0xB3F0, 0x53F6},+    {0xB3F1, 0x691B},+    {0xB3F2, 0x6A3A},+    {0xB3F3, 0x9784},+    {0xB3F4, 0x682A},+    {0xB3F5, 0x515C},+    {0xB3F6, 0x7AC3},+    {0xB3F7, 0x84B2},+    {0xB3F8, 0x91DC},+    {0xB3F9, 0x938C},+    {0xB3FA, 0x565B},+    {0xB3FB, 0x9D28},+    {0xB3FC, 0x6822},+    {0xB3FD, 0x8305},+    {0xB3FE, 0x8431},+    {0xB4A1, 0x7CA5},+    {0xB4A2, 0x5208},+    {0xB4A3, 0x82C5},+    {0xB4A4, 0x74E6},+    {0xB4A5, 0x4E7E},+    {0xB4A6, 0x4F83},+    {0xB4A7, 0x51A0},+    {0xB4A8, 0x5BD2},+    {0xB4A9, 0x520A},+    {0xB4AA, 0x52D8},+    {0xB4AB, 0x52E7},+    {0xB4AC, 0x5DFB},+    {0xB4AD, 0x559A},+    {0xB4AE, 0x582A},+    {0xB4AF, 0x59E6},+    {0xB4B0, 0x5B8C},+    {0xB4B1, 0x5B98},+    {0xB4B2, 0x5BDB},+    {0xB4B3, 0x5E72},+    {0xB4B4, 0x5E79},+    {0xB4B5, 0x60A3},+    {0xB4B6, 0x611F},+    {0xB4B7, 0x6163},+    {0xB4B8, 0x61BE},+    {0xB4B9, 0x63DB},+    {0xB4BA, 0x6562},+    {0xB4BB, 0x67D1},+    {0xB4BC, 0x6853},+    {0xB4BD, 0x68FA},+    {0xB4BE, 0x6B3E},+    {0xB4BF, 0x6B53},+    {0xB4C0, 0x6C57},+    {0xB4C1, 0x6F22},+    {0xB4C2, 0x6F97},+    {0xB4C3, 0x6F45},+    {0xB4C4, 0x74B0},+    {0xB4C5, 0x7518},+    {0xB4C6, 0x76E3},+    {0xB4C7, 0x770B},+    {0xB4C8, 0x7AFF},+    {0xB4C9, 0x7BA1},+    {0xB4CA, 0x7C21},+    {0xB4CB, 0x7DE9},+    {0xB4CC, 0x7F36},+    {0xB4CD, 0x7FF0},+    {0xB4CE, 0x809D},+    {0xB4CF, 0x8266},+    {0xB4D0, 0x839E},+    {0xB4D1, 0x89B3},+    {0xB4D2, 0x8ACC},+    {0xB4D3, 0x8CAB},+    {0xB4D4, 0x9084},+    {0xB4D5, 0x9451},+    {0xB4D6, 0x9593},+    {0xB4D7, 0x9591},+    {0xB4D8, 0x95A2},+    {0xB4D9, 0x9665},+    {0xB4DA, 0x97D3},+    {0xB4DB, 0x9928},+    {0xB4DC, 0x8218},+    {0xB4DD, 0x4E38},+    {0xB4DE, 0x542B},+    {0xB4DF, 0x5CB8},+    {0xB4E0, 0x5DCC},+    {0xB4E1, 0x73A9},+    {0xB4E2, 0x764C},+    {0xB4E3, 0x773C},+    {0xB4E4, 0x5CA9},+    {0xB4E5, 0x7FEB},+    {0xB4E6, 0x8D0B},+    {0xB4E7, 0x96C1},+    {0xB4E8, 0x9811},+    {0xB4E9, 0x9854},+    {0xB4EA, 0x9858},+    {0xB4EB, 0x4F01},+    {0xB4EC, 0x4F0E},+    {0xB4ED, 0x5371},+    {0xB4EE, 0x559C},+    {0xB4EF, 0x5668},+    {0xB4F0, 0x57FA},+    {0xB4F1, 0x5947},+    {0xB4F2, 0x5B09},+    {0xB4F3, 0x5BC4},+    {0xB4F4, 0x5C90},+    {0xB4F5, 0x5E0C},+    {0xB4F6, 0x5E7E},+    {0xB4F7, 0x5FCC},+    {0xB4F8, 0x63EE},+    {0xB4F9, 0x673A},+    {0xB4FA, 0x65D7},+    {0xB4FB, 0x65E2},+    {0xB4FC, 0x671F},+    {0xB4FD, 0x68CB},+    {0xB4FE, 0x68C4},+    {0xB5A1, 0x6A5F},+    {0xB5A2, 0x5E30},+    {0xB5A3, 0x6BC5},+    {0xB5A4, 0x6C17},+    {0xB5A5, 0x6C7D},+    {0xB5A6, 0x757F},+    {0xB5A7, 0x7948},+    {0xB5A8, 0x5B63},+    {0xB5A9, 0x7A00},+    {0xB5AA, 0x7D00},+    {0xB5AB, 0x5FBD},+    {0xB5AC, 0x898F},+    {0xB5AD, 0x8A18},+    {0xB5AE, 0x8CB4},+    {0xB5AF, 0x8D77},+    {0xB5B0, 0x8ECC},+    {0xB5B1, 0x8F1D},+    {0xB5B2, 0x98E2},+    {0xB5B3, 0x9A0E},+    {0xB5B4, 0x9B3C},+    {0xB5B5, 0x4E80},+    {0xB5B6, 0x507D},+    {0xB5B7, 0x5100},+    {0xB5B8, 0x5993},+    {0xB5B9, 0x5B9C},+    {0xB5BA, 0x622F},+    {0xB5BB, 0x6280},+    {0xB5BC, 0x64EC},+    {0xB5BD, 0x6B3A},+    {0xB5BE, 0x72A0},+    {0xB5BF, 0x7591},+    {0xB5C0, 0x7947},+    {0xB5C1, 0x7FA9},+    {0xB5C2, 0x87FB},+    {0xB5C3, 0x8ABC},+    {0xB5C4, 0x8B70},+    {0xB5C5, 0x63AC},+    {0xB5C6, 0x83CA},+    {0xB5C7, 0x97A0},+    {0xB5C8, 0x5409},+    {0xB5C9, 0x5403},+    {0xB5CA, 0x55AB},+    {0xB5CB, 0x6854},+    {0xB5CC, 0x6A58},+    {0xB5CD, 0x8A70},+    {0xB5CE, 0x7827},+    {0xB5CF, 0x6775},+    {0xB5D0, 0x9ECD},+    {0xB5D1, 0x5374},+    {0xB5D2, 0x5BA2},+    {0xB5D3, 0x811A},+    {0xB5D4, 0x8650},+    {0xB5D5, 0x9006},+    {0xB5D6, 0x4E18},+    {0xB5D7, 0x4E45},+    {0xB5D8, 0x4EC7},+    {0xB5D9, 0x4F11},+    {0xB5DA, 0x53CA},+    {0xB5DB, 0x5438},+    {0xB5DC, 0x5BAE},+    {0xB5DD, 0x5F13},+    {0xB5DE, 0x6025},+    {0xB5DF, 0x6551},+    {0xB5E0, 0x673D},+    {0xB5E1, 0x6C42},+    {0xB5E2, 0x6C72},+    {0xB5E3, 0x6CE3},+    {0xB5E4, 0x7078},+    {0xB5E5, 0x7403},+    {0xB5E6, 0x7A76},+    {0xB5E7, 0x7AAE},+    {0xB5E8, 0x7B08},+    {0xB5E9, 0x7D1A},+    {0xB5EA, 0x7CFE},+    {0xB5EB, 0x7D66},+    {0xB5EC, 0x65E7},+    {0xB5ED, 0x725B},+    {0xB5EE, 0x53BB},+    {0xB5EF, 0x5C45},+    {0xB5F0, 0x5DE8},+    {0xB5F1, 0x62D2},+    {0xB5F2, 0x62E0},+    {0xB5F3, 0x6319},+    {0xB5F4, 0x6E20},+    {0xB5F5, 0x865A},+    {0xB5F6, 0x8A31},+    {0xB5F7, 0x8DDD},+    {0xB5F8, 0x92F8},+    {0xB5F9, 0x6F01},+    {0xB5FA, 0x79A6},+    {0xB5FB, 0x9B5A},+    {0xB5FC, 0x4EA8},+    {0xB5FD, 0x4EAB},+    {0xB5FE, 0x4EAC},+    {0xB6A1, 0x4F9B},+    {0xB6A2, 0x4FA0},+    {0xB6A3, 0x50D1},+    {0xB6A4, 0x5147},+    {0xB6A5, 0x7AF6},+    {0xB6A6, 0x5171},+    {0xB6A7, 0x51F6},+    {0xB6A8, 0x5354},+    {0xB6A9, 0x5321},+    {0xB6AA, 0x537F},+    {0xB6AB, 0x53EB},+    {0xB6AC, 0x55AC},+    {0xB6AD, 0x5883},+    {0xB6AE, 0x5CE1},+    {0xB6AF, 0x5F37},+    {0xB6B0, 0x5F4A},+    {0xB6B1, 0x602F},+    {0xB6B2, 0x6050},+    {0xB6B3, 0x606D},+    {0xB6B4, 0x631F},+    {0xB6B5, 0x6559},+    {0xB6B6, 0x6A4B},+    {0xB6B7, 0x6CC1},+    {0xB6B8, 0x72C2},+    {0xB6B9, 0x72ED},+    {0xB6BA, 0x77EF},+    {0xB6BB, 0x80F8},+    {0xB6BC, 0x8105},+    {0xB6BD, 0x8208},+    {0xB6BE, 0x854E},+    {0xB6BF, 0x90F7},+    {0xB6C0, 0x93E1},+    {0xB6C1, 0x97FF},+    {0xB6C2, 0x9957},+    {0xB6C3, 0x9A5A},+    {0xB6C4, 0x4EF0},+    {0xB6C5, 0x51DD},+    {0xB6C6, 0x5C2D},+    {0xB6C7, 0x6681},+    {0xB6C8, 0x696D},+    {0xB6C9, 0x5C40},+    {0xB6CA, 0x66F2},+    {0xB6CB, 0x6975},+    {0xB6CC, 0x7389},+    {0xB6CD, 0x6850},+    {0xB6CE, 0x7C81},+    {0xB6CF, 0x50C5},+    {0xB6D0, 0x52E4},+    {0xB6D1, 0x5747},+    {0xB6D2, 0x5DFE},+    {0xB6D3, 0x9326},+    {0xB6D4, 0x65A4},+    {0xB6D5, 0x6B23},+    {0xB6D6, 0x6B3D},+    {0xB6D7, 0x7434},+    {0xB6D8, 0x7981},+    {0xB6D9, 0x79BD},+    {0xB6DA, 0x7B4B},+    {0xB6DB, 0x7DCA},+    {0xB6DC, 0x82B9},+    {0xB6DD, 0x83CC},+    {0xB6DE, 0x887F},+    {0xB6DF, 0x895F},+    {0xB6E0, 0x8B39},+    {0xB6E1, 0x8FD1},+    {0xB6E2, 0x91D1},+    {0xB6E3, 0x541F},+    {0xB6E4, 0x9280},+    {0xB6E5, 0x4E5D},+    {0xB6E6, 0x5036},+    {0xB6E7, 0x53E5},+    {0xB6E8, 0x533A},+    {0xB6E9, 0x72D7},+    {0xB6EA, 0x7396},+    {0xB6EB, 0x77E9},+    {0xB6EC, 0x82E6},+    {0xB6ED, 0x8EAF},+    {0xB6EE, 0x99C6},+    {0xB6EF, 0x99C8},+    {0xB6F0, 0x99D2},+    {0xB6F1, 0x5177},+    {0xB6F2, 0x611A},+    {0xB6F3, 0x865E},+    {0xB6F4, 0x55B0},+    {0xB6F5, 0x7A7A},+    {0xB6F6, 0x5076},+    {0xB6F7, 0x5BD3},+    {0xB6F8, 0x9047},+    {0xB6F9, 0x9685},+    {0xB6FA, 0x4E32},+    {0xB6FB, 0x6ADB},+    {0xB6FC, 0x91E7},+    {0xB6FD, 0x5C51},+    {0xB6FE, 0x5C48},+    {0xB7A1, 0x6398},+    {0xB7A2, 0x7A9F},+    {0xB7A3, 0x6C93},+    {0xB7A4, 0x9774},+    {0xB7A5, 0x8F61},+    {0xB7A6, 0x7AAA},+    {0xB7A7, 0x718A},+    {0xB7A8, 0x9688},+    {0xB7A9, 0x7C82},+    {0xB7AA, 0x6817},+    {0xB7AB, 0x7E70},+    {0xB7AC, 0x6851},+    {0xB7AD, 0x936C},+    {0xB7AE, 0x52F2},+    {0xB7AF, 0x541B},+    {0xB7B0, 0x85AB},+    {0xB7B1, 0x8A13},+    {0xB7B2, 0x7FA4},+    {0xB7B3, 0x8ECD},+    {0xB7B4, 0x90E1},+    {0xB7B5, 0x5366},+    {0xB7B6, 0x8888},+    {0xB7B7, 0x7941},+    {0xB7B8, 0x4FC2},+    {0xB7B9, 0x50BE},+    {0xB7BA, 0x5211},+    {0xB7BB, 0x5144},+    {0xB7BC, 0x5553},+    {0xB7BD, 0x572D},+    {0xB7BE, 0x73EA},+    {0xB7BF, 0x578B},+    {0xB7C0, 0x5951},+    {0xB7C1, 0x5F62},+    {0xB7C2, 0x5F84},+    {0xB7C3, 0x6075},+    {0xB7C4, 0x6176},+    {0xB7C5, 0x6167},+    {0xB7C6, 0x61A9},+    {0xB7C7, 0x63B2},+    {0xB7C8, 0x643A},+    {0xB7C9, 0x656C},+    {0xB7CA, 0x666F},+    {0xB7CB, 0x6842},+    {0xB7CC, 0x6E13},+    {0xB7CD, 0x7566},+    {0xB7CE, 0x7A3D},+    {0xB7CF, 0x7CFB},+    {0xB7D0, 0x7D4C},+    {0xB7D1, 0x7D99},+    {0xB7D2, 0x7E4B},+    {0xB7D3, 0x7F6B},+    {0xB7D4, 0x830E},+    {0xB7D5, 0x834A},+    {0xB7D6, 0x86CD},+    {0xB7D7, 0x8A08},+    {0xB7D8, 0x8A63},+    {0xB7D9, 0x8B66},+    {0xB7DA, 0x8EFD},+    {0xB7DB, 0x981A},+    {0xB7DC, 0x9D8F},+    {0xB7DD, 0x82B8},+    {0xB7DE, 0x8FCE},+    {0xB7DF, 0x9BE8},+    {0xB7E0, 0x5287},+    {0xB7E1, 0x621F},+    {0xB7E2, 0x6483},+    {0xB7E3, 0x6FC0},+    {0xB7E4, 0x9699},+    {0xB7E5, 0x6841},+    {0xB7E6, 0x5091},+    {0xB7E7, 0x6B20},+    {0xB7E8, 0x6C7A},+    {0xB7E9, 0x6F54},+    {0xB7EA, 0x7A74},+    {0xB7EB, 0x7D50},+    {0xB7EC, 0x8840},+    {0xB7ED, 0x8A23},+    {0xB7EE, 0x6708},+    {0xB7EF, 0x4EF6},+    {0xB7F0, 0x5039},+    {0xB7F1, 0x5026},+    {0xB7F2, 0x5065},+    {0xB7F3, 0x517C},+    {0xB7F4, 0x5238},+    {0xB7F5, 0x5263},+    {0xB7F6, 0x55A7},+    {0xB7F7, 0x570F},+    {0xB7F8, 0x5805},+    {0xB7F9, 0x5ACC},+    {0xB7FA, 0x5EFA},+    {0xB7FB, 0x61B2},+    {0xB7FC, 0x61F8},+    {0xB7FD, 0x62F3},+    {0xB7FE, 0x6372},+    {0xB8A1, 0x691C},+    {0xB8A2, 0x6A29},+    {0xB8A3, 0x727D},+    {0xB8A4, 0x72AC},+    {0xB8A5, 0x732E},+    {0xB8A6, 0x7814},+    {0xB8A7, 0x786F},+    {0xB8A8, 0x7D79},+    {0xB8A9, 0x770C},+    {0xB8AA, 0x80A9},+    {0xB8AB, 0x898B},+    {0xB8AC, 0x8B19},+    {0xB8AD, 0x8CE2},+    {0xB8AE, 0x8ED2},+    {0xB8AF, 0x9063},+    {0xB8B0, 0x9375},+    {0xB8B1, 0x967A},+    {0xB8B2, 0x9855},+    {0xB8B3, 0x9A13},+    {0xB8B4, 0x9E78},+    {0xB8B5, 0x5143},+    {0xB8B6, 0x539F},+    {0xB8B7, 0x53B3},+    {0xB8B8, 0x5E7B},+    {0xB8B9, 0x5F26},+    {0xB8BA, 0x6E1B},+    {0xB8BB, 0x6E90},+    {0xB8BC, 0x7384},+    {0xB8BD, 0x73FE},+    {0xB8BE, 0x7D43},+    {0xB8BF, 0x8237},+    {0xB8C0, 0x8A00},+    {0xB8C1, 0x8AFA},+    {0xB8C2, 0x9650},+    {0xB8C3, 0x4E4E},+    {0xB8C4, 0x500B},+    {0xB8C5, 0x53E4},+    {0xB8C6, 0x547C},+    {0xB8C7, 0x56FA},+    {0xB8C8, 0x59D1},+    {0xB8C9, 0x5B64},+    {0xB8CA, 0x5DF1},+    {0xB8CB, 0x5EAB},+    {0xB8CC, 0x5F27},+    {0xB8CD, 0x6238},+    {0xB8CE, 0x6545},+    {0xB8CF, 0x67AF},+    {0xB8D0, 0x6E56},+    {0xB8D1, 0x72D0},+    {0xB8D2, 0x7CCA},+    {0xB8D3, 0x88B4},+    {0xB8D4, 0x80A1},+    {0xB8D5, 0x80E1},+    {0xB8D6, 0x83F0},+    {0xB8D7, 0x864E},+    {0xB8D8, 0x8A87},+    {0xB8D9, 0x8DE8},+    {0xB8DA, 0x9237},+    {0xB8DB, 0x96C7},+    {0xB8DC, 0x9867},+    {0xB8DD, 0x9F13},+    {0xB8DE, 0x4E94},+    {0xB8DF, 0x4E92},+    {0xB8E0, 0x4F0D},+    {0xB8E1, 0x5348},+    {0xB8E2, 0x5449},+    {0xB8E3, 0x543E},+    {0xB8E4, 0x5A2F},+    {0xB8E5, 0x5F8C},+    {0xB8E6, 0x5FA1},+    {0xB8E7, 0x609F},+    {0xB8E8, 0x68A7},+    {0xB8E9, 0x6A8E},+    {0xB8EA, 0x745A},+    {0xB8EB, 0x7881},+    {0xB8EC, 0x8A9E},+    {0xB8ED, 0x8AA4},+    {0xB8EE, 0x8B77},+    {0xB8EF, 0x9190},+    {0xB8F0, 0x4E5E},+    {0xB8F1, 0x9BC9},+    {0xB8F2, 0x4EA4},+    {0xB8F3, 0x4F7C},+    {0xB8F4, 0x4FAF},+    {0xB8F5, 0x5019},+    {0xB8F6, 0x5016},+    {0xB8F7, 0x5149},+    {0xB8F8, 0x516C},+    {0xB8F9, 0x529F},+    {0xB8FA, 0x52B9},+    {0xB8FB, 0x52FE},+    {0xB8FC, 0x539A},+    {0xB8FD, 0x53E3},+    {0xB8FE, 0x5411},+    {0xB9A1, 0x540E},+    {0xB9A2, 0x5589},+    {0xB9A3, 0x5751},+    {0xB9A4, 0x57A2},+    {0xB9A5, 0x597D},+    {0xB9A6, 0x5B54},+    {0xB9A7, 0x5B5D},+    {0xB9A8, 0x5B8F},+    {0xB9A9, 0x5DE5},+    {0xB9AA, 0x5DE7},+    {0xB9AB, 0x5DF7},+    {0xB9AC, 0x5E78},+    {0xB9AD, 0x5E83},+    {0xB9AE, 0x5E9A},+    {0xB9AF, 0x5EB7},+    {0xB9B0, 0x5F18},+    {0xB9B1, 0x6052},+    {0xB9B2, 0x614C},+    {0xB9B3, 0x6297},+    {0xB9B4, 0x62D8},+    {0xB9B5, 0x63A7},+    {0xB9B6, 0x653B},+    {0xB9B7, 0x6602},+    {0xB9B8, 0x6643},+    {0xB9B9, 0x66F4},+    {0xB9BA, 0x676D},+    {0xB9BB, 0x6821},+    {0xB9BC, 0x6897},+    {0xB9BD, 0x69CB},+    {0xB9BE, 0x6C5F},+    {0xB9BF, 0x6D2A},+    {0xB9C0, 0x6D69},+    {0xB9C1, 0x6E2F},+    {0xB9C2, 0x6E9D},+    {0xB9C3, 0x7532},+    {0xB9C4, 0x7687},+    {0xB9C5, 0x786C},+    {0xB9C6, 0x7A3F},+    {0xB9C7, 0x7CE0},+    {0xB9C8, 0x7D05},+    {0xB9C9, 0x7D18},+    {0xB9CA, 0x7D5E},+    {0xB9CB, 0x7DB1},+    {0xB9CC, 0x8015},+    {0xB9CD, 0x8003},+    {0xB9CE, 0x80AF},+    {0xB9CF, 0x80B1},+    {0xB9D0, 0x8154},+    {0xB9D1, 0x818F},+    {0xB9D2, 0x822A},+    {0xB9D3, 0x8352},+    {0xB9D4, 0x884C},+    {0xB9D5, 0x8861},+    {0xB9D6, 0x8B1B},+    {0xB9D7, 0x8CA2},+    {0xB9D8, 0x8CFC},+    {0xB9D9, 0x90CA},+    {0xB9DA, 0x9175},+    {0xB9DB, 0x9271},+    {0xB9DC, 0x783F},+    {0xB9DD, 0x92FC},+    {0xB9DE, 0x95A4},+    {0xB9DF, 0x964D},+    {0xB9E0, 0x9805},+    {0xB9E1, 0x9999},+    {0xB9E2, 0x9AD8},+    {0xB9E3, 0x9D3B},+    {0xB9E4, 0x525B},+    {0xB9E5, 0x52AB},+    {0xB9E6, 0x53F7},+    {0xB9E7, 0x5408},+    {0xB9E8, 0x58D5},+    {0xB9E9, 0x62F7},+    {0xB9EA, 0x6FE0},+    {0xB9EB, 0x8C6A},+    {0xB9EC, 0x8F5F},+    {0xB9ED, 0x9EB9},+    {0xB9EE, 0x514B},+    {0xB9EF, 0x523B},+    {0xB9F0, 0x544A},+    {0xB9F1, 0x56FD},+    {0xB9F2, 0x7A40},+    {0xB9F3, 0x9177},+    {0xB9F4, 0x9D60},+    {0xB9F5, 0x9ED2},+    {0xB9F6, 0x7344},+    {0xB9F7, 0x6F09},+    {0xB9F8, 0x8170},+    {0xB9F9, 0x7511},+    {0xB9FA, 0x5FFD},+    {0xB9FB, 0x60DA},+    {0xB9FC, 0x9AA8},+    {0xB9FD, 0x72DB},+    {0xB9FE, 0x8FBC},+    {0xBAA1, 0x6B64},+    {0xBAA2, 0x9803},+    {0xBAA3, 0x4ECA},+    {0xBAA4, 0x56F0},+    {0xBAA5, 0x5764},+    {0xBAA6, 0x58BE},+    {0xBAA7, 0x5A5A},+    {0xBAA8, 0x6068},+    {0xBAA9, 0x61C7},+    {0xBAAA, 0x660F},+    {0xBAAB, 0x6606},+    {0xBAAC, 0x6839},+    {0xBAAD, 0x68B1},+    {0xBAAE, 0x6DF7},+    {0xBAAF, 0x75D5},+    {0xBAB0, 0x7D3A},+    {0xBAB1, 0x826E},+    {0xBAB2, 0x9B42},+    {0xBAB3, 0x4E9B},+    {0xBAB4, 0x4F50},+    {0xBAB5, 0x53C9},+    {0xBAB6, 0x5506},+    {0xBAB7, 0x5D6F},+    {0xBAB8, 0x5DE6},+    {0xBAB9, 0x5DEE},+    {0xBABA, 0x67FB},+    {0xBABB, 0x6C99},+    {0xBABC, 0x7473},+    {0xBABD, 0x7802},+    {0xBABE, 0x8A50},+    {0xBABF, 0x9396},+    {0xBAC0, 0x88DF},+    {0xBAC1, 0x5750},+    {0xBAC2, 0x5EA7},+    {0xBAC3, 0x632B},+    {0xBAC4, 0x50B5},+    {0xBAC5, 0x50AC},+    {0xBAC6, 0x518D},+    {0xBAC7, 0x6700},+    {0xBAC8, 0x54C9},+    {0xBAC9, 0x585E},+    {0xBACA, 0x59BB},+    {0xBACB, 0x5BB0},+    {0xBACC, 0x5F69},+    {0xBACD, 0x624D},+    {0xBACE, 0x63A1},+    {0xBACF, 0x683D},+    {0xBAD0, 0x6B73},+    {0xBAD1, 0x6E08},+    {0xBAD2, 0x707D},+    {0xBAD3, 0x91C7},+    {0xBAD4, 0x7280},+    {0xBAD5, 0x7815},+    {0xBAD6, 0x7826},+    {0xBAD7, 0x796D},+    {0xBAD8, 0x658E},+    {0xBAD9, 0x7D30},+    {0xBADA, 0x83DC},+    {0xBADB, 0x88C1},+    {0xBADC, 0x8F09},+    {0xBADD, 0x969B},+    {0xBADE, 0x5264},+    {0xBADF, 0x5728},+    {0xBAE0, 0x6750},+    {0xBAE1, 0x7F6A},+    {0xBAE2, 0x8CA1},+    {0xBAE3, 0x51B4},+    {0xBAE4, 0x5742},+    {0xBAE5, 0x962A},+    {0xBAE6, 0x583A},+    {0xBAE7, 0x698A},+    {0xBAE8, 0x80B4},+    {0xBAE9, 0x54B2},+    {0xBAEA, 0x5D0E},+    {0xBAEB, 0x57FC},+    {0xBAEC, 0x7895},+    {0xBAED, 0x9DFA},+    {0xBAEE, 0x4F5C},+    {0xBAEF, 0x524A},+    {0xBAF0, 0x548B},+    {0xBAF1, 0x643E},+    {0xBAF2, 0x6628},+    {0xBAF3, 0x6714},+    {0xBAF4, 0x67F5},+    {0xBAF5, 0x7A84},+    {0xBAF6, 0x7B56},+    {0xBAF7, 0x7D22},+    {0xBAF8, 0x932F},+    {0xBAF9, 0x685C},+    {0xBAFA, 0x9BAD},+    {0xBAFB, 0x7B39},+    {0xBAFC, 0x5319},+    {0xBAFD, 0x518A},+    {0xBAFE, 0x5237},+    {0xBBA1, 0x5BDF},+    {0xBBA2, 0x62F6},+    {0xBBA3, 0x64AE},+    {0xBBA4, 0x64E6},+    {0xBBA5, 0x672D},+    {0xBBA6, 0x6BBA},+    {0xBBA7, 0x85A9},+    {0xBBA8, 0x96D1},+    {0xBBA9, 0x7690},+    {0xBBAA, 0x9BD6},+    {0xBBAB, 0x634C},+    {0xBBAC, 0x9306},+    {0xBBAD, 0x9BAB},+    {0xBBAE, 0x76BF},+    {0xBBAF, 0x6652},+    {0xBBB0, 0x4E09},+    {0xBBB1, 0x5098},+    {0xBBB2, 0x53C2},+    {0xBBB3, 0x5C71},+    {0xBBB4, 0x60E8},+    {0xBBB5, 0x6492},+    {0xBBB6, 0x6563},+    {0xBBB7, 0x685F},+    {0xBBB8, 0x71E6},+    {0xBBB9, 0x73CA},+    {0xBBBA, 0x7523},+    {0xBBBB, 0x7B97},+    {0xBBBC, 0x7E82},+    {0xBBBD, 0x8695},+    {0xBBBE, 0x8B83},+    {0xBBBF, 0x8CDB},+    {0xBBC0, 0x9178},+    {0xBBC1, 0x9910},+    {0xBBC2, 0x65AC},+    {0xBBC3, 0x66AB},+    {0xBBC4, 0x6B8B},+    {0xBBC5, 0x4ED5},+    {0xBBC6, 0x4ED4},+    {0xBBC7, 0x4F3A},+    {0xBBC8, 0x4F7F},+    {0xBBC9, 0x523A},+    {0xBBCA, 0x53F8},+    {0xBBCB, 0x53F2},+    {0xBBCC, 0x55E3},+    {0xBBCD, 0x56DB},+    {0xBBCE, 0x58EB},+    {0xBBCF, 0x59CB},+    {0xBBD0, 0x59C9},+    {0xBBD1, 0x59FF},+    {0xBBD2, 0x5B50},+    {0xBBD3, 0x5C4D},+    {0xBBD4, 0x5E02},+    {0xBBD5, 0x5E2B},+    {0xBBD6, 0x5FD7},+    {0xBBD7, 0x601D},+    {0xBBD8, 0x6307},+    {0xBBD9, 0x652F},+    {0xBBDA, 0x5B5C},+    {0xBBDB, 0x65AF},+    {0xBBDC, 0x65BD},+    {0xBBDD, 0x65E8},+    {0xBBDE, 0x679D},+    {0xBBDF, 0x6B62},+    {0xBBE0, 0x6B7B},+    {0xBBE1, 0x6C0F},+    {0xBBE2, 0x7345},+    {0xBBE3, 0x7949},+    {0xBBE4, 0x79C1},+    {0xBBE5, 0x7CF8},+    {0xBBE6, 0x7D19},+    {0xBBE7, 0x7D2B},+    {0xBBE8, 0x80A2},+    {0xBBE9, 0x8102},+    {0xBBEA, 0x81F3},+    {0xBBEB, 0x8996},+    {0xBBEC, 0x8A5E},+    {0xBBED, 0x8A69},+    {0xBBEE, 0x8A66},+    {0xBBEF, 0x8A8C},+    {0xBBF0, 0x8AEE},+    {0xBBF1, 0x8CC7},+    {0xBBF2, 0x8CDC},+    {0xBBF3, 0x96CC},+    {0xBBF4, 0x98FC},+    {0xBBF5, 0x6B6F},+    {0xBBF6, 0x4E8B},+    {0xBBF7, 0x4F3C},+    {0xBBF8, 0x4F8D},+    {0xBBF9, 0x5150},+    {0xBBFA, 0x5B57},+    {0xBBFB, 0x5BFA},+    {0xBBFC, 0x6148},+    {0xBBFD, 0x6301},+    {0xBBFE, 0x6642},+    {0xBCA1, 0x6B21},+    {0xBCA2, 0x6ECB},+    {0xBCA3, 0x6CBB},+    {0xBCA4, 0x723E},+    {0xBCA5, 0x74BD},+    {0xBCA6, 0x75D4},+    {0xBCA7, 0x78C1},+    {0xBCA8, 0x793A},+    {0xBCA9, 0x800C},+    {0xBCAA, 0x8033},+    {0xBCAB, 0x81EA},+    {0xBCAC, 0x8494},+    {0xBCAD, 0x8F9E},+    {0xBCAE, 0x6C50},+    {0xBCAF, 0x9E7F},+    {0xBCB0, 0x5F0F},+    {0xBCB1, 0x8B58},+    {0xBCB2, 0x9D2B},+    {0xBCB3, 0x7AFA},+    {0xBCB4, 0x8EF8},+    {0xBCB5, 0x5B8D},+    {0xBCB6, 0x96EB},+    {0xBCB7, 0x4E03},+    {0xBCB8, 0x53F1},+    {0xBCB9, 0x57F7},+    {0xBCBA, 0x5931},+    {0xBCBB, 0x5AC9},+    {0xBCBC, 0x5BA4},+    {0xBCBD, 0x6089},+    {0xBCBE, 0x6E7F},+    {0xBCBF, 0x6F06},+    {0xBCC0, 0x75BE},+    {0xBCC1, 0x8CEA},+    {0xBCC2, 0x5B9F},+    {0xBCC3, 0x8500},+    {0xBCC4, 0x7BE0},+    {0xBCC5, 0x5072},+    {0xBCC6, 0x67F4},+    {0xBCC7, 0x829D},+    {0xBCC8, 0x5C61},+    {0xBCC9, 0x854A},+    {0xBCCA, 0x7E1E},+    {0xBCCB, 0x820E},+    {0xBCCC, 0x5199},+    {0xBCCD, 0x5C04},+    {0xBCCE, 0x6368},+    {0xBCCF, 0x8D66},+    {0xBCD0, 0x659C},+    {0xBCD1, 0x716E},+    {0xBCD2, 0x793E},+    {0xBCD3, 0x7D17},+    {0xBCD4, 0x8005},+    {0xBCD5, 0x8B1D},+    {0xBCD6, 0x8ECA},+    {0xBCD7, 0x906E},+    {0xBCD8, 0x86C7},+    {0xBCD9, 0x90AA},+    {0xBCDA, 0x501F},+    {0xBCDB, 0x52FA},+    {0xBCDC, 0x5C3A},+    {0xBCDD, 0x6753},+    {0xBCDE, 0x707C},+    {0xBCDF, 0x7235},+    {0xBCE0, 0x914C},+    {0xBCE1, 0x91C8},+    {0xBCE2, 0x932B},+    {0xBCE3, 0x82E5},+    {0xBCE4, 0x5BC2},+    {0xBCE5, 0x5F31},+    {0xBCE6, 0x60F9},+    {0xBCE7, 0x4E3B},+    {0xBCE8, 0x53D6},+    {0xBCE9, 0x5B88},+    {0xBCEA, 0x624B},+    {0xBCEB, 0x6731},+    {0xBCEC, 0x6B8A},+    {0xBCED, 0x72E9},+    {0xBCEE, 0x73E0},+    {0xBCEF, 0x7A2E},+    {0xBCF0, 0x816B},+    {0xBCF1, 0x8DA3},+    {0xBCF2, 0x9152},+    {0xBCF3, 0x9996},+    {0xBCF4, 0x5112},+    {0xBCF5, 0x53D7},+    {0xBCF6, 0x546A},+    {0xBCF7, 0x5BFF},+    {0xBCF8, 0x6388},+    {0xBCF9, 0x6A39},+    {0xBCFA, 0x7DAC},+    {0xBCFB, 0x9700},+    {0xBCFC, 0x56DA},+    {0xBCFD, 0x53CE},+    {0xBCFE, 0x5468},+    {0xBDA1, 0x5B97},+    {0xBDA2, 0x5C31},+    {0xBDA3, 0x5DDE},+    {0xBDA4, 0x4FEE},+    {0xBDA5, 0x6101},+    {0xBDA6, 0x62FE},+    {0xBDA7, 0x6D32},+    {0xBDA8, 0x79C0},+    {0xBDA9, 0x79CB},+    {0xBDAA, 0x7D42},+    {0xBDAB, 0x7E4D},+    {0xBDAC, 0x7FD2},+    {0xBDAD, 0x81ED},+    {0xBDAE, 0x821F},+    {0xBDAF, 0x8490},+    {0xBDB0, 0x8846},+    {0xBDB1, 0x8972},+    {0xBDB2, 0x8B90},+    {0xBDB3, 0x8E74},+    {0xBDB4, 0x8F2F},+    {0xBDB5, 0x9031},+    {0xBDB6, 0x914B},+    {0xBDB7, 0x916C},+    {0xBDB8, 0x96C6},+    {0xBDB9, 0x919C},+    {0xBDBA, 0x4EC0},+    {0xBDBB, 0x4F4F},+    {0xBDBC, 0x5145},+    {0xBDBD, 0x5341},+    {0xBDBE, 0x5F93},+    {0xBDBF, 0x620E},+    {0xBDC0, 0x67D4},+    {0xBDC1, 0x6C41},+    {0xBDC2, 0x6E0B},+    {0xBDC3, 0x7363},+    {0xBDC4, 0x7E26},+    {0xBDC5, 0x91CD},+    {0xBDC6, 0x9283},+    {0xBDC7, 0x53D4},+    {0xBDC8, 0x5919},+    {0xBDC9, 0x5BBF},+    {0xBDCA, 0x6DD1},+    {0xBDCB, 0x795D},+    {0xBDCC, 0x7E2E},+    {0xBDCD, 0x7C9B},+    {0xBDCE, 0x587E},+    {0xBDCF, 0x719F},+    {0xBDD0, 0x51FA},+    {0xBDD1, 0x8853},+    {0xBDD2, 0x8FF0},+    {0xBDD3, 0x4FCA},+    {0xBDD4, 0x5CFB},+    {0xBDD5, 0x6625},+    {0xBDD6, 0x77AC},+    {0xBDD7, 0x7AE3},+    {0xBDD8, 0x821C},+    {0xBDD9, 0x99FF},+    {0xBDDA, 0x51C6},+    {0xBDDB, 0x5FAA},+    {0xBDDC, 0x65EC},+    {0xBDDD, 0x696F},+    {0xBDDE, 0x6B89},+    {0xBDDF, 0x6DF3},+    {0xBDE0, 0x6E96},+    {0xBDE1, 0x6F64},+    {0xBDE2, 0x76FE},+    {0xBDE3, 0x7D14},+    {0xBDE4, 0x5DE1},+    {0xBDE5, 0x9075},+    {0xBDE6, 0x9187},+    {0xBDE7, 0x9806},+    {0xBDE8, 0x51E6},+    {0xBDE9, 0x521D},+    {0xBDEA, 0x6240},+    {0xBDEB, 0x6691},+    {0xBDEC, 0x66D9},+    {0xBDED, 0x6E1A},+    {0xBDEE, 0x5EB6},+    {0xBDEF, 0x7DD2},+    {0xBDF0, 0x7F72},+    {0xBDF1, 0x66F8},+    {0xBDF2, 0x85AF},+    {0xBDF3, 0x85F7},+    {0xBDF4, 0x8AF8},+    {0xBDF5, 0x52A9},+    {0xBDF6, 0x53D9},+    {0xBDF7, 0x5973},+    {0xBDF8, 0x5E8F},+    {0xBDF9, 0x5F90},+    {0xBDFA, 0x6055},+    {0xBDFB, 0x92E4},+    {0xBDFC, 0x9664},+    {0xBDFD, 0x50B7},+    {0xBDFE, 0x511F},+    {0xBEA1, 0x52DD},+    {0xBEA2, 0x5320},+    {0xBEA3, 0x5347},+    {0xBEA4, 0x53EC},+    {0xBEA5, 0x54E8},+    {0xBEA6, 0x5546},+    {0xBEA7, 0x5531},+    {0xBEA8, 0x5617},+    {0xBEA9, 0x5968},+    {0xBEAA, 0x59BE},+    {0xBEAB, 0x5A3C},+    {0xBEAC, 0x5BB5},+    {0xBEAD, 0x5C06},+    {0xBEAE, 0x5C0F},+    {0xBEAF, 0x5C11},+    {0xBEB0, 0x5C1A},+    {0xBEB1, 0x5E84},+    {0xBEB2, 0x5E8A},+    {0xBEB3, 0x5EE0},+    {0xBEB4, 0x5F70},+    {0xBEB5, 0x627F},+    {0xBEB6, 0x6284},+    {0xBEB7, 0x62DB},+    {0xBEB8, 0x638C},+    {0xBEB9, 0x6377},+    {0xBEBA, 0x6607},+    {0xBEBB, 0x660C},+    {0xBEBC, 0x662D},+    {0xBEBD, 0x6676},+    {0xBEBE, 0x677E},+    {0xBEBF, 0x68A2},+    {0xBEC0, 0x6A1F},+    {0xBEC1, 0x6A35},+    {0xBEC2, 0x6CBC},+    {0xBEC3, 0x6D88},+    {0xBEC4, 0x6E09},+    {0xBEC5, 0x6E58},+    {0xBEC6, 0x713C},+    {0xBEC7, 0x7126},+    {0xBEC8, 0x7167},+    {0xBEC9, 0x75C7},+    {0xBECA, 0x7701},+    {0xBECB, 0x785D},+    {0xBECC, 0x7901},+    {0xBECD, 0x7965},+    {0xBECE, 0x79F0},+    {0xBECF, 0x7AE0},+    {0xBED0, 0x7B11},+    {0xBED1, 0x7CA7},+    {0xBED2, 0x7D39},+    {0xBED3, 0x8096},+    {0xBED4, 0x83D6},+    {0xBED5, 0x848B},+    {0xBED6, 0x8549},+    {0xBED7, 0x885D},+    {0xBED8, 0x88F3},+    {0xBED9, 0x8A1F},+    {0xBEDA, 0x8A3C},+    {0xBEDB, 0x8A54},+    {0xBEDC, 0x8A73},+    {0xBEDD, 0x8C61},+    {0xBEDE, 0x8CDE},+    {0xBEDF, 0x91A4},+    {0xBEE0, 0x9266},+    {0xBEE1, 0x937E},+    {0xBEE2, 0x9418},+    {0xBEE3, 0x969C},+    {0xBEE4, 0x9798},+    {0xBEE5, 0x4E0A},+    {0xBEE6, 0x4E08},+    {0xBEE7, 0x4E1E},+    {0xBEE8, 0x4E57},+    {0xBEE9, 0x5197},+    {0xBEEA, 0x5270},+    {0xBEEB, 0x57CE},+    {0xBEEC, 0x5834},+    {0xBEED, 0x58CC},+    {0xBEEE, 0x5B22},+    {0xBEEF, 0x5E38},+    {0xBEF0, 0x60C5},+    {0xBEF1, 0x64FE},+    {0xBEF2, 0x6761},+    {0xBEF3, 0x6756},+    {0xBEF4, 0x6D44},+    {0xBEF5, 0x72B6},+    {0xBEF6, 0x7573},+    {0xBEF7, 0x7A63},+    {0xBEF8, 0x84B8},+    {0xBEF9, 0x8B72},+    {0xBEFA, 0x91B8},+    {0xBEFB, 0x9320},+    {0xBEFC, 0x5631},+    {0xBEFD, 0x57F4},+    {0xBEFE, 0x98FE},+    {0xBFA1, 0x62ED},+    {0xBFA2, 0x690D},+    {0xBFA3, 0x6B96},+    {0xBFA4, 0x71ED},+    {0xBFA5, 0x7E54},+    {0xBFA6, 0x8077},+    {0xBFA7, 0x8272},+    {0xBFA8, 0x89E6},+    {0xBFA9, 0x98DF},+    {0xBFAA, 0x8755},+    {0xBFAB, 0x8FB1},+    {0xBFAC, 0x5C3B},+    {0xBFAD, 0x4F38},+    {0xBFAE, 0x4FE1},+    {0xBFAF, 0x4FB5},+    {0xBFB0, 0x5507},+    {0xBFB1, 0x5A20},+    {0xBFB2, 0x5BDD},+    {0xBFB3, 0x5BE9},+    {0xBFB4, 0x5FC3},+    {0xBFB5, 0x614E},+    {0xBFB6, 0x632F},+    {0xBFB7, 0x65B0},+    {0xBFB8, 0x664B},+    {0xBFB9, 0x68EE},+    {0xBFBA, 0x699B},+    {0xBFBB, 0x6D78},+    {0xBFBC, 0x6DF1},+    {0xBFBD, 0x7533},+    {0xBFBE, 0x75B9},+    {0xBFBF, 0x771F},+    {0xBFC0, 0x795E},+    {0xBFC1, 0x79E6},+    {0xBFC2, 0x7D33},+    {0xBFC3, 0x81E3},+    {0xBFC4, 0x82AF},+    {0xBFC5, 0x85AA},+    {0xBFC6, 0x89AA},+    {0xBFC7, 0x8A3A},+    {0xBFC8, 0x8EAB},+    {0xBFC9, 0x8F9B},+    {0xBFCA, 0x9032},+    {0xBFCB, 0x91DD},+    {0xBFCC, 0x9707},+    {0xBFCD, 0x4EBA},+    {0xBFCE, 0x4EC1},+    {0xBFCF, 0x5203},+    {0xBFD0, 0x5875},+    {0xBFD1, 0x58EC},+    {0xBFD2, 0x5C0B},+    {0xBFD3, 0x751A},+    {0xBFD4, 0x5C3D},+    {0xBFD5, 0x814E},+    {0xBFD6, 0x8A0A},+    {0xBFD7, 0x8FC5},+    {0xBFD8, 0x9663},+    {0xBFD9, 0x976D},+    {0xBFDA, 0x7B25},+    {0xBFDB, 0x8ACF},+    {0xBFDC, 0x9808},+    {0xBFDD, 0x9162},+    {0xBFDE, 0x56F3},+    {0xBFDF, 0x53A8},+    {0xBFE0, 0x9017},+    {0xBFE1, 0x5439},+    {0xBFE2, 0x5782},+    {0xBFE3, 0x5E25},+    {0xBFE4, 0x63A8},+    {0xBFE5, 0x6C34},+    {0xBFE6, 0x708A},+    {0xBFE7, 0x7761},+    {0xBFE8, 0x7C8B},+    {0xBFE9, 0x7FE0},+    {0xBFEA, 0x8870},+    {0xBFEB, 0x9042},+    {0xBFEC, 0x9154},+    {0xBFED, 0x9310},+    {0xBFEE, 0x9318},+    {0xBFEF, 0x968F},+    {0xBFF0, 0x745E},+    {0xBFF1, 0x9AC4},+    {0xBFF2, 0x5D07},+    {0xBFF3, 0x5D69},+    {0xBFF4, 0x6570},+    {0xBFF5, 0x67A2},+    {0xBFF6, 0x8DA8},+    {0xBFF7, 0x96DB},+    {0xBFF8, 0x636E},+    {0xBFF9, 0x6749},+    {0xBFFA, 0x6919},+    {0xBFFB, 0x83C5},+    {0xBFFC, 0x9817},+    {0xBFFD, 0x96C0},+    {0xBFFE, 0x88FE},+    {0xC0A1, 0x6F84},+    {0xC0A2, 0x647A},+    {0xC0A3, 0x5BF8},+    {0xC0A4, 0x4E16},+    {0xC0A5, 0x702C},+    {0xC0A6, 0x755D},+    {0xC0A7, 0x662F},+    {0xC0A8, 0x51C4},+    {0xC0A9, 0x5236},+    {0xC0AA, 0x52E2},+    {0xC0AB, 0x59D3},+    {0xC0AC, 0x5F81},+    {0xC0AD, 0x6027},+    {0xC0AE, 0x6210},+    {0xC0AF, 0x653F},+    {0xC0B0, 0x6574},+    {0xC0B1, 0x661F},+    {0xC0B2, 0x6674},+    {0xC0B3, 0x68F2},+    {0xC0B4, 0x6816},+    {0xC0B5, 0x6B63},+    {0xC0B6, 0x6E05},+    {0xC0B7, 0x7272},+    {0xC0B8, 0x751F},+    {0xC0B9, 0x76DB},+    {0xC0BA, 0x7CBE},+    {0xC0BB, 0x8056},+    {0xC0BC, 0x58F0},+    {0xC0BD, 0x88FD},+    {0xC0BE, 0x897F},+    {0xC0BF, 0x8AA0},+    {0xC0C0, 0x8A93},+    {0xC0C1, 0x8ACB},+    {0xC0C2, 0x901D},+    {0xC0C3, 0x9192},+    {0xC0C4, 0x9752},+    {0xC0C5, 0x9759},+    {0xC0C6, 0x6589},+    {0xC0C7, 0x7A0E},+    {0xC0C8, 0x8106},+    {0xC0C9, 0x96BB},+    {0xC0CA, 0x5E2D},+    {0xC0CB, 0x60DC},+    {0xC0CC, 0x621A},+    {0xC0CD, 0x65A5},+    {0xC0CE, 0x6614},+    {0xC0CF, 0x6790},+    {0xC0D0, 0x77F3},+    {0xC0D1, 0x7A4D},+    {0xC0D2, 0x7C4D},+    {0xC0D3, 0x7E3E},+    {0xC0D4, 0x810A},+    {0xC0D5, 0x8CAC},+    {0xC0D6, 0x8D64},+    {0xC0D7, 0x8DE1},+    {0xC0D8, 0x8E5F},+    {0xC0D9, 0x78A9},+    {0xC0DA, 0x5207},+    {0xC0DB, 0x62D9},+    {0xC0DC, 0x63A5},+    {0xC0DD, 0x6442},+    {0xC0DE, 0x6298},+    {0xC0DF, 0x8A2D},+    {0xC0E0, 0x7A83},+    {0xC0E1, 0x7BC0},+    {0xC0E2, 0x8AAC},+    {0xC0E3, 0x96EA},+    {0xC0E4, 0x7D76},+    {0xC0E5, 0x820C},+    {0xC0E6, 0x8749},+    {0xC0E7, 0x4ED9},+    {0xC0E8, 0x5148},+    {0xC0E9, 0x5343},+    {0xC0EA, 0x5360},+    {0xC0EB, 0x5BA3},+    {0xC0EC, 0x5C02},+    {0xC0ED, 0x5C16},+    {0xC0EE, 0x5DDD},+    {0xC0EF, 0x6226},+    {0xC0F0, 0x6247},+    {0xC0F1, 0x64B0},+    {0xC0F2, 0x6813},+    {0xC0F3, 0x6834},+    {0xC0F4, 0x6CC9},+    {0xC0F5, 0x6D45},+    {0xC0F6, 0x6D17},+    {0xC0F7, 0x67D3},+    {0xC0F8, 0x6F5C},+    {0xC0F9, 0x714E},+    {0xC0FA, 0x717D},+    {0xC0FB, 0x65CB},+    {0xC0FC, 0x7A7F},+    {0xC0FD, 0x7BAD},+    {0xC0FE, 0x7DDA},+    {0xC1A1, 0x7E4A},+    {0xC1A2, 0x7FA8},+    {0xC1A3, 0x817A},+    {0xC1A4, 0x821B},+    {0xC1A5, 0x8239},+    {0xC1A6, 0x85A6},+    {0xC1A7, 0x8A6E},+    {0xC1A8, 0x8CCE},+    {0xC1A9, 0x8DF5},+    {0xC1AA, 0x9078},+    {0xC1AB, 0x9077},+    {0xC1AC, 0x92AD},+    {0xC1AD, 0x9291},+    {0xC1AE, 0x9583},+    {0xC1AF, 0x9BAE},+    {0xC1B0, 0x524D},+    {0xC1B1, 0x5584},+    {0xC1B2, 0x6F38},+    {0xC1B3, 0x7136},+    {0xC1B4, 0x5168},+    {0xC1B5, 0x7985},+    {0xC1B6, 0x7E55},+    {0xC1B7, 0x81B3},+    {0xC1B8, 0x7CCE},+    {0xC1B9, 0x564C},+    {0xC1BA, 0x5851},+    {0xC1BB, 0x5CA8},+    {0xC1BC, 0x63AA},+    {0xC1BD, 0x66FE},+    {0xC1BE, 0x66FD},+    {0xC1BF, 0x695A},+    {0xC1C0, 0x72D9},+    {0xC1C1, 0x758F},+    {0xC1C2, 0x758E},+    {0xC1C3, 0x790E},+    {0xC1C4, 0x7956},+    {0xC1C5, 0x79DF},+    {0xC1C6, 0x7C97},+    {0xC1C7, 0x7D20},+    {0xC1C8, 0x7D44},+    {0xC1C9, 0x8607},+    {0xC1CA, 0x8A34},+    {0xC1CB, 0x963B},+    {0xC1CC, 0x9061},+    {0xC1CD, 0x9F20},+    {0xC1CE, 0x50E7},+    {0xC1CF, 0x5275},+    {0xC1D0, 0x53CC},+    {0xC1D1, 0x53E2},+    {0xC1D2, 0x5009},+    {0xC1D3, 0x55AA},+    {0xC1D4, 0x58EE},+    {0xC1D5, 0x594F},+    {0xC1D6, 0x723D},+    {0xC1D7, 0x5B8B},+    {0xC1D8, 0x5C64},+    {0xC1D9, 0x531D},+    {0xC1DA, 0x60E3},+    {0xC1DB, 0x60F3},+    {0xC1DC, 0x635C},+    {0xC1DD, 0x6383},+    {0xC1DE, 0x633F},+    {0xC1DF, 0x63BB},+    {0xC1E0, 0x64CD},+    {0xC1E1, 0x65E9},+    {0xC1E2, 0x66F9},+    {0xC1E3, 0x5DE3},+    {0xC1E4, 0x69CD},+    {0xC1E5, 0x69FD},+    {0xC1E6, 0x6F15},+    {0xC1E7, 0x71E5},+    {0xC1E8, 0x4E89},+    {0xC1E9, 0x75E9},+    {0xC1EA, 0x76F8},+    {0xC1EB, 0x7A93},+    {0xC1EC, 0x7CDF},+    {0xC1ED, 0x7DCF},+    {0xC1EE, 0x7D9C},+    {0xC1EF, 0x8061},+    {0xC1F0, 0x8349},+    {0xC1F1, 0x8358},+    {0xC1F2, 0x846C},+    {0xC1F3, 0x84BC},+    {0xC1F4, 0x85FB},+    {0xC1F5, 0x88C5},+    {0xC1F6, 0x8D70},+    {0xC1F7, 0x9001},+    {0xC1F8, 0x906D},+    {0xC1F9, 0x9397},+    {0xC1FA, 0x971C},+    {0xC1FB, 0x9A12},+    {0xC1FC, 0x50CF},+    {0xC1FD, 0x5897},+    {0xC1FE, 0x618E},+    {0xC2A1, 0x81D3},+    {0xC2A2, 0x8535},+    {0xC2A3, 0x8D08},+    {0xC2A4, 0x9020},+    {0xC2A5, 0x4FC3},+    {0xC2A6, 0x5074},+    {0xC2A7, 0x5247},+    {0xC2A8, 0x5373},+    {0xC2A9, 0x606F},+    {0xC2AA, 0x6349},+    {0xC2AB, 0x675F},+    {0xC2AC, 0x6E2C},+    {0xC2AD, 0x8DB3},+    {0xC2AE, 0x901F},+    {0xC2AF, 0x4FD7},+    {0xC2B0, 0x5C5E},+    {0xC2B1, 0x8CCA},+    {0xC2B2, 0x65CF},+    {0xC2B3, 0x7D9A},+    {0xC2B4, 0x5352},+    {0xC2B5, 0x8896},+    {0xC2B6, 0x5176},+    {0xC2B7, 0x63C3},+    {0xC2B8, 0x5B58},+    {0xC2B9, 0x5B6B},+    {0xC2BA, 0x5C0A},+    {0xC2BB, 0x640D},+    {0xC2BC, 0x6751},+    {0xC2BD, 0x905C},+    {0xC2BE, 0x4ED6},+    {0xC2BF, 0x591A},+    {0xC2C0, 0x592A},+    {0xC2C1, 0x6C70},+    {0xC2C2, 0x8A51},+    {0xC2C3, 0x553E},+    {0xC2C4, 0x5815},+    {0xC2C5, 0x59A5},+    {0xC2C6, 0x60F0},+    {0xC2C7, 0x6253},+    {0xC2C8, 0x67C1},+    {0xC2C9, 0x8235},+    {0xC2CA, 0x6955},+    {0xC2CB, 0x9640},+    {0xC2CC, 0x99C4},+    {0xC2CD, 0x9A28},+    {0xC2CE, 0x4F53},+    {0xC2CF, 0x5806},+    {0xC2D0, 0x5BFE},+    {0xC2D1, 0x8010},+    {0xC2D2, 0x5CB1},+    {0xC2D3, 0x5E2F},+    {0xC2D4, 0x5F85},+    {0xC2D5, 0x6020},+    {0xC2D6, 0x614B},+    {0xC2D7, 0x6234},+    {0xC2D8, 0x66FF},+    {0xC2D9, 0x6CF0},+    {0xC2DA, 0x6EDE},+    {0xC2DB, 0x80CE},+    {0xC2DC, 0x817F},+    {0xC2DD, 0x82D4},+    {0xC2DE, 0x888B},+    {0xC2DF, 0x8CB8},+    {0xC2E0, 0x9000},+    {0xC2E1, 0x902E},+    {0xC2E2, 0x968A},+    {0xC2E3, 0x9EDB},+    {0xC2E4, 0x9BDB},+    {0xC2E5, 0x4EE3},+    {0xC2E6, 0x53F0},+    {0xC2E7, 0x5927},+    {0xC2E8, 0x7B2C},+    {0xC2E9, 0x918D},+    {0xC2EA, 0x984C},+    {0xC2EB, 0x9DF9},+    {0xC2EC, 0x6EDD},+    {0xC2ED, 0x7027},+    {0xC2EE, 0x5353},+    {0xC2EF, 0x5544},+    {0xC2F0, 0x5B85},+    {0xC2F1, 0x6258},+    {0xC2F2, 0x629E},+    {0xC2F3, 0x62D3},+    {0xC2F4, 0x6CA2},+    {0xC2F5, 0x6FEF},+    {0xC2F6, 0x7422},+    {0xC2F7, 0x8A17},+    {0xC2F8, 0x9438},+    {0xC2F9, 0x6FC1},+    {0xC2FA, 0x8AFE},+    {0xC2FB, 0x8338},+    {0xC2FC, 0x51E7},+    {0xC2FD, 0x86F8},+    {0xC2FE, 0x53EA},+    {0xC3A1, 0x53E9},+    {0xC3A2, 0x4F46},+    {0xC3A3, 0x9054},+    {0xC3A4, 0x8FB0},+    {0xC3A5, 0x596A},+    {0xC3A6, 0x8131},+    {0xC3A7, 0x5DFD},+    {0xC3A8, 0x7AEA},+    {0xC3A9, 0x8FBF},+    {0xC3AA, 0x68DA},+    {0xC3AB, 0x8C37},+    {0xC3AC, 0x72F8},+    {0xC3AD, 0x9C48},+    {0xC3AE, 0x6A3D},+    {0xC3AF, 0x8AB0},+    {0xC3B0, 0x4E39},+    {0xC3B1, 0x5358},+    {0xC3B2, 0x5606},+    {0xC3B3, 0x5766},+    {0xC3B4, 0x62C5},+    {0xC3B5, 0x63A2},+    {0xC3B6, 0x65E6},+    {0xC3B7, 0x6B4E},+    {0xC3B8, 0x6DE1},+    {0xC3B9, 0x6E5B},+    {0xC3BA, 0x70AD},+    {0xC3BB, 0x77ED},+    {0xC3BC, 0x7AEF},+    {0xC3BD, 0x7BAA},+    {0xC3BE, 0x7DBB},+    {0xC3BF, 0x803D},+    {0xC3C0, 0x80C6},+    {0xC3C1, 0x86CB},+    {0xC3C2, 0x8A95},+    {0xC3C3, 0x935B},+    {0xC3C4, 0x56E3},+    {0xC3C5, 0x58C7},+    {0xC3C6, 0x5F3E},+    {0xC3C7, 0x65AD},+    {0xC3C8, 0x6696},+    {0xC3C9, 0x6A80},+    {0xC3CA, 0x6BB5},+    {0xC3CB, 0x7537},+    {0xC3CC, 0x8AC7},+    {0xC3CD, 0x5024},+    {0xC3CE, 0x77E5},+    {0xC3CF, 0x5730},+    {0xC3D0, 0x5F1B},+    {0xC3D1, 0x6065},+    {0xC3D2, 0x667A},+    {0xC3D3, 0x6C60},+    {0xC3D4, 0x75F4},+    {0xC3D5, 0x7A1A},+    {0xC3D6, 0x7F6E},+    {0xC3D7, 0x81F4},+    {0xC3D8, 0x8718},+    {0xC3D9, 0x9045},+    {0xC3DA, 0x99B3},+    {0xC3DB, 0x7BC9},+    {0xC3DC, 0x755C},+    {0xC3DD, 0x7AF9},+    {0xC3DE, 0x7B51},+    {0xC3DF, 0x84C4},+    {0xC3E0, 0x9010},+    {0xC3E1, 0x79E9},+    {0xC3E2, 0x7A92},+    {0xC3E3, 0x8336},+    {0xC3E4, 0x5AE1},+    {0xC3E5, 0x7740},+    {0xC3E6, 0x4E2D},+    {0xC3E7, 0x4EF2},+    {0xC3E8, 0x5B99},+    {0xC3E9, 0x5FE0},+    {0xC3EA, 0x62BD},+    {0xC3EB, 0x663C},+    {0xC3EC, 0x67F1},+    {0xC3ED, 0x6CE8},+    {0xC3EE, 0x866B},+    {0xC3EF, 0x8877},+    {0xC3F0, 0x8A3B},+    {0xC3F1, 0x914E},+    {0xC3F2, 0x92F3},+    {0xC3F3, 0x99D0},+    {0xC3F4, 0x6A17},+    {0xC3F5, 0x7026},+    {0xC3F6, 0x732A},+    {0xC3F7, 0x82E7},+    {0xC3F8, 0x8457},+    {0xC3F9, 0x8CAF},+    {0xC3FA, 0x4E01},+    {0xC3FB, 0x5146},+    {0xC3FC, 0x51CB},+    {0xC3FD, 0x558B},+    {0xC3FE, 0x5BF5},+    {0xC4A1, 0x5E16},+    {0xC4A2, 0x5E33},+    {0xC4A3, 0x5E81},+    {0xC4A4, 0x5F14},+    {0xC4A5, 0x5F35},+    {0xC4A6, 0x5F6B},+    {0xC4A7, 0x5FB4},+    {0xC4A8, 0x61F2},+    {0xC4A9, 0x6311},+    {0xC4AA, 0x66A2},+    {0xC4AB, 0x671D},+    {0xC4AC, 0x6F6E},+    {0xC4AD, 0x7252},+    {0xC4AE, 0x753A},+    {0xC4AF, 0x773A},+    {0xC4B0, 0x8074},+    {0xC4B1, 0x8139},+    {0xC4B2, 0x8178},+    {0xC4B3, 0x8776},+    {0xC4B4, 0x8ABF},+    {0xC4B5, 0x8ADC},+    {0xC4B6, 0x8D85},+    {0xC4B7, 0x8DF3},+    {0xC4B8, 0x929A},+    {0xC4B9, 0x9577},+    {0xC4BA, 0x9802},+    {0xC4BB, 0x9CE5},+    {0xC4BC, 0x52C5},+    {0xC4BD, 0x6357},+    {0xC4BE, 0x76F4},+    {0xC4BF, 0x6715},+    {0xC4C0, 0x6C88},+    {0xC4C1, 0x73CD},+    {0xC4C2, 0x8CC3},+    {0xC4C3, 0x93AE},+    {0xC4C4, 0x9673},+    {0xC4C5, 0x6D25},+    {0xC4C6, 0x589C},+    {0xC4C7, 0x690E},+    {0xC4C8, 0x69CC},+    {0xC4C9, 0x8FFD},+    {0xC4CA, 0x939A},+    {0xC4CB, 0x75DB},+    {0xC4CC, 0x901A},+    {0xC4CD, 0x585A},+    {0xC4CE, 0x6802},+    {0xC4CF, 0x63B4},+    {0xC4D0, 0x69FB},+    {0xC4D1, 0x4F43},+    {0xC4D2, 0x6F2C},+    {0xC4D3, 0x67D8},+    {0xC4D4, 0x8FBB},+    {0xC4D5, 0x8526},+    {0xC4D6, 0x7DB4},+    {0xC4D7, 0x9354},+    {0xC4D8, 0x693F},+    {0xC4D9, 0x6F70},+    {0xC4DA, 0x576A},+    {0xC4DB, 0x58F7},+    {0xC4DC, 0x5B2C},+    {0xC4DD, 0x7D2C},+    {0xC4DE, 0x722A},+    {0xC4DF, 0x540A},+    {0xC4E0, 0x91E3},+    {0xC4E1, 0x9DB4},+    {0xC4E2, 0x4EAD},+    {0xC4E3, 0x4F4E},+    {0xC4E4, 0x505C},+    {0xC4E5, 0x5075},+    {0xC4E6, 0x5243},+    {0xC4E7, 0x8C9E},+    {0xC4E8, 0x5448},+    {0xC4E9, 0x5824},+    {0xC4EA, 0x5B9A},+    {0xC4EB, 0x5E1D},+    {0xC4EC, 0x5E95},+    {0xC4ED, 0x5EAD},+    {0xC4EE, 0x5EF7},+    {0xC4EF, 0x5F1F},+    {0xC4F0, 0x608C},+    {0xC4F1, 0x62B5},+    {0xC4F2, 0x633A},+    {0xC4F3, 0x63D0},+    {0xC4F4, 0x68AF},+    {0xC4F5, 0x6C40},+    {0xC4F6, 0x7887},+    {0xC4F7, 0x798E},+    {0xC4F8, 0x7A0B},+    {0xC4F9, 0x7DE0},+    {0xC4FA, 0x8247},+    {0xC4FB, 0x8A02},+    {0xC4FC, 0x8AE6},+    {0xC4FD, 0x8E44},+    {0xC4FE, 0x9013},+    {0xC5A1, 0x90B8},+    {0xC5A2, 0x912D},+    {0xC5A3, 0x91D8},+    {0xC5A4, 0x9F0E},+    {0xC5A5, 0x6CE5},+    {0xC5A6, 0x6458},+    {0xC5A7, 0x64E2},+    {0xC5A8, 0x6575},+    {0xC5A9, 0x6EF4},+    {0xC5AA, 0x7684},+    {0xC5AB, 0x7B1B},+    {0xC5AC, 0x9069},+    {0xC5AD, 0x93D1},+    {0xC5AE, 0x6EBA},+    {0xC5AF, 0x54F2},+    {0xC5B0, 0x5FB9},+    {0xC5B1, 0x64A4},+    {0xC5B2, 0x8F4D},+    {0xC5B3, 0x8FED},+    {0xC5B4, 0x9244},+    {0xC5B5, 0x5178},+    {0xC5B6, 0x586B},+    {0xC5B7, 0x5929},+    {0xC5B8, 0x5C55},+    {0xC5B9, 0x5E97},+    {0xC5BA, 0x6DFB},+    {0xC5BB, 0x7E8F},+    {0xC5BC, 0x751C},+    {0xC5BD, 0x8CBC},+    {0xC5BE, 0x8EE2},+    {0xC5BF, 0x985B},+    {0xC5C0, 0x70B9},+    {0xC5C1, 0x4F1D},+    {0xC5C2, 0x6BBF},+    {0xC5C3, 0x6FB1},+    {0xC5C4, 0x7530},+    {0xC5C5, 0x96FB},+    {0xC5C6, 0x514E},+    {0xC5C7, 0x5410},+    {0xC5C8, 0x5835},+    {0xC5C9, 0x5857},+    {0xC5CA, 0x59AC},+    {0xC5CB, 0x5C60},+    {0xC5CC, 0x5F92},+    {0xC5CD, 0x6597},+    {0xC5CE, 0x675C},+    {0xC5CF, 0x6E21},+    {0xC5D0, 0x767B},+    {0xC5D1, 0x83DF},+    {0xC5D2, 0x8CED},+    {0xC5D3, 0x9014},+    {0xC5D4, 0x90FD},+    {0xC5D5, 0x934D},+    {0xC5D6, 0x7825},+    {0xC5D7, 0x783A},+    {0xC5D8, 0x52AA},+    {0xC5D9, 0x5EA6},+    {0xC5DA, 0x571F},+    {0xC5DB, 0x5974},+    {0xC5DC, 0x6012},+    {0xC5DD, 0x5012},+    {0xC5DE, 0x515A},+    {0xC5DF, 0x51AC},+    {0xC5E0, 0x51CD},+    {0xC5E1, 0x5200},+    {0xC5E2, 0x5510},+    {0xC5E3, 0x5854},+    {0xC5E4, 0x5858},+    {0xC5E5, 0x5957},+    {0xC5E6, 0x5B95},+    {0xC5E7, 0x5CF6},+    {0xC5E8, 0x5D8B},+    {0xC5E9, 0x60BC},+    {0xC5EA, 0x6295},+    {0xC5EB, 0x642D},+    {0xC5EC, 0x6771},+    {0xC5ED, 0x6843},+    {0xC5EE, 0x68BC},+    {0xC5EF, 0x68DF},+    {0xC5F0, 0x76D7},+    {0xC5F1, 0x6DD8},+    {0xC5F2, 0x6E6F},+    {0xC5F3, 0x6D9B},+    {0xC5F4, 0x706F},+    {0xC5F5, 0x71C8},+    {0xC5F6, 0x5F53},+    {0xC5F7, 0x75D8},+    {0xC5F8, 0x7977},+    {0xC5F9, 0x7B49},+    {0xC5FA, 0x7B54},+    {0xC5FB, 0x7B52},+    {0xC5FC, 0x7CD6},+    {0xC5FD, 0x7D71},+    {0xC5FE, 0x5230},+    {0xC6A1, 0x8463},+    {0xC6A2, 0x8569},+    {0xC6A3, 0x85E4},+    {0xC6A4, 0x8A0E},+    {0xC6A5, 0x8B04},+    {0xC6A6, 0x8C46},+    {0xC6A7, 0x8E0F},+    {0xC6A8, 0x9003},+    {0xC6A9, 0x900F},+    {0xC6AA, 0x9419},+    {0xC6AB, 0x9676},+    {0xC6AC, 0x982D},+    {0xC6AD, 0x9A30},+    {0xC6AE, 0x95D8},+    {0xC6AF, 0x50CD},+    {0xC6B0, 0x52D5},+    {0xC6B1, 0x540C},+    {0xC6B2, 0x5802},+    {0xC6B3, 0x5C0E},+    {0xC6B4, 0x61A7},+    {0xC6B5, 0x649E},+    {0xC6B6, 0x6D1E},+    {0xC6B7, 0x77B3},+    {0xC6B8, 0x7AE5},+    {0xC6B9, 0x80F4},+    {0xC6BA, 0x8404},+    {0xC6BB, 0x9053},+    {0xC6BC, 0x9285},+    {0xC6BD, 0x5CE0},+    {0xC6BE, 0x9D07},+    {0xC6BF, 0x533F},+    {0xC6C0, 0x5F97},+    {0xC6C1, 0x5FB3},+    {0xC6C2, 0x6D9C},+    {0xC6C3, 0x7279},+    {0xC6C4, 0x7763},+    {0xC6C5, 0x79BF},+    {0xC6C6, 0x7BE4},+    {0xC6C7, 0x6BD2},+    {0xC6C8, 0x72EC},+    {0xC6C9, 0x8AAD},+    {0xC6CA, 0x6803},+    {0xC6CB, 0x6A61},+    {0xC6CC, 0x51F8},+    {0xC6CD, 0x7A81},+    {0xC6CE, 0x6934},+    {0xC6CF, 0x5C4A},+    {0xC6D0, 0x9CF6},+    {0xC6D1, 0x82EB},+    {0xC6D2, 0x5BC5},+    {0xC6D3, 0x9149},+    {0xC6D4, 0x701E},+    {0xC6D5, 0x5678},+    {0xC6D6, 0x5C6F},+    {0xC6D7, 0x60C7},+    {0xC6D8, 0x6566},+    {0xC6D9, 0x6C8C},+    {0xC6DA, 0x8C5A},+    {0xC6DB, 0x9041},+    {0xC6DC, 0x9813},+    {0xC6DD, 0x5451},+    {0xC6DE, 0x66C7},+    {0xC6DF, 0x920D},+    {0xC6E0, 0x5948},+    {0xC6E1, 0x90A3},+    {0xC6E2, 0x5185},+    {0xC6E3, 0x4E4D},+    {0xC6E4, 0x51EA},+    {0xC6E5, 0x8599},+    {0xC6E6, 0x8B0E},+    {0xC6E7, 0x7058},+    {0xC6E8, 0x637A},+    {0xC6E9, 0x934B},+    {0xC6EA, 0x6962},+    {0xC6EB, 0x99B4},+    {0xC6EC, 0x7E04},+    {0xC6ED, 0x7577},+    {0xC6EE, 0x5357},+    {0xC6EF, 0x6960},+    {0xC6F0, 0x8EDF},+    {0xC6F1, 0x96E3},+    {0xC6F2, 0x6C5D},+    {0xC6F3, 0x4E8C},+    {0xC6F4, 0x5C3C},+    {0xC6F5, 0x5F10},+    {0xC6F6, 0x8FE9},+    {0xC6F7, 0x5302},+    {0xC6F8, 0x8CD1},+    {0xC6F9, 0x8089},+    {0xC6FA, 0x8679},+    {0xC6FB, 0x5EFF},+    {0xC6FC, 0x65E5},+    {0xC6FD, 0x4E73},+    {0xC6FE, 0x5165},+    {0xC7A1, 0x5982},+    {0xC7A2, 0x5C3F},+    {0xC7A3, 0x97EE},+    {0xC7A4, 0x4EFB},+    {0xC7A5, 0x598A},+    {0xC7A6, 0x5FCD},+    {0xC7A7, 0x8A8D},+    {0xC7A8, 0x6FE1},+    {0xC7A9, 0x79B0},+    {0xC7AA, 0x7962},+    {0xC7AB, 0x5BE7},+    {0xC7AC, 0x8471},+    {0xC7AD, 0x732B},+    {0xC7AE, 0x71B1},+    {0xC7AF, 0x5E74},+    {0xC7B0, 0x5FF5},+    {0xC7B1, 0x637B},+    {0xC7B2, 0x649A},+    {0xC7B3, 0x71C3},+    {0xC7B4, 0x7C98},+    {0xC7B5, 0x4E43},+    {0xC7B6, 0x5EFC},+    {0xC7B7, 0x4E4B},+    {0xC7B8, 0x57DC},+    {0xC7B9, 0x56A2},+    {0xC7BA, 0x60A9},+    {0xC7BB, 0x6FC3},+    {0xC7BC, 0x7D0D},+    {0xC7BD, 0x80FD},+    {0xC7BE, 0x8133},+    {0xC7BF, 0x81BF},+    {0xC7C0, 0x8FB2},+    {0xC7C1, 0x8997},+    {0xC7C2, 0x86A4},+    {0xC7C3, 0x5DF4},+    {0xC7C4, 0x628A},+    {0xC7C5, 0x64AD},+    {0xC7C6, 0x8987},+    {0xC7C7, 0x6777},+    {0xC7C8, 0x6CE2},+    {0xC7C9, 0x6D3E},+    {0xC7CA, 0x7436},+    {0xC7CB, 0x7834},+    {0xC7CC, 0x5A46},+    {0xC7CD, 0x7F75},+    {0xC7CE, 0x82AD},+    {0xC7CF, 0x99AC},+    {0xC7D0, 0x4FF3},+    {0xC7D1, 0x5EC3},+    {0xC7D2, 0x62DD},+    {0xC7D3, 0x6392},+    {0xC7D4, 0x6557},+    {0xC7D5, 0x676F},+    {0xC7D6, 0x76C3},+    {0xC7D7, 0x724C},+    {0xC7D8, 0x80CC},+    {0xC7D9, 0x80BA},+    {0xC7DA, 0x8F29},+    {0xC7DB, 0x914D},+    {0xC7DC, 0x500D},+    {0xC7DD, 0x57F9},+    {0xC7DE, 0x5A92},+    {0xC7DF, 0x6885},+    {0xC7E0, 0x6973},+    {0xC7E1, 0x7164},+    {0xC7E2, 0x72FD},+    {0xC7E3, 0x8CB7},+    {0xC7E4, 0x58F2},+    {0xC7E5, 0x8CE0},+    {0xC7E6, 0x966A},+    {0xC7E7, 0x9019},+    {0xC7E8, 0x877F},+    {0xC7E9, 0x79E4},+    {0xC7EA, 0x77E7},+    {0xC7EB, 0x8429},+    {0xC7EC, 0x4F2F},+    {0xC7ED, 0x5265},+    {0xC7EE, 0x535A},+    {0xC7EF, 0x62CD},+    {0xC7F0, 0x67CF},+    {0xC7F1, 0x6CCA},+    {0xC7F2, 0x767D},+    {0xC7F3, 0x7B94},+    {0xC7F4, 0x7C95},+    {0xC7F5, 0x8236},+    {0xC7F6, 0x8584},+    {0xC7F7, 0x8FEB},+    {0xC7F8, 0x66DD},+    {0xC7F9, 0x6F20},+    {0xC7FA, 0x7206},+    {0xC7FB, 0x7E1B},+    {0xC7FC, 0x83AB},+    {0xC7FD, 0x99C1},+    {0xC7FE, 0x9EA6},+    {0xC8A1, 0x51FD},+    {0xC8A2, 0x7BB1},+    {0xC8A3, 0x7872},+    {0xC8A4, 0x7BB8},+    {0xC8A5, 0x8087},+    {0xC8A6, 0x7B48},+    {0xC8A7, 0x6AE8},+    {0xC8A8, 0x5E61},+    {0xC8A9, 0x808C},+    {0xC8AA, 0x7551},+    {0xC8AB, 0x7560},+    {0xC8AC, 0x516B},+    {0xC8AD, 0x9262},+    {0xC8AE, 0x6E8C},+    {0xC8AF, 0x767A},+    {0xC8B0, 0x9197},+    {0xC8B1, 0x9AEA},+    {0xC8B2, 0x4F10},+    {0xC8B3, 0x7F70},+    {0xC8B4, 0x629C},+    {0xC8B5, 0x7B4F},+    {0xC8B6, 0x95A5},+    {0xC8B7, 0x9CE9},+    {0xC8B8, 0x567A},+    {0xC8B9, 0x5859},+    {0xC8BA, 0x86E4},+    {0xC8BB, 0x96BC},+    {0xC8BC, 0x4F34},+    {0xC8BD, 0x5224},+    {0xC8BE, 0x534A},+    {0xC8BF, 0x53CD},+    {0xC8C0, 0x53DB},+    {0xC8C1, 0x5E06},+    {0xC8C2, 0x642C},+    {0xC8C3, 0x6591},+    {0xC8C4, 0x677F},+    {0xC8C5, 0x6C3E},+    {0xC8C6, 0x6C4E},+    {0xC8C7, 0x7248},+    {0xC8C8, 0x72AF},+    {0xC8C9, 0x73ED},+    {0xC8CA, 0x7554},+    {0xC8CB, 0x7E41},+    {0xC8CC, 0x822C},+    {0xC8CD, 0x85E9},+    {0xC8CE, 0x8CA9},+    {0xC8CF, 0x7BC4},+    {0xC8D0, 0x91C6},+    {0xC8D1, 0x7169},+    {0xC8D2, 0x9812},+    {0xC8D3, 0x98EF},+    {0xC8D4, 0x633D},+    {0xC8D5, 0x6669},+    {0xC8D6, 0x756A},+    {0xC8D7, 0x76E4},+    {0xC8D8, 0x78D0},+    {0xC8D9, 0x8543},+    {0xC8DA, 0x86EE},+    {0xC8DB, 0x532A},+    {0xC8DC, 0x5351},+    {0xC8DD, 0x5426},+    {0xC8DE, 0x5983},+    {0xC8DF, 0x5E87},+    {0xC8E0, 0x5F7C},+    {0xC8E1, 0x60B2},+    {0xC8E2, 0x6249},+    {0xC8E3, 0x6279},+    {0xC8E4, 0x62AB},+    {0xC8E5, 0x6590},+    {0xC8E6, 0x6BD4},+    {0xC8E7, 0x6CCC},+    {0xC8E8, 0x75B2},+    {0xC8E9, 0x76AE},+    {0xC8EA, 0x7891},+    {0xC8EB, 0x79D8},+    {0xC8EC, 0x7DCB},+    {0xC8ED, 0x7F77},+    {0xC8EE, 0x80A5},+    {0xC8EF, 0x88AB},+    {0xC8F0, 0x8AB9},+    {0xC8F1, 0x8CBB},+    {0xC8F2, 0x907F},+    {0xC8F3, 0x975E},+    {0xC8F4, 0x98DB},+    {0xC8F5, 0x6A0B},+    {0xC8F6, 0x7C38},+    {0xC8F7, 0x5099},+    {0xC8F8, 0x5C3E},+    {0xC8F9, 0x5FAE},+    {0xC8FA, 0x6787},+    {0xC8FB, 0x6BD8},+    {0xC8FC, 0x7435},+    {0xC8FD, 0x7709},+    {0xC8FE, 0x7F8E},+    {0xC9A1, 0x9F3B},+    {0xC9A2, 0x67CA},+    {0xC9A3, 0x7A17},+    {0xC9A4, 0x5339},+    {0xC9A5, 0x758B},+    {0xC9A6, 0x9AED},+    {0xC9A7, 0x5F66},+    {0xC9A8, 0x819D},+    {0xC9A9, 0x83F1},+    {0xC9AA, 0x8098},+    {0xC9AB, 0x5F3C},+    {0xC9AC, 0x5FC5},+    {0xC9AD, 0x7562},+    {0xC9AE, 0x7B46},+    {0xC9AF, 0x903C},+    {0xC9B0, 0x6867},+    {0xC9B1, 0x59EB},+    {0xC9B2, 0x5A9B},+    {0xC9B3, 0x7D10},+    {0xC9B4, 0x767E},+    {0xC9B5, 0x8B2C},+    {0xC9B6, 0x4FF5},+    {0xC9B7, 0x5F6A},+    {0xC9B8, 0x6A19},+    {0xC9B9, 0x6C37},+    {0xC9BA, 0x6F02},+    {0xC9BB, 0x74E2},+    {0xC9BC, 0x7968},+    {0xC9BD, 0x8868},+    {0xC9BE, 0x8A55},+    {0xC9BF, 0x8C79},+    {0xC9C0, 0x5EDF},+    {0xC9C1, 0x63CF},+    {0xC9C2, 0x75C5},+    {0xC9C3, 0x79D2},+    {0xC9C4, 0x82D7},+    {0xC9C5, 0x9328},+    {0xC9C6, 0x92F2},+    {0xC9C7, 0x849C},+    {0xC9C8, 0x86ED},+    {0xC9C9, 0x9C2D},+    {0xC9CA, 0x54C1},+    {0xC9CB, 0x5F6C},+    {0xC9CC, 0x658C},+    {0xC9CD, 0x6D5C},+    {0xC9CE, 0x7015},+    {0xC9CF, 0x8CA7},+    {0xC9D0, 0x8CD3},+    {0xC9D1, 0x983B},+    {0xC9D2, 0x654F},+    {0xC9D3, 0x74F6},+    {0xC9D4, 0x4E0D},+    {0xC9D5, 0x4ED8},+    {0xC9D6, 0x57E0},+    {0xC9D7, 0x592B},+    {0xC9D8, 0x5A66},+    {0xC9D9, 0x5BCC},+    {0xC9DA, 0x51A8},+    {0xC9DB, 0x5E03},+    {0xC9DC, 0x5E9C},+    {0xC9DD, 0x6016},+    {0xC9DE, 0x6276},+    {0xC9DF, 0x6577},+    {0xC9E0, 0x65A7},+    {0xC9E1, 0x666E},+    {0xC9E2, 0x6D6E},+    {0xC9E3, 0x7236},+    {0xC9E4, 0x7B26},+    {0xC9E5, 0x8150},+    {0xC9E6, 0x819A},+    {0xC9E7, 0x8299},+    {0xC9E8, 0x8B5C},+    {0xC9E9, 0x8CA0},+    {0xC9EA, 0x8CE6},+    {0xC9EB, 0x8D74},+    {0xC9EC, 0x961C},+    {0xC9ED, 0x9644},+    {0xC9EE, 0x4FAE},+    {0xC9EF, 0x64AB},+    {0xC9F0, 0x6B66},+    {0xC9F1, 0x821E},+    {0xC9F2, 0x8461},+    {0xC9F3, 0x856A},+    {0xC9F4, 0x90E8},+    {0xC9F5, 0x5C01},+    {0xC9F6, 0x6953},+    {0xC9F7, 0x98A8},+    {0xC9F8, 0x847A},+    {0xC9F9, 0x8557},+    {0xC9FA, 0x4F0F},+    {0xC9FB, 0x526F},+    {0xC9FC, 0x5FA9},+    {0xC9FD, 0x5E45},+    {0xC9FE, 0x670D},+    {0xCAA1, 0x798F},+    {0xCAA2, 0x8179},+    {0xCAA3, 0x8907},+    {0xCAA4, 0x8986},+    {0xCAA5, 0x6DF5},+    {0xCAA6, 0x5F17},+    {0xCAA7, 0x6255},+    {0xCAA8, 0x6CB8},+    {0xCAA9, 0x4ECF},+    {0xCAAA, 0x7269},+    {0xCAAB, 0x9B92},+    {0xCAAC, 0x5206},+    {0xCAAD, 0x543B},+    {0xCAAE, 0x5674},+    {0xCAAF, 0x58B3},+    {0xCAB0, 0x61A4},+    {0xCAB1, 0x626E},+    {0xCAB2, 0x711A},+    {0xCAB3, 0x596E},+    {0xCAB4, 0x7C89},+    {0xCAB5, 0x7CDE},+    {0xCAB6, 0x7D1B},+    {0xCAB7, 0x96F0},+    {0xCAB8, 0x6587},+    {0xCAB9, 0x805E},+    {0xCABA, 0x4E19},+    {0xCABB, 0x4F75},+    {0xCABC, 0x5175},+    {0xCABD, 0x5840},+    {0xCABE, 0x5E63},+    {0xCABF, 0x5E73},+    {0xCAC0, 0x5F0A},+    {0xCAC1, 0x67C4},+    {0xCAC2, 0x4E26},+    {0xCAC3, 0x853D},+    {0xCAC4, 0x9589},+    {0xCAC5, 0x965B},+    {0xCAC6, 0x7C73},+    {0xCAC7, 0x9801},+    {0xCAC8, 0x50FB},+    {0xCAC9, 0x58C1},+    {0xCACA, 0x7656},+    {0xCACB, 0x78A7},+    {0xCACC, 0x5225},+    {0xCACD, 0x77A5},+    {0xCACE, 0x8511},+    {0xCACF, 0x7B86},+    {0xCAD0, 0x504F},+    {0xCAD1, 0x5909},+    {0xCAD2, 0x7247},+    {0xCAD3, 0x7BC7},+    {0xCAD4, 0x7DE8},+    {0xCAD5, 0x8FBA},+    {0xCAD6, 0x8FD4},+    {0xCAD7, 0x904D},+    {0xCAD8, 0x4FBF},+    {0xCAD9, 0x52C9},+    {0xCADA, 0x5A29},+    {0xCADB, 0x5F01},+    {0xCADC, 0x97AD},+    {0xCADD, 0x4FDD},+    {0xCADE, 0x8217},+    {0xCADF, 0x92EA},+    {0xCAE0, 0x5703},+    {0xCAE1, 0x6355},+    {0xCAE2, 0x6B69},+    {0xCAE3, 0x752B},+    {0xCAE4, 0x88DC},+    {0xCAE5, 0x8F14},+    {0xCAE6, 0x7A42},+    {0xCAE7, 0x52DF},+    {0xCAE8, 0x5893},+    {0xCAE9, 0x6155},+    {0xCAEA, 0x620A},+    {0xCAEB, 0x66AE},+    {0xCAEC, 0x6BCD},+    {0xCAED, 0x7C3F},+    {0xCAEE, 0x83E9},+    {0xCAEF, 0x5023},+    {0xCAF0, 0x4FF8},+    {0xCAF1, 0x5305},+    {0xCAF2, 0x5446},+    {0xCAF3, 0x5831},+    {0xCAF4, 0x5949},+    {0xCAF5, 0x5B9D},+    {0xCAF6, 0x5CF0},+    {0xCAF7, 0x5CEF},+    {0xCAF8, 0x5D29},+    {0xCAF9, 0x5E96},+    {0xCAFA, 0x62B1},+    {0xCAFB, 0x6367},+    {0xCAFC, 0x653E},+    {0xCAFD, 0x65B9},+    {0xCAFE, 0x670B},+    {0xCBA1, 0x6CD5},+    {0xCBA2, 0x6CE1},+    {0xCBA3, 0x70F9},+    {0xCBA4, 0x7832},+    {0xCBA5, 0x7E2B},+    {0xCBA6, 0x80DE},+    {0xCBA7, 0x82B3},+    {0xCBA8, 0x840C},+    {0xCBA9, 0x84EC},+    {0xCBAA, 0x8702},+    {0xCBAB, 0x8912},+    {0xCBAC, 0x8A2A},+    {0xCBAD, 0x8C4A},+    {0xCBAE, 0x90A6},+    {0xCBAF, 0x92D2},+    {0xCBB0, 0x98FD},+    {0xCBB1, 0x9CF3},+    {0xCBB2, 0x9D6C},+    {0xCBB3, 0x4E4F},+    {0xCBB4, 0x4EA1},+    {0xCBB5, 0x508D},+    {0xCBB6, 0x5256},+    {0xCBB7, 0x574A},+    {0xCBB8, 0x59A8},+    {0xCBB9, 0x5E3D},+    {0xCBBA, 0x5FD8},+    {0xCBBB, 0x5FD9},+    {0xCBBC, 0x623F},+    {0xCBBD, 0x66B4},+    {0xCBBE, 0x671B},+    {0xCBBF, 0x67D0},+    {0xCBC0, 0x68D2},+    {0xCBC1, 0x5192},+    {0xCBC2, 0x7D21},+    {0xCBC3, 0x80AA},+    {0xCBC4, 0x81A8},+    {0xCBC5, 0x8B00},+    {0xCBC6, 0x8C8C},+    {0xCBC7, 0x8CBF},+    {0xCBC8, 0x927E},+    {0xCBC9, 0x9632},+    {0xCBCA, 0x5420},+    {0xCBCB, 0x982C},+    {0xCBCC, 0x5317},+    {0xCBCD, 0x50D5},+    {0xCBCE, 0x535C},+    {0xCBCF, 0x58A8},+    {0xCBD0, 0x64B2},+    {0xCBD1, 0x6734},+    {0xCBD2, 0x7267},+    {0xCBD3, 0x7766},+    {0xCBD4, 0x7A46},+    {0xCBD5, 0x91E6},+    {0xCBD6, 0x52C3},+    {0xCBD7, 0x6CA1},+    {0xCBD8, 0x6B86},+    {0xCBD9, 0x5800},+    {0xCBDA, 0x5E4C},+    {0xCBDB, 0x5954},+    {0xCBDC, 0x672C},+    {0xCBDD, 0x7FFB},+    {0xCBDE, 0x51E1},+    {0xCBDF, 0x76C6},+    {0xCBE0, 0x6469},+    {0xCBE1, 0x78E8},+    {0xCBE2, 0x9B54},+    {0xCBE3, 0x9EBB},+    {0xCBE4, 0x57CB},+    {0xCBE5, 0x59B9},+    {0xCBE6, 0x6627},+    {0xCBE7, 0x679A},+    {0xCBE8, 0x6BCE},+    {0xCBE9, 0x54E9},+    {0xCBEA, 0x69D9},+    {0xCBEB, 0x5E55},+    {0xCBEC, 0x819C},+    {0xCBED, 0x6795},+    {0xCBEE, 0x9BAA},+    {0xCBEF, 0x67FE},+    {0xCBF0, 0x9C52},+    {0xCBF1, 0x685D},+    {0xCBF2, 0x4EA6},+    {0xCBF3, 0x4FE3},+    {0xCBF4, 0x53C8},+    {0xCBF5, 0x62B9},+    {0xCBF6, 0x672B},+    {0xCBF7, 0x6CAB},+    {0xCBF8, 0x8FC4},+    {0xCBF9, 0x4FAD},+    {0xCBFA, 0x7E6D},+    {0xCBFB, 0x9EBF},+    {0xCBFC, 0x4E07},+    {0xCBFD, 0x6162},+    {0xCBFE, 0x6E80},+    {0xCCA1, 0x6F2B},+    {0xCCA2, 0x8513},+    {0xCCA3, 0x5473},+    {0xCCA4, 0x672A},+    {0xCCA5, 0x9B45},+    {0xCCA6, 0x5DF3},+    {0xCCA7, 0x7B95},+    {0xCCA8, 0x5CAC},+    {0xCCA9, 0x5BC6},+    {0xCCAA, 0x871C},+    {0xCCAB, 0x6E4A},+    {0xCCAC, 0x84D1},+    {0xCCAD, 0x7A14},+    {0xCCAE, 0x8108},+    {0xCCAF, 0x5999},+    {0xCCB0, 0x7C8D},+    {0xCCB1, 0x6C11},+    {0xCCB2, 0x7720},+    {0xCCB3, 0x52D9},+    {0xCCB4, 0x5922},+    {0xCCB5, 0x7121},+    {0xCCB6, 0x725F},+    {0xCCB7, 0x77DB},+    {0xCCB8, 0x9727},+    {0xCCB9, 0x9D61},+    {0xCCBA, 0x690B},+    {0xCCBB, 0x5A7F},+    {0xCCBC, 0x5A18},+    {0xCCBD, 0x51A5},+    {0xCCBE, 0x540D},+    {0xCCBF, 0x547D},+    {0xCCC0, 0x660E},+    {0xCCC1, 0x76DF},+    {0xCCC2, 0x8FF7},+    {0xCCC3, 0x9298},+    {0xCCC4, 0x9CF4},+    {0xCCC5, 0x59EA},+    {0xCCC6, 0x725D},+    {0xCCC7, 0x6EC5},+    {0xCCC8, 0x514D},+    {0xCCC9, 0x68C9},+    {0xCCCA, 0x7DBF},+    {0xCCCB, 0x7DEC},+    {0xCCCC, 0x9762},+    {0xCCCD, 0x9EBA},+    {0xCCCE, 0x6478},+    {0xCCCF, 0x6A21},+    {0xCCD0, 0x8302},+    {0xCCD1, 0x5984},+    {0xCCD2, 0x5B5F},+    {0xCCD3, 0x6BDB},+    {0xCCD4, 0x731B},+    {0xCCD5, 0x76F2},+    {0xCCD6, 0x7DB2},+    {0xCCD7, 0x8017},+    {0xCCD8, 0x8499},+    {0xCCD9, 0x5132},+    {0xCCDA, 0x6728},+    {0xCCDB, 0x9ED9},+    {0xCCDC, 0x76EE},+    {0xCCDD, 0x6762},+    {0xCCDE, 0x52FF},+    {0xCCDF, 0x9905},+    {0xCCE0, 0x5C24},+    {0xCCE1, 0x623B},+    {0xCCE2, 0x7C7E},+    {0xCCE3, 0x8CB0},+    {0xCCE4, 0x554F},+    {0xCCE5, 0x60B6},+    {0xCCE6, 0x7D0B},+    {0xCCE7, 0x9580},+    {0xCCE8, 0x5301},+    {0xCCE9, 0x4E5F},+    {0xCCEA, 0x51B6},+    {0xCCEB, 0x591C},+    {0xCCEC, 0x723A},+    {0xCCED, 0x8036},+    {0xCCEE, 0x91CE},+    {0xCCEF, 0x5F25},+    {0xCCF0, 0x77E2},+    {0xCCF1, 0x5384},+    {0xCCF2, 0x5F79},+    {0xCCF3, 0x7D04},+    {0xCCF4, 0x85AC},+    {0xCCF5, 0x8A33},+    {0xCCF6, 0x8E8D},+    {0xCCF7, 0x9756},+    {0xCCF8, 0x67F3},+    {0xCCF9, 0x85AE},+    {0xCCFA, 0x9453},+    {0xCCFB, 0x6109},+    {0xCCFC, 0x6108},+    {0xCCFD, 0x6CB9},+    {0xCCFE, 0x7652},+    {0xCDA1, 0x8AED},+    {0xCDA2, 0x8F38},+    {0xCDA3, 0x552F},+    {0xCDA4, 0x4F51},+    {0xCDA5, 0x512A},+    {0xCDA6, 0x52C7},+    {0xCDA7, 0x53CB},+    {0xCDA8, 0x5BA5},+    {0xCDA9, 0x5E7D},+    {0xCDAA, 0x60A0},+    {0xCDAB, 0x6182},+    {0xCDAC, 0x63D6},+    {0xCDAD, 0x6709},+    {0xCDAE, 0x67DA},+    {0xCDAF, 0x6E67},+    {0xCDB0, 0x6D8C},+    {0xCDB1, 0x7336},+    {0xCDB2, 0x7337},+    {0xCDB3, 0x7531},+    {0xCDB4, 0x7950},+    {0xCDB5, 0x88D5},+    {0xCDB6, 0x8A98},+    {0xCDB7, 0x904A},+    {0xCDB8, 0x9091},+    {0xCDB9, 0x90F5},+    {0xCDBA, 0x96C4},+    {0xCDBB, 0x878D},+    {0xCDBC, 0x5915},+    {0xCDBD, 0x4E88},+    {0xCDBE, 0x4F59},+    {0xCDBF, 0x4E0E},+    {0xCDC0, 0x8A89},+    {0xCDC1, 0x8F3F},+    {0xCDC2, 0x9810},+    {0xCDC3, 0x50AD},+    {0xCDC4, 0x5E7C},+    {0xCDC5, 0x5996},+    {0xCDC6, 0x5BB9},+    {0xCDC7, 0x5EB8},+    {0xCDC8, 0x63DA},+    {0xCDC9, 0x63FA},+    {0xCDCA, 0x64C1},+    {0xCDCB, 0x66DC},+    {0xCDCC, 0x694A},+    {0xCDCD, 0x69D8},+    {0xCDCE, 0x6D0B},+    {0xCDCF, 0x6EB6},+    {0xCDD0, 0x7194},+    {0xCDD1, 0x7528},+    {0xCDD2, 0x7AAF},+    {0xCDD3, 0x7F8A},+    {0xCDD4, 0x8000},+    {0xCDD5, 0x8449},+    {0xCDD6, 0x84C9},+    {0xCDD7, 0x8981},+    {0xCDD8, 0x8B21},+    {0xCDD9, 0x8E0A},+    {0xCDDA, 0x9065},+    {0xCDDB, 0x967D},+    {0xCDDC, 0x990A},+    {0xCDDD, 0x617E},+    {0xCDDE, 0x6291},+    {0xCDDF, 0x6B32},+    {0xCDE0, 0x6C83},+    {0xCDE1, 0x6D74},+    {0xCDE2, 0x7FCC},+    {0xCDE3, 0x7FFC},+    {0xCDE4, 0x6DC0},+    {0xCDE5, 0x7F85},+    {0xCDE6, 0x87BA},+    {0xCDE7, 0x88F8},+    {0xCDE8, 0x6765},+    {0xCDE9, 0x83B1},+    {0xCDEA, 0x983C},+    {0xCDEB, 0x96F7},+    {0xCDEC, 0x6D1B},+    {0xCDED, 0x7D61},+    {0xCDEE, 0x843D},+    {0xCDEF, 0x916A},+    {0xCDF0, 0x4E71},+    {0xCDF1, 0x5375},+    {0xCDF2, 0x5D50},+    {0xCDF3, 0x6B04},+    {0xCDF4, 0x6FEB},+    {0xCDF5, 0x85CD},+    {0xCDF6, 0x862D},+    {0xCDF7, 0x89A7},+    {0xCDF8, 0x5229},+    {0xCDF9, 0x540F},+    {0xCDFA, 0x5C65},+    {0xCDFB, 0x674E},+    {0xCDFC, 0x68A8},+    {0xCDFD, 0x7406},+    {0xCDFE, 0x7483},+    {0xCEA1, 0x75E2},+    {0xCEA2, 0x88CF},+    {0xCEA3, 0x88E1},+    {0xCEA4, 0x91CC},+    {0xCEA5, 0x96E2},+    {0xCEA6, 0x9678},+    {0xCEA7, 0x5F8B},+    {0xCEA8, 0x7387},+    {0xCEA9, 0x7ACB},+    {0xCEAA, 0x844E},+    {0xCEAB, 0x63A0},+    {0xCEAC, 0x7565},+    {0xCEAD, 0x5289},+    {0xCEAE, 0x6D41},+    {0xCEAF, 0x6E9C},+    {0xCEB0, 0x7409},+    {0xCEB1, 0x7559},+    {0xCEB2, 0x786B},+    {0xCEB3, 0x7C92},+    {0xCEB4, 0x9686},+    {0xCEB5, 0x7ADC},+    {0xCEB6, 0x9F8D},+    {0xCEB7, 0x4FB6},+    {0xCEB8, 0x616E},+    {0xCEB9, 0x65C5},+    {0xCEBA, 0x865C},+    {0xCEBB, 0x4E86},+    {0xCEBC, 0x4EAE},+    {0xCEBD, 0x50DA},+    {0xCEBE, 0x4E21},+    {0xCEBF, 0x51CC},+    {0xCEC0, 0x5BEE},+    {0xCEC1, 0x6599},+    {0xCEC2, 0x6881},+    {0xCEC3, 0x6DBC},+    {0xCEC4, 0x731F},+    {0xCEC5, 0x7642},+    {0xCEC6, 0x77AD},+    {0xCEC7, 0x7A1C},+    {0xCEC8, 0x7CE7},+    {0xCEC9, 0x826F},+    {0xCECA, 0x8AD2},+    {0xCECB, 0x907C},+    {0xCECC, 0x91CF},+    {0xCECD, 0x9675},+    {0xCECE, 0x9818},+    {0xCECF, 0x529B},+    {0xCED0, 0x7DD1},+    {0xCED1, 0x502B},+    {0xCED2, 0x5398},+    {0xCED3, 0x6797},+    {0xCED4, 0x6DCB},+    {0xCED5, 0x71D0},+    {0xCED6, 0x7433},+    {0xCED7, 0x81E8},+    {0xCED8, 0x8F2A},+    {0xCED9, 0x96A3},+    {0xCEDA, 0x9C57},+    {0xCEDB, 0x9E9F},+    {0xCEDC, 0x7460},+    {0xCEDD, 0x5841},+    {0xCEDE, 0x6D99},+    {0xCEDF, 0x7D2F},+    {0xCEE0, 0x985E},+    {0xCEE1, 0x4EE4},+    {0xCEE2, 0x4F36},+    {0xCEE3, 0x4F8B},+    {0xCEE4, 0x51B7},+    {0xCEE5, 0x52B1},+    {0xCEE6, 0x5DBA},+    {0xCEE7, 0x601C},+    {0xCEE8, 0x73B2},+    {0xCEE9, 0x793C},+    {0xCEEA, 0x82D3},+    {0xCEEB, 0x9234},+    {0xCEEC, 0x96B7},+    {0xCEED, 0x96F6},+    {0xCEEE, 0x970A},+    {0xCEEF, 0x9E97},+    {0xCEF0, 0x9F62},+    {0xCEF1, 0x66A6},+    {0xCEF2, 0x6B74},+    {0xCEF3, 0x5217},+    {0xCEF4, 0x52A3},+    {0xCEF5, 0x70C8},+    {0xCEF6, 0x88C2},+    {0xCEF7, 0x5EC9},+    {0xCEF8, 0x604B},+    {0xCEF9, 0x6190},+    {0xCEFA, 0x6F23},+    {0xCEFB, 0x7149},+    {0xCEFC, 0x7C3E},+    {0xCEFD, 0x7DF4},+    {0xCEFE, 0x806F},+    {0xCFA1, 0x84EE},+    {0xCFA2, 0x9023},+    {0xCFA3, 0x932C},+    {0xCFA4, 0x5442},+    {0xCFA5, 0x9B6F},+    {0xCFA6, 0x6AD3},+    {0xCFA7, 0x7089},+    {0xCFA8, 0x8CC2},+    {0xCFA9, 0x8DEF},+    {0xCFAA, 0x9732},+    {0xCFAB, 0x52B4},+    {0xCFAC, 0x5A41},+    {0xCFAD, 0x5ECA},+    {0xCFAE, 0x5F04},+    {0xCFAF, 0x6717},+    {0xCFB0, 0x697C},+    {0xCFB1, 0x6994},+    {0xCFB2, 0x6D6A},+    {0xCFB3, 0x6F0F},+    {0xCFB4, 0x7262},+    {0xCFB5, 0x72FC},+    {0xCFB6, 0x7BED},+    {0xCFB7, 0x8001},+    {0xCFB8, 0x807E},+    {0xCFB9, 0x874B},+    {0xCFBA, 0x90CE},+    {0xCFBB, 0x516D},+    {0xCFBC, 0x9E93},+    {0xCFBD, 0x7984},+    {0xCFBE, 0x808B},+    {0xCFBF, 0x9332},+    {0xCFC0, 0x8AD6},+    {0xCFC1, 0x502D},+    {0xCFC2, 0x548C},+    {0xCFC3, 0x8A71},+    {0xCFC4, 0x6B6A},+    {0xCFC5, 0x8CC4},+    {0xCFC6, 0x8107},+    {0xCFC7, 0x60D1},+    {0xCFC8, 0x67A0},+    {0xCFC9, 0x9DF2},+    {0xCFCA, 0x4E99},+    {0xCFCB, 0x4E98},+    {0xCFCC, 0x9C10},+    {0xCFCD, 0x8A6B},+    {0xCFCE, 0x85C1},+    {0xCFCF, 0x8568},+    {0xCFD0, 0x6900},+    {0xCFD1, 0x6E7E},+    {0xCFD2, 0x7897},+    {0xCFD3, 0x8155},+    {0xD0A1, 0x5F0C},+    {0xD0A2, 0x4E10},+    {0xD0A3, 0x4E15},+    {0xD0A4, 0x4E2A},+    {0xD0A5, 0x4E31},+    {0xD0A6, 0x4E36},+    {0xD0A7, 0x4E3C},+    {0xD0A8, 0x4E3F},+    {0xD0A9, 0x4E42},+    {0xD0AA, 0x4E56},+    {0xD0AB, 0x4E58},+    {0xD0AC, 0x4E82},+    {0xD0AD, 0x4E85},+    {0xD0AE, 0x8C6B},+    {0xD0AF, 0x4E8A},+    {0xD0B0, 0x8212},+    {0xD0B1, 0x5F0D},+    {0xD0B2, 0x4E8E},+    {0xD0B3, 0x4E9E},+    {0xD0B4, 0x4E9F},+    {0xD0B5, 0x4EA0},+    {0xD0B6, 0x4EA2},+    {0xD0B7, 0x4EB0},+    {0xD0B8, 0x4EB3},+    {0xD0B9, 0x4EB6},+    {0xD0BA, 0x4ECE},+    {0xD0BB, 0x4ECD},+    {0xD0BC, 0x4EC4},+    {0xD0BD, 0x4EC6},+    {0xD0BE, 0x4EC2},+    {0xD0BF, 0x4ED7},+    {0xD0C0, 0x4EDE},+    {0xD0C1, 0x4EED},+    {0xD0C2, 0x4EDF},+    {0xD0C3, 0x4EF7},+    {0xD0C4, 0x4F09},+    {0xD0C5, 0x4F5A},+    {0xD0C6, 0x4F30},+    {0xD0C7, 0x4F5B},+    {0xD0C8, 0x4F5D},+    {0xD0C9, 0x4F57},+    {0xD0CA, 0x4F47},+    {0xD0CB, 0x4F76},+    {0xD0CC, 0x4F88},+    {0xD0CD, 0x4F8F},+    {0xD0CE, 0x4F98},+    {0xD0CF, 0x4F7B},+    {0xD0D0, 0x4F69},+    {0xD0D1, 0x4F70},+    {0xD0D2, 0x4F91},+    {0xD0D3, 0x4F6F},+    {0xD0D4, 0x4F86},+    {0xD0D5, 0x4F96},+    {0xD0D6, 0x5118},+    {0xD0D7, 0x4FD4},+    {0xD0D8, 0x4FDF},+    {0xD0D9, 0x4FCE},+    {0xD0DA, 0x4FD8},+    {0xD0DB, 0x4FDB},+    {0xD0DC, 0x4FD1},+    {0xD0DD, 0x4FDA},+    {0xD0DE, 0x4FD0},+    {0xD0DF, 0x4FE4},+    {0xD0E0, 0x4FE5},+    {0xD0E1, 0x501A},+    {0xD0E2, 0x5028},+    {0xD0E3, 0x5014},+    {0xD0E4, 0x502A},+    {0xD0E5, 0x5025},+    {0xD0E6, 0x5005},+    {0xD0E7, 0x4F1C},+    {0xD0E8, 0x4FF6},+    {0xD0E9, 0x5021},+    {0xD0EA, 0x5029},+    {0xD0EB, 0x502C},+    {0xD0EC, 0x4FFE},+    {0xD0ED, 0x4FEF},+    {0xD0EE, 0x5011},+    {0xD0EF, 0x5006},+    {0xD0F0, 0x5043},+    {0xD0F1, 0x5047},+    {0xD0F2, 0x6703},+    {0xD0F3, 0x5055},+    {0xD0F4, 0x5050},+    {0xD0F5, 0x5048},+    {0xD0F6, 0x505A},+    {0xD0F7, 0x5056},+    {0xD0F8, 0x506C},+    {0xD0F9, 0x5078},+    {0xD0FA, 0x5080},+    {0xD0FB, 0x509A},+    {0xD0FC, 0x5085},+    {0xD0FD, 0x50B4},+    {0xD0FE, 0x50B2},+    {0xD1A1, 0x50C9},+    {0xD1A2, 0x50CA},+    {0xD1A3, 0x50B3},+    {0xD1A4, 0x50C2},+    {0xD1A5, 0x50D6},+    {0xD1A6, 0x50DE},+    {0xD1A7, 0x50E5},+    {0xD1A8, 0x50ED},+    {0xD1A9, 0x50E3},+    {0xD1AA, 0x50EE},+    {0xD1AB, 0x50F9},+    {0xD1AC, 0x50F5},+    {0xD1AD, 0x5109},+    {0xD1AE, 0x5101},+    {0xD1AF, 0x5102},+    {0xD1B0, 0x5116},+    {0xD1B1, 0x5115},+    {0xD1B2, 0x5114},+    {0xD1B3, 0x511A},+    {0xD1B4, 0x5121},+    {0xD1B5, 0x513A},+    {0xD1B6, 0x5137},+    {0xD1B7, 0x513C},+    {0xD1B8, 0x513B},+    {0xD1B9, 0x513F},+    {0xD1BA, 0x5140},+    {0xD1BB, 0x5152},+    {0xD1BC, 0x514C},+    {0xD1BD, 0x5154},+    {0xD1BE, 0x5162},+    {0xD1BF, 0x7AF8},+    {0xD1C0, 0x5169},+    {0xD1C1, 0x516A},+    {0xD1C2, 0x516E},+    {0xD1C3, 0x5180},+    {0xD1C4, 0x5182},+    {0xD1C5, 0x56D8},+    {0xD1C6, 0x518C},+    {0xD1C7, 0x5189},+    {0xD1C8, 0x518F},+    {0xD1C9, 0x5191},+    {0xD1CA, 0x5193},+    {0xD1CB, 0x5195},+    {0xD1CC, 0x5196},+    {0xD1CD, 0x51A4},+    {0xD1CE, 0x51A6},+    {0xD1CF, 0x51A2},+    {0xD1D0, 0x51A9},+    {0xD1D1, 0x51AA},+    {0xD1D2, 0x51AB},+    {0xD1D3, 0x51B3},+    {0xD1D4, 0x51B1},+    {0xD1D5, 0x51B2},+    {0xD1D6, 0x51B0},+    {0xD1D7, 0x51B5},+    {0xD1D8, 0x51BD},+    {0xD1D9, 0x51C5},+    {0xD1DA, 0x51C9},+    {0xD1DB, 0x51DB},+    {0xD1DC, 0x51E0},+    {0xD1DD, 0x8655},+    {0xD1DE, 0x51E9},+    {0xD1DF, 0x51ED},+    {0xD1E0, 0x51F0},+    {0xD1E1, 0x51F5},+    {0xD1E2, 0x51FE},+    {0xD1E3, 0x5204},+    {0xD1E4, 0x520B},+    {0xD1E5, 0x5214},+    {0xD1E6, 0x520E},+    {0xD1E7, 0x5227},+    {0xD1E8, 0x522A},+    {0xD1E9, 0x522E},+    {0xD1EA, 0x5233},+    {0xD1EB, 0x5239},+    {0xD1EC, 0x524F},+    {0xD1ED, 0x5244},+    {0xD1EE, 0x524B},+    {0xD1EF, 0x524C},+    {0xD1F0, 0x525E},+    {0xD1F1, 0x5254},+    {0xD1F2, 0x526A},+    {0xD1F3, 0x5274},+    {0xD1F4, 0x5269},+    {0xD1F5, 0x5273},+    {0xD1F6, 0x527F},+    {0xD1F7, 0x527D},+    {0xD1F8, 0x528D},+    {0xD1F9, 0x5294},+    {0xD1FA, 0x5292},+    {0xD1FB, 0x5271},+    {0xD1FC, 0x5288},+    {0xD1FD, 0x5291},+    {0xD1FE, 0x8FA8},+    {0xD2A1, 0x8FA7},+    {0xD2A2, 0x52AC},+    {0xD2A3, 0x52AD},+    {0xD2A4, 0x52BC},+    {0xD2A5, 0x52B5},+    {0xD2A6, 0x52C1},+    {0xD2A7, 0x52CD},+    {0xD2A8, 0x52D7},+    {0xD2A9, 0x52DE},+    {0xD2AA, 0x52E3},+    {0xD2AB, 0x52E6},+    {0xD2AC, 0x98ED},+    {0xD2AD, 0x52E0},+    {0xD2AE, 0x52F3},+    {0xD2AF, 0x52F5},+    {0xD2B0, 0x52F8},+    {0xD2B1, 0x52F9},+    {0xD2B2, 0x5306},+    {0xD2B3, 0x5308},+    {0xD2B4, 0x7538},+    {0xD2B5, 0x530D},+    {0xD2B6, 0x5310},+    {0xD2B7, 0x530F},+    {0xD2B8, 0x5315},+    {0xD2B9, 0x531A},+    {0xD2BA, 0x5323},+    {0xD2BB, 0x532F},+    {0xD2BC, 0x5331},+    {0xD2BD, 0x5333},+    {0xD2BE, 0x5338},+    {0xD2BF, 0x5340},+    {0xD2C0, 0x5346},+    {0xD2C1, 0x5345},+    {0xD2C2, 0x4E17},+    {0xD2C3, 0x5349},+    {0xD2C4, 0x534D},+    {0xD2C5, 0x51D6},+    {0xD2C6, 0x535E},+    {0xD2C7, 0x5369},+    {0xD2C8, 0x536E},+    {0xD2C9, 0x5918},+    {0xD2CA, 0x537B},+    {0xD2CB, 0x5377},+    {0xD2CC, 0x5382},+    {0xD2CD, 0x5396},+    {0xD2CE, 0x53A0},+    {0xD2CF, 0x53A6},+    {0xD2D0, 0x53A5},+    {0xD2D1, 0x53AE},+    {0xD2D2, 0x53B0},+    {0xD2D3, 0x53B6},+    {0xD2D4, 0x53C3},+    {0xD2D5, 0x7C12},+    {0xD2D6, 0x96D9},+    {0xD2D7, 0x53DF},+    {0xD2D8, 0x66FC},+    {0xD2D9, 0x71EE},+    {0xD2DA, 0x53EE},+    {0xD2DB, 0x53E8},+    {0xD2DC, 0x53ED},+    {0xD2DD, 0x53FA},+    {0xD2DE, 0x5401},+    {0xD2DF, 0x543D},+    {0xD2E0, 0x5440},+    {0xD2E1, 0x542C},+    {0xD2E2, 0x542D},+    {0xD2E3, 0x543C},+    {0xD2E4, 0x542E},+    {0xD2E5, 0x5436},+    {0xD2E6, 0x5429},+    {0xD2E7, 0x541D},+    {0xD2E8, 0x544E},+    {0xD2E9, 0x548F},+    {0xD2EA, 0x5475},+    {0xD2EB, 0x548E},+    {0xD2EC, 0x545F},+    {0xD2ED, 0x5471},+    {0xD2EE, 0x5477},+    {0xD2EF, 0x5470},+    {0xD2F0, 0x5492},+    {0xD2F1, 0x547B},+    {0xD2F2, 0x5480},+    {0xD2F3, 0x5476},+    {0xD2F4, 0x5484},+    {0xD2F5, 0x5490},+    {0xD2F6, 0x5486},+    {0xD2F7, 0x54C7},+    {0xD2F8, 0x54A2},+    {0xD2F9, 0x54B8},+    {0xD2FA, 0x54A5},+    {0xD2FB, 0x54AC},+    {0xD2FC, 0x54C4},+    {0xD2FD, 0x54C8},+    {0xD2FE, 0x54A8},+    {0xD3A1, 0x54AB},+    {0xD3A2, 0x54C2},+    {0xD3A3, 0x54A4},+    {0xD3A4, 0x54BE},+    {0xD3A5, 0x54BC},+    {0xD3A6, 0x54D8},+    {0xD3A7, 0x54E5},+    {0xD3A8, 0x54E6},+    {0xD3A9, 0x550F},+    {0xD3AA, 0x5514},+    {0xD3AB, 0x54FD},+    {0xD3AC, 0x54EE},+    {0xD3AD, 0x54ED},+    {0xD3AE, 0x54FA},+    {0xD3AF, 0x54E2},+    {0xD3B0, 0x5539},+    {0xD3B1, 0x5540},+    {0xD3B2, 0x5563},+    {0xD3B3, 0x554C},+    {0xD3B4, 0x552E},+    {0xD3B5, 0x555C},+    {0xD3B6, 0x5545},+    {0xD3B7, 0x5556},+    {0xD3B8, 0x5557},+    {0xD3B9, 0x5538},+    {0xD3BA, 0x5533},+    {0xD3BB, 0x555D},+    {0xD3BC, 0x5599},+    {0xD3BD, 0x5580},+    {0xD3BE, 0x54AF},+    {0xD3BF, 0x558A},+    {0xD3C0, 0x559F},+    {0xD3C1, 0x557B},+    {0xD3C2, 0x557E},+    {0xD3C3, 0x5598},+    {0xD3C4, 0x559E},+    {0xD3C5, 0x55AE},+    {0xD3C6, 0x557C},+    {0xD3C7, 0x5583},+    {0xD3C8, 0x55A9},+    {0xD3C9, 0x5587},+    {0xD3CA, 0x55A8},+    {0xD3CB, 0x55DA},+    {0xD3CC, 0x55C5},+    {0xD3CD, 0x55DF},+    {0xD3CE, 0x55C4},+    {0xD3CF, 0x55DC},+    {0xD3D0, 0x55E4},+    {0xD3D1, 0x55D4},+    {0xD3D2, 0x5614},+    {0xD3D3, 0x55F7},+    {0xD3D4, 0x5616},+    {0xD3D5, 0x55FE},+    {0xD3D6, 0x55FD},+    {0xD3D7, 0x561B},+    {0xD3D8, 0x55F9},+    {0xD3D9, 0x564E},+    {0xD3DA, 0x5650},+    {0xD3DB, 0x71DF},+    {0xD3DC, 0x5634},+    {0xD3DD, 0x5636},+    {0xD3DE, 0x5632},+    {0xD3DF, 0x5638},+    {0xD3E0, 0x566B},+    {0xD3E1, 0x5664},+    {0xD3E2, 0x562F},+    {0xD3E3, 0x566C},+    {0xD3E4, 0x566A},+    {0xD3E5, 0x5686},+    {0xD3E6, 0x5680},+    {0xD3E7, 0x568A},+    {0xD3E8, 0x56A0},+    {0xD3E9, 0x5694},+    {0xD3EA, 0x568F},+    {0xD3EB, 0x56A5},+    {0xD3EC, 0x56AE},+    {0xD3ED, 0x56B6},+    {0xD3EE, 0x56B4},+    {0xD3EF, 0x56C2},+    {0xD3F0, 0x56BC},+    {0xD3F1, 0x56C1},+    {0xD3F2, 0x56C3},+    {0xD3F3, 0x56C0},+    {0xD3F4, 0x56C8},+    {0xD3F5, 0x56CE},+    {0xD3F6, 0x56D1},+    {0xD3F7, 0x56D3},+    {0xD3F8, 0x56D7},+    {0xD3F9, 0x56EE},+    {0xD3FA, 0x56F9},+    {0xD3FB, 0x5700},+    {0xD3FC, 0x56FF},+    {0xD3FD, 0x5704},+    {0xD3FE, 0x5709},+    {0xD4A1, 0x5708},+    {0xD4A2, 0x570B},+    {0xD4A3, 0x570D},+    {0xD4A4, 0x5713},+    {0xD4A5, 0x5718},+    {0xD4A6, 0x5716},+    {0xD4A7, 0x55C7},+    {0xD4A8, 0x571C},+    {0xD4A9, 0x5726},+    {0xD4AA, 0x5737},+    {0xD4AB, 0x5738},+    {0xD4AC, 0x574E},+    {0xD4AD, 0x573B},+    {0xD4AE, 0x5740},+    {0xD4AF, 0x574F},+    {0xD4B0, 0x5769},+    {0xD4B1, 0x57C0},+    {0xD4B2, 0x5788},+    {0xD4B3, 0x5761},+    {0xD4B4, 0x577F},+    {0xD4B5, 0x5789},+    {0xD4B6, 0x5793},+    {0xD4B7, 0x57A0},+    {0xD4B8, 0x57B3},+    {0xD4B9, 0x57A4},+    {0xD4BA, 0x57AA},+    {0xD4BB, 0x57B0},+    {0xD4BC, 0x57C3},+    {0xD4BD, 0x57C6},+    {0xD4BE, 0x57D4},+    {0xD4BF, 0x57D2},+    {0xD4C0, 0x57D3},+    {0xD4C1, 0x580A},+    {0xD4C2, 0x57D6},+    {0xD4C3, 0x57E3},+    {0xD4C4, 0x580B},+    {0xD4C5, 0x5819},+    {0xD4C6, 0x581D},+    {0xD4C7, 0x5872},+    {0xD4C8, 0x5821},+    {0xD4C9, 0x5862},+    {0xD4CA, 0x584B},+    {0xD4CB, 0x5870},+    {0xD4CC, 0x6BC0},+    {0xD4CD, 0x5852},+    {0xD4CE, 0x583D},+    {0xD4CF, 0x5879},+    {0xD4D0, 0x5885},+    {0xD4D1, 0x58B9},+    {0xD4D2, 0x589F},+    {0xD4D3, 0x58AB},+    {0xD4D4, 0x58BA},+    {0xD4D5, 0x58DE},+    {0xD4D6, 0x58BB},+    {0xD4D7, 0x58B8},+    {0xD4D8, 0x58AE},+    {0xD4D9, 0x58C5},+    {0xD4DA, 0x58D3},+    {0xD4DB, 0x58D1},+    {0xD4DC, 0x58D7},+    {0xD4DD, 0x58D9},+    {0xD4DE, 0x58D8},+    {0xD4DF, 0x58E5},+    {0xD4E0, 0x58DC},+    {0xD4E1, 0x58E4},+    {0xD4E2, 0x58DF},+    {0xD4E3, 0x58EF},+    {0xD4E4, 0x58FA},+    {0xD4E5, 0x58F9},+    {0xD4E6, 0x58FB},+    {0xD4E7, 0x58FC},+    {0xD4E8, 0x58FD},+    {0xD4E9, 0x5902},+    {0xD4EA, 0x590A},+    {0xD4EB, 0x5910},+    {0xD4EC, 0x591B},+    {0xD4ED, 0x68A6},+    {0xD4EE, 0x5925},+    {0xD4EF, 0x592C},+    {0xD4F0, 0x592D},+    {0xD4F1, 0x5932},+    {0xD4F2, 0x5938},+    {0xD4F3, 0x593E},+    {0xD4F4, 0x7AD2},+    {0xD4F5, 0x5955},+    {0xD4F6, 0x5950},+    {0xD4F7, 0x594E},+    {0xD4F8, 0x595A},+    {0xD4F9, 0x5958},+    {0xD4FA, 0x5962},+    {0xD4FB, 0x5960},+    {0xD4FC, 0x5967},+    {0xD4FD, 0x596C},+    {0xD4FE, 0x5969},+    {0xD5A1, 0x5978},+    {0xD5A2, 0x5981},+    {0xD5A3, 0x599D},+    {0xD5A4, 0x4F5E},+    {0xD5A5, 0x4FAB},+    {0xD5A6, 0x59A3},+    {0xD5A7, 0x59B2},+    {0xD5A8, 0x59C6},+    {0xD5A9, 0x59E8},+    {0xD5AA, 0x59DC},+    {0xD5AB, 0x598D},+    {0xD5AC, 0x59D9},+    {0xD5AD, 0x59DA},+    {0xD5AE, 0x5A25},+    {0xD5AF, 0x5A1F},+    {0xD5B0, 0x5A11},+    {0xD5B1, 0x5A1C},+    {0xD5B2, 0x5A09},+    {0xD5B3, 0x5A1A},+    {0xD5B4, 0x5A40},+    {0xD5B5, 0x5A6C},+    {0xD5B6, 0x5A49},+    {0xD5B7, 0x5A35},+    {0xD5B8, 0x5A36},+    {0xD5B9, 0x5A62},+    {0xD5BA, 0x5A6A},+    {0xD5BB, 0x5A9A},+    {0xD5BC, 0x5ABC},+    {0xD5BD, 0x5ABE},+    {0xD5BE, 0x5ACB},+    {0xD5BF, 0x5AC2},+    {0xD5C0, 0x5ABD},+    {0xD5C1, 0x5AE3},+    {0xD5C2, 0x5AD7},+    {0xD5C3, 0x5AE6},+    {0xD5C4, 0x5AE9},+    {0xD5C5, 0x5AD6},+    {0xD5C6, 0x5AFA},+    {0xD5C7, 0x5AFB},+    {0xD5C8, 0x5B0C},+    {0xD5C9, 0x5B0B},+    {0xD5CA, 0x5B16},+    {0xD5CB, 0x5B32},+    {0xD5CC, 0x5AD0},+    {0xD5CD, 0x5B2A},+    {0xD5CE, 0x5B36},+    {0xD5CF, 0x5B3E},+    {0xD5D0, 0x5B43},+    {0xD5D1, 0x5B45},+    {0xD5D2, 0x5B40},+    {0xD5D3, 0x5B51},+    {0xD5D4, 0x5B55},+    {0xD5D5, 0x5B5A},+    {0xD5D6, 0x5B5B},+    {0xD5D7, 0x5B65},+    {0xD5D8, 0x5B69},+    {0xD5D9, 0x5B70},+    {0xD5DA, 0x5B73},+    {0xD5DB, 0x5B75},+    {0xD5DC, 0x5B78},+    {0xD5DD, 0x6588},+    {0xD5DE, 0x5B7A},+    {0xD5DF, 0x5B80},+    {0xD5E0, 0x5B83},+    {0xD5E1, 0x5BA6},+    {0xD5E2, 0x5BB8},+    {0xD5E3, 0x5BC3},+    {0xD5E4, 0x5BC7},+    {0xD5E5, 0x5BC9},+    {0xD5E6, 0x5BD4},+    {0xD5E7, 0x5BD0},+    {0xD5E8, 0x5BE4},+    {0xD5E9, 0x5BE6},+    {0xD5EA, 0x5BE2},+    {0xD5EB, 0x5BDE},+    {0xD5EC, 0x5BE5},+    {0xD5ED, 0x5BEB},+    {0xD5EE, 0x5BF0},+    {0xD5EF, 0x5BF6},+    {0xD5F0, 0x5BF3},+    {0xD5F1, 0x5C05},+    {0xD5F2, 0x5C07},+    {0xD5F3, 0x5C08},+    {0xD5F4, 0x5C0D},+    {0xD5F5, 0x5C13},+    {0xD5F6, 0x5C20},+    {0xD5F7, 0x5C22},+    {0xD5F8, 0x5C28},+    {0xD5F9, 0x5C38},+    {0xD5FA, 0x5C39},+    {0xD5FB, 0x5C41},+    {0xD5FC, 0x5C46},+    {0xD5FD, 0x5C4E},+    {0xD5FE, 0x5C53},+    {0xD6A1, 0x5C50},+    {0xD6A2, 0x5C4F},+    {0xD6A3, 0x5B71},+    {0xD6A4, 0x5C6C},+    {0xD6A5, 0x5C6E},+    {0xD6A6, 0x4E62},+    {0xD6A7, 0x5C76},+    {0xD6A8, 0x5C79},+    {0xD6A9, 0x5C8C},+    {0xD6AA, 0x5C91},+    {0xD6AB, 0x5C94},+    {0xD6AC, 0x599B},+    {0xD6AD, 0x5CAB},+    {0xD6AE, 0x5CBB},+    {0xD6AF, 0x5CB6},+    {0xD6B0, 0x5CBC},+    {0xD6B1, 0x5CB7},+    {0xD6B2, 0x5CC5},+    {0xD6B3, 0x5CBE},+    {0xD6B4, 0x5CC7},+    {0xD6B5, 0x5CD9},+    {0xD6B6, 0x5CE9},+    {0xD6B7, 0x5CFD},+    {0xD6B8, 0x5CFA},+    {0xD6B9, 0x5CED},+    {0xD6BA, 0x5D8C},+    {0xD6BB, 0x5CEA},+    {0xD6BC, 0x5D0B},+    {0xD6BD, 0x5D15},+    {0xD6BE, 0x5D17},+    {0xD6BF, 0x5D5C},+    {0xD6C0, 0x5D1F},+    {0xD6C1, 0x5D1B},+    {0xD6C2, 0x5D11},+    {0xD6C3, 0x5D14},+    {0xD6C4, 0x5D22},+    {0xD6C5, 0x5D1A},+    {0xD6C6, 0x5D19},+    {0xD6C7, 0x5D18},+    {0xD6C8, 0x5D4C},+    {0xD6C9, 0x5D52},+    {0xD6CA, 0x5D4E},+    {0xD6CB, 0x5D4B},+    {0xD6CC, 0x5D6C},+    {0xD6CD, 0x5D73},+    {0xD6CE, 0x5D76},+    {0xD6CF, 0x5D87},+    {0xD6D0, 0x5D84},+    {0xD6D1, 0x5D82},+    {0xD6D2, 0x5DA2},+    {0xD6D3, 0x5D9D},+    {0xD6D4, 0x5DAC},+    {0xD6D5, 0x5DAE},+    {0xD6D6, 0x5DBD},+    {0xD6D7, 0x5D90},+    {0xD6D8, 0x5DB7},+    {0xD6D9, 0x5DBC},+    {0xD6DA, 0x5DC9},+    {0xD6DB, 0x5DCD},+    {0xD6DC, 0x5DD3},+    {0xD6DD, 0x5DD2},+    {0xD6DE, 0x5DD6},+    {0xD6DF, 0x5DDB},+    {0xD6E0, 0x5DEB},+    {0xD6E1, 0x5DF2},+    {0xD6E2, 0x5DF5},+    {0xD6E3, 0x5E0B},+    {0xD6E4, 0x5E1A},+    {0xD6E5, 0x5E19},+    {0xD6E6, 0x5E11},+    {0xD6E7, 0x5E1B},+    {0xD6E8, 0x5E36},+    {0xD6E9, 0x5E37},+    {0xD6EA, 0x5E44},+    {0xD6EB, 0x5E43},+    {0xD6EC, 0x5E40},+    {0xD6ED, 0x5E4E},+    {0xD6EE, 0x5E57},+    {0xD6EF, 0x5E54},+    {0xD6F0, 0x5E5F},+    {0xD6F1, 0x5E62},+    {0xD6F2, 0x5E64},+    {0xD6F3, 0x5E47},+    {0xD6F4, 0x5E75},+    {0xD6F5, 0x5E76},+    {0xD6F6, 0x5E7A},+    {0xD6F7, 0x9EBC},+    {0xD6F8, 0x5E7F},+    {0xD6F9, 0x5EA0},+    {0xD6FA, 0x5EC1},+    {0xD6FB, 0x5EC2},+    {0xD6FC, 0x5EC8},+    {0xD6FD, 0x5ED0},+    {0xD6FE, 0x5ECF},+    {0xD7A1, 0x5ED6},+    {0xD7A2, 0x5EE3},+    {0xD7A3, 0x5EDD},+    {0xD7A4, 0x5EDA},+    {0xD7A5, 0x5EDB},+    {0xD7A6, 0x5EE2},+    {0xD7A7, 0x5EE1},+    {0xD7A8, 0x5EE8},+    {0xD7A9, 0x5EE9},+    {0xD7AA, 0x5EEC},+    {0xD7AB, 0x5EF1},+    {0xD7AC, 0x5EF3},+    {0xD7AD, 0x5EF0},+    {0xD7AE, 0x5EF4},+    {0xD7AF, 0x5EF8},+    {0xD7B0, 0x5EFE},+    {0xD7B1, 0x5F03},+    {0xD7B2, 0x5F09},+    {0xD7B3, 0x5F5D},+    {0xD7B4, 0x5F5C},+    {0xD7B5, 0x5F0B},+    {0xD7B6, 0x5F11},+    {0xD7B7, 0x5F16},+    {0xD7B8, 0x5F29},+    {0xD7B9, 0x5F2D},+    {0xD7BA, 0x5F38},+    {0xD7BB, 0x5F41},+    {0xD7BC, 0x5F48},+    {0xD7BD, 0x5F4C},+    {0xD7BE, 0x5F4E},+    {0xD7BF, 0x5F2F},+    {0xD7C0, 0x5F51},+    {0xD7C1, 0x5F56},+    {0xD7C2, 0x5F57},+    {0xD7C3, 0x5F59},+    {0xD7C4, 0x5F61},+    {0xD7C5, 0x5F6D},+    {0xD7C6, 0x5F73},+    {0xD7C7, 0x5F77},+    {0xD7C8, 0x5F83},+    {0xD7C9, 0x5F82},+    {0xD7CA, 0x5F7F},+    {0xD7CB, 0x5F8A},+    {0xD7CC, 0x5F88},+    {0xD7CD, 0x5F91},+    {0xD7CE, 0x5F87},+    {0xD7CF, 0x5F9E},+    {0xD7D0, 0x5F99},+    {0xD7D1, 0x5F98},+    {0xD7D2, 0x5FA0},+    {0xD7D3, 0x5FA8},+    {0xD7D4, 0x5FAD},+    {0xD7D5, 0x5FBC},+    {0xD7D6, 0x5FD6},+    {0xD7D7, 0x5FFB},+    {0xD7D8, 0x5FE4},+    {0xD7D9, 0x5FF8},+    {0xD7DA, 0x5FF1},+    {0xD7DB, 0x5FDD},+    {0xD7DC, 0x60B3},+    {0xD7DD, 0x5FFF},+    {0xD7DE, 0x6021},+    {0xD7DF, 0x6060},+    {0xD7E0, 0x6019},+    {0xD7E1, 0x6010},+    {0xD7E2, 0x6029},+    {0xD7E3, 0x600E},+    {0xD7E4, 0x6031},+    {0xD7E5, 0x601B},+    {0xD7E6, 0x6015},+    {0xD7E7, 0x602B},+    {0xD7E8, 0x6026},+    {0xD7E9, 0x600F},+    {0xD7EA, 0x603A},+    {0xD7EB, 0x605A},+    {0xD7EC, 0x6041},+    {0xD7ED, 0x606A},+    {0xD7EE, 0x6077},+    {0xD7EF, 0x605F},+    {0xD7F0, 0x604A},+    {0xD7F1, 0x6046},+    {0xD7F2, 0x604D},+    {0xD7F3, 0x6063},+    {0xD7F4, 0x6043},+    {0xD7F5, 0x6064},+    {0xD7F6, 0x6042},+    {0xD7F7, 0x606C},+    {0xD7F8, 0x606B},+    {0xD7F9, 0x6059},+    {0xD7FA, 0x6081},+    {0xD7FB, 0x608D},+    {0xD7FC, 0x60E7},+    {0xD7FD, 0x6083},+    {0xD7FE, 0x609A},+    {0xD8A1, 0x6084},+    {0xD8A2, 0x609B},+    {0xD8A3, 0x6096},+    {0xD8A4, 0x6097},+    {0xD8A5, 0x6092},+    {0xD8A6, 0x60A7},+    {0xD8A7, 0x608B},+    {0xD8A8, 0x60E1},+    {0xD8A9, 0x60B8},+    {0xD8AA, 0x60E0},+    {0xD8AB, 0x60D3},+    {0xD8AC, 0x60B4},+    {0xD8AD, 0x5FF0},+    {0xD8AE, 0x60BD},+    {0xD8AF, 0x60C6},+    {0xD8B0, 0x60B5},+    {0xD8B1, 0x60D8},+    {0xD8B2, 0x614D},+    {0xD8B3, 0x6115},+    {0xD8B4, 0x6106},+    {0xD8B5, 0x60F6},+    {0xD8B6, 0x60F7},+    {0xD8B7, 0x6100},+    {0xD8B8, 0x60F4},+    {0xD8B9, 0x60FA},+    {0xD8BA, 0x6103},+    {0xD8BB, 0x6121},+    {0xD8BC, 0x60FB},+    {0xD8BD, 0x60F1},+    {0xD8BE, 0x610D},+    {0xD8BF, 0x610E},+    {0xD8C0, 0x6147},+    {0xD8C1, 0x613E},+    {0xD8C2, 0x6128},+    {0xD8C3, 0x6127},+    {0xD8C4, 0x614A},+    {0xD8C5, 0x613F},+    {0xD8C6, 0x613C},+    {0xD8C7, 0x612C},+    {0xD8C8, 0x6134},+    {0xD8C9, 0x613D},+    {0xD8CA, 0x6142},+    {0xD8CB, 0x6144},+    {0xD8CC, 0x6173},+    {0xD8CD, 0x6177},+    {0xD8CE, 0x6158},+    {0xD8CF, 0x6159},+    {0xD8D0, 0x615A},+    {0xD8D1, 0x616B},+    {0xD8D2, 0x6174},+    {0xD8D3, 0x616F},+    {0xD8D4, 0x6165},+    {0xD8D5, 0x6171},+    {0xD8D6, 0x615F},+    {0xD8D7, 0x615D},+    {0xD8D8, 0x6153},+    {0xD8D9, 0x6175},+    {0xD8DA, 0x6199},+    {0xD8DB, 0x6196},+    {0xD8DC, 0x6187},+    {0xD8DD, 0x61AC},+    {0xD8DE, 0x6194},+    {0xD8DF, 0x619A},+    {0xD8E0, 0x618A},+    {0xD8E1, 0x6191},+    {0xD8E2, 0x61AB},+    {0xD8E3, 0x61AE},+    {0xD8E4, 0x61CC},+    {0xD8E5, 0x61CA},+    {0xD8E6, 0x61C9},+    {0xD8E7, 0x61F7},+    {0xD8E8, 0x61C8},+    {0xD8E9, 0x61C3},+    {0xD8EA, 0x61C6},+    {0xD8EB, 0x61BA},+    {0xD8EC, 0x61CB},+    {0xD8ED, 0x7F79},+    {0xD8EE, 0x61CD},+    {0xD8EF, 0x61E6},+    {0xD8F0, 0x61E3},+    {0xD8F1, 0x61F6},+    {0xD8F2, 0x61FA},+    {0xD8F3, 0x61F4},+    {0xD8F4, 0x61FF},+    {0xD8F5, 0x61FD},+    {0xD8F6, 0x61FC},+    {0xD8F7, 0x61FE},+    {0xD8F8, 0x6200},+    {0xD8F9, 0x6208},+    {0xD8FA, 0x6209},+    {0xD8FB, 0x620D},+    {0xD8FC, 0x620C},+    {0xD8FD, 0x6214},+    {0xD8FE, 0x621B},+    {0xD9A1, 0x621E},+    {0xD9A2, 0x6221},+    {0xD9A3, 0x622A},+    {0xD9A4, 0x622E},+    {0xD9A5, 0x6230},+    {0xD9A6, 0x6232},+    {0xD9A7, 0x6233},+    {0xD9A8, 0x6241},+    {0xD9A9, 0x624E},+    {0xD9AA, 0x625E},+    {0xD9AB, 0x6263},+    {0xD9AC, 0x625B},+    {0xD9AD, 0x6260},+    {0xD9AE, 0x6268},+    {0xD9AF, 0x627C},+    {0xD9B0, 0x6282},+    {0xD9B1, 0x6289},+    {0xD9B2, 0x627E},+    {0xD9B3, 0x6292},+    {0xD9B4, 0x6293},+    {0xD9B5, 0x6296},+    {0xD9B6, 0x62D4},+    {0xD9B7, 0x6283},+    {0xD9B8, 0x6294},+    {0xD9B9, 0x62D7},+    {0xD9BA, 0x62D1},+    {0xD9BB, 0x62BB},+    {0xD9BC, 0x62CF},+    {0xD9BD, 0x62FF},+    {0xD9BE, 0x62C6},+    {0xD9BF, 0x64D4},+    {0xD9C0, 0x62C8},+    {0xD9C1, 0x62DC},+    {0xD9C2, 0x62CC},+    {0xD9C3, 0x62CA},+    {0xD9C4, 0x62C2},+    {0xD9C5, 0x62C7},+    {0xD9C6, 0x629B},+    {0xD9C7, 0x62C9},+    {0xD9C8, 0x630C},+    {0xD9C9, 0x62EE},+    {0xD9CA, 0x62F1},+    {0xD9CB, 0x6327},+    {0xD9CC, 0x6302},+    {0xD9CD, 0x6308},+    {0xD9CE, 0x62EF},+    {0xD9CF, 0x62F5},+    {0xD9D0, 0x6350},+    {0xD9D1, 0x633E},+    {0xD9D2, 0x634D},+    {0xD9D3, 0x641C},+    {0xD9D4, 0x634F},+    {0xD9D5, 0x6396},+    {0xD9D6, 0x638E},+    {0xD9D7, 0x6380},+    {0xD9D8, 0x63AB},+    {0xD9D9, 0x6376},+    {0xD9DA, 0x63A3},+    {0xD9DB, 0x638F},+    {0xD9DC, 0x6389},+    {0xD9DD, 0x639F},+    {0xD9DE, 0x63B5},+    {0xD9DF, 0x636B},+    {0xD9E0, 0x6369},+    {0xD9E1, 0x63BE},+    {0xD9E2, 0x63E9},+    {0xD9E3, 0x63C0},+    {0xD9E4, 0x63C6},+    {0xD9E5, 0x63E3},+    {0xD9E6, 0x63C9},+    {0xD9E7, 0x63D2},+    {0xD9E8, 0x63F6},+    {0xD9E9, 0x63C4},+    {0xD9EA, 0x6416},+    {0xD9EB, 0x6434},+    {0xD9EC, 0x6406},+    {0xD9ED, 0x6413},+    {0xD9EE, 0x6426},+    {0xD9EF, 0x6436},+    {0xD9F0, 0x651D},+    {0xD9F1, 0x6417},+    {0xD9F2, 0x6428},+    {0xD9F3, 0x640F},+    {0xD9F4, 0x6467},+    {0xD9F5, 0x646F},+    {0xD9F6, 0x6476},+    {0xD9F7, 0x644E},+    {0xD9F8, 0x652A},+    {0xD9F9, 0x6495},+    {0xD9FA, 0x6493},+    {0xD9FB, 0x64A5},+    {0xD9FC, 0x64A9},+    {0xD9FD, 0x6488},+    {0xD9FE, 0x64BC},+    {0xDAA1, 0x64DA},+    {0xDAA2, 0x64D2},+    {0xDAA3, 0x64C5},+    {0xDAA4, 0x64C7},+    {0xDAA5, 0x64BB},+    {0xDAA6, 0x64D8},+    {0xDAA7, 0x64C2},+    {0xDAA8, 0x64F1},+    {0xDAA9, 0x64E7},+    {0xDAAA, 0x8209},+    {0xDAAB, 0x64E0},+    {0xDAAC, 0x64E1},+    {0xDAAD, 0x62AC},+    {0xDAAE, 0x64E3},+    {0xDAAF, 0x64EF},+    {0xDAB0, 0x652C},+    {0xDAB1, 0x64F6},+    {0xDAB2, 0x64F4},+    {0xDAB3, 0x64F2},+    {0xDAB4, 0x64FA},+    {0xDAB5, 0x6500},+    {0xDAB6, 0x64FD},+    {0xDAB7, 0x6518},+    {0xDAB8, 0x651C},+    {0xDAB9, 0x6505},+    {0xDABA, 0x6524},+    {0xDABB, 0x6523},+    {0xDABC, 0x652B},+    {0xDABD, 0x6534},+    {0xDABE, 0x6535},+    {0xDABF, 0x6537},+    {0xDAC0, 0x6536},+    {0xDAC1, 0x6538},+    {0xDAC2, 0x754B},+    {0xDAC3, 0x6548},+    {0xDAC4, 0x6556},+    {0xDAC5, 0x6555},+    {0xDAC6, 0x654D},+    {0xDAC7, 0x6558},+    {0xDAC8, 0x655E},+    {0xDAC9, 0x655D},+    {0xDACA, 0x6572},+    {0xDACB, 0x6578},+    {0xDACC, 0x6582},+    {0xDACD, 0x6583},+    {0xDACE, 0x8B8A},+    {0xDACF, 0x659B},+    {0xDAD0, 0x659F},+    {0xDAD1, 0x65AB},+    {0xDAD2, 0x65B7},+    {0xDAD3, 0x65C3},+    {0xDAD4, 0x65C6},+    {0xDAD5, 0x65C1},+    {0xDAD6, 0x65C4},+    {0xDAD7, 0x65CC},+    {0xDAD8, 0x65D2},+    {0xDAD9, 0x65DB},+    {0xDADA, 0x65D9},+    {0xDADB, 0x65E0},+    {0xDADC, 0x65E1},+    {0xDADD, 0x65F1},+    {0xDADE, 0x6772},+    {0xDADF, 0x660A},+    {0xDAE0, 0x6603},+    {0xDAE1, 0x65FB},+    {0xDAE2, 0x6773},+    {0xDAE3, 0x6635},+    {0xDAE4, 0x6636},+    {0xDAE5, 0x6634},+    {0xDAE6, 0x661C},+    {0xDAE7, 0x664F},+    {0xDAE8, 0x6644},+    {0xDAE9, 0x6649},+    {0xDAEA, 0x6641},+    {0xDAEB, 0x665E},+    {0xDAEC, 0x665D},+    {0xDAED, 0x6664},+    {0xDAEE, 0x6667},+    {0xDAEF, 0x6668},+    {0xDAF0, 0x665F},+    {0xDAF1, 0x6662},+    {0xDAF2, 0x6670},+    {0xDAF3, 0x6683},+    {0xDAF4, 0x6688},+    {0xDAF5, 0x668E},+    {0xDAF6, 0x6689},+    {0xDAF7, 0x6684},+    {0xDAF8, 0x6698},+    {0xDAF9, 0x669D},+    {0xDAFA, 0x66C1},+    {0xDAFB, 0x66B9},+    {0xDAFC, 0x66C9},+    {0xDAFD, 0x66BE},+    {0xDAFE, 0x66BC},+    {0xDBA1, 0x66C4},+    {0xDBA2, 0x66B8},+    {0xDBA3, 0x66D6},+    {0xDBA4, 0x66DA},+    {0xDBA5, 0x66E0},+    {0xDBA6, 0x663F},+    {0xDBA7, 0x66E6},+    {0xDBA8, 0x66E9},+    {0xDBA9, 0x66F0},+    {0xDBAA, 0x66F5},+    {0xDBAB, 0x66F7},+    {0xDBAC, 0x670F},+    {0xDBAD, 0x6716},+    {0xDBAE, 0x671E},+    {0xDBAF, 0x6726},+    {0xDBB0, 0x6727},+    {0xDBB1, 0x9738},+    {0xDBB2, 0x672E},+    {0xDBB3, 0x673F},+    {0xDBB4, 0x6736},+    {0xDBB5, 0x6741},+    {0xDBB6, 0x6738},+    {0xDBB7, 0x6737},+    {0xDBB8, 0x6746},+    {0xDBB9, 0x675E},+    {0xDBBA, 0x6760},+    {0xDBBB, 0x6759},+    {0xDBBC, 0x6763},+    {0xDBBD, 0x6764},+    {0xDBBE, 0x6789},+    {0xDBBF, 0x6770},+    {0xDBC0, 0x67A9},+    {0xDBC1, 0x677C},+    {0xDBC2, 0x676A},+    {0xDBC3, 0x678C},+    {0xDBC4, 0x678B},+    {0xDBC5, 0x67A6},+    {0xDBC6, 0x67A1},+    {0xDBC7, 0x6785},+    {0xDBC8, 0x67B7},+    {0xDBC9, 0x67EF},+    {0xDBCA, 0x67B4},+    {0xDBCB, 0x67EC},+    {0xDBCC, 0x67B3},+    {0xDBCD, 0x67E9},+    {0xDBCE, 0x67B8},+    {0xDBCF, 0x67E4},+    {0xDBD0, 0x67DE},+    {0xDBD1, 0x67DD},+    {0xDBD2, 0x67E2},+    {0xDBD3, 0x67EE},+    {0xDBD4, 0x67B9},+    {0xDBD5, 0x67CE},+    {0xDBD6, 0x67C6},+    {0xDBD7, 0x67E7},+    {0xDBD8, 0x6A9C},+    {0xDBD9, 0x681E},+    {0xDBDA, 0x6846},+    {0xDBDB, 0x6829},+    {0xDBDC, 0x6840},+    {0xDBDD, 0x684D},+    {0xDBDE, 0x6832},+    {0xDBDF, 0x684E},+    {0xDBE0, 0x68B3},+    {0xDBE1, 0x682B},+    {0xDBE2, 0x6859},+    {0xDBE3, 0x6863},+    {0xDBE4, 0x6877},+    {0xDBE5, 0x687F},+    {0xDBE6, 0x689F},+    {0xDBE7, 0x688F},+    {0xDBE8, 0x68AD},+    {0xDBE9, 0x6894},+    {0xDBEA, 0x689D},+    {0xDBEB, 0x689B},+    {0xDBEC, 0x6883},+    {0xDBED, 0x6AAE},+    {0xDBEE, 0x68B9},+    {0xDBEF, 0x6874},+    {0xDBF0, 0x68B5},+    {0xDBF1, 0x68A0},+    {0xDBF2, 0x68BA},+    {0xDBF3, 0x690F},+    {0xDBF4, 0x688D},+    {0xDBF5, 0x687E},+    {0xDBF6, 0x6901},+    {0xDBF7, 0x68CA},+    {0xDBF8, 0x6908},+    {0xDBF9, 0x68D8},+    {0xDBFA, 0x6922},+    {0xDBFB, 0x6926},+    {0xDBFC, 0x68E1},+    {0xDBFD, 0x690C},+    {0xDBFE, 0x68CD},+    {0xDCA1, 0x68D4},+    {0xDCA2, 0x68E7},+    {0xDCA3, 0x68D5},+    {0xDCA4, 0x6936},+    {0xDCA5, 0x6912},+    {0xDCA6, 0x6904},+    {0xDCA7, 0x68D7},+    {0xDCA8, 0x68E3},+    {0xDCA9, 0x6925},+    {0xDCAA, 0x68F9},+    {0xDCAB, 0x68E0},+    {0xDCAC, 0x68EF},+    {0xDCAD, 0x6928},+    {0xDCAE, 0x692A},+    {0xDCAF, 0x691A},+    {0xDCB0, 0x6923},+    {0xDCB1, 0x6921},+    {0xDCB2, 0x68C6},+    {0xDCB3, 0x6979},+    {0xDCB4, 0x6977},+    {0xDCB5, 0x695C},+    {0xDCB6, 0x6978},+    {0xDCB7, 0x696B},+    {0xDCB8, 0x6954},+    {0xDCB9, 0x697E},+    {0xDCBA, 0x696E},+    {0xDCBB, 0x6939},+    {0xDCBC, 0x6974},+    {0xDCBD, 0x693D},+    {0xDCBE, 0x6959},+    {0xDCBF, 0x6930},+    {0xDCC0, 0x6961},+    {0xDCC1, 0x695E},+    {0xDCC2, 0x695D},+    {0xDCC3, 0x6981},+    {0xDCC4, 0x696A},+    {0xDCC5, 0x69B2},+    {0xDCC6, 0x69AE},+    {0xDCC7, 0x69D0},+    {0xDCC8, 0x69BF},+    {0xDCC9, 0x69C1},+    {0xDCCA, 0x69D3},+    {0xDCCB, 0x69BE},+    {0xDCCC, 0x69CE},+    {0xDCCD, 0x5BE8},+    {0xDCCE, 0x69CA},+    {0xDCCF, 0x69DD},+    {0xDCD0, 0x69BB},+    {0xDCD1, 0x69C3},+    {0xDCD2, 0x69A7},+    {0xDCD3, 0x6A2E},+    {0xDCD4, 0x6991},+    {0xDCD5, 0x69A0},+    {0xDCD6, 0x699C},+    {0xDCD7, 0x6995},+    {0xDCD8, 0x69B4},+    {0xDCD9, 0x69DE},+    {0xDCDA, 0x69E8},+    {0xDCDB, 0x6A02},+    {0xDCDC, 0x6A1B},+    {0xDCDD, 0x69FF},+    {0xDCDE, 0x6B0A},+    {0xDCDF, 0x69F9},+    {0xDCE0, 0x69F2},+    {0xDCE1, 0x69E7},+    {0xDCE2, 0x6A05},+    {0xDCE3, 0x69B1},+    {0xDCE4, 0x6A1E},+    {0xDCE5, 0x69ED},+    {0xDCE6, 0x6A14},+    {0xDCE7, 0x69EB},+    {0xDCE8, 0x6A0A},+    {0xDCE9, 0x6A12},+    {0xDCEA, 0x6AC1},+    {0xDCEB, 0x6A23},+    {0xDCEC, 0x6A13},+    {0xDCED, 0x6A44},+    {0xDCEE, 0x6A0C},+    {0xDCEF, 0x6A72},+    {0xDCF0, 0x6A36},+    {0xDCF1, 0x6A78},+    {0xDCF2, 0x6A47},+    {0xDCF3, 0x6A62},+    {0xDCF4, 0x6A59},+    {0xDCF5, 0x6A66},+    {0xDCF6, 0x6A48},+    {0xDCF7, 0x6A38},+    {0xDCF8, 0x6A22},+    {0xDCF9, 0x6A90},+    {0xDCFA, 0x6A8D},+    {0xDCFB, 0x6AA0},+    {0xDCFC, 0x6A84},+    {0xDCFD, 0x6AA2},+    {0xDCFE, 0x6AA3},+    {0xDDA1, 0x6A97},+    {0xDDA2, 0x8617},+    {0xDDA3, 0x6ABB},+    {0xDDA4, 0x6AC3},+    {0xDDA5, 0x6AC2},+    {0xDDA6, 0x6AB8},+    {0xDDA7, 0x6AB3},+    {0xDDA8, 0x6AAC},+    {0xDDA9, 0x6ADE},+    {0xDDAA, 0x6AD1},+    {0xDDAB, 0x6ADF},+    {0xDDAC, 0x6AAA},+    {0xDDAD, 0x6ADA},+    {0xDDAE, 0x6AEA},+    {0xDDAF, 0x6AFB},+    {0xDDB0, 0x6B05},+    {0xDDB1, 0x8616},+    {0xDDB2, 0x6AFA},+    {0xDDB3, 0x6B12},+    {0xDDB4, 0x6B16},+    {0xDDB5, 0x9B31},+    {0xDDB6, 0x6B1F},+    {0xDDB7, 0x6B38},+    {0xDDB8, 0x6B37},+    {0xDDB9, 0x76DC},+    {0xDDBA, 0x6B39},+    {0xDDBB, 0x98EE},+    {0xDDBC, 0x6B47},+    {0xDDBD, 0x6B43},+    {0xDDBE, 0x6B49},+    {0xDDBF, 0x6B50},+    {0xDDC0, 0x6B59},+    {0xDDC1, 0x6B54},+    {0xDDC2, 0x6B5B},+    {0xDDC3, 0x6B5F},+    {0xDDC4, 0x6B61},+    {0xDDC5, 0x6B78},+    {0xDDC6, 0x6B79},+    {0xDDC7, 0x6B7F},+    {0xDDC8, 0x6B80},+    {0xDDC9, 0x6B84},+    {0xDDCA, 0x6B83},+    {0xDDCB, 0x6B8D},+    {0xDDCC, 0x6B98},+    {0xDDCD, 0x6B95},+    {0xDDCE, 0x6B9E},+    {0xDDCF, 0x6BA4},+    {0xDDD0, 0x6BAA},+    {0xDDD1, 0x6BAB},+    {0xDDD2, 0x6BAF},+    {0xDDD3, 0x6BB2},+    {0xDDD4, 0x6BB1},+    {0xDDD5, 0x6BB3},+    {0xDDD6, 0x6BB7},+    {0xDDD7, 0x6BBC},+    {0xDDD8, 0x6BC6},+    {0xDDD9, 0x6BCB},+    {0xDDDA, 0x6BD3},+    {0xDDDB, 0x6BDF},+    {0xDDDC, 0x6BEC},+    {0xDDDD, 0x6BEB},+    {0xDDDE, 0x6BF3},+    {0xDDDF, 0x6BEF},+    {0xDDE0, 0x9EBE},+    {0xDDE1, 0x6C08},+    {0xDDE2, 0x6C13},+    {0xDDE3, 0x6C14},+    {0xDDE4, 0x6C1B},+    {0xDDE5, 0x6C24},+    {0xDDE6, 0x6C23},+    {0xDDE7, 0x6C5E},+    {0xDDE8, 0x6C55},+    {0xDDE9, 0x6C62},+    {0xDDEA, 0x6C6A},+    {0xDDEB, 0x6C82},+    {0xDDEC, 0x6C8D},+    {0xDDED, 0x6C9A},+    {0xDDEE, 0x6C81},+    {0xDDEF, 0x6C9B},+    {0xDDF0, 0x6C7E},+    {0xDDF1, 0x6C68},+    {0xDDF2, 0x6C73},+    {0xDDF3, 0x6C92},+    {0xDDF4, 0x6C90},+    {0xDDF5, 0x6CC4},+    {0xDDF6, 0x6CF1},+    {0xDDF7, 0x6CD3},+    {0xDDF8, 0x6CBD},+    {0xDDF9, 0x6CD7},+    {0xDDFA, 0x6CC5},+    {0xDDFB, 0x6CDD},+    {0xDDFC, 0x6CAE},+    {0xDDFD, 0x6CB1},+    {0xDDFE, 0x6CBE},+    {0xDEA1, 0x6CBA},+    {0xDEA2, 0x6CDB},+    {0xDEA3, 0x6CEF},+    {0xDEA4, 0x6CD9},+    {0xDEA5, 0x6CEA},+    {0xDEA6, 0x6D1F},+    {0xDEA7, 0x884D},+    {0xDEA8, 0x6D36},+    {0xDEA9, 0x6D2B},+    {0xDEAA, 0x6D3D},+    {0xDEAB, 0x6D38},+    {0xDEAC, 0x6D19},+    {0xDEAD, 0x6D35},+    {0xDEAE, 0x6D33},+    {0xDEAF, 0x6D12},+    {0xDEB0, 0x6D0C},+    {0xDEB1, 0x6D63},+    {0xDEB2, 0x6D93},+    {0xDEB3, 0x6D64},+    {0xDEB4, 0x6D5A},+    {0xDEB5, 0x6D79},+    {0xDEB6, 0x6D59},+    {0xDEB7, 0x6D8E},+    {0xDEB8, 0x6D95},+    {0xDEB9, 0x6FE4},+    {0xDEBA, 0x6D85},+    {0xDEBB, 0x6DF9},+    {0xDEBC, 0x6E15},+    {0xDEBD, 0x6E0A},+    {0xDEBE, 0x6DB5},+    {0xDEBF, 0x6DC7},+    {0xDEC0, 0x6DE6},+    {0xDEC1, 0x6DB8},+    {0xDEC2, 0x6DC6},+    {0xDEC3, 0x6DEC},+    {0xDEC4, 0x6DDE},+    {0xDEC5, 0x6DCC},+    {0xDEC6, 0x6DE8},+    {0xDEC7, 0x6DD2},+    {0xDEC8, 0x6DC5},+    {0xDEC9, 0x6DFA},+    {0xDECA, 0x6DD9},+    {0xDECB, 0x6DE4},+    {0xDECC, 0x6DD5},+    {0xDECD, 0x6DEA},+    {0xDECE, 0x6DEE},+    {0xDECF, 0x6E2D},+    {0xDED0, 0x6E6E},+    {0xDED1, 0x6E2E},+    {0xDED2, 0x6E19},+    {0xDED3, 0x6E72},+    {0xDED4, 0x6E5F},+    {0xDED5, 0x6E3E},+    {0xDED6, 0x6E23},+    {0xDED7, 0x6E6B},+    {0xDED8, 0x6E2B},+    {0xDED9, 0x6E76},+    {0xDEDA, 0x6E4D},+    {0xDEDB, 0x6E1F},+    {0xDEDC, 0x6E43},+    {0xDEDD, 0x6E3A},+    {0xDEDE, 0x6E4E},+    {0xDEDF, 0x6E24},+    {0xDEE0, 0x6EFF},+    {0xDEE1, 0x6E1D},+    {0xDEE2, 0x6E38},+    {0xDEE3, 0x6E82},+    {0xDEE4, 0x6EAA},+    {0xDEE5, 0x6E98},+    {0xDEE6, 0x6EC9},+    {0xDEE7, 0x6EB7},+    {0xDEE8, 0x6ED3},+    {0xDEE9, 0x6EBD},+    {0xDEEA, 0x6EAF},+    {0xDEEB, 0x6EC4},+    {0xDEEC, 0x6EB2},+    {0xDEED, 0x6ED4},+    {0xDEEE, 0x6ED5},+    {0xDEEF, 0x6E8F},+    {0xDEF0, 0x6EA5},+    {0xDEF1, 0x6EC2},+    {0xDEF2, 0x6E9F},+    {0xDEF3, 0x6F41},+    {0xDEF4, 0x6F11},+    {0xDEF5, 0x704C},+    {0xDEF6, 0x6EEC},+    {0xDEF7, 0x6EF8},+    {0xDEF8, 0x6EFE},+    {0xDEF9, 0x6F3F},+    {0xDEFA, 0x6EF2},+    {0xDEFB, 0x6F31},+    {0xDEFC, 0x6EEF},+    {0xDEFD, 0x6F32},+    {0xDEFE, 0x6ECC},+    {0xDFA1, 0x6F3E},+    {0xDFA2, 0x6F13},+    {0xDFA3, 0x6EF7},+    {0xDFA4, 0x6F86},+    {0xDFA5, 0x6F7A},+    {0xDFA6, 0x6F78},+    {0xDFA7, 0x6F81},+    {0xDFA8, 0x6F80},+    {0xDFA9, 0x6F6F},+    {0xDFAA, 0x6F5B},+    {0xDFAB, 0x6FF3},+    {0xDFAC, 0x6F6D},+    {0xDFAD, 0x6F82},+    {0xDFAE, 0x6F7C},+    {0xDFAF, 0x6F58},+    {0xDFB0, 0x6F8E},+    {0xDFB1, 0x6F91},+    {0xDFB2, 0x6FC2},+    {0xDFB3, 0x6F66},+    {0xDFB4, 0x6FB3},+    {0xDFB5, 0x6FA3},+    {0xDFB6, 0x6FA1},+    {0xDFB7, 0x6FA4},+    {0xDFB8, 0x6FB9},+    {0xDFB9, 0x6FC6},+    {0xDFBA, 0x6FAA},+    {0xDFBB, 0x6FDF},+    {0xDFBC, 0x6FD5},+    {0xDFBD, 0x6FEC},+    {0xDFBE, 0x6FD4},+    {0xDFBF, 0x6FD8},+    {0xDFC0, 0x6FF1},+    {0xDFC1, 0x6FEE},+    {0xDFC2, 0x6FDB},+    {0xDFC3, 0x7009},+    {0xDFC4, 0x700B},+    {0xDFC5, 0x6FFA},+    {0xDFC6, 0x7011},+    {0xDFC7, 0x7001},+    {0xDFC8, 0x700F},+    {0xDFC9, 0x6FFE},+    {0xDFCA, 0x701B},+    {0xDFCB, 0x701A},+    {0xDFCC, 0x6F74},+    {0xDFCD, 0x701D},+    {0xDFCE, 0x7018},+    {0xDFCF, 0x701F},+    {0xDFD0, 0x7030},+    {0xDFD1, 0x703E},+    {0xDFD2, 0x7032},+    {0xDFD3, 0x7051},+    {0xDFD4, 0x7063},+    {0xDFD5, 0x7099},+    {0xDFD6, 0x7092},+    {0xDFD7, 0x70AF},+    {0xDFD8, 0x70F1},+    {0xDFD9, 0x70AC},+    {0xDFDA, 0x70B8},+    {0xDFDB, 0x70B3},+    {0xDFDC, 0x70AE},+    {0xDFDD, 0x70DF},+    {0xDFDE, 0x70CB},+    {0xDFDF, 0x70DD},+    {0xDFE0, 0x70D9},+    {0xDFE1, 0x7109},+    {0xDFE2, 0x70FD},+    {0xDFE3, 0x711C},+    {0xDFE4, 0x7119},+    {0xDFE5, 0x7165},+    {0xDFE6, 0x7155},+    {0xDFE7, 0x7188},+    {0xDFE8, 0x7166},+    {0xDFE9, 0x7162},+    {0xDFEA, 0x714C},+    {0xDFEB, 0x7156},+    {0xDFEC, 0x716C},+    {0xDFED, 0x718F},+    {0xDFEE, 0x71FB},+    {0xDFEF, 0x7184},+    {0xDFF0, 0x7195},+    {0xDFF1, 0x71A8},+    {0xDFF2, 0x71AC},+    {0xDFF3, 0x71D7},+    {0xDFF4, 0x71B9},+    {0xDFF5, 0x71BE},+    {0xDFF6, 0x71D2},+    {0xDFF7, 0x71C9},+    {0xDFF8, 0x71D4},+    {0xDFF9, 0x71CE},+    {0xDFFA, 0x71E0},+    {0xDFFB, 0x71EC},+    {0xDFFC, 0x71E7},+    {0xDFFD, 0x71F5},+    {0xDFFE, 0x71FC},+    {0xE0A1, 0x71F9},+    {0xE0A2, 0x71FF},+    {0xE0A3, 0x720D},+    {0xE0A4, 0x7210},+    {0xE0A5, 0x721B},+    {0xE0A6, 0x7228},+    {0xE0A7, 0x722D},+    {0xE0A8, 0x722C},+    {0xE0A9, 0x7230},+    {0xE0AA, 0x7232},+    {0xE0AB, 0x723B},+    {0xE0AC, 0x723C},+    {0xE0AD, 0x723F},+    {0xE0AE, 0x7240},+    {0xE0AF, 0x7246},+    {0xE0B0, 0x724B},+    {0xE0B1, 0x7258},+    {0xE0B2, 0x7274},+    {0xE0B3, 0x727E},+    {0xE0B4, 0x7282},+    {0xE0B5, 0x7281},+    {0xE0B6, 0x7287},+    {0xE0B7, 0x7292},+    {0xE0B8, 0x7296},+    {0xE0B9, 0x72A2},+    {0xE0BA, 0x72A7},+    {0xE0BB, 0x72B9},+    {0xE0BC, 0x72B2},+    {0xE0BD, 0x72C3},+    {0xE0BE, 0x72C6},+    {0xE0BF, 0x72C4},+    {0xE0C0, 0x72CE},+    {0xE0C1, 0x72D2},+    {0xE0C2, 0x72E2},+    {0xE0C3, 0x72E0},+    {0xE0C4, 0x72E1},+    {0xE0C5, 0x72F9},+    {0xE0C6, 0x72F7},+    {0xE0C7, 0x500F},+    {0xE0C8, 0x7317},+    {0xE0C9, 0x730A},+    {0xE0CA, 0x731C},+    {0xE0CB, 0x7316},+    {0xE0CC, 0x731D},+    {0xE0CD, 0x7334},+    {0xE0CE, 0x732F},+    {0xE0CF, 0x7329},+    {0xE0D0, 0x7325},+    {0xE0D1, 0x733E},+    {0xE0D2, 0x734E},+    {0xE0D3, 0x734F},+    {0xE0D4, 0x9ED8},+    {0xE0D5, 0x7357},+    {0xE0D6, 0x736A},+    {0xE0D7, 0x7368},+    {0xE0D8, 0x7370},+    {0xE0D9, 0x7378},+    {0xE0DA, 0x7375},+    {0xE0DB, 0x737B},+    {0xE0DC, 0x737A},+    {0xE0DD, 0x73C8},+    {0xE0DE, 0x73B3},+    {0xE0DF, 0x73CE},+    {0xE0E0, 0x73BB},+    {0xE0E1, 0x73C0},+    {0xE0E2, 0x73E5},+    {0xE0E3, 0x73EE},+    {0xE0E4, 0x73DE},+    {0xE0E5, 0x74A2},+    {0xE0E6, 0x7405},+    {0xE0E7, 0x746F},+    {0xE0E8, 0x7425},+    {0xE0E9, 0x73F8},+    {0xE0EA, 0x7432},+    {0xE0EB, 0x743A},+    {0xE0EC, 0x7455},+    {0xE0ED, 0x743F},+    {0xE0EE, 0x745F},+    {0xE0EF, 0x7459},+    {0xE0F0, 0x7441},+    {0xE0F1, 0x745C},+    {0xE0F2, 0x7469},+    {0xE0F3, 0x7470},+    {0xE0F4, 0x7463},+    {0xE0F5, 0x746A},+    {0xE0F6, 0x7476},+    {0xE0F7, 0x747E},+    {0xE0F8, 0x748B},+    {0xE0F9, 0x749E},+    {0xE0FA, 0x74A7},+    {0xE0FB, 0x74CA},+    {0xE0FC, 0x74CF},+    {0xE0FD, 0x74D4},+    {0xE0FE, 0x73F1},+    {0xE1A1, 0x74E0},+    {0xE1A2, 0x74E3},+    {0xE1A3, 0x74E7},+    {0xE1A4, 0x74E9},+    {0xE1A5, 0x74EE},+    {0xE1A6, 0x74F2},+    {0xE1A7, 0x74F0},+    {0xE1A8, 0x74F1},+    {0xE1A9, 0x74F8},+    {0xE1AA, 0x74F7},+    {0xE1AB, 0x7504},+    {0xE1AC, 0x7503},+    {0xE1AD, 0x7505},+    {0xE1AE, 0x750C},+    {0xE1AF, 0x750E},+    {0xE1B0, 0x750D},+    {0xE1B1, 0x7515},+    {0xE1B2, 0x7513},+    {0xE1B3, 0x751E},+    {0xE1B4, 0x7526},+    {0xE1B5, 0x752C},+    {0xE1B6, 0x753C},+    {0xE1B7, 0x7544},+    {0xE1B8, 0x754D},+    {0xE1B9, 0x754A},+    {0xE1BA, 0x7549},+    {0xE1BB, 0x755B},+    {0xE1BC, 0x7546},+    {0xE1BD, 0x755A},+    {0xE1BE, 0x7569},+    {0xE1BF, 0x7564},+    {0xE1C0, 0x7567},+    {0xE1C1, 0x756B},+    {0xE1C2, 0x756D},+    {0xE1C3, 0x7578},+    {0xE1C4, 0x7576},+    {0xE1C5, 0x7586},+    {0xE1C6, 0x7587},+    {0xE1C7, 0x7574},+    {0xE1C8, 0x758A},+    {0xE1C9, 0x7589},+    {0xE1CA, 0x7582},+    {0xE1CB, 0x7594},+    {0xE1CC, 0x759A},+    {0xE1CD, 0x759D},+    {0xE1CE, 0x75A5},+    {0xE1CF, 0x75A3},+    {0xE1D0, 0x75C2},+    {0xE1D1, 0x75B3},+    {0xE1D2, 0x75C3},+    {0xE1D3, 0x75B5},+    {0xE1D4, 0x75BD},+    {0xE1D5, 0x75B8},+    {0xE1D6, 0x75BC},+    {0xE1D7, 0x75B1},+    {0xE1D8, 0x75CD},+    {0xE1D9, 0x75CA},+    {0xE1DA, 0x75D2},+    {0xE1DB, 0x75D9},+    {0xE1DC, 0x75E3},+    {0xE1DD, 0x75DE},+    {0xE1DE, 0x75FE},+    {0xE1DF, 0x75FF},+    {0xE1E0, 0x75FC},+    {0xE1E1, 0x7601},+    {0xE1E2, 0x75F0},+    {0xE1E3, 0x75FA},+    {0xE1E4, 0x75F2},+    {0xE1E5, 0x75F3},+    {0xE1E6, 0x760B},+    {0xE1E7, 0x760D},+    {0xE1E8, 0x7609},+    {0xE1E9, 0x761F},+    {0xE1EA, 0x7627},+    {0xE1EB, 0x7620},+    {0xE1EC, 0x7621},+    {0xE1ED, 0x7622},+    {0xE1EE, 0x7624},+    {0xE1EF, 0x7634},+    {0xE1F0, 0x7630},+    {0xE1F1, 0x763B},+    {0xE1F2, 0x7647},+    {0xE1F3, 0x7648},+    {0xE1F4, 0x7646},+    {0xE1F5, 0x765C},+    {0xE1F6, 0x7658},+    {0xE1F7, 0x7661},+    {0xE1F8, 0x7662},+    {0xE1F9, 0x7668},+    {0xE1FA, 0x7669},+    {0xE1FB, 0x766A},+    {0xE1FC, 0x7667},+    {0xE1FD, 0x766C},+    {0xE1FE, 0x7670},+    {0xE2A1, 0x7672},+    {0xE2A2, 0x7676},+    {0xE2A3, 0x7678},+    {0xE2A4, 0x767C},+    {0xE2A5, 0x7680},+    {0xE2A6, 0x7683},+    {0xE2A7, 0x7688},+    {0xE2A8, 0x768B},+    {0xE2A9, 0x768E},+    {0xE2AA, 0x7696},+    {0xE2AB, 0x7693},+    {0xE2AC, 0x7699},+    {0xE2AD, 0x769A},+    {0xE2AE, 0x76B0},+    {0xE2AF, 0x76B4},+    {0xE2B0, 0x76B8},+    {0xE2B1, 0x76B9},+    {0xE2B2, 0x76BA},+    {0xE2B3, 0x76C2},+    {0xE2B4, 0x76CD},+    {0xE2B5, 0x76D6},+    {0xE2B6, 0x76D2},+    {0xE2B7, 0x76DE},+    {0xE2B8, 0x76E1},+    {0xE2B9, 0x76E5},+    {0xE2BA, 0x76E7},+    {0xE2BB, 0x76EA},+    {0xE2BC, 0x862F},+    {0xE2BD, 0x76FB},+    {0xE2BE, 0x7708},+    {0xE2BF, 0x7707},+    {0xE2C0, 0x7704},+    {0xE2C1, 0x7729},+    {0xE2C2, 0x7724},+    {0xE2C3, 0x771E},+    {0xE2C4, 0x7725},+    {0xE2C5, 0x7726},+    {0xE2C6, 0x771B},+    {0xE2C7, 0x7737},+    {0xE2C8, 0x7738},+    {0xE2C9, 0x7747},+    {0xE2CA, 0x775A},+    {0xE2CB, 0x7768},+    {0xE2CC, 0x776B},+    {0xE2CD, 0x775B},+    {0xE2CE, 0x7765},+    {0xE2CF, 0x777F},+    {0xE2D0, 0x777E},+    {0xE2D1, 0x7779},+    {0xE2D2, 0x778E},+    {0xE2D3, 0x778B},+    {0xE2D4, 0x7791},+    {0xE2D5, 0x77A0},+    {0xE2D6, 0x779E},+    {0xE2D7, 0x77B0},+    {0xE2D8, 0x77B6},+    {0xE2D9, 0x77B9},+    {0xE2DA, 0x77BF},+    {0xE2DB, 0x77BC},+    {0xE2DC, 0x77BD},+    {0xE2DD, 0x77BB},+    {0xE2DE, 0x77C7},+    {0xE2DF, 0x77CD},+    {0xE2E0, 0x77D7},+    {0xE2E1, 0x77DA},+    {0xE2E2, 0x77DC},+    {0xE2E3, 0x77E3},+    {0xE2E4, 0x77EE},+    {0xE2E5, 0x77FC},+    {0xE2E6, 0x780C},+    {0xE2E7, 0x7812},+    {0xE2E8, 0x7926},+    {0xE2E9, 0x7820},+    {0xE2EA, 0x792A},+    {0xE2EB, 0x7845},+    {0xE2EC, 0x788E},+    {0xE2ED, 0x7874},+    {0xE2EE, 0x7886},+    {0xE2EF, 0x787C},+    {0xE2F0, 0x789A},+    {0xE2F1, 0x788C},+    {0xE2F2, 0x78A3},+    {0xE2F3, 0x78B5},+    {0xE2F4, 0x78AA},+    {0xE2F5, 0x78AF},+    {0xE2F6, 0x78D1},+    {0xE2F7, 0x78C6},+    {0xE2F8, 0x78CB},+    {0xE2F9, 0x78D4},+    {0xE2FA, 0x78BE},+    {0xE2FB, 0x78BC},+    {0xE2FC, 0x78C5},+    {0xE2FD, 0x78CA},+    {0xE2FE, 0x78EC},+    {0xE3A1, 0x78E7},+    {0xE3A2, 0x78DA},+    {0xE3A3, 0x78FD},+    {0xE3A4, 0x78F4},+    {0xE3A5, 0x7907},+    {0xE3A6, 0x7912},+    {0xE3A7, 0x7911},+    {0xE3A8, 0x7919},+    {0xE3A9, 0x792C},+    {0xE3AA, 0x792B},+    {0xE3AB, 0x7940},+    {0xE3AC, 0x7960},+    {0xE3AD, 0x7957},+    {0xE3AE, 0x795F},+    {0xE3AF, 0x795A},+    {0xE3B0, 0x7955},+    {0xE3B1, 0x7953},+    {0xE3B2, 0x797A},+    {0xE3B3, 0x797F},+    {0xE3B4, 0x798A},+    {0xE3B5, 0x799D},+    {0xE3B6, 0x79A7},+    {0xE3B7, 0x9F4B},+    {0xE3B8, 0x79AA},+    {0xE3B9, 0x79AE},+    {0xE3BA, 0x79B3},+    {0xE3BB, 0x79B9},+    {0xE3BC, 0x79BA},+    {0xE3BD, 0x79C9},+    {0xE3BE, 0x79D5},+    {0xE3BF, 0x79E7},+    {0xE3C0, 0x79EC},+    {0xE3C1, 0x79E1},+    {0xE3C2, 0x79E3},+    {0xE3C3, 0x7A08},+    {0xE3C4, 0x7A0D},+    {0xE3C5, 0x7A18},+    {0xE3C6, 0x7A19},+    {0xE3C7, 0x7A20},+    {0xE3C8, 0x7A1F},+    {0xE3C9, 0x7980},+    {0xE3CA, 0x7A31},+    {0xE3CB, 0x7A3B},+    {0xE3CC, 0x7A3E},+    {0xE3CD, 0x7A37},+    {0xE3CE, 0x7A43},+    {0xE3CF, 0x7A57},+    {0xE3D0, 0x7A49},+    {0xE3D1, 0x7A61},+    {0xE3D2, 0x7A62},+    {0xE3D3, 0x7A69},+    {0xE3D4, 0x9F9D},+    {0xE3D5, 0x7A70},+    {0xE3D6, 0x7A79},+    {0xE3D7, 0x7A7D},+    {0xE3D8, 0x7A88},+    {0xE3D9, 0x7A97},+    {0xE3DA, 0x7A95},+    {0xE3DB, 0x7A98},+    {0xE3DC, 0x7A96},+    {0xE3DD, 0x7AA9},+    {0xE3DE, 0x7AC8},+    {0xE3DF, 0x7AB0},+    {0xE3E0, 0x7AB6},+    {0xE3E1, 0x7AC5},+    {0xE3E2, 0x7AC4},+    {0xE3E3, 0x7ABF},+    {0xE3E4, 0x9083},+    {0xE3E5, 0x7AC7},+    {0xE3E6, 0x7ACA},+    {0xE3E7, 0x7ACD},+    {0xE3E8, 0x7ACF},+    {0xE3E9, 0x7AD5},+    {0xE3EA, 0x7AD3},+    {0xE3EB, 0x7AD9},+    {0xE3EC, 0x7ADA},+    {0xE3ED, 0x7ADD},+    {0xE3EE, 0x7AE1},+    {0xE3EF, 0x7AE2},+    {0xE3F0, 0x7AE6},+    {0xE3F1, 0x7AED},+    {0xE3F2, 0x7AF0},+    {0xE3F3, 0x7B02},+    {0xE3F4, 0x7B0F},+    {0xE3F5, 0x7B0A},+    {0xE3F6, 0x7B06},+    {0xE3F7, 0x7B33},+    {0xE3F8, 0x7B18},+    {0xE3F9, 0x7B19},+    {0xE3FA, 0x7B1E},+    {0xE3FB, 0x7B35},+    {0xE3FC, 0x7B28},+    {0xE3FD, 0x7B36},+    {0xE3FE, 0x7B50},+    {0xE4A1, 0x7B7A},+    {0xE4A2, 0x7B04},+    {0xE4A3, 0x7B4D},+    {0xE4A4, 0x7B0B},+    {0xE4A5, 0x7B4C},+    {0xE4A6, 0x7B45},+    {0xE4A7, 0x7B75},+    {0xE4A8, 0x7B65},+    {0xE4A9, 0x7B74},+    {0xE4AA, 0x7B67},+    {0xE4AB, 0x7B70},+    {0xE4AC, 0x7B71},+    {0xE4AD, 0x7B6C},+    {0xE4AE, 0x7B6E},+    {0xE4AF, 0x7B9D},+    {0xE4B0, 0x7B98},+    {0xE4B1, 0x7B9F},+    {0xE4B2, 0x7B8D},+    {0xE4B3, 0x7B9C},+    {0xE4B4, 0x7B9A},+    {0xE4B5, 0x7B8B},+    {0xE4B6, 0x7B92},+    {0xE4B7, 0x7B8F},+    {0xE4B8, 0x7B5D},+    {0xE4B9, 0x7B99},+    {0xE4BA, 0x7BCB},+    {0xE4BB, 0x7BC1},+    {0xE4BC, 0x7BCC},+    {0xE4BD, 0x7BCF},+    {0xE4BE, 0x7BB4},+    {0xE4BF, 0x7BC6},+    {0xE4C0, 0x7BDD},+    {0xE4C1, 0x7BE9},+    {0xE4C2, 0x7C11},+    {0xE4C3, 0x7C14},+    {0xE4C4, 0x7BE6},+    {0xE4C5, 0x7BE5},+    {0xE4C6, 0x7C60},+    {0xE4C7, 0x7C00},+    {0xE4C8, 0x7C07},+    {0xE4C9, 0x7C13},+    {0xE4CA, 0x7BF3},+    {0xE4CB, 0x7BF7},+    {0xE4CC, 0x7C17},+    {0xE4CD, 0x7C0D},+    {0xE4CE, 0x7BF6},+    {0xE4CF, 0x7C23},+    {0xE4D0, 0x7C27},+    {0xE4D1, 0x7C2A},+    {0xE4D2, 0x7C1F},+    {0xE4D3, 0x7C37},+    {0xE4D4, 0x7C2B},+    {0xE4D5, 0x7C3D},+    {0xE4D6, 0x7C4C},+    {0xE4D7, 0x7C43},+    {0xE4D8, 0x7C54},+    {0xE4D9, 0x7C4F},+    {0xE4DA, 0x7C40},+    {0xE4DB, 0x7C50},+    {0xE4DC, 0x7C58},+    {0xE4DD, 0x7C5F},+    {0xE4DE, 0x7C64},+    {0xE4DF, 0x7C56},+    {0xE4E0, 0x7C65},+    {0xE4E1, 0x7C6C},+    {0xE4E2, 0x7C75},+    {0xE4E3, 0x7C83},+    {0xE4E4, 0x7C90},+    {0xE4E5, 0x7CA4},+    {0xE4E6, 0x7CAD},+    {0xE4E7, 0x7CA2},+    {0xE4E8, 0x7CAB},+    {0xE4E9, 0x7CA1},+    {0xE4EA, 0x7CA8},+    {0xE4EB, 0x7CB3},+    {0xE4EC, 0x7CB2},+    {0xE4ED, 0x7CB1},+    {0xE4EE, 0x7CAE},+    {0xE4EF, 0x7CB9},+    {0xE4F0, 0x7CBD},+    {0xE4F1, 0x7CC0},+    {0xE4F2, 0x7CC5},+    {0xE4F3, 0x7CC2},+    {0xE4F4, 0x7CD8},+    {0xE4F5, 0x7CD2},+    {0xE4F6, 0x7CDC},+    {0xE4F7, 0x7CE2},+    {0xE4F8, 0x9B3B},+    {0xE4F9, 0x7CEF},+    {0xE4FA, 0x7CF2},+    {0xE4FB, 0x7CF4},+    {0xE4FC, 0x7CF6},+    {0xE4FD, 0x7CFA},+    {0xE4FE, 0x7D06},+    {0xE5A1, 0x7D02},+    {0xE5A2, 0x7D1C},+    {0xE5A3, 0x7D15},+    {0xE5A4, 0x7D0A},+    {0xE5A5, 0x7D45},+    {0xE5A6, 0x7D4B},+    {0xE5A7, 0x7D2E},+    {0xE5A8, 0x7D32},+    {0xE5A9, 0x7D3F},+    {0xE5AA, 0x7D35},+    {0xE5AB, 0x7D46},+    {0xE5AC, 0x7D73},+    {0xE5AD, 0x7D56},+    {0xE5AE, 0x7D4E},+    {0xE5AF, 0x7D72},+    {0xE5B0, 0x7D68},+    {0xE5B1, 0x7D6E},+    {0xE5B2, 0x7D4F},+    {0xE5B3, 0x7D63},+    {0xE5B4, 0x7D93},+    {0xE5B5, 0x7D89},+    {0xE5B6, 0x7D5B},+    {0xE5B7, 0x7D8F},+    {0xE5B8, 0x7D7D},+    {0xE5B9, 0x7D9B},+    {0xE5BA, 0x7DBA},+    {0xE5BB, 0x7DAE},+    {0xE5BC, 0x7DA3},+    {0xE5BD, 0x7DB5},+    {0xE5BE, 0x7DC7},+    {0xE5BF, 0x7DBD},+    {0xE5C0, 0x7DAB},+    {0xE5C1, 0x7E3D},+    {0xE5C2, 0x7DA2},+    {0xE5C3, 0x7DAF},+    {0xE5C4, 0x7DDC},+    {0xE5C5, 0x7DB8},+    {0xE5C6, 0x7D9F},+    {0xE5C7, 0x7DB0},+    {0xE5C8, 0x7DD8},+    {0xE5C9, 0x7DDD},+    {0xE5CA, 0x7DE4},+    {0xE5CB, 0x7DDE},+    {0xE5CC, 0x7DFB},+    {0xE5CD, 0x7DF2},+    {0xE5CE, 0x7DE1},+    {0xE5CF, 0x7E05},+    {0xE5D0, 0x7E0A},+    {0xE5D1, 0x7E23},+    {0xE5D2, 0x7E21},+    {0xE5D3, 0x7E12},+    {0xE5D4, 0x7E31},+    {0xE5D5, 0x7E1F},+    {0xE5D6, 0x7E09},+    {0xE5D7, 0x7E0B},+    {0xE5D8, 0x7E22},+    {0xE5D9, 0x7E46},+    {0xE5DA, 0x7E66},+    {0xE5DB, 0x7E3B},+    {0xE5DC, 0x7E35},+    {0xE5DD, 0x7E39},+    {0xE5DE, 0x7E43},+    {0xE5DF, 0x7E37},+    {0xE5E0, 0x7E32},+    {0xE5E1, 0x7E3A},+    {0xE5E2, 0x7E67},+    {0xE5E3, 0x7E5D},+    {0xE5E4, 0x7E56},+    {0xE5E5, 0x7E5E},+    {0xE5E6, 0x7E59},+    {0xE5E7, 0x7E5A},+    {0xE5E8, 0x7E79},+    {0xE5E9, 0x7E6A},+    {0xE5EA, 0x7E69},+    {0xE5EB, 0x7E7C},+    {0xE5EC, 0x7E7B},+    {0xE5ED, 0x7E83},+    {0xE5EE, 0x7DD5},+    {0xE5EF, 0x7E7D},+    {0xE5F0, 0x8FAE},+    {0xE5F1, 0x7E7F},+    {0xE5F2, 0x7E88},+    {0xE5F3, 0x7E89},+    {0xE5F4, 0x7E8C},+    {0xE5F5, 0x7E92},+    {0xE5F6, 0x7E90},+    {0xE5F7, 0x7E93},+    {0xE5F8, 0x7E94},+    {0xE5F9, 0x7E96},+    {0xE5FA, 0x7E8E},+    {0xE5FB, 0x7E9B},+    {0xE5FC, 0x7E9C},+    {0xE5FD, 0x7F38},+    {0xE5FE, 0x7F3A},+    {0xE6A1, 0x7F45},+    {0xE6A2, 0x7F4C},+    {0xE6A3, 0x7F4D},+    {0xE6A4, 0x7F4E},+    {0xE6A5, 0x7F50},+    {0xE6A6, 0x7F51},+    {0xE6A7, 0x7F55},+    {0xE6A8, 0x7F54},+    {0xE6A9, 0x7F58},+    {0xE6AA, 0x7F5F},+    {0xE6AB, 0x7F60},+    {0xE6AC, 0x7F68},+    {0xE6AD, 0x7F69},+    {0xE6AE, 0x7F67},+    {0xE6AF, 0x7F78},+    {0xE6B0, 0x7F82},+    {0xE6B1, 0x7F86},+    {0xE6B2, 0x7F83},+    {0xE6B3, 0x7F88},+    {0xE6B4, 0x7F87},+    {0xE6B5, 0x7F8C},+    {0xE6B6, 0x7F94},+    {0xE6B7, 0x7F9E},+    {0xE6B8, 0x7F9D},+    {0xE6B9, 0x7F9A},+    {0xE6BA, 0x7FA3},+    {0xE6BB, 0x7FAF},+    {0xE6BC, 0x7FB2},+    {0xE6BD, 0x7FB9},+    {0xE6BE, 0x7FAE},+    {0xE6BF, 0x7FB6},+    {0xE6C0, 0x7FB8},+    {0xE6C1, 0x8B71},+    {0xE6C2, 0x7FC5},+    {0xE6C3, 0x7FC6},+    {0xE6C4, 0x7FCA},+    {0xE6C5, 0x7FD5},+    {0xE6C6, 0x7FD4},+    {0xE6C7, 0x7FE1},+    {0xE6C8, 0x7FE6},+    {0xE6C9, 0x7FE9},+    {0xE6CA, 0x7FF3},+    {0xE6CB, 0x7FF9},+    {0xE6CC, 0x98DC},+    {0xE6CD, 0x8006},+    {0xE6CE, 0x8004},+    {0xE6CF, 0x800B},+    {0xE6D0, 0x8012},+    {0xE6D1, 0x8018},+    {0xE6D2, 0x8019},+    {0xE6D3, 0x801C},+    {0xE6D4, 0x8021},+    {0xE6D5, 0x8028},+    {0xE6D6, 0x803F},+    {0xE6D7, 0x803B},+    {0xE6D8, 0x804A},+    {0xE6D9, 0x8046},+    {0xE6DA, 0x8052},+    {0xE6DB, 0x8058},+    {0xE6DC, 0x805A},+    {0xE6DD, 0x805F},+    {0xE6DE, 0x8062},+    {0xE6DF, 0x8068},+    {0xE6E0, 0x8073},+    {0xE6E1, 0x8072},+    {0xE6E2, 0x8070},+    {0xE6E3, 0x8076},+    {0xE6E4, 0x8079},+    {0xE6E5, 0x807D},+    {0xE6E6, 0x807F},+    {0xE6E7, 0x8084},+    {0xE6E8, 0x8086},+    {0xE6E9, 0x8085},+    {0xE6EA, 0x809B},+    {0xE6EB, 0x8093},+    {0xE6EC, 0x809A},+    {0xE6ED, 0x80AD},+    {0xE6EE, 0x5190},+    {0xE6EF, 0x80AC},+    {0xE6F0, 0x80DB},+    {0xE6F1, 0x80E5},+    {0xE6F2, 0x80D9},+    {0xE6F3, 0x80DD},+    {0xE6F4, 0x80C4},+    {0xE6F5, 0x80DA},+    {0xE6F6, 0x80D6},+    {0xE6F7, 0x8109},+    {0xE6F8, 0x80EF},+    {0xE6F9, 0x80F1},+    {0xE6FA, 0x811B},+    {0xE6FB, 0x8129},+    {0xE6FC, 0x8123},+    {0xE6FD, 0x812F},+    {0xE6FE, 0x814B},+    {0xE7A1, 0x968B},+    {0xE7A2, 0x8146},+    {0xE7A3, 0x813E},+    {0xE7A4, 0x8153},+    {0xE7A5, 0x8151},+    {0xE7A6, 0x80FC},+    {0xE7A7, 0x8171},+    {0xE7A8, 0x816E},+    {0xE7A9, 0x8165},+    {0xE7AA, 0x8166},+    {0xE7AB, 0x8174},+    {0xE7AC, 0x8183},+    {0xE7AD, 0x8188},+    {0xE7AE, 0x818A},+    {0xE7AF, 0x8180},+    {0xE7B0, 0x8182},+    {0xE7B1, 0x81A0},+    {0xE7B2, 0x8195},+    {0xE7B3, 0x81A4},+    {0xE7B4, 0x81A3},+    {0xE7B5, 0x815F},+    {0xE7B6, 0x8193},+    {0xE7B7, 0x81A9},+    {0xE7B8, 0x81B0},+    {0xE7B9, 0x81B5},+    {0xE7BA, 0x81BE},+    {0xE7BB, 0x81B8},+    {0xE7BC, 0x81BD},+    {0xE7BD, 0x81C0},+    {0xE7BE, 0x81C2},+    {0xE7BF, 0x81BA},+    {0xE7C0, 0x81C9},+    {0xE7C1, 0x81CD},+    {0xE7C2, 0x81D1},+    {0xE7C3, 0x81D9},+    {0xE7C4, 0x81D8},+    {0xE7C5, 0x81C8},+    {0xE7C6, 0x81DA},+    {0xE7C7, 0x81DF},+    {0xE7C8, 0x81E0},+    {0xE7C9, 0x81E7},+    {0xE7CA, 0x81FA},+    {0xE7CB, 0x81FB},+    {0xE7CC, 0x81FE},+    {0xE7CD, 0x8201},+    {0xE7CE, 0x8202},+    {0xE7CF, 0x8205},+    {0xE7D0, 0x8207},+    {0xE7D1, 0x820A},+    {0xE7D2, 0x820D},+    {0xE7D3, 0x8210},+    {0xE7D4, 0x8216},+    {0xE7D5, 0x8229},+    {0xE7D6, 0x822B},+    {0xE7D7, 0x8238},+    {0xE7D8, 0x8233},+    {0xE7D9, 0x8240},+    {0xE7DA, 0x8259},+    {0xE7DB, 0x8258},+    {0xE7DC, 0x825D},+    {0xE7DD, 0x825A},+    {0xE7DE, 0x825F},+    {0xE7DF, 0x8264},+    {0xE7E0, 0x8262},+    {0xE7E1, 0x8268},+    {0xE7E2, 0x826A},+    {0xE7E3, 0x826B},+    {0xE7E4, 0x822E},+    {0xE7E5, 0x8271},+    {0xE7E6, 0x8277},+    {0xE7E7, 0x8278},+    {0xE7E8, 0x827E},+    {0xE7E9, 0x828D},+    {0xE7EA, 0x8292},+    {0xE7EB, 0x82AB},+    {0xE7EC, 0x829F},+    {0xE7ED, 0x82BB},+    {0xE7EE, 0x82AC},+    {0xE7EF, 0x82E1},+    {0xE7F0, 0x82E3},+    {0xE7F1, 0x82DF},+    {0xE7F2, 0x82D2},+    {0xE7F3, 0x82F4},+    {0xE7F4, 0x82F3},+    {0xE7F5, 0x82FA},+    {0xE7F6, 0x8393},+    {0xE7F7, 0x8303},+    {0xE7F8, 0x82FB},+    {0xE7F9, 0x82F9},+    {0xE7FA, 0x82DE},+    {0xE7FB, 0x8306},+    {0xE7FC, 0x82DC},+    {0xE7FD, 0x8309},+    {0xE7FE, 0x82D9},+    {0xE8A1, 0x8335},+    {0xE8A2, 0x8334},+    {0xE8A3, 0x8316},+    {0xE8A4, 0x8332},+    {0xE8A5, 0x8331},+    {0xE8A6, 0x8340},+    {0xE8A7, 0x8339},+    {0xE8A8, 0x8350},+    {0xE8A9, 0x8345},+    {0xE8AA, 0x832F},+    {0xE8AB, 0x832B},+    {0xE8AC, 0x8317},+    {0xE8AD, 0x8318},+    {0xE8AE, 0x8385},+    {0xE8AF, 0x839A},+    {0xE8B0, 0x83AA},+    {0xE8B1, 0x839F},+    {0xE8B2, 0x83A2},+    {0xE8B3, 0x8396},+    {0xE8B4, 0x8323},+    {0xE8B5, 0x838E},+    {0xE8B6, 0x8387},+    {0xE8B7, 0x838A},+    {0xE8B8, 0x837C},+    {0xE8B9, 0x83B5},+    {0xE8BA, 0x8373},+    {0xE8BB, 0x8375},+    {0xE8BC, 0x83A0},+    {0xE8BD, 0x8389},+    {0xE8BE, 0x83A8},+    {0xE8BF, 0x83F4},+    {0xE8C0, 0x8413},+    {0xE8C1, 0x83EB},+    {0xE8C2, 0x83CE},+    {0xE8C3, 0x83FD},+    {0xE8C4, 0x8403},+    {0xE8C5, 0x83D8},+    {0xE8C6, 0x840B},+    {0xE8C7, 0x83C1},+    {0xE8C8, 0x83F7},+    {0xE8C9, 0x8407},+    {0xE8CA, 0x83E0},+    {0xE8CB, 0x83F2},+    {0xE8CC, 0x840D},+    {0xE8CD, 0x8422},+    {0xE8CE, 0x8420},+    {0xE8CF, 0x83BD},+    {0xE8D0, 0x8438},+    {0xE8D1, 0x8506},+    {0xE8D2, 0x83FB},+    {0xE8D3, 0x846D},+    {0xE8D4, 0x842A},+    {0xE8D5, 0x843C},+    {0xE8D6, 0x855A},+    {0xE8D7, 0x8484},+    {0xE8D8, 0x8477},+    {0xE8D9, 0x846B},+    {0xE8DA, 0x84AD},+    {0xE8DB, 0x846E},+    {0xE8DC, 0x8482},+    {0xE8DD, 0x8469},+    {0xE8DE, 0x8446},+    {0xE8DF, 0x842C},+    {0xE8E0, 0x846F},+    {0xE8E1, 0x8479},+    {0xE8E2, 0x8435},+    {0xE8E3, 0x84CA},+    {0xE8E4, 0x8462},+    {0xE8E5, 0x84B9},+    {0xE8E6, 0x84BF},+    {0xE8E7, 0x849F},+    {0xE8E8, 0x84D9},+    {0xE8E9, 0x84CD},+    {0xE8EA, 0x84BB},+    {0xE8EB, 0x84DA},+    {0xE8EC, 0x84D0},+    {0xE8ED, 0x84C1},+    {0xE8EE, 0x84C6},+    {0xE8EF, 0x84D6},+    {0xE8F0, 0x84A1},+    {0xE8F1, 0x8521},+    {0xE8F2, 0x84FF},+    {0xE8F3, 0x84F4},+    {0xE8F4, 0x8517},+    {0xE8F5, 0x8518},+    {0xE8F6, 0x852C},+    {0xE8F7, 0x851F},+    {0xE8F8, 0x8515},+    {0xE8F9, 0x8514},+    {0xE8FA, 0x84FC},+    {0xE8FB, 0x8540},+    {0xE8FC, 0x8563},+    {0xE8FD, 0x8558},+    {0xE8FE, 0x8548},+    {0xE9A1, 0x8541},+    {0xE9A2, 0x8602},+    {0xE9A3, 0x854B},+    {0xE9A4, 0x8555},+    {0xE9A5, 0x8580},+    {0xE9A6, 0x85A4},+    {0xE9A7, 0x8588},+    {0xE9A8, 0x8591},+    {0xE9A9, 0x858A},+    {0xE9AA, 0x85A8},+    {0xE9AB, 0x856D},+    {0xE9AC, 0x8594},+    {0xE9AD, 0x859B},+    {0xE9AE, 0x85EA},+    {0xE9AF, 0x8587},+    {0xE9B0, 0x859C},+    {0xE9B1, 0x8577},+    {0xE9B2, 0x857E},+    {0xE9B3, 0x8590},+    {0xE9B4, 0x85C9},+    {0xE9B5, 0x85BA},+    {0xE9B6, 0x85CF},+    {0xE9B7, 0x85B9},+    {0xE9B8, 0x85D0},+    {0xE9B9, 0x85D5},+    {0xE9BA, 0x85DD},+    {0xE9BB, 0x85E5},+    {0xE9BC, 0x85DC},+    {0xE9BD, 0x85F9},+    {0xE9BE, 0x860A},+    {0xE9BF, 0x8613},+    {0xE9C0, 0x860B},+    {0xE9C1, 0x85FE},+    {0xE9C2, 0x85FA},+    {0xE9C3, 0x8606},+    {0xE9C4, 0x8622},+    {0xE9C5, 0x861A},+    {0xE9C6, 0x8630},+    {0xE9C7, 0x863F},+    {0xE9C8, 0x864D},+    {0xE9C9, 0x4E55},+    {0xE9CA, 0x8654},+    {0xE9CB, 0x865F},+    {0xE9CC, 0x8667},+    {0xE9CD, 0x8671},+    {0xE9CE, 0x8693},+    {0xE9CF, 0x86A3},+    {0xE9D0, 0x86A9},+    {0xE9D1, 0x86AA},+    {0xE9D2, 0x868B},+    {0xE9D3, 0x868C},+    {0xE9D4, 0x86B6},+    {0xE9D5, 0x86AF},+    {0xE9D6, 0x86C4},+    {0xE9D7, 0x86C6},+    {0xE9D8, 0x86B0},+    {0xE9D9, 0x86C9},+    {0xE9DA, 0x8823},+    {0xE9DB, 0x86AB},+    {0xE9DC, 0x86D4},+    {0xE9DD, 0x86DE},+    {0xE9DE, 0x86E9},+    {0xE9DF, 0x86EC},+    {0xE9E0, 0x86DF},+    {0xE9E1, 0x86DB},+    {0xE9E2, 0x86EF},+    {0xE9E3, 0x8712},+    {0xE9E4, 0x8706},+    {0xE9E5, 0x8708},+    {0xE9E6, 0x8700},+    {0xE9E7, 0x8703},+    {0xE9E8, 0x86FB},+    {0xE9E9, 0x8711},+    {0xE9EA, 0x8709},+    {0xE9EB, 0x870D},+    {0xE9EC, 0x86F9},+    {0xE9ED, 0x870A},+    {0xE9EE, 0x8734},+    {0xE9EF, 0x873F},+    {0xE9F0, 0x8737},+    {0xE9F1, 0x873B},+    {0xE9F2, 0x8725},+    {0xE9F3, 0x8729},+    {0xE9F4, 0x871A},+    {0xE9F5, 0x8760},+    {0xE9F6, 0x875F},+    {0xE9F7, 0x8778},+    {0xE9F8, 0x874C},+    {0xE9F9, 0x874E},+    {0xE9FA, 0x8774},+    {0xE9FB, 0x8757},+    {0xE9FC, 0x8768},+    {0xE9FD, 0x876E},+    {0xE9FE, 0x8759},+    {0xEAA1, 0x8753},+    {0xEAA2, 0x8763},+    {0xEAA3, 0x876A},+    {0xEAA4, 0x8805},+    {0xEAA5, 0x87A2},+    {0xEAA6, 0x879F},+    {0xEAA7, 0x8782},+    {0xEAA8, 0x87AF},+    {0xEAA9, 0x87CB},+    {0xEAAA, 0x87BD},+    {0xEAAB, 0x87C0},+    {0xEAAC, 0x87D0},+    {0xEAAD, 0x96D6},+    {0xEAAE, 0x87AB},+    {0xEAAF, 0x87C4},+    {0xEAB0, 0x87B3},+    {0xEAB1, 0x87C7},+    {0xEAB2, 0x87C6},+    {0xEAB3, 0x87BB},+    {0xEAB4, 0x87EF},+    {0xEAB5, 0x87F2},+    {0xEAB6, 0x87E0},+    {0xEAB7, 0x880F},+    {0xEAB8, 0x880D},+    {0xEAB9, 0x87FE},+    {0xEABA, 0x87F6},+    {0xEABB, 0x87F7},+    {0xEABC, 0x880E},+    {0xEABD, 0x87D2},+    {0xEABE, 0x8811},+    {0xEABF, 0x8816},+    {0xEAC0, 0x8815},+    {0xEAC1, 0x8822},+    {0xEAC2, 0x8821},+    {0xEAC3, 0x8831},+    {0xEAC4, 0x8836},+    {0xEAC5, 0x8839},+    {0xEAC6, 0x8827},+    {0xEAC7, 0x883B},+    {0xEAC8, 0x8844},+    {0xEAC9, 0x8842},+    {0xEACA, 0x8852},+    {0xEACB, 0x8859},+    {0xEACC, 0x885E},+    {0xEACD, 0x8862},+    {0xEACE, 0x886B},+    {0xEACF, 0x8881},+    {0xEAD0, 0x887E},+    {0xEAD1, 0x889E},+    {0xEAD2, 0x8875},+    {0xEAD3, 0x887D},+    {0xEAD4, 0x88B5},+    {0xEAD5, 0x8872},+    {0xEAD6, 0x8882},+    {0xEAD7, 0x8897},+    {0xEAD8, 0x8892},+    {0xEAD9, 0x88AE},+    {0xEADA, 0x8899},+    {0xEADB, 0x88A2},+    {0xEADC, 0x888D},+    {0xEADD, 0x88A4},+    {0xEADE, 0x88B0},+    {0xEADF, 0x88BF},+    {0xEAE0, 0x88B1},+    {0xEAE1, 0x88C3},+    {0xEAE2, 0x88C4},+    {0xEAE3, 0x88D4},+    {0xEAE4, 0x88D8},+    {0xEAE5, 0x88D9},+    {0xEAE6, 0x88DD},+    {0xEAE7, 0x88F9},+    {0xEAE8, 0x8902},+    {0xEAE9, 0x88FC},+    {0xEAEA, 0x88F4},+    {0xEAEB, 0x88E8},+    {0xEAEC, 0x88F2},+    {0xEAED, 0x8904},+    {0xEAEE, 0x890C},+    {0xEAEF, 0x890A},+    {0xEAF0, 0x8913},+    {0xEAF1, 0x8943},+    {0xEAF2, 0x891E},+    {0xEAF3, 0x8925},+    {0xEAF4, 0x892A},+    {0xEAF5, 0x892B},+    {0xEAF6, 0x8941},+    {0xEAF7, 0x8944},+    {0xEAF8, 0x893B},+    {0xEAF9, 0x8936},+    {0xEAFA, 0x8938},+    {0xEAFB, 0x894C},+    {0xEAFC, 0x891D},+    {0xEAFD, 0x8960},+    {0xEAFE, 0x895E},+    {0xEBA1, 0x8966},+    {0xEBA2, 0x8964},+    {0xEBA3, 0x896D},+    {0xEBA4, 0x896A},+    {0xEBA5, 0x896F},+    {0xEBA6, 0x8974},+    {0xEBA7, 0x8977},+    {0xEBA8, 0x897E},+    {0xEBA9, 0x8983},+    {0xEBAA, 0x8988},+    {0xEBAB, 0x898A},+    {0xEBAC, 0x8993},+    {0xEBAD, 0x8998},+    {0xEBAE, 0x89A1},+    {0xEBAF, 0x89A9},+    {0xEBB0, 0x89A6},+    {0xEBB1, 0x89AC},+    {0xEBB2, 0x89AF},+    {0xEBB3, 0x89B2},+    {0xEBB4, 0x89BA},+    {0xEBB5, 0x89BD},+    {0xEBB6, 0x89BF},+    {0xEBB7, 0x89C0},+    {0xEBB8, 0x89DA},+    {0xEBB9, 0x89DC},+    {0xEBBA, 0x89DD},+    {0xEBBB, 0x89E7},+    {0xEBBC, 0x89F4},+    {0xEBBD, 0x89F8},+    {0xEBBE, 0x8A03},+    {0xEBBF, 0x8A16},+    {0xEBC0, 0x8A10},+    {0xEBC1, 0x8A0C},+    {0xEBC2, 0x8A1B},+    {0xEBC3, 0x8A1D},+    {0xEBC4, 0x8A25},+    {0xEBC5, 0x8A36},+    {0xEBC6, 0x8A41},+    {0xEBC7, 0x8A5B},+    {0xEBC8, 0x8A52},+    {0xEBC9, 0x8A46},+    {0xEBCA, 0x8A48},+    {0xEBCB, 0x8A7C},+    {0xEBCC, 0x8A6D},+    {0xEBCD, 0x8A6C},+    {0xEBCE, 0x8A62},+    {0xEBCF, 0x8A85},+    {0xEBD0, 0x8A82},+    {0xEBD1, 0x8A84},+    {0xEBD2, 0x8AA8},+    {0xEBD3, 0x8AA1},+    {0xEBD4, 0x8A91},+    {0xEBD5, 0x8AA5},+    {0xEBD6, 0x8AA6},+    {0xEBD7, 0x8A9A},+    {0xEBD8, 0x8AA3},+    {0xEBD9, 0x8AC4},+    {0xEBDA, 0x8ACD},+    {0xEBDB, 0x8AC2},+    {0xEBDC, 0x8ADA},+    {0xEBDD, 0x8AEB},+    {0xEBDE, 0x8AF3},+    {0xEBDF, 0x8AE7},+    {0xEBE0, 0x8AE4},+    {0xEBE1, 0x8AF1},+    {0xEBE2, 0x8B14},+    {0xEBE3, 0x8AE0},+    {0xEBE4, 0x8AE2},+    {0xEBE5, 0x8AF7},+    {0xEBE6, 0x8ADE},+    {0xEBE7, 0x8ADB},+    {0xEBE8, 0x8B0C},+    {0xEBE9, 0x8B07},+    {0xEBEA, 0x8B1A},+    {0xEBEB, 0x8AE1},+    {0xEBEC, 0x8B16},+    {0xEBED, 0x8B10},+    {0xEBEE, 0x8B17},+    {0xEBEF, 0x8B20},+    {0xEBF0, 0x8B33},+    {0xEBF1, 0x97AB},+    {0xEBF2, 0x8B26},+    {0xEBF3, 0x8B2B},+    {0xEBF4, 0x8B3E},+    {0xEBF5, 0x8B28},+    {0xEBF6, 0x8B41},+    {0xEBF7, 0x8B4C},+    {0xEBF8, 0x8B4F},+    {0xEBF9, 0x8B4E},+    {0xEBFA, 0x8B49},+    {0xEBFB, 0x8B56},+    {0xEBFC, 0x8B5B},+    {0xEBFD, 0x8B5A},+    {0xEBFE, 0x8B6B},+    {0xECA1, 0x8B5F},+    {0xECA2, 0x8B6C},+    {0xECA3, 0x8B6F},+    {0xECA4, 0x8B74},+    {0xECA5, 0x8B7D},+    {0xECA6, 0x8B80},+    {0xECA7, 0x8B8C},+    {0xECA8, 0x8B8E},+    {0xECA9, 0x8B92},+    {0xECAA, 0x8B93},+    {0xECAB, 0x8B96},+    {0xECAC, 0x8B99},+    {0xECAD, 0x8B9A},+    {0xECAE, 0x8C3A},+    {0xECAF, 0x8C41},+    {0xECB0, 0x8C3F},+    {0xECB1, 0x8C48},+    {0xECB2, 0x8C4C},+    {0xECB3, 0x8C4E},+    {0xECB4, 0x8C50},+    {0xECB5, 0x8C55},+    {0xECB6, 0x8C62},+    {0xECB7, 0x8C6C},+    {0xECB8, 0x8C78},+    {0xECB9, 0x8C7A},+    {0xECBA, 0x8C82},+    {0xECBB, 0x8C89},+    {0xECBC, 0x8C85},+    {0xECBD, 0x8C8A},+    {0xECBE, 0x8C8D},+    {0xECBF, 0x8C8E},+    {0xECC0, 0x8C94},+    {0xECC1, 0x8C7C},+    {0xECC2, 0x8C98},+    {0xECC3, 0x621D},+    {0xECC4, 0x8CAD},+    {0xECC5, 0x8CAA},+    {0xECC6, 0x8CBD},+    {0xECC7, 0x8CB2},+    {0xECC8, 0x8CB3},+    {0xECC9, 0x8CAE},+    {0xECCA, 0x8CB6},+    {0xECCB, 0x8CC8},+    {0xECCC, 0x8CC1},+    {0xECCD, 0x8CE4},+    {0xECCE, 0x8CE3},+    {0xECCF, 0x8CDA},+    {0xECD0, 0x8CFD},+    {0xECD1, 0x8CFA},+    {0xECD2, 0x8CFB},+    {0xECD3, 0x8D04},+    {0xECD4, 0x8D05},+    {0xECD5, 0x8D0A},+    {0xECD6, 0x8D07},+    {0xECD7, 0x8D0F},+    {0xECD8, 0x8D0D},+    {0xECD9, 0x8D10},+    {0xECDA, 0x9F4E},+    {0xECDB, 0x8D13},+    {0xECDC, 0x8CCD},+    {0xECDD, 0x8D14},+    {0xECDE, 0x8D16},+    {0xECDF, 0x8D67},+    {0xECE0, 0x8D6D},+    {0xECE1, 0x8D71},+    {0xECE2, 0x8D73},+    {0xECE3, 0x8D81},+    {0xECE4, 0x8D99},+    {0xECE5, 0x8DC2},+    {0xECE6, 0x8DBE},+    {0xECE7, 0x8DBA},+    {0xECE8, 0x8DCF},+    {0xECE9, 0x8DDA},+    {0xECEA, 0x8DD6},+    {0xECEB, 0x8DCC},+    {0xECEC, 0x8DDB},+    {0xECED, 0x8DCB},+    {0xECEE, 0x8DEA},+    {0xECEF, 0x8DEB},+    {0xECF0, 0x8DDF},+    {0xECF1, 0x8DE3},+    {0xECF2, 0x8DFC},+    {0xECF3, 0x8E08},+    {0xECF4, 0x8E09},+    {0xECF5, 0x8DFF},+    {0xECF6, 0x8E1D},+    {0xECF7, 0x8E1E},+    {0xECF8, 0x8E10},+    {0xECF9, 0x8E1F},+    {0xECFA, 0x8E42},+    {0xECFB, 0x8E35},+    {0xECFC, 0x8E30},+    {0xECFD, 0x8E34},+    {0xECFE, 0x8E4A},+    {0xEDA1, 0x8E47},+    {0xEDA2, 0x8E49},+    {0xEDA3, 0x8E4C},+    {0xEDA4, 0x8E50},+    {0xEDA5, 0x8E48},+    {0xEDA6, 0x8E59},+    {0xEDA7, 0x8E64},+    {0xEDA8, 0x8E60},+    {0xEDA9, 0x8E2A},+    {0xEDAA, 0x8E63},+    {0xEDAB, 0x8E55},+    {0xEDAC, 0x8E76},+    {0xEDAD, 0x8E72},+    {0xEDAE, 0x8E7C},+    {0xEDAF, 0x8E81},+    {0xEDB0, 0x8E87},+    {0xEDB1, 0x8E85},+    {0xEDB2, 0x8E84},+    {0xEDB3, 0x8E8B},+    {0xEDB4, 0x8E8A},+    {0xEDB5, 0x8E93},+    {0xEDB6, 0x8E91},+    {0xEDB7, 0x8E94},+    {0xEDB8, 0x8E99},+    {0xEDB9, 0x8EAA},+    {0xEDBA, 0x8EA1},+    {0xEDBB, 0x8EAC},+    {0xEDBC, 0x8EB0},+    {0xEDBD, 0x8EC6},+    {0xEDBE, 0x8EB1},+    {0xEDBF, 0x8EBE},+    {0xEDC0, 0x8EC5},+    {0xEDC1, 0x8EC8},+    {0xEDC2, 0x8ECB},+    {0xEDC3, 0x8EDB},+    {0xEDC4, 0x8EE3},+    {0xEDC5, 0x8EFC},+    {0xEDC6, 0x8EFB},+    {0xEDC7, 0x8EEB},+    {0xEDC8, 0x8EFE},+    {0xEDC9, 0x8F0A},+    {0xEDCA, 0x8F05},+    {0xEDCB, 0x8F15},+    {0xEDCC, 0x8F12},+    {0xEDCD, 0x8F19},+    {0xEDCE, 0x8F13},+    {0xEDCF, 0x8F1C},+    {0xEDD0, 0x8F1F},+    {0xEDD1, 0x8F1B},+    {0xEDD2, 0x8F0C},+    {0xEDD3, 0x8F26},+    {0xEDD4, 0x8F33},+    {0xEDD5, 0x8F3B},+    {0xEDD6, 0x8F39},+    {0xEDD7, 0x8F45},+    {0xEDD8, 0x8F42},+    {0xEDD9, 0x8F3E},+    {0xEDDA, 0x8F4C},+    {0xEDDB, 0x8F49},+    {0xEDDC, 0x8F46},+    {0xEDDD, 0x8F4E},+    {0xEDDE, 0x8F57},+    {0xEDDF, 0x8F5C},+    {0xEDE0, 0x8F62},+    {0xEDE1, 0x8F63},+    {0xEDE2, 0x8F64},+    {0xEDE3, 0x8F9C},+    {0xEDE4, 0x8F9F},+    {0xEDE5, 0x8FA3},+    {0xEDE6, 0x8FAD},+    {0xEDE7, 0x8FAF},+    {0xEDE8, 0x8FB7},+    {0xEDE9, 0x8FDA},+    {0xEDEA, 0x8FE5},+    {0xEDEB, 0x8FE2},+    {0xEDEC, 0x8FEA},+    {0xEDED, 0x8FEF},+    {0xEDEE, 0x9087},+    {0xEDEF, 0x8FF4},+    {0xEDF0, 0x9005},+    {0xEDF1, 0x8FF9},+    {0xEDF2, 0x8FFA},+    {0xEDF3, 0x9011},+    {0xEDF4, 0x9015},+    {0xEDF5, 0x9021},+    {0xEDF6, 0x900D},+    {0xEDF7, 0x901E},+    {0xEDF8, 0x9016},+    {0xEDF9, 0x900B},+    {0xEDFA, 0x9027},+    {0xEDFB, 0x9036},+    {0xEDFC, 0x9035},+    {0xEDFD, 0x9039},+    {0xEDFE, 0x8FF8},+    {0xEEA1, 0x904F},+    {0xEEA2, 0x9050},+    {0xEEA3, 0x9051},+    {0xEEA4, 0x9052},+    {0xEEA5, 0x900E},+    {0xEEA6, 0x9049},+    {0xEEA7, 0x903E},+    {0xEEA8, 0x9056},+    {0xEEA9, 0x9058},+    {0xEEAA, 0x905E},+    {0xEEAB, 0x9068},+    {0xEEAC, 0x906F},+    {0xEEAD, 0x9076},+    {0xEEAE, 0x96A8},+    {0xEEAF, 0x9072},+    {0xEEB0, 0x9082},+    {0xEEB1, 0x907D},+    {0xEEB2, 0x9081},+    {0xEEB3, 0x9080},+    {0xEEB4, 0x908A},+    {0xEEB5, 0x9089},+    {0xEEB6, 0x908F},+    {0xEEB7, 0x90A8},+    {0xEEB8, 0x90AF},+    {0xEEB9, 0x90B1},+    {0xEEBA, 0x90B5},+    {0xEEBB, 0x90E2},+    {0xEEBC, 0x90E4},+    {0xEEBD, 0x6248},+    {0xEEBE, 0x90DB},+    {0xEEBF, 0x9102},+    {0xEEC0, 0x9112},+    {0xEEC1, 0x9119},+    {0xEEC2, 0x9132},+    {0xEEC3, 0x9130},+    {0xEEC4, 0x914A},+    {0xEEC5, 0x9156},+    {0xEEC6, 0x9158},+    {0xEEC7, 0x9163},+    {0xEEC8, 0x9165},+    {0xEEC9, 0x9169},+    {0xEECA, 0x9173},+    {0xEECB, 0x9172},+    {0xEECC, 0x918B},+    {0xEECD, 0x9189},+    {0xEECE, 0x9182},+    {0xEECF, 0x91A2},+    {0xEED0, 0x91AB},+    {0xEED1, 0x91AF},+    {0xEED2, 0x91AA},+    {0xEED3, 0x91B5},+    {0xEED4, 0x91B4},+    {0xEED5, 0x91BA},+    {0xEED6, 0x91C0},+    {0xEED7, 0x91C1},+    {0xEED8, 0x91C9},+    {0xEED9, 0x91CB},+    {0xEEDA, 0x91D0},+    {0xEEDB, 0x91D6},+    {0xEEDC, 0x91DF},+    {0xEEDD, 0x91E1},+    {0xEEDE, 0x91DB},+    {0xEEDF, 0x91FC},+    {0xEEE0, 0x91F5},+    {0xEEE1, 0x91F6},+    {0xEEE2, 0x921E},+    {0xEEE3, 0x91FF},+    {0xEEE4, 0x9214},+    {0xEEE5, 0x922C},+    {0xEEE6, 0x9215},+    {0xEEE7, 0x9211},+    {0xEEE8, 0x925E},+    {0xEEE9, 0x9257},+    {0xEEEA, 0x9245},+    {0xEEEB, 0x9249},+    {0xEEEC, 0x9264},+    {0xEEED, 0x9248},+    {0xEEEE, 0x9295},+    {0xEEEF, 0x923F},+    {0xEEF0, 0x924B},+    {0xEEF1, 0x9250},+    {0xEEF2, 0x929C},+    {0xEEF3, 0x9296},+    {0xEEF4, 0x9293},+    {0xEEF5, 0x929B},+    {0xEEF6, 0x925A},+    {0xEEF7, 0x92CF},+    {0xEEF8, 0x92B9},+    {0xEEF9, 0x92B7},+    {0xEEFA, 0x92E9},+    {0xEEFB, 0x930F},+    {0xEEFC, 0x92FA},+    {0xEEFD, 0x9344},+    {0xEEFE, 0x932E},+    {0xEFA1, 0x9319},+    {0xEFA2, 0x9322},+    {0xEFA3, 0x931A},+    {0xEFA4, 0x9323},+    {0xEFA5, 0x933A},+    {0xEFA6, 0x9335},+    {0xEFA7, 0x933B},+    {0xEFA8, 0x935C},+    {0xEFA9, 0x9360},+    {0xEFAA, 0x937C},+    {0xEFAB, 0x936E},+    {0xEFAC, 0x9356},+    {0xEFAD, 0x93B0},+    {0xEFAE, 0x93AC},+    {0xEFAF, 0x93AD},+    {0xEFB0, 0x9394},+    {0xEFB1, 0x93B9},+    {0xEFB2, 0x93D6},+    {0xEFB3, 0x93D7},+    {0xEFB4, 0x93E8},+    {0xEFB5, 0x93E5},+    {0xEFB6, 0x93D8},+    {0xEFB7, 0x93C3},+    {0xEFB8, 0x93DD},+    {0xEFB9, 0x93D0},+    {0xEFBA, 0x93C8},+    {0xEFBB, 0x93E4},+    {0xEFBC, 0x941A},+    {0xEFBD, 0x9414},+    {0xEFBE, 0x9413},+    {0xEFBF, 0x9403},+    {0xEFC0, 0x9407},+    {0xEFC1, 0x9410},+    {0xEFC2, 0x9436},+    {0xEFC3, 0x942B},+    {0xEFC4, 0x9435},+    {0xEFC5, 0x9421},+    {0xEFC6, 0x943A},+    {0xEFC7, 0x9441},+    {0xEFC8, 0x9452},+    {0xEFC9, 0x9444},+    {0xEFCA, 0x945B},+    {0xEFCB, 0x9460},+    {0xEFCC, 0x9462},+    {0xEFCD, 0x945E},+    {0xEFCE, 0x946A},+    {0xEFCF, 0x9229},+    {0xEFD0, 0x9470},+    {0xEFD1, 0x9475},+    {0xEFD2, 0x9477},+    {0xEFD3, 0x947D},+    {0xEFD4, 0x945A},+    {0xEFD5, 0x947C},+    {0xEFD6, 0x947E},+    {0xEFD7, 0x9481},+    {0xEFD8, 0x947F},+    {0xEFD9, 0x9582},+    {0xEFDA, 0x9587},+    {0xEFDB, 0x958A},+    {0xEFDC, 0x9594},+    {0xEFDD, 0x9596},+    {0xEFDE, 0x9598},+    {0xEFDF, 0x9599},+    {0xEFE0, 0x95A0},+    {0xEFE1, 0x95A8},+    {0xEFE2, 0x95A7},+    {0xEFE3, 0x95AD},+    {0xEFE4, 0x95BC},+    {0xEFE5, 0x95BB},+    {0xEFE6, 0x95B9},+    {0xEFE7, 0x95BE},+    {0xEFE8, 0x95CA},+    {0xEFE9, 0x6FF6},+    {0xEFEA, 0x95C3},+    {0xEFEB, 0x95CD},+    {0xEFEC, 0x95CC},+    {0xEFED, 0x95D5},+    {0xEFEE, 0x95D4},+    {0xEFEF, 0x95D6},+    {0xEFF0, 0x95DC},+    {0xEFF1, 0x95E1},+    {0xEFF2, 0x95E5},+    {0xEFF3, 0x95E2},+    {0xEFF4, 0x9621},+    {0xEFF5, 0x9628},+    {0xEFF6, 0x962E},+    {0xEFF7, 0x962F},+    {0xEFF8, 0x9642},+    {0xEFF9, 0x964C},+    {0xEFFA, 0x964F},+    {0xEFFB, 0x964B},+    {0xEFFC, 0x9677},+    {0xEFFD, 0x965C},+    {0xEFFE, 0x965E},+    {0xF0A1, 0x965D},+    {0xF0A2, 0x965F},+    {0xF0A3, 0x9666},+    {0xF0A4, 0x9672},+    {0xF0A5, 0x966C},+    {0xF0A6, 0x968D},+    {0xF0A7, 0x9698},+    {0xF0A8, 0x9695},+    {0xF0A9, 0x9697},+    {0xF0AA, 0x96AA},+    {0xF0AB, 0x96A7},+    {0xF0AC, 0x96B1},+    {0xF0AD, 0x96B2},+    {0xF0AE, 0x96B0},+    {0xF0AF, 0x96B4},+    {0xF0B0, 0x96B6},+    {0xF0B1, 0x96B8},+    {0xF0B2, 0x96B9},+    {0xF0B3, 0x96CE},+    {0xF0B4, 0x96CB},+    {0xF0B5, 0x96C9},+    {0xF0B6, 0x96CD},+    {0xF0B7, 0x894D},+    {0xF0B8, 0x96DC},+    {0xF0B9, 0x970D},+    {0xF0BA, 0x96D5},+    {0xF0BB, 0x96F9},+    {0xF0BC, 0x9704},+    {0xF0BD, 0x9706},+    {0xF0BE, 0x9708},+    {0xF0BF, 0x9713},+    {0xF0C0, 0x970E},+    {0xF0C1, 0x9711},+    {0xF0C2, 0x970F},+    {0xF0C3, 0x9716},+    {0xF0C4, 0x9719},+    {0xF0C5, 0x9724},+    {0xF0C6, 0x972A},+    {0xF0C7, 0x9730},+    {0xF0C8, 0x9739},+    {0xF0C9, 0x973D},+    {0xF0CA, 0x973E},+    {0xF0CB, 0x9744},+    {0xF0CC, 0x9746},+    {0xF0CD, 0x9748},+    {0xF0CE, 0x9742},+    {0xF0CF, 0x9749},+    {0xF0D0, 0x975C},+    {0xF0D1, 0x9760},+    {0xF0D2, 0x9764},+    {0xF0D3, 0x9766},+    {0xF0D4, 0x9768},+    {0xF0D5, 0x52D2},+    {0xF0D6, 0x976B},+    {0xF0D7, 0x9771},+    {0xF0D8, 0x9779},+    {0xF0D9, 0x9785},+    {0xF0DA, 0x977C},+    {0xF0DB, 0x9781},+    {0xF0DC, 0x977A},+    {0xF0DD, 0x9786},+    {0xF0DE, 0x978B},+    {0xF0DF, 0x978F},+    {0xF0E0, 0x9790},+    {0xF0E1, 0x979C},+    {0xF0E2, 0x97A8},+    {0xF0E3, 0x97A6},+    {0xF0E4, 0x97A3},+    {0xF0E5, 0x97B3},+    {0xF0E6, 0x97B4},+    {0xF0E7, 0x97C3},+    {0xF0E8, 0x97C6},+    {0xF0E9, 0x97C8},+    {0xF0EA, 0x97CB},+    {0xF0EB, 0x97DC},+    {0xF0EC, 0x97ED},+    {0xF0ED, 0x9F4F},+    {0xF0EE, 0x97F2},+    {0xF0EF, 0x7ADF},+    {0xF0F0, 0x97F6},+    {0xF0F1, 0x97F5},+    {0xF0F2, 0x980F},+    {0xF0F3, 0x980C},+    {0xF0F4, 0x9838},+    {0xF0F5, 0x9824},+    {0xF0F6, 0x9821},+    {0xF0F7, 0x9837},+    {0xF0F8, 0x983D},+    {0xF0F9, 0x9846},+    {0xF0FA, 0x984F},+    {0xF0FB, 0x984B},+    {0xF0FC, 0x986B},+    {0xF0FD, 0x986F},+    {0xF0FE, 0x9870},+    {0xF1A1, 0x9871},+    {0xF1A2, 0x9874},+    {0xF1A3, 0x9873},+    {0xF1A4, 0x98AA},+    {0xF1A5, 0x98AF},+    {0xF1A6, 0x98B1},+    {0xF1A7, 0x98B6},+    {0xF1A8, 0x98C4},+    {0xF1A9, 0x98C3},+    {0xF1AA, 0x98C6},+    {0xF1AB, 0x98E9},+    {0xF1AC, 0x98EB},+    {0xF1AD, 0x9903},+    {0xF1AE, 0x9909},+    {0xF1AF, 0x9912},+    {0xF1B0, 0x9914},+    {0xF1B1, 0x9918},+    {0xF1B2, 0x9921},+    {0xF1B3, 0x991D},+    {0xF1B4, 0x991E},+    {0xF1B5, 0x9924},+    {0xF1B6, 0x9920},+    {0xF1B7, 0x992C},+    {0xF1B8, 0x992E},+    {0xF1B9, 0x993D},+    {0xF1BA, 0x993E},+    {0xF1BB, 0x9942},+    {0xF1BC, 0x9949},+    {0xF1BD, 0x9945},+    {0xF1BE, 0x9950},+    {0xF1BF, 0x994B},+    {0xF1C0, 0x9951},+    {0xF1C1, 0x9952},+    {0xF1C2, 0x994C},+    {0xF1C3, 0x9955},+    {0xF1C4, 0x9997},+    {0xF1C5, 0x9998},+    {0xF1C6, 0x99A5},+    {0xF1C7, 0x99AD},+    {0xF1C8, 0x99AE},+    {0xF1C9, 0x99BC},+    {0xF1CA, 0x99DF},+    {0xF1CB, 0x99DB},+    {0xF1CC, 0x99DD},+    {0xF1CD, 0x99D8},+    {0xF1CE, 0x99D1},+    {0xF1CF, 0x99ED},+    {0xF1D0, 0x99EE},+    {0xF1D1, 0x99F1},+    {0xF1D2, 0x99F2},+    {0xF1D3, 0x99FB},+    {0xF1D4, 0x99F8},+    {0xF1D5, 0x9A01},+    {0xF1D6, 0x9A0F},+    {0xF1D7, 0x9A05},+    {0xF1D8, 0x99E2},+    {0xF1D9, 0x9A19},+    {0xF1DA, 0x9A2B},+    {0xF1DB, 0x9A37},+    {0xF1DC, 0x9A45},+    {0xF1DD, 0x9A42},+    {0xF1DE, 0x9A40},+    {0xF1DF, 0x9A43},+    {0xF1E0, 0x9A3E},+    {0xF1E1, 0x9A55},+    {0xF1E2, 0x9A4D},+    {0xF1E3, 0x9A5B},+    {0xF1E4, 0x9A57},+    {0xF1E5, 0x9A5F},+    {0xF1E6, 0x9A62},+    {0xF1E7, 0x9A65},+    {0xF1E8, 0x9A64},+    {0xF1E9, 0x9A69},+    {0xF1EA, 0x9A6B},+    {0xF1EB, 0x9A6A},+    {0xF1EC, 0x9AAD},+    {0xF1ED, 0x9AB0},+    {0xF1EE, 0x9ABC},+    {0xF1EF, 0x9AC0},+    {0xF1F0, 0x9ACF},+    {0xF1F1, 0x9AD1},+    {0xF1F2, 0x9AD3},+    {0xF1F3, 0x9AD4},+    {0xF1F4, 0x9ADE},+    {0xF1F5, 0x9ADF},+    {0xF1F6, 0x9AE2},+    {0xF1F7, 0x9AE3},+    {0xF1F8, 0x9AE6},+    {0xF1F9, 0x9AEF},+    {0xF1FA, 0x9AEB},+    {0xF1FB, 0x9AEE},+    {0xF1FC, 0x9AF4},+    {0xF1FD, 0x9AF1},+    {0xF1FE, 0x9AF7},+    {0xF2A1, 0x9AFB},+    {0xF2A2, 0x9B06},+    {0xF2A3, 0x9B18},+    {0xF2A4, 0x9B1A},+    {0xF2A5, 0x9B1F},+    {0xF2A6, 0x9B22},+    {0xF2A7, 0x9B23},+    {0xF2A8, 0x9B25},+    {0xF2A9, 0x9B27},+    {0xF2AA, 0x9B28},+    {0xF2AB, 0x9B29},+    {0xF2AC, 0x9B2A},+    {0xF2AD, 0x9B2E},+    {0xF2AE, 0x9B2F},+    {0xF2AF, 0x9B32},+    {0xF2B0, 0x9B44},+    {0xF2B1, 0x9B43},+    {0xF2B2, 0x9B4F},+    {0xF2B3, 0x9B4D},+    {0xF2B4, 0x9B4E},+    {0xF2B5, 0x9B51},+    {0xF2B6, 0x9B58},+    {0xF2B7, 0x9B74},+    {0xF2B8, 0x9B93},+    {0xF2B9, 0x9B83},+    {0xF2BA, 0x9B91},+    {0xF2BB, 0x9B96},+    {0xF2BC, 0x9B97},+    {0xF2BD, 0x9B9F},+    {0xF2BE, 0x9BA0},+    {0xF2BF, 0x9BA8},+    {0xF2C0, 0x9BB4},+    {0xF2C1, 0x9BC0},+    {0xF2C2, 0x9BCA},+    {0xF2C3, 0x9BB9},+    {0xF2C4, 0x9BC6},+    {0xF2C5, 0x9BCF},+    {0xF2C6, 0x9BD1},+    {0xF2C7, 0x9BD2},+    {0xF2C8, 0x9BE3},+    {0xF2C9, 0x9BE2},+    {0xF2CA, 0x9BE4},+    {0xF2CB, 0x9BD4},+    {0xF2CC, 0x9BE1},+    {0xF2CD, 0x9C3A},+    {0xF2CE, 0x9BF2},+    {0xF2CF, 0x9BF1},+    {0xF2D0, 0x9BF0},+    {0xF2D1, 0x9C15},+    {0xF2D2, 0x9C14},+    {0xF2D3, 0x9C09},+    {0xF2D4, 0x9C13},+    {0xF2D5, 0x9C0C},+    {0xF2D6, 0x9C06},+    {0xF2D7, 0x9C08},+    {0xF2D8, 0x9C12},+    {0xF2D9, 0x9C0A},+    {0xF2DA, 0x9C04},+    {0xF2DB, 0x9C2E},+    {0xF2DC, 0x9C1B},+    {0xF2DD, 0x9C25},+    {0xF2DE, 0x9C24},+    {0xF2DF, 0x9C21},+    {0xF2E0, 0x9C30},+    {0xF2E1, 0x9C47},+    {0xF2E2, 0x9C32},+    {0xF2E3, 0x9C46},+    {0xF2E4, 0x9C3E},+    {0xF2E5, 0x9C5A},+    {0xF2E6, 0x9C60},+    {0xF2E7, 0x9C67},+    {0xF2E8, 0x9C76},+    {0xF2E9, 0x9C78},+    {0xF2EA, 0x9CE7},+    {0xF2EB, 0x9CEC},+    {0xF2EC, 0x9CF0},+    {0xF2ED, 0x9D09},+    {0xF2EE, 0x9D08},+    {0xF2EF, 0x9CEB},+    {0xF2F0, 0x9D03},+    {0xF2F1, 0x9D06},+    {0xF2F2, 0x9D2A},+    {0xF2F3, 0x9D26},+    {0xF2F4, 0x9DAF},+    {0xF2F5, 0x9D23},+    {0xF2F6, 0x9D1F},+    {0xF2F7, 0x9D44},+    {0xF2F8, 0x9D15},+    {0xF2F9, 0x9D12},+    {0xF2FA, 0x9D41},+    {0xF2FB, 0x9D3F},+    {0xF2FC, 0x9D3E},+    {0xF2FD, 0x9D46},+    {0xF2FE, 0x9D48},+    {0xF3A1, 0x9D5D},+    {0xF3A2, 0x9D5E},+    {0xF3A3, 0x9D64},+    {0xF3A4, 0x9D51},+    {0xF3A5, 0x9D50},+    {0xF3A6, 0x9D59},+    {0xF3A7, 0x9D72},+    {0xF3A8, 0x9D89},+    {0xF3A9, 0x9D87},+    {0xF3AA, 0x9DAB},+    {0xF3AB, 0x9D6F},+    {0xF3AC, 0x9D7A},+    {0xF3AD, 0x9D9A},+    {0xF3AE, 0x9DA4},+    {0xF3AF, 0x9DA9},+    {0xF3B0, 0x9DB2},+    {0xF3B1, 0x9DC4},+    {0xF3B2, 0x9DC1},+    {0xF3B3, 0x9DBB},+    {0xF3B4, 0x9DB8},+    {0xF3B5, 0x9DBA},+    {0xF3B6, 0x9DC6},+    {0xF3B7, 0x9DCF},+    {0xF3B8, 0x9DC2},+    {0xF3B9, 0x9DD9},+    {0xF3BA, 0x9DD3},+    {0xF3BB, 0x9DF8},+    {0xF3BC, 0x9DE6},+    {0xF3BD, 0x9DED},+    {0xF3BE, 0x9DEF},+    {0xF3BF, 0x9DFD},+    {0xF3C0, 0x9E1A},+    {0xF3C1, 0x9E1B},+    {0xF3C2, 0x9E1E},+    {0xF3C3, 0x9E75},+    {0xF3C4, 0x9E79},+    {0xF3C5, 0x9E7D},+    {0xF3C6, 0x9E81},+    {0xF3C7, 0x9E88},+    {0xF3C8, 0x9E8B},+    {0xF3C9, 0x9E8C},+    {0xF3CA, 0x9E92},+    {0xF3CB, 0x9E95},+    {0xF3CC, 0x9E91},+    {0xF3CD, 0x9E9D},+    {0xF3CE, 0x9EA5},+    {0xF3CF, 0x9EA9},+    {0xF3D0, 0x9EB8},+    {0xF3D1, 0x9EAA},+    {0xF3D2, 0x9EAD},+    {0xF3D3, 0x9761},+    {0xF3D4, 0x9ECC},+    {0xF3D5, 0x9ECE},+    {0xF3D6, 0x9ECF},+    {0xF3D7, 0x9ED0},+    {0xF3D8, 0x9ED4},+    {0xF3D9, 0x9EDC},+    {0xF3DA, 0x9EDE},+    {0xF3DB, 0x9EDD},+    {0xF3DC, 0x9EE0},+    {0xF3DD, 0x9EE5},+    {0xF3DE, 0x9EE8},+    {0xF3DF, 0x9EEF},+    {0xF3E0, 0x9EF4},+    {0xF3E1, 0x9EF6},+    {0xF3E2, 0x9EF7},+    {0xF3E3, 0x9EF9},+    {0xF3E4, 0x9EFB},+    {0xF3E5, 0x9EFC},+    {0xF3E6, 0x9EFD},+    {0xF3E7, 0x9F07},+    {0xF3E8, 0x9F08},+    {0xF3E9, 0x76B7},+    {0xF3EA, 0x9F15},+    {0xF3EB, 0x9F21},+    {0xF3EC, 0x9F2C},+    {0xF3ED, 0x9F3E},+    {0xF3EE, 0x9F4A},+    {0xF3EF, 0x9F52},+    {0xF3F0, 0x9F54},+    {0xF3F1, 0x9F63},+    {0xF3F2, 0x9F5F},+    {0xF3F3, 0x9F60},+    {0xF3F4, 0x9F61},+    {0xF3F5, 0x9F66},+    {0xF3F6, 0x9F67},+    {0xF3F7, 0x9F6C},+    {0xF3F8, 0x9F6A},+    {0xF3F9, 0x9F77},+    {0xF3FA, 0x9F72},+    {0xF3FB, 0x9F76},+    {0xF3FC, 0x9F95},+    {0xF3FD, 0x9F9C},+    {0xF3FE, 0x9FA0},+    {0xF4A1, 0x582F},+    {0xF4A2, 0x69C7},+    {0xF4A3, 0x9059},+    {0xF4A4, 0x7464},+    {0xF4A5, 0x51DC},+    {0xF4A6, 0x7199},+    {0x8EA1, 0xFF61},+    {0x8EA2, 0xFF62},+    {0x8EA3, 0xFF63},+    {0x8EA4, 0xFF64},+    {0x8EA5, 0xFF65},+    {0x8EA6, 0xFF66},+    {0x8EA7, 0xFF67},+    {0x8EA8, 0xFF68},+    {0x8EA9, 0xFF69},+    {0x8EAA, 0xFF6A},+    {0x8EAB, 0xFF6B},+    {0x8EAC, 0xFF6C},+    {0x8EAD, 0xFF6D},+    {0x8EAE, 0xFF6E},+    {0x8EAF, 0xFF6F},+    {0x8EB0, 0xFF70},+    {0x8EB1, 0xFF71},+    {0x8EB2, 0xFF72},+    {0x8EB3, 0xFF73},+    {0x8EB4, 0xFF74},+    {0x8EB5, 0xFF75},+    {0x8EB6, 0xFF76},+    {0x8EB7, 0xFF77},+    {0x8EB8, 0xFF78},+    {0x8EB9, 0xFF79},+    {0x8EBA, 0xFF7A},+    {0x8EBB, 0xFF7B},+    {0x8EBC, 0xFF7C},+    {0x8EBD, 0xFF7D},+    {0x8EBE, 0xFF7E},+    {0x8EBF, 0xFF7F},+    {0x8EC0, 0xFF80},+    {0x8EC1, 0xFF81},+    {0x8EC2, 0xFF82},+    {0x8EC3, 0xFF83},+    {0x8EC4, 0xFF84},+    {0x8EC5, 0xFF85},+    {0x8EC6, 0xFF86},+    {0x8EC7, 0xFF87},+    {0x8EC8, 0xFF88},+    {0x8EC9, 0xFF89},+    {0x8ECA, 0xFF8A},+    {0x8ECB, 0xFF8B},+    {0x8ECC, 0xFF8C},+    {0x8ECD, 0xFF8D},+    {0x8ECE, 0xFF8E},+    {0x8ECF, 0xFF8F},+    {0x8ED0, 0xFF90},+    {0x8ED1, 0xFF91},+    {0x8ED2, 0xFF92},+    {0x8ED3, 0xFF93},+    {0x8ED4, 0xFF94},+    {0x8ED5, 0xFF95},+    {0x8ED6, 0xFF96},+    {0x8ED7, 0xFF97},+    {0x8ED8, 0xFF98},+    {0x8ED9, 0xFF99},+    {0x8EDA, 0xFF9A},+    {0x8EDB, 0xFF9B},+    {0x8EDC, 0xFF9C},+    {0x8EDD, 0xFF9D},+    {0x8EDE, 0xFF9E},+    {0x8EDF, 0xFF9F},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_90ms_RKSJ_H[] = {+    {0x20, 0x7D, 231},+    {0x7E, 0x7E, 631},+    {0x8140, 0x817E, 633},+    {0x8180, 0x81AC, 696},+    {0x81B8, 0x81BF, 741},+    {0x81C8, 0x81CE, 749},+    {0x81DA, 0x81E8, 756},+    {0x81F0, 0x81F7, 771},+    {0x81FC, 0x81FC, 779},+    {0x824F, 0x8258, 780},+    {0x8260, 0x8279, 790},+    {0x8281, 0x829A, 816},+    {0x829F, 0x82F1, 842},+    {0x8340, 0x837E, 925},+    {0x8380, 0x8396, 988},+    {0x839F, 0x83B6, 1011},+    {0x83BF, 0x83D6, 1035},+    {0x8440, 0x8460, 1059},+    {0x8470, 0x847E, 1092},+    {0x8480, 0x8491, 1107},+    {0x849F, 0x849F, 7479},+    {0x84A0, 0x84A0, 7481},+    {0x84A1, 0x84A1, 7491},+    {0x84A2, 0x84A2, 7495},+    {0x84A3, 0x84A3, 7503},+    {0x84A4, 0x84A4, 7499},+    {0x84A5, 0x84A5, 7507},+    {0x84A6, 0x84A6, 7523},+    {0x84A7, 0x84A7, 7515},+    {0x84A8, 0x84A8, 7531},+    {0x84A9, 0x84A9, 7539},+    {0x84AA, 0x84AA, 7480},+    {0x84AB, 0x84AB, 7482},+    {0x84AC, 0x84AC, 7494},+    {0x84AD, 0x84AD, 7498},+    {0x84AE, 0x84AE, 7506},+    {0x84AF, 0x84AF, 7502},+    {0x84B0, 0x84B0, 7514},+    {0x84B1, 0x84B1, 7530},+    {0x84B2, 0x84B2, 7522},+    {0x84B3, 0x84B3, 7538},+    {0x84B4, 0x84B4, 7554},+    {0x84B5, 0x84B5, 7511},+    {0x84B6, 0x84B6, 7526},+    {0x84B7, 0x84B7, 7519},+    {0x84B8, 0x84B8, 7534},+    {0x84B9, 0x84B9, 7542},+    {0x84BA, 0x84BA, 7508},+    {0x84BB, 0x84BB, 7527},+    {0x84BC, 0x84BC, 7516},+    {0x84BD, 0x84BD, 7535},+    {0x84BE, 0x84BE, 7545},+    {0x8740, 0x875D, 7555},+    {0x875F, 0x8760, 7585},+    {0x8761, 0x8761, 8038},+    {0x8762, 0x8762, 7588},+    {0x8763, 0x8763, 8040},+    {0x8764, 0x8764, 7590},+    {0x8765, 0x8765, 8042},+    {0x8766, 0x8767, 7592},+    {0x8768, 0x8768, 8044},+    {0x8769, 0x876A, 7595},+    {0x876B, 0x876B, 8043},+    {0x876C, 0x876D, 7598},+    {0x876E, 0x876E, 8047},+    {0x876F, 0x8775, 7601},+    {0x877E, 0x877E, 8323},+    {0x8780, 0x8783, 7608},+    {0x8784, 0x8784, 8055},+    {0x8785, 0x878F, 7613},+    {0x8790, 0x8790, 762},+    {0x8791, 0x8791, 761},+    {0x8792, 0x8792, 769},+    {0x8793, 0x8799, 7624},+    {0x879A, 0x879A, 768},+    {0x879B, 0x879C, 7631},+    {0x889F, 0x88FC, 1125},+    {0x8940, 0x897E, 1219},+    {0x8980, 0x89FC, 1282},+    {0x8A40, 0x8A7E, 1407},+    {0x8A80, 0x8AFC, 1470},+    {0x8B40, 0x8B7E, 1595},+    {0x8B80, 0x8BFC, 1658},+    {0x8C40, 0x8C7E, 1783},+    {0x8C80, 0x8CFC, 1846},+    {0x8D40, 0x8D7E, 1971},+    {0x8D80, 0x8DFC, 2034},+    {0x8E40, 0x8E7E, 2159},+    {0x8E80, 0x8EFC, 2222},+    {0x8F40, 0x8F7E, 2347},+    {0x8F80, 0x8FFC, 2410},+    {0x9040, 0x907E, 2535},+    {0x9080, 0x90FC, 2598},+    {0x9140, 0x917E, 2723},+    {0x9180, 0x91FC, 2786},+    {0x9240, 0x927E, 2911},+    {0x9280, 0x92FC, 2974},+    {0x9340, 0x937E, 3099},+    {0x9380, 0x93FC, 3162},+    {0x9440, 0x947E, 3287},+    {0x9480, 0x94FC, 3350},+    {0x9540, 0x957E, 3475},+    {0x9580, 0x95FC, 3538},+    {0x9640, 0x967E, 3663},+    {0x9680, 0x96FC, 3726},+    {0x9740, 0x977E, 3851},+    {0x9780, 0x97FC, 3914},+    {0x9840, 0x9872, 4039},+    {0x989F, 0x98FC, 4090},+    {0x9940, 0x997E, 4184},+    {0x9980, 0x99FC, 4247},+    {0x9A40, 0x9A7E, 4372},+    {0x9A80, 0x9AFC, 4435},+    {0x9B40, 0x9B7E, 4560},+    {0x9B80, 0x9BFC, 4623},+    {0x9C40, 0x9C7E, 4748},+    {0x9C80, 0x9CFC, 4811},+    {0x9D40, 0x9D7E, 4936},+    {0x9D80, 0x9DFC, 4999},+    {0x9E40, 0x9E7E, 5124},+    {0x9E80, 0x9EFC, 5187},+    {0x9F40, 0x9F7E, 5312},+    {0x9F80, 0x9FFC, 5375},+    {0xA0, 0xDF, 326},+    {0xE040, 0xE07E, 5500},+    {0xE080, 0xE0FC, 5563},+    {0xE140, 0xE17E, 5688},+    {0xE180, 0xE1FC, 5751},+    {0xE240, 0xE27E, 5876},+    {0xE280, 0xE2FC, 5939},+    {0xE340, 0xE37E, 6064},+    {0xE380, 0xE3FC, 6127},+    {0xE440, 0xE47E, 6252},+    {0xE480, 0xE4FC, 6315},+    {0xE540, 0xE57E, 6440},+    {0xE580, 0xE5FC, 6503},+    {0xE640, 0xE67E, 6628},+    {0xE680, 0xE6FC, 6691},+    {0xE740, 0xE77E, 6816},+    {0xE780, 0xE7FC, 6879},+    {0xE840, 0xE87E, 7004},+    {0xE880, 0xE8FC, 7067},+    {0xE940, 0xE97E, 7192},+    {0xE980, 0xE9FC, 7255},+    {0xEA40, 0xEA7E, 7380},+    {0xEA80, 0xEAA2, 7443},+    {0xEAA3, 0xEAA4, 8284},+    {0xED40, 0xED7E, 8359},+    {0xED80, 0xEDB3, 8422},+    {0xEDB4, 0xEDB4, 1993},+    {0xEDB5, 0xEDFC, 8474},+    {0xEE40, 0xEE7E, 8546},+    {0xEE80, 0xEEEC, 8609},+    {0xEEEF, 0xEEF8, 8092},+    {0xEEF9, 0xEEF9, 751},+    {0xEEFA, 0xEEFC, 8005},+    {0xFA40, 0xFA49, 8092},+    {0xFA4A, 0xFA53, 7575},+    {0xFA54, 0xFA54, 751},+    {0xFA55, 0xFA57, 8005},+    {0xFA58, 0xFA58, 7618},+    {0xFA59, 0xFA59, 7610},+    {0xFA5A, 0xFA5A, 8055},+    {0xFA5B, 0xFA5B, 768},+    {0xFA5C, 0xFA7E, 8359},+    {0xFA80, 0xFACF, 8394},+    {0xFAD0, 0xFAD0, 1993},+    {0xFAD1, 0xFAFC, 8474},+    {0xFB40, 0xFB7E, 8518},+    {0xFB80, 0xFBFC, 8581},+    {0xFC40, 0xFC4B, 8706},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_90msp_RKSJ_H[] = {+    {0x20, 0x7e, 1},+    {0x8140, 0x817e, 633},+    {0x8180, 0x81ac, 696},+    {0x81b8, 0x81bf, 741},+    {0x81c8, 0x81ce, 749},+    {0x81da, 0x81e8, 756},+    {0x81f0, 0x81f7, 771},+    {0x81fc, 0x81fc, 779},+    {0x824f, 0x8258, 780},+    {0x8260, 0x8279, 790},+    {0x8281, 0x829a, 816},+    {0x829f, 0x82f1, 842},+    {0x8340, 0x837e, 925},+    {0x8380, 0x8396, 988},+    {0x839f, 0x83b6, 1011},+    {0x83bf, 0x83d6, 1035},+    {0x8440, 0x8460, 1059},+    {0x8470, 0x847e, 1092},+    {0x8480, 0x8491, 1107},+    {0x849f, 0x849f, 7479},+    {0x84a0, 0x84a0, 7481},+    {0x84a1, 0x84a1, 7491},+    {0x84a2, 0x84a2, 7495},+    {0x84a3, 0x84a3, 7503},+    {0x84a4, 0x84a4, 7499},+    {0x84a5, 0x84a5, 7507},+    {0x84a6, 0x84a6, 7523},+    {0x84a7, 0x84a7, 7515},+    {0x84a8, 0x84a8, 7531},+    {0x84a9, 0x84a9, 7539},+    {0x84aa, 0x84aa, 7480},+    {0x84ab, 0x84ab, 7482},+    {0x84ac, 0x84ac, 7494},+    {0x84ad, 0x84ad, 7498},+    {0x84ae, 0x84ae, 7506},+    {0x84af, 0x84af, 7502},+    {0x84b0, 0x84b0, 7514},+    {0x84b1, 0x84b1, 7530},+    {0x84b2, 0x84b2, 7522},+    {0x84b3, 0x84b3, 7538},+    {0x84b4, 0x84b4, 7554},+    {0x84b5, 0x84b5, 7511},+    {0x84b6, 0x84b6, 7526},+    {0x84b7, 0x84b7, 7519},+    {0x84b8, 0x84b8, 7534},+    {0x84b9, 0x84b9, 7542},+    {0x84ba, 0x84ba, 7508},+    {0x84bb, 0x84bb, 7527},+    {0x84bc, 0x84bc, 7516},+    {0x84bd, 0x84bd, 7535},+    {0x84be, 0x84be, 7545},+    {0x8740, 0x875d, 7555},+    {0x875f, 0x8760, 7585},+    {0x8761, 0x8761, 8038},+    {0x8762, 0x8762, 7588},+    {0x8763, 0x8763, 8040},+    {0x8764, 0x8764, 7590},+    {0x8765, 0x8765, 8042},+    {0x8766, 0x8767, 7592},+    {0x8768, 0x8768, 8044},+    {0x8769, 0x876a, 7595},+    {0x876b, 0x876b, 8043},+    {0x876c, 0x876d, 7598},+    {0x876e, 0x876e, 8047},+    {0x876f, 0x8775, 7601},+    {0x877e, 0x877e, 8323},+    {0x8780, 0x8783, 7608},+    {0x8784, 0x8784, 8055},+    {0x8785, 0x878f, 7613},+    {0x8790, 0x8790, 762},+    {0x8791, 0x8791, 761},+    {0x8792, 0x8792, 769},+    {0x8793, 0x8799, 7624},+    {0x879a, 0x879a, 768},+    {0x879b, 0x879c, 7631},+    {0x889f, 0x88fc, 1125},+    {0x8940, 0x897e, 1219},+    {0x8980, 0x89fc, 1282},+    {0x8a40, 0x8a7e, 1407},+    {0x8a80, 0x8afc, 1470},+    {0x8b40, 0x8b7e, 1595},+    {0x8b80, 0x8bfc, 1658},+    {0x8c40, 0x8c7e, 1783},+    {0x8c80, 0x8cfc, 1846},+    {0x8d40, 0x8d7e, 1971},+    {0x8d80, 0x8dfc, 2034},+    {0x8e40, 0x8e7e, 2159},+    {0x8e80, 0x8efc, 2222},+    {0x8f40, 0x8f7e, 2347},+    {0x8f80, 0x8ffc, 2410},+    {0x9040, 0x907e, 2535},+    {0x9080, 0x90fc, 2598},+    {0x9140, 0x917e, 2723},+    {0x9180, 0x91fc, 2786},+    {0x9240, 0x927e, 2911},+    {0x9280, 0x92fc, 2974},+    {0x9340, 0x937e, 3099},+    {0x9380, 0x93fc, 3162},+    {0x9440, 0x947e, 3287},+    {0x9480, 0x94fc, 3350},+    {0x9540, 0x957e, 3475},+    {0x9580, 0x95fc, 3538},+    {0x9640, 0x967e, 3663},+    {0x9680, 0x96fc, 3726},+    {0x9740, 0x977e, 3851},+    {0x9780, 0x97fc, 3914},+    {0x9840, 0x9872, 4039},+    {0x989f, 0x98fc, 4090},+    {0x9940, 0x997e, 4184},+    {0x9980, 0x99fc, 4247},+    {0x9a40, 0x9a7e, 4372},+    {0x9a80, 0x9afc, 4435},+    {0x9b40, 0x9b7e, 4560},+    {0x9b80, 0x9bfc, 4623},+    {0x9c40, 0x9c7e, 4748},+    {0x9c80, 0x9cfc, 4811},+    {0x9d40, 0x9d7e, 4936},+    {0x9d80, 0x9dfc, 4999},+    {0x9e40, 0x9e7e, 5124},+    {0x9e80, 0x9efc, 5187},+    {0x9f40, 0x9f7e, 5312},+    {0x9f80, 0x9ffc, 5375},+    {0xa0, 0xdf, 326},+    {0xe040, 0xe07e, 5500},+    {0xe080, 0xe0fc, 5563},+    {0xe140, 0xe17e, 5688},+    {0xe180, 0xe1fc, 5751},+    {0xe240, 0xe27e, 5876},+    {0xe280, 0xe2fc, 5939},+    {0xe340, 0xe37e, 6064},+    {0xe380, 0xe3fc, 6127},+    {0xe440, 0xe47e, 6252},+    {0xe480, 0xe4fc, 6315},+    {0xe540, 0xe57e, 6440},+    {0xe580, 0xe5fc, 6503},+    {0xe640, 0xe67e, 6628},+    {0xe680, 0xe6fc, 6691},+    {0xe740, 0xe77e, 6816},+    {0xe780, 0xe7fc, 6879},+    {0xe840, 0xe87e, 7004},+    {0xe880, 0xe8fc, 7067},+    {0xe940, 0xe97e, 7192},+    {0xe980, 0xe9fc, 7255},+    {0xea40, 0xea7e, 7380},+    {0xea80, 0xeaa2, 7443},+    {0xeaa3, 0xeaa4, 8284},+    {0xed40, 0xed7e, 8359},+    {0xed80, 0xedb3, 8422},+    {0xedb4, 0xedb4, 1993},+    {0xedb5, 0xedfc, 8474},+    {0xee40, 0xee7e, 8546},+    {0xee80, 0xeeec, 8609},+    {0xeeef, 0xeef8, 8092},+    {0xeef9, 0xeef9, 751},+    {0xeefa, 0xeefc, 8005},+    {0xfa40, 0xfa49, 8092},+    {0xfa4a, 0xfa53, 7575},+    {0xfa54, 0xfa54, 751},+    {0xfa55, 0xfa57, 8005},+    {0xfa58, 0xfa58, 7618},+    {0xfa59, 0xfa59, 7610},+    {0xfa5a, 0xfa5a, 8055},+    {0xfa5b, 0xfa5b, 768},+    {0xfa5c, 0xfa7e, 8359},+    {0xfa80, 0xfacf, 8394},+    {0xfad0, 0xfad0, 1993},+    {0xfad1, 0xfafc, 8474},+    {0xfb40, 0xfb7e, 8518},+    {0xfb80, 0xfbfc, 8581},+    {0xfc40, 0xfc4b, 8706},+    {0xffff, 0xffff, 0}+};++static const HPDF_CidRange_Rec CMAP_ARRAY_90ms_RKSJ_V[] = {+    {0x8141, 0x8142, 7887},+    {0x8143, 0x8143, 8268},+    {0x8144, 0x8144, 8274},+    {0x8150, 0x8151, 7889},+    {0x815b, 0x815d, 7891},+    {0x8160, 0x8164, 7894},+    {0x8169, 0x817a, 7899},+    {0x8181, 0x8181, 7917},+    {0x81a8, 0x81a8, 739},+    {0x81a9, 0x81a9, 738},+    {0x81aa, 0x81ab, 736},+    {0x81ac, 0x81ac, 8270},+    {0x829f, 0x829f, 7918},+    {0x82a1, 0x82a1, 7919},+    {0x82a3, 0x82a3, 7920},+    {0x82a5, 0x82a5, 7921},+    {0x82a7, 0x82a7, 7922},+    {0x82c1, 0x82c1, 7923},+    {0x82e1, 0x82e1, 7924},+    {0x82e3, 0x82e3, 7925},+    {0x82e5, 0x82e5, 7926},+    {0x82ec, 0x82ec, 7927},+    {0x8340, 0x8340, 7928},+    {0x8342, 0x8342, 7929},+    {0x8344, 0x8344, 7930},+    {0x8346, 0x8346, 7931},+    {0x8348, 0x8348, 7932},+    {0x8362, 0x8362, 7933},+    {0x8383, 0x8383, 7934},+    {0x8385, 0x8385, 7935},+    {0x8387, 0x8387, 7936},+    {0x838e, 0x838e, 7937},+    {0x8395, 0x8396, 7938},+    {0x849f, 0x849f, 7481},+    {0x84a0, 0x84a0, 7479},+    {0x84a1, 0x84a1, 7495},+    {0x84a2, 0x84a2, 7503},+    {0x84a3, 0x84a3, 7499},+    {0x84a4, 0x84a4, 7491},+    {0x84a5, 0x84a5, 7523},+    {0x84a6, 0x84a6, 7515},+    {0x84a7, 0x84a7, 7531},+    {0x84a8, 0x84a8, 7507},+    {0x84a9, 0x84a9, 7539},+    {0x84aa, 0x84aa, 7482},+    {0x84ab, 0x84ab, 7480},+    {0x84ac, 0x84ac, 7498},+    {0x84ad, 0x84ad, 7506},+    {0x84ae, 0x84ae, 7502},+    {0x84af, 0x84af, 7494},+    {0x84b0, 0x84b0, 7530},+    {0x84b1, 0x84b1, 7522},+    {0x84b2, 0x84b2, 7538},+    {0x84b3, 0x84b3, 7514},+    {0x84b4, 0x84b4, 7554},+    {0x84b5, 0x84b5, 7526},+    {0x84b6, 0x84b6, 7519},+    {0x84b7, 0x84b7, 7534},+    {0x84b8, 0x84b8, 7511},+    {0x84b9, 0x84b9, 7545},+    {0x84ba, 0x84ba, 7527},+    {0x84bb, 0x84bb, 7516},+    {0x84bc, 0x84bc, 7535},+    {0x84bd, 0x84bd, 7508},+    {0x84be, 0x84be, 7542},+    {0x875f, 0x8760, 7940},+    {0x8761, 0x8761, 8329},+    {0x8762, 0x8762, 7943},+    {0x8763, 0x8763, 8339},+    {0x8764, 0x8764, 7945},+    {0x8765, 0x8765, 8338},+    {0x8766, 0x8767, 7947},+    {0x8768, 0x8768, 8344},+    {0x8769, 0x876a, 7950},+    {0x876b, 0x876b, 8348},+    {0x876c, 0x876d, 7953},+    {0x876e, 0x876e, 8349},+    {0x8780, 0x8781, 7956},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_EUC_H[] = {+    {0x20, 0x7e, 231},+    {0x8ea0, 0x8edf, 326},+    {0xa1a1, 0xa1fe, 633},+    {0xa2a1, 0xa2ae, 727},+    {0xa2ba, 0xa2c1, 741},+    {0xa2ca, 0xa2d0, 749},+    {0xa2dc, 0xa2ea, 756},+    {0xa2f2, 0xa2f9, 771},+    {0xa2fe, 0xa2fe, 779},+    {0xa3b0, 0xa3b9, 780},+    {0xa3c1, 0xa3da, 790},+    {0xa3e1, 0xa3fa, 816},+    {0xa4a1, 0xa4f3, 842},+    {0xa5a1, 0xa5f6, 925},+    {0xa6a1, 0xa6b8, 1011},+    {0xa6c1, 0xa6d8, 1035},+    {0xa7a1, 0xa7c1, 1059},+    {0xa7d1, 0xa7f1, 1092},+    {0xa8a1, 0xa8a1, 7479},+    {0xa8a2, 0xa8a2, 7481},+    {0xa8a3, 0xa8a3, 7491},+    {0xa8a4, 0xa8a4, 7495},+    {0xa8a5, 0xa8a5, 7503},+    {0xa8a6, 0xa8a6, 7499},+    {0xa8a7, 0xa8a7, 7507},+    {0xa8a8, 0xa8a8, 7523},+    {0xa8a9, 0xa8a9, 7515},+    {0xa8aa, 0xa8aa, 7531},+    {0xa8ab, 0xa8ab, 7539},+    {0xa8ac, 0xa8ac, 7480},+    {0xa8ad, 0xa8ad, 7482},+    {0xa8ae, 0xa8ae, 7494},+    {0xa8af, 0xa8af, 7498},+    {0xa8b0, 0xa8b0, 7506},+    {0xa8b1, 0xa8b1, 7502},+    {0xa8b2, 0xa8b2, 7514},+    {0xa8b3, 0xa8b3, 7530},+    {0xa8b4, 0xa8b4, 7522},+    {0xa8b5, 0xa8b5, 7538},+    {0xa8b6, 0xa8b6, 7554},+    {0xa8b7, 0xa8b7, 7511},+    {0xa8b8, 0xa8b8, 7526},+    {0xa8b9, 0xa8b9, 7519},+    {0xa8ba, 0xa8ba, 7534},+    {0xa8bb, 0xa8bb, 7542},+    {0xa8bc, 0xa8bc, 7508},+    {0xa8bd, 0xa8bd, 7527},+    {0xa8be, 0xa8be, 7516},+    {0xa8bf, 0xa8bf, 7535},+    {0xa8c0, 0xa8c0, 7545},+    {0xb0a1, 0xb0fe, 1125},+    {0xb1a1, 0xb1fe, 1219},+    {0xb2a1, 0xb2fe, 1313},+    {0xb3a1, 0xb3fe, 1407},+    {0xb4a1, 0xb4fe, 1501},+    {0xb5a1, 0xb5fe, 1595},+    {0xb6a1, 0xb6fe, 1689},+    {0xb7a1, 0xb7fe, 1783},+    {0xb8a1, 0xb8fe, 1877},+    {0xb9a1, 0xb9fe, 1971},+    {0xbaa1, 0xbafe, 2065},+    {0xbba1, 0xbbfe, 2159},+    {0xbca1, 0xbcfe, 2253},+    {0xbda1, 0xbdfe, 2347},+    {0xbea1, 0xbefe, 2441},+    {0xbfa1, 0xbffe, 2535},+    {0xc0a1, 0xc0fe, 2629},+    {0xc1a1, 0xc1fe, 2723},+    {0xc2a1, 0xc2fe, 2817},+    {0xc3a1, 0xc3fe, 2911},+    {0xc4a1, 0xc4fe, 3005},+    {0xc5a1, 0xc5fe, 3099},+    {0xc6a1, 0xc6fe, 3193},+    {0xc7a1, 0xc7fe, 3287},+    {0xc8a1, 0xc8fe, 3381},+    {0xc9a1, 0xc9fe, 3475},+    {0xcaa1, 0xcafe, 3569},+    {0xcba1, 0xcbfe, 3663},+    {0xcca1, 0xccfe, 3757},+    {0xcda1, 0xcdfe, 3851},+    {0xcea1, 0xcefe, 3945},+    {0xcfa1, 0xcfd3, 4039},+    {0xd0a1, 0xd0fe, 4090},+    {0xd1a1, 0xd1fe, 4184},+    {0xd2a1, 0xd2fe, 4278},+    {0xd3a1, 0xd3fe, 4372},+    {0xd4a1, 0xd4fe, 4466},+    {0xd5a1, 0xd5fe, 4560},+    {0xd6a1, 0xd6fe, 4654},+    {0xd7a1, 0xd7fe, 4748},+    {0xd8a1, 0xd8fe, 4842},+    {0xd9a1, 0xd9fe, 4936},+    {0xdaa1, 0xdafe, 5030},+    {0xdba1, 0xdbfe, 5124},+    {0xdca1, 0xdcfe, 5218},+    {0xdda1, 0xddfe, 5312},+    {0xdea1, 0xdefe, 5406},+    {0xdfa1, 0xdffe, 5500},+    {0xe0a1, 0xe0fe, 5594},+    {0xe1a1, 0xe1fe, 5688},+    {0xe2a1, 0xe2fe, 5782},+    {0xe3a1, 0xe3fe, 5876},+    {0xe4a1, 0xe4fe, 5970},+    {0xe5a1, 0xe5fe, 6064},+    {0xe6a1, 0xe6fe, 6158},+    {0xe7a1, 0xe7fe, 6252},+    {0xe8a1, 0xe8fe, 6346},+    {0xe9a1, 0xe9fe, 6440},+    {0xeaa1, 0xeafe, 6534},+    {0xeba1, 0xebfe, 6628},+    {0xeca1, 0xecfe, 6722},+    {0xeda1, 0xedfe, 6816},+    {0xeea1, 0xeefe, 6910},+    {0xefa1, 0xeffe, 7004},+    {0xf0a1, 0xf0fe, 7098},+    {0xf1a1, 0xf1fe, 7192},+    {0xf2a1, 0xf2fe, 7286},+    {0xf3a1, 0xf3fe, 7380},+    {0xf4a1, 0xf4a4, 7474},+    {0xf4a5, 0xf4a6, 8284},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_EUC_V[] = {+    {0xa1a2, 0xa1a3, 0x7887},+    {0xa1b1, 0xa1b2, 0x7889},+    {0xa1bc, 0xa1be, 0x7891},+    {0xa1c1, 0xa1c5, 0x7894},+    {0xa1ca, 0xa1db, 0x7899},+    {0xa1e1, 0xa1e1, 0x7917},+    {0xa4a1, 0xa4a1, 0x7918},+    {0xa4a3, 0xa4a3, 0x7919},+    {0xa4a5, 0xa4a5, 0x7920},+    {0xa4a7, 0xa4a7, 0x7921},+    {0xa4a9, 0xa4a9, 0x7922},+    {0xa4c3, 0xa4c3, 0x7923},+    {0xa4e3, 0xa4e3, 0x7924},+    {0xa4e5, 0xa4e5, 0x7925},+    {0xa4e7, 0xa4e7, 0x7926},+    {0xa4ee, 0xa4ee, 0x7927},+    {0xa5a1, 0xa5a1, 0x7928},+    {0xa5a3, 0xa5a3, 0x7929},+    {0xa5a5, 0xa5a5, 0x7930},+    {0xa5a7, 0xa5a7, 0x7931},+    {0xa5a9, 0xa5a9, 0x7932},+    {0xa5c3, 0xa5c3, 0x7933},+    {0xa5e3, 0xa5e3, 0x7934},+    {0xa5e5, 0xa5e5, 0x7935},+    {0xa5e7, 0xa5e7, 0x7936},+    {0xa5ee, 0xa5ee, 0x7937},+    {0xa5f5, 0xa5f6, 0x7938},+    {0xffff, 0xffff, 0}+};++static const HPDF_UINT16 JWW_LINE_HEAD_SJIS[] = {+    0x8142,+    0x8141,+    0x829f,+    0x8340,+    0x82a1,+    0x8342,+    0x82a3,+    0x8344,+    0x82a5,+    0x8346,+    0x82a7,+    0x8348,+    0x82c1,+    0x8362,+    0x82e1,+    0x8383,+    0x82e3,+    0x8385,+    0x82e5,+    0x8387,+    0x82ec,+    0x838e,+    0x8176,+    0x816a,+    0x816c,+    0x8170,+    0x8172,+    0x8174,+    0x8178,+    0x817a,+    0x8184,+    0x81e2,+    0x0000+};++static const HPDF_UINT16 JWW_LINE_HEAD_EUC[] = {+    0xA1A3,+    0xA1A2,+    0xA4A1,+    0xA5A1,+    0xA4A3,+    0xA5A3,+    0xA4A5,+    0xA5A5,+    0xA4A7,+    0xA5A7,+    0xA4A9,+    0xA5A9,+    0xA4C3,+    0xA5C3,+    0xA4E3,+    0xA5E3,+    0xA4E5,+    0xA5E5,+    0xA4E7,+    0xA5E7,+    0xA4EE,+    0xA5EE,+    0xA1D7,+    0xA1CB,+    0xA1CD,+    0xA1D1,+    0xA1D3,+    0xA1D5,+    0xA1D9,+    0xA1DB,+    0xA1E4,+    0xA2E4,+    0x0000+};++++static const HPDF_CidRange_Rec MS_RKSJ_NOTDEF_RANGE = {0x00, 0x1F, 231};++static const HPDF_CidRange_Rec MSP_RKSJ_NOTDEF_RANGE = {0x00, 0x1F, 1};++static const HPDF_CidRange_Rec EUC_NOTDEF_RANGE = {0x00, 0x1F, 231};+++static HPDF_BOOL+RKSJ_IsLeadByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b);+++static HPDF_BOOL+RKSJ_IsTrialByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b);+++static HPDF_STATUS+RKSJ_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+MS_RKSJ_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+MSP_RKSJ_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+MS_RKSJ_V_Init  (HPDF_Encoder  encoder);+++static HPDF_BOOL+EUC_IsLeadByte  (HPDF_Encoder    encoder,+                 HPDF_BYTE       b);+++static HPDF_BOOL+EUC_IsTrialByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b);+++static HPDF_STATUS+EUC_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+EUC_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+EUC_V_Init  (HPDF_Encoder  encoder);+++/*--------------------------------------------------------------------------*/++static HPDF_BOOL+RKSJ_IsLeadByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b)+{+    return ((b >= 0x81 && b <= 0x9f) || (b >= 0xe0 && b <= 0xfc));+}+++static HPDF_BOOL+RKSJ_IsTrialByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0x40 && b <= 0xfc && b != 0x7f);+}+++static HPDF_STATUS+RKSJ_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0x8140, 0x9FFC, 0};+    HPDF_CidRange_Rec code_space_range3 = {0xA0, 0xDF, 0};+    HPDF_CidRange_Rec code_space_range4 = {0xE040, 0xFCFC, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range3)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range4)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+MS_RKSJ_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_90ms_RKSJ_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = RKSJ_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, MS_RKSJ_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP932_UNICODE_ARRAY);++    attr->is_lead_byte_fn = RKSJ_IsLeadByte;+    attr->is_trial_byte_fn = RKSJ_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Japan1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 2;+    attr->uid_offset = 950;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25343;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    HPDF_CMapEncoder_AddJWWLineHead (encoder, JWW_LINE_HEAD_SJIS);++    return HPDF_OK;+}+++static HPDF_STATUS+MSP_RKSJ_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_90msp_RKSJ_H)) !=+            HPDF_OK)+        return ret;++    if ((ret = RKSJ_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, MSP_RKSJ_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP932_UNICODE_ARRAY);++    attr->is_lead_byte_fn = RKSJ_IsLeadByte;+    attr->is_trial_byte_fn = RKSJ_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Japan1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 2;+    attr->uid_offset = 950;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25445;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    HPDF_CMapEncoder_AddJWWLineHead (encoder, JWW_LINE_HEAD_SJIS);++    return HPDF_OK;+}+++static HPDF_STATUS+MS_RKSJ_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_90ms_RKSJ_H)) !=+            HPDF_OK)+        return ret;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_90ms_RKSJ_V)) !=+            HPDF_OK)+        return ret;++    if ((ret = RKSJ_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, MS_RKSJ_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP932_UNICODE_ARRAY);++    attr->is_lead_byte_fn = RKSJ_IsLeadByte;+    attr->is_trial_byte_fn = RKSJ_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Japan1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 2;+    attr->uid_offset = 1020;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25344;++    attr->writing_mode = HPDF_WMODE_VERTICAL;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    HPDF_CMapEncoder_AddJWWLineHead (encoder, JWW_LINE_HEAD_SJIS);++    return HPDF_OK;+}+++static HPDF_BOOL+EUC_IsLeadByte  (HPDF_Encoder    encoder,+                 HPDF_BYTE       b)+{+    return ((b >= 0xa1 && b <= 0xfe) || b == 0x8e);+}+++static HPDF_BOOL+EUC_IsTrialByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b)+{+    return (b >= 0xa0 && b <= 0xfe);+}+++static HPDF_STATUS+EUC_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0x8EA0, 0x8EDF, 0};+    HPDF_CidRange_Rec code_space_range3 = {0xA1A1, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range3)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+EUC_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, EUC_NOTDEF_RANGE) != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, EUC_UNICODE_ARRAY);++    attr->is_lead_byte_fn = EUC_IsLeadByte;+    attr->is_trial_byte_fn = EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Japan1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 1;+    attr->uid_offset = 680;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25329;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    HPDF_CMapEncoder_AddJWWLineHead (encoder, JWW_LINE_HEAD_EUC);++    return HPDF_OK;+}+++static HPDF_STATUS+EUC_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_EUC_V) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, EUC_NOTDEF_RANGE) != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, EUC_UNICODE_ARRAY);++    attr->is_lead_byte_fn = EUC_IsLeadByte;+    attr->is_trial_byte_fn = EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Japan1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 1;+    attr->writing_mode = HPDF_WMODE_VERTICAL;+    attr->uid_offset = 800;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25330;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    HPDF_CMapEncoder_AddJWWLineHead (encoder, JWW_LINE_HEAD_EUC);++    return HPDF_OK;+}+++/*--------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseJPEncodings   (HPDF_Doc   pdf)+{+    HPDF_Encoder encoder;+    HPDF_STATUS ret;++    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* Microsoft Code Page 932, JIS X 0208 character */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "90ms-RKSJ-H",+                MS_RKSJ_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* Microsoft Code Page 932, JIS X 0208 character (vertical writing) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "90ms-RKSJ-V",+                MS_RKSJ_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* Microsoft Code Page 932, JIS X 0208 character (proportional) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "90msp-RKSJ-H",+                MSP_RKSJ_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* JIS X 0208 character set, EUC-JP encoding */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "EUC-H",+                EUC_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* JIS X 0208 character set, EUC-JP encoding (vertical writing) */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "EUC-V",+                EUC_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;+++    return HPDF_OK;+}+
+ haru/hpdf_encoder_kr.c view
@@ -0,0 +1,27978 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encoder_kr.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_encoder.h"+#include "hpdf.h"++static const HPDF_UnicodeMap_Rec CP949_UNICODE_ARRAY[] = {+    {0x0000, 0x0000},+    {0x0001, 0x0001},+    {0x0002, 0x0002},+    {0x0003, 0x0003},+    {0x0004, 0x0004},+    {0x0005, 0x0005},+    {0x0006, 0x0006},+    {0x0007, 0x0007},+    {0x0008, 0x0008},+    {0x0009, 0x0009},+    {0x000A, 0x000A},+    {0x000B, 0x000B},+    {0x000C, 0x000C},+    {0x000D, 0x000D},+    {0x000E, 0x000E},+    {0x000F, 0x000F},+    {0x0010, 0x0010},+    {0x0011, 0x0011},+    {0x0012, 0x0012},+    {0x0013, 0x0013},+    {0x0014, 0x0014},+    {0x0015, 0x0015},+    {0x0016, 0x0016},+    {0x0017, 0x0017},+    {0x0018, 0x0018},+    {0x0019, 0x0019},+    {0x001A, 0x001A},+    {0x001B, 0x001B},+    {0x001C, 0x001C},+    {0x001D, 0x001D},+    {0x001E, 0x001E},+    {0x001F, 0x001F},+    {0x0020, 0x0020},+    {0x0021, 0x0021},+    {0x0022, 0x0022},+    {0x0023, 0x0023},+    {0x0024, 0x0024},+    {0x0025, 0x0025},+    {0x0026, 0x0026},+    {0x0027, 0x0027},+    {0x0028, 0x0028},+    {0x0029, 0x0029},+    {0x002A, 0x002A},+    {0x002B, 0x002B},+    {0x002C, 0x002C},+    {0x002D, 0x002D},+    {0x002E, 0x002E},+    {0x002F, 0x002F},+    {0x0030, 0x0030},+    {0x0031, 0x0031},+    {0x0032, 0x0032},+    {0x0033, 0x0033},+    {0x0034, 0x0034},+    {0x0035, 0x0035},+    {0x0036, 0x0036},+    {0x0037, 0x0037},+    {0x0038, 0x0038},+    {0x0039, 0x0039},+    {0x003A, 0x003A},+    {0x003B, 0x003B},+    {0x003C, 0x003C},+    {0x003D, 0x003D},+    {0x003E, 0x003E},+    {0x003F, 0x003F},+    {0x0040, 0x0040},+    {0x0041, 0x0041},+    {0x0042, 0x0042},+    {0x0043, 0x0043},+    {0x0044, 0x0044},+    {0x0045, 0x0045},+    {0x0046, 0x0046},+    {0x0047, 0x0047},+    {0x0048, 0x0048},+    {0x0049, 0x0049},+    {0x004A, 0x004A},+    {0x004B, 0x004B},+    {0x004C, 0x004C},+    {0x004D, 0x004D},+    {0x004E, 0x004E},+    {0x004F, 0x004F},+    {0x0050, 0x0050},+    {0x0051, 0x0051},+    {0x0052, 0x0052},+    {0x0053, 0x0053},+    {0x0054, 0x0054},+    {0x0055, 0x0055},+    {0x0056, 0x0056},+    {0x0057, 0x0057},+    {0x0058, 0x0058},+    {0x0059, 0x0059},+    {0x005A, 0x005A},+    {0x005B, 0x005B},+    {0x005C, 0x005C},+    {0x005D, 0x005D},+    {0x005E, 0x005E},+    {0x005F, 0x005F},+    {0x0060, 0x0060},+    {0x0061, 0x0061},+    {0x0062, 0x0062},+    {0x0063, 0x0063},+    {0x0064, 0x0064},+    {0x0065, 0x0065},+    {0x0066, 0x0066},+    {0x0067, 0x0067},+    {0x0068, 0x0068},+    {0x0069, 0x0069},+    {0x006A, 0x006A},+    {0x006B, 0x006B},+    {0x006C, 0x006C},+    {0x006D, 0x006D},+    {0x006E, 0x006E},+    {0x006F, 0x006F},+    {0x0070, 0x0070},+    {0x0071, 0x0071},+    {0x0072, 0x0072},+    {0x0073, 0x0073},+    {0x0074, 0x0074},+    {0x0075, 0x0075},+    {0x0076, 0x0076},+    {0x0077, 0x0077},+    {0x0078, 0x0078},+    {0x0079, 0x0079},+    {0x007A, 0x007A},+    {0x007B, 0x007B},+    {0x007C, 0x007C},+    {0x007D, 0x007D},+    {0x007E, 0x007E},+    {0x007F, 0x007F},+    {0x0080, 0x0080},+    {0x00FF, 0xF8F7},+    {0x8141, 0xAC02},+    {0x8142, 0xAC03},+    {0x8143, 0xAC05},+    {0x8144, 0xAC06},+    {0x8145, 0xAC0B},+    {0x8146, 0xAC0C},+    {0x8147, 0xAC0D},+    {0x8148, 0xAC0E},+    {0x8149, 0xAC0F},+    {0x814A, 0xAC18},+    {0x814B, 0xAC1E},+    {0x814C, 0xAC1F},+    {0x814D, 0xAC21},+    {0x814E, 0xAC22},+    {0x814F, 0xAC23},+    {0x8150, 0xAC25},+    {0x8151, 0xAC26},+    {0x8152, 0xAC27},+    {0x8153, 0xAC28},+    {0x8154, 0xAC29},+    {0x8155, 0xAC2A},+    {0x8156, 0xAC2B},+    {0x8157, 0xAC2E},+    {0x8158, 0xAC32},+    {0x8159, 0xAC33},+    {0x815A, 0xAC34},+    {0x8161, 0xAC35},+    {0x8162, 0xAC36},+    {0x8163, 0xAC37},+    {0x8164, 0xAC3A},+    {0x8165, 0xAC3B},+    {0x8166, 0xAC3D},+    {0x8167, 0xAC3E},+    {0x8168, 0xAC3F},+    {0x8169, 0xAC41},+    {0x816A, 0xAC42},+    {0x816B, 0xAC43},+    {0x816C, 0xAC44},+    {0x816D, 0xAC45},+    {0x816E, 0xAC46},+    {0x816F, 0xAC47},+    {0x8170, 0xAC48},+    {0x8171, 0xAC49},+    {0x8172, 0xAC4A},+    {0x8173, 0xAC4C},+    {0x8174, 0xAC4E},+    {0x8175, 0xAC4F},+    {0x8176, 0xAC50},+    {0x8177, 0xAC51},+    {0x8178, 0xAC52},+    {0x8179, 0xAC53},+    {0x817A, 0xAC55},+    {0x8181, 0xAC56},+    {0x8182, 0xAC57},+    {0x8183, 0xAC59},+    {0x8184, 0xAC5A},+    {0x8185, 0xAC5B},+    {0x8186, 0xAC5D},+    {0x8187, 0xAC5E},+    {0x8188, 0xAC5F},+    {0x8189, 0xAC60},+    {0x818A, 0xAC61},+    {0x818B, 0xAC62},+    {0x818C, 0xAC63},+    {0x818D, 0xAC64},+    {0x818E, 0xAC65},+    {0x818F, 0xAC66},+    {0x8190, 0xAC67},+    {0x8191, 0xAC68},+    {0x8192, 0xAC69},+    {0x8193, 0xAC6A},+    {0x8194, 0xAC6B},+    {0x8195, 0xAC6C},+    {0x8196, 0xAC6D},+    {0x8197, 0xAC6E},+    {0x8198, 0xAC6F},+    {0x8199, 0xAC72},+    {0x819A, 0xAC73},+    {0x819B, 0xAC75},+    {0x819C, 0xAC76},+    {0x819D, 0xAC79},+    {0x819E, 0xAC7B},+    {0x819F, 0xAC7C},+    {0x81A0, 0xAC7D},+    {0x81A1, 0xAC7E},+    {0x81A2, 0xAC7F},+    {0x81A3, 0xAC82},+    {0x81A4, 0xAC87},+    {0x81A5, 0xAC88},+    {0x81A6, 0xAC8D},+    {0x81A7, 0xAC8E},+    {0x81A8, 0xAC8F},+    {0x81A9, 0xAC91},+    {0x81AA, 0xAC92},+    {0x81AB, 0xAC93},+    {0x81AC, 0xAC95},+    {0x81AD, 0xAC96},+    {0x81AE, 0xAC97},+    {0x81AF, 0xAC98},+    {0x81B0, 0xAC99},+    {0x81B1, 0xAC9A},+    {0x81B2, 0xAC9B},+    {0x81B3, 0xAC9E},+    {0x81B4, 0xACA2},+    {0x81B5, 0xACA3},+    {0x81B6, 0xACA4},+    {0x81B7, 0xACA5},+    {0x81B8, 0xACA6},+    {0x81B9, 0xACA7},+    {0x81BA, 0xACAB},+    {0x81BB, 0xACAD},+    {0x81BC, 0xACAE},+    {0x81BD, 0xACB1},+    {0x81BE, 0xACB2},+    {0x81BF, 0xACB3},+    {0x81C0, 0xACB4},+    {0x81C1, 0xACB5},+    {0x81C2, 0xACB6},+    {0x81C3, 0xACB7},+    {0x81C4, 0xACBA},+    {0x81C5, 0xACBE},+    {0x81C6, 0xACBF},+    {0x81C7, 0xACC0},+    {0x81C8, 0xACC2},+    {0x81C9, 0xACC3},+    {0x81CA, 0xACC5},+    {0x81CB, 0xACC6},+    {0x81CC, 0xACC7},+    {0x81CD, 0xACC9},+    {0x81CE, 0xACCA},+    {0x81CF, 0xACCB},+    {0x81D0, 0xACCD},+    {0x81D1, 0xACCE},+    {0x81D2, 0xACCF},+    {0x81D3, 0xACD0},+    {0x81D4, 0xACD1},+    {0x81D5, 0xACD2},+    {0x81D6, 0xACD3},+    {0x81D7, 0xACD4},+    {0x81D8, 0xACD6},+    {0x81D9, 0xACD8},+    {0x81DA, 0xACD9},+    {0x81DB, 0xACDA},+    {0x81DC, 0xACDB},+    {0x81DD, 0xACDC},+    {0x81DE, 0xACDD},+    {0x81DF, 0xACDE},+    {0x81E0, 0xACDF},+    {0x81E1, 0xACE2},+    {0x81E2, 0xACE3},+    {0x81E3, 0xACE5},+    {0x81E4, 0xACE6},+    {0x81E5, 0xACE9},+    {0x81E6, 0xACEB},+    {0x81E7, 0xACED},+    {0x81E8, 0xACEE},+    {0x81E9, 0xACF2},+    {0x81EA, 0xACF4},+    {0x81EB, 0xACF7},+    {0x81EC, 0xACF8},+    {0x81ED, 0xACF9},+    {0x81EE, 0xACFA},+    {0x81EF, 0xACFB},+    {0x81F0, 0xACFE},+    {0x81F1, 0xACFF},+    {0x81F2, 0xAD01},+    {0x81F3, 0xAD02},+    {0x81F4, 0xAD03},+    {0x81F5, 0xAD05},+    {0x81F6, 0xAD07},+    {0x81F7, 0xAD08},+    {0x81F8, 0xAD09},+    {0x81F9, 0xAD0A},+    {0x81FA, 0xAD0B},+    {0x81FB, 0xAD0E},+    {0x81FC, 0xAD10},+    {0x81FD, 0xAD12},+    {0x81FE, 0xAD13},+    {0x8241, 0xAD14},+    {0x8242, 0xAD15},+    {0x8243, 0xAD16},+    {0x8244, 0xAD17},+    {0x8245, 0xAD19},+    {0x8246, 0xAD1A},+    {0x8247, 0xAD1B},+    {0x8248, 0xAD1D},+    {0x8249, 0xAD1E},+    {0x824A, 0xAD1F},+    {0x824B, 0xAD21},+    {0x824C, 0xAD22},+    {0x824D, 0xAD23},+    {0x824E, 0xAD24},+    {0x824F, 0xAD25},+    {0x8250, 0xAD26},+    {0x8251, 0xAD27},+    {0x8252, 0xAD28},+    {0x8253, 0xAD2A},+    {0x8254, 0xAD2B},+    {0x8255, 0xAD2E},+    {0x8256, 0xAD2F},+    {0x8257, 0xAD30},+    {0x8258, 0xAD31},+    {0x8259, 0xAD32},+    {0x825A, 0xAD33},+    {0x8261, 0xAD36},+    {0x8262, 0xAD37},+    {0x8263, 0xAD39},+    {0x8264, 0xAD3A},+    {0x8265, 0xAD3B},+    {0x8266, 0xAD3D},+    {0x8267, 0xAD3E},+    {0x8268, 0xAD3F},+    {0x8269, 0xAD40},+    {0x826A, 0xAD41},+    {0x826B, 0xAD42},+    {0x826C, 0xAD43},+    {0x826D, 0xAD46},+    {0x826E, 0xAD48},+    {0x826F, 0xAD4A},+    {0x8270, 0xAD4B},+    {0x8271, 0xAD4C},+    {0x8272, 0xAD4D},+    {0x8273, 0xAD4E},+    {0x8274, 0xAD4F},+    {0x8275, 0xAD51},+    {0x8276, 0xAD52},+    {0x8277, 0xAD53},+    {0x8278, 0xAD55},+    {0x8279, 0xAD56},+    {0x827A, 0xAD57},+    {0x8281, 0xAD59},+    {0x8282, 0xAD5A},+    {0x8283, 0xAD5B},+    {0x8284, 0xAD5C},+    {0x8285, 0xAD5D},+    {0x8286, 0xAD5E},+    {0x8287, 0xAD5F},+    {0x8288, 0xAD60},+    {0x8289, 0xAD62},+    {0x828A, 0xAD64},+    {0x828B, 0xAD65},+    {0x828C, 0xAD66},+    {0x828D, 0xAD67},+    {0x828E, 0xAD68},+    {0x828F, 0xAD69},+    {0x8290, 0xAD6A},+    {0x8291, 0xAD6B},+    {0x8292, 0xAD6E},+    {0x8293, 0xAD6F},+    {0x8294, 0xAD71},+    {0x8295, 0xAD72},+    {0x8296, 0xAD77},+    {0x8297, 0xAD78},+    {0x8298, 0xAD79},+    {0x8299, 0xAD7A},+    {0x829A, 0xAD7E},+    {0x829B, 0xAD80},+    {0x829C, 0xAD83},+    {0x829D, 0xAD84},+    {0x829E, 0xAD85},+    {0x829F, 0xAD86},+    {0x82A0, 0xAD87},+    {0x82A1, 0xAD8A},+    {0x82A2, 0xAD8B},+    {0x82A3, 0xAD8D},+    {0x82A4, 0xAD8E},+    {0x82A5, 0xAD8F},+    {0x82A6, 0xAD91},+    {0x82A7, 0xAD92},+    {0x82A8, 0xAD93},+    {0x82A9, 0xAD94},+    {0x82AA, 0xAD95},+    {0x82AB, 0xAD96},+    {0x82AC, 0xAD97},+    {0x82AD, 0xAD98},+    {0x82AE, 0xAD99},+    {0x82AF, 0xAD9A},+    {0x82B0, 0xAD9B},+    {0x82B1, 0xAD9E},+    {0x82B2, 0xAD9F},+    {0x82B3, 0xADA0},+    {0x82B4, 0xADA1},+    {0x82B5, 0xADA2},+    {0x82B6, 0xADA3},+    {0x82B7, 0xADA5},+    {0x82B8, 0xADA6},+    {0x82B9, 0xADA7},+    {0x82BA, 0xADA8},+    {0x82BB, 0xADA9},+    {0x82BC, 0xADAA},+    {0x82BD, 0xADAB},+    {0x82BE, 0xADAC},+    {0x82BF, 0xADAD},+    {0x82C0, 0xADAE},+    {0x82C1, 0xADAF},+    {0x82C2, 0xADB0},+    {0x82C3, 0xADB1},+    {0x82C4, 0xADB2},+    {0x82C5, 0xADB3},+    {0x82C6, 0xADB4},+    {0x82C7, 0xADB5},+    {0x82C8, 0xADB6},+    {0x82C9, 0xADB8},+    {0x82CA, 0xADB9},+    {0x82CB, 0xADBA},+    {0x82CC, 0xADBB},+    {0x82CD, 0xADBC},+    {0x82CE, 0xADBD},+    {0x82CF, 0xADBE},+    {0x82D0, 0xADBF},+    {0x82D1, 0xADC2},+    {0x82D2, 0xADC3},+    {0x82D3, 0xADC5},+    {0x82D4, 0xADC6},+    {0x82D5, 0xADC7},+    {0x82D6, 0xADC9},+    {0x82D7, 0xADCA},+    {0x82D8, 0xADCB},+    {0x82D9, 0xADCC},+    {0x82DA, 0xADCD},+    {0x82DB, 0xADCE},+    {0x82DC, 0xADCF},+    {0x82DD, 0xADD2},+    {0x82DE, 0xADD4},+    {0x82DF, 0xADD5},+    {0x82E0, 0xADD6},+    {0x82E1, 0xADD7},+    {0x82E2, 0xADD8},+    {0x82E3, 0xADD9},+    {0x82E4, 0xADDA},+    {0x82E5, 0xADDB},+    {0x82E6, 0xADDD},+    {0x82E7, 0xADDE},+    {0x82E8, 0xADDF},+    {0x82E9, 0xADE1},+    {0x82EA, 0xADE2},+    {0x82EB, 0xADE3},+    {0x82EC, 0xADE5},+    {0x82ED, 0xADE6},+    {0x82EE, 0xADE7},+    {0x82EF, 0xADE8},+    {0x82F0, 0xADE9},+    {0x82F1, 0xADEA},+    {0x82F2, 0xADEB},+    {0x82F3, 0xADEC},+    {0x82F4, 0xADED},+    {0x82F5, 0xADEE},+    {0x82F6, 0xADEF},+    {0x82F7, 0xADF0},+    {0x82F8, 0xADF1},+    {0x82F9, 0xADF2},+    {0x82FA, 0xADF3},+    {0x82FB, 0xADF4},+    {0x82FC, 0xADF5},+    {0x82FD, 0xADF6},+    {0x82FE, 0xADF7},+    {0x8341, 0xADFA},+    {0x8342, 0xADFB},+    {0x8343, 0xADFD},+    {0x8344, 0xADFE},+    {0x8345, 0xAE02},+    {0x8346, 0xAE03},+    {0x8347, 0xAE04},+    {0x8348, 0xAE05},+    {0x8349, 0xAE06},+    {0x834A, 0xAE07},+    {0x834B, 0xAE0A},+    {0x834C, 0xAE0C},+    {0x834D, 0xAE0E},+    {0x834E, 0xAE0F},+    {0x834F, 0xAE10},+    {0x8350, 0xAE11},+    {0x8351, 0xAE12},+    {0x8352, 0xAE13},+    {0x8353, 0xAE15},+    {0x8354, 0xAE16},+    {0x8355, 0xAE17},+    {0x8356, 0xAE18},+    {0x8357, 0xAE19},+    {0x8358, 0xAE1A},+    {0x8359, 0xAE1B},+    {0x835A, 0xAE1C},+    {0x8361, 0xAE1D},+    {0x8362, 0xAE1E},+    {0x8363, 0xAE1F},+    {0x8364, 0xAE20},+    {0x8365, 0xAE21},+    {0x8366, 0xAE22},+    {0x8367, 0xAE23},+    {0x8368, 0xAE24},+    {0x8369, 0xAE25},+    {0x836A, 0xAE26},+    {0x836B, 0xAE27},+    {0x836C, 0xAE28},+    {0x836D, 0xAE29},+    {0x836E, 0xAE2A},+    {0x836F, 0xAE2B},+    {0x8370, 0xAE2C},+    {0x8371, 0xAE2D},+    {0x8372, 0xAE2E},+    {0x8373, 0xAE2F},+    {0x8374, 0xAE32},+    {0x8375, 0xAE33},+    {0x8376, 0xAE35},+    {0x8377, 0xAE36},+    {0x8378, 0xAE39},+    {0x8379, 0xAE3B},+    {0x837A, 0xAE3C},+    {0x8381, 0xAE3D},+    {0x8382, 0xAE3E},+    {0x8383, 0xAE3F},+    {0x8384, 0xAE42},+    {0x8385, 0xAE44},+    {0x8386, 0xAE47},+    {0x8387, 0xAE48},+    {0x8388, 0xAE49},+    {0x8389, 0xAE4B},+    {0x838A, 0xAE4F},+    {0x838B, 0xAE51},+    {0x838C, 0xAE52},+    {0x838D, 0xAE53},+    {0x838E, 0xAE55},+    {0x838F, 0xAE57},+    {0x8390, 0xAE58},+    {0x8391, 0xAE59},+    {0x8392, 0xAE5A},+    {0x8393, 0xAE5B},+    {0x8394, 0xAE5E},+    {0x8395, 0xAE62},+    {0x8396, 0xAE63},+    {0x8397, 0xAE64},+    {0x8398, 0xAE66},+    {0x8399, 0xAE67},+    {0x839A, 0xAE6A},+    {0x839B, 0xAE6B},+    {0x839C, 0xAE6D},+    {0x839D, 0xAE6E},+    {0x839E, 0xAE6F},+    {0x839F, 0xAE71},+    {0x83A0, 0xAE72},+    {0x83A1, 0xAE73},+    {0x83A2, 0xAE74},+    {0x83A3, 0xAE75},+    {0x83A4, 0xAE76},+    {0x83A5, 0xAE77},+    {0x83A6, 0xAE7A},+    {0x83A7, 0xAE7E},+    {0x83A8, 0xAE7F},+    {0x83A9, 0xAE80},+    {0x83AA, 0xAE81},+    {0x83AB, 0xAE82},+    {0x83AC, 0xAE83},+    {0x83AD, 0xAE86},+    {0x83AE, 0xAE87},+    {0x83AF, 0xAE88},+    {0x83B0, 0xAE89},+    {0x83B1, 0xAE8A},+    {0x83B2, 0xAE8B},+    {0x83B3, 0xAE8D},+    {0x83B4, 0xAE8E},+    {0x83B5, 0xAE8F},+    {0x83B6, 0xAE90},+    {0x83B7, 0xAE91},+    {0x83B8, 0xAE92},+    {0x83B9, 0xAE93},+    {0x83BA, 0xAE94},+    {0x83BB, 0xAE95},+    {0x83BC, 0xAE96},+    {0x83BD, 0xAE97},+    {0x83BE, 0xAE98},+    {0x83BF, 0xAE99},+    {0x83C0, 0xAE9A},+    {0x83C1, 0xAE9B},+    {0x83C2, 0xAE9C},+    {0x83C3, 0xAE9D},+    {0x83C4, 0xAE9E},+    {0x83C5, 0xAE9F},+    {0x83C6, 0xAEA0},+    {0x83C7, 0xAEA1},+    {0x83C8, 0xAEA2},+    {0x83C9, 0xAEA3},+    {0x83CA, 0xAEA4},+    {0x83CB, 0xAEA5},+    {0x83CC, 0xAEA6},+    {0x83CD, 0xAEA7},+    {0x83CE, 0xAEA8},+    {0x83CF, 0xAEA9},+    {0x83D0, 0xAEAA},+    {0x83D1, 0xAEAB},+    {0x83D2, 0xAEAC},+    {0x83D3, 0xAEAD},+    {0x83D4, 0xAEAE},+    {0x83D5, 0xAEAF},+    {0x83D6, 0xAEB0},+    {0x83D7, 0xAEB1},+    {0x83D8, 0xAEB2},+    {0x83D9, 0xAEB3},+    {0x83DA, 0xAEB4},+    {0x83DB, 0xAEB5},+    {0x83DC, 0xAEB6},+    {0x83DD, 0xAEB7},+    {0x83DE, 0xAEB8},+    {0x83DF, 0xAEB9},+    {0x83E0, 0xAEBA},+    {0x83E1, 0xAEBB},+    {0x83E2, 0xAEBF},+    {0x83E3, 0xAEC1},+    {0x83E4, 0xAEC2},+    {0x83E5, 0xAEC3},+    {0x83E6, 0xAEC5},+    {0x83E7, 0xAEC6},+    {0x83E8, 0xAEC7},+    {0x83E9, 0xAEC8},+    {0x83EA, 0xAEC9},+    {0x83EB, 0xAECA},+    {0x83EC, 0xAECB},+    {0x83ED, 0xAECE},+    {0x83EE, 0xAED2},+    {0x83EF, 0xAED3},+    {0x83F0, 0xAED4},+    {0x83F1, 0xAED5},+    {0x83F2, 0xAED6},+    {0x83F3, 0xAED7},+    {0x83F4, 0xAEDA},+    {0x83F5, 0xAEDB},+    {0x83F6, 0xAEDD},+    {0x83F7, 0xAEDE},+    {0x83F8, 0xAEDF},+    {0x83F9, 0xAEE0},+    {0x83FA, 0xAEE1},+    {0x83FB, 0xAEE2},+    {0x83FC, 0xAEE3},+    {0x83FD, 0xAEE4},+    {0x83FE, 0xAEE5},+    {0x8441, 0xAEE6},+    {0x8442, 0xAEE7},+    {0x8443, 0xAEE9},+    {0x8444, 0xAEEA},+    {0x8445, 0xAEEC},+    {0x8446, 0xAEEE},+    {0x8447, 0xAEEF},+    {0x8448, 0xAEF0},+    {0x8449, 0xAEF1},+    {0x844A, 0xAEF2},+    {0x844B, 0xAEF3},+    {0x844C, 0xAEF5},+    {0x844D, 0xAEF6},+    {0x844E, 0xAEF7},+    {0x844F, 0xAEF9},+    {0x8450, 0xAEFA},+    {0x8451, 0xAEFB},+    {0x8452, 0xAEFD},+    {0x8453, 0xAEFE},+    {0x8454, 0xAEFF},+    {0x8455, 0xAF00},+    {0x8456, 0xAF01},+    {0x8457, 0xAF02},+    {0x8458, 0xAF03},+    {0x8459, 0xAF04},+    {0x845A, 0xAF05},+    {0x8461, 0xAF06},+    {0x8462, 0xAF09},+    {0x8463, 0xAF0A},+    {0x8464, 0xAF0B},+    {0x8465, 0xAF0C},+    {0x8466, 0xAF0E},+    {0x8467, 0xAF0F},+    {0x8468, 0xAF11},+    {0x8469, 0xAF12},+    {0x846A, 0xAF13},+    {0x846B, 0xAF14},+    {0x846C, 0xAF15},+    {0x846D, 0xAF16},+    {0x846E, 0xAF17},+    {0x846F, 0xAF18},+    {0x8470, 0xAF19},+    {0x8471, 0xAF1A},+    {0x8472, 0xAF1B},+    {0x8473, 0xAF1C},+    {0x8474, 0xAF1D},+    {0x8475, 0xAF1E},+    {0x8476, 0xAF1F},+    {0x8477, 0xAF20},+    {0x8478, 0xAF21},+    {0x8479, 0xAF22},+    {0x847A, 0xAF23},+    {0x8481, 0xAF24},+    {0x8482, 0xAF25},+    {0x8483, 0xAF26},+    {0x8484, 0xAF27},+    {0x8485, 0xAF28},+    {0x8486, 0xAF29},+    {0x8487, 0xAF2A},+    {0x8488, 0xAF2B},+    {0x8489, 0xAF2E},+    {0x848A, 0xAF2F},+    {0x848B, 0xAF31},+    {0x848C, 0xAF33},+    {0x848D, 0xAF35},+    {0x848E, 0xAF36},+    {0x848F, 0xAF37},+    {0x8490, 0xAF38},+    {0x8491, 0xAF39},+    {0x8492, 0xAF3A},+    {0x8493, 0xAF3B},+    {0x8494, 0xAF3E},+    {0x8495, 0xAF40},+    {0x8496, 0xAF44},+    {0x8497, 0xAF45},+    {0x8498, 0xAF46},+    {0x8499, 0xAF47},+    {0x849A, 0xAF4A},+    {0x849B, 0xAF4B},+    {0x849C, 0xAF4C},+    {0x849D, 0xAF4D},+    {0x849E, 0xAF4E},+    {0x849F, 0xAF4F},+    {0x84A0, 0xAF51},+    {0x84A1, 0xAF52},+    {0x84A2, 0xAF53},+    {0x84A3, 0xAF54},+    {0x84A4, 0xAF55},+    {0x84A5, 0xAF56},+    {0x84A6, 0xAF57},+    {0x84A7, 0xAF58},+    {0x84A8, 0xAF59},+    {0x84A9, 0xAF5A},+    {0x84AA, 0xAF5B},+    {0x84AB, 0xAF5E},+    {0x84AC, 0xAF5F},+    {0x84AD, 0xAF60},+    {0x84AE, 0xAF61},+    {0x84AF, 0xAF62},+    {0x84B0, 0xAF63},+    {0x84B1, 0xAF66},+    {0x84B2, 0xAF67},+    {0x84B3, 0xAF68},+    {0x84B4, 0xAF69},+    {0x84B5, 0xAF6A},+    {0x84B6, 0xAF6B},+    {0x84B7, 0xAF6C},+    {0x84B8, 0xAF6D},+    {0x84B9, 0xAF6E},+    {0x84BA, 0xAF6F},+    {0x84BB, 0xAF70},+    {0x84BC, 0xAF71},+    {0x84BD, 0xAF72},+    {0x84BE, 0xAF73},+    {0x84BF, 0xAF74},+    {0x84C0, 0xAF75},+    {0x84C1, 0xAF76},+    {0x84C2, 0xAF77},+    {0x84C3, 0xAF78},+    {0x84C4, 0xAF7A},+    {0x84C5, 0xAF7B},+    {0x84C6, 0xAF7C},+    {0x84C7, 0xAF7D},+    {0x84C8, 0xAF7E},+    {0x84C9, 0xAF7F},+    {0x84CA, 0xAF81},+    {0x84CB, 0xAF82},+    {0x84CC, 0xAF83},+    {0x84CD, 0xAF85},+    {0x84CE, 0xAF86},+    {0x84CF, 0xAF87},+    {0x84D0, 0xAF89},+    {0x84D1, 0xAF8A},+    {0x84D2, 0xAF8B},+    {0x84D3, 0xAF8C},+    {0x84D4, 0xAF8D},+    {0x84D5, 0xAF8E},+    {0x84D6, 0xAF8F},+    {0x84D7, 0xAF92},+    {0x84D8, 0xAF93},+    {0x84D9, 0xAF94},+    {0x84DA, 0xAF96},+    {0x84DB, 0xAF97},+    {0x84DC, 0xAF98},+    {0x84DD, 0xAF99},+    {0x84DE, 0xAF9A},+    {0x84DF, 0xAF9B},+    {0x84E0, 0xAF9D},+    {0x84E1, 0xAF9E},+    {0x84E2, 0xAF9F},+    {0x84E3, 0xAFA0},+    {0x84E4, 0xAFA1},+    {0x84E5, 0xAFA2},+    {0x84E6, 0xAFA3},+    {0x84E7, 0xAFA4},+    {0x84E8, 0xAFA5},+    {0x84E9, 0xAFA6},+    {0x84EA, 0xAFA7},+    {0x84EB, 0xAFA8},+    {0x84EC, 0xAFA9},+    {0x84ED, 0xAFAA},+    {0x84EE, 0xAFAB},+    {0x84EF, 0xAFAC},+    {0x84F0, 0xAFAD},+    {0x84F1, 0xAFAE},+    {0x84F2, 0xAFAF},+    {0x84F3, 0xAFB0},+    {0x84F4, 0xAFB1},+    {0x84F5, 0xAFB2},+    {0x84F6, 0xAFB3},+    {0x84F7, 0xAFB4},+    {0x84F8, 0xAFB5},+    {0x84F9, 0xAFB6},+    {0x84FA, 0xAFB7},+    {0x84FB, 0xAFBA},+    {0x84FC, 0xAFBB},+    {0x84FD, 0xAFBD},+    {0x84FE, 0xAFBE},+    {0x8541, 0xAFBF},+    {0x8542, 0xAFC1},+    {0x8543, 0xAFC2},+    {0x8544, 0xAFC3},+    {0x8545, 0xAFC4},+    {0x8546, 0xAFC5},+    {0x8547, 0xAFC6},+    {0x8548, 0xAFCA},+    {0x8549, 0xAFCC},+    {0x854A, 0xAFCF},+    {0x854B, 0xAFD0},+    {0x854C, 0xAFD1},+    {0x854D, 0xAFD2},+    {0x854E, 0xAFD3},+    {0x854F, 0xAFD5},+    {0x8550, 0xAFD6},+    {0x8551, 0xAFD7},+    {0x8552, 0xAFD8},+    {0x8553, 0xAFD9},+    {0x8554, 0xAFDA},+    {0x8555, 0xAFDB},+    {0x8556, 0xAFDD},+    {0x8557, 0xAFDE},+    {0x8558, 0xAFDF},+    {0x8559, 0xAFE0},+    {0x855A, 0xAFE1},+    {0x8561, 0xAFE2},+    {0x8562, 0xAFE3},+    {0x8563, 0xAFE4},+    {0x8564, 0xAFE5},+    {0x8565, 0xAFE6},+    {0x8566, 0xAFE7},+    {0x8567, 0xAFEA},+    {0x8568, 0xAFEB},+    {0x8569, 0xAFEC},+    {0x856A, 0xAFED},+    {0x856B, 0xAFEE},+    {0x856C, 0xAFEF},+    {0x856D, 0xAFF2},+    {0x856E, 0xAFF3},+    {0x856F, 0xAFF5},+    {0x8570, 0xAFF6},+    {0x8571, 0xAFF7},+    {0x8572, 0xAFF9},+    {0x8573, 0xAFFA},+    {0x8574, 0xAFFB},+    {0x8575, 0xAFFC},+    {0x8576, 0xAFFD},+    {0x8577, 0xAFFE},+    {0x8578, 0xAFFF},+    {0x8579, 0xB002},+    {0x857A, 0xB003},+    {0x8581, 0xB005},+    {0x8582, 0xB006},+    {0x8583, 0xB007},+    {0x8584, 0xB008},+    {0x8585, 0xB009},+    {0x8586, 0xB00A},+    {0x8587, 0xB00B},+    {0x8588, 0xB00D},+    {0x8589, 0xB00E},+    {0x858A, 0xB00F},+    {0x858B, 0xB011},+    {0x858C, 0xB012},+    {0x858D, 0xB013},+    {0x858E, 0xB015},+    {0x858F, 0xB016},+    {0x8590, 0xB017},+    {0x8591, 0xB018},+    {0x8592, 0xB019},+    {0x8593, 0xB01A},+    {0x8594, 0xB01B},+    {0x8595, 0xB01E},+    {0x8596, 0xB01F},+    {0x8597, 0xB020},+    {0x8598, 0xB021},+    {0x8599, 0xB022},+    {0x859A, 0xB023},+    {0x859B, 0xB024},+    {0x859C, 0xB025},+    {0x859D, 0xB026},+    {0x859E, 0xB027},+    {0x859F, 0xB029},+    {0x85A0, 0xB02A},+    {0x85A1, 0xB02B},+    {0x85A2, 0xB02C},+    {0x85A3, 0xB02D},+    {0x85A4, 0xB02E},+    {0x85A5, 0xB02F},+    {0x85A6, 0xB030},+    {0x85A7, 0xB031},+    {0x85A8, 0xB032},+    {0x85A9, 0xB033},+    {0x85AA, 0xB034},+    {0x85AB, 0xB035},+    {0x85AC, 0xB036},+    {0x85AD, 0xB037},+    {0x85AE, 0xB038},+    {0x85AF, 0xB039},+    {0x85B0, 0xB03A},+    {0x85B1, 0xB03B},+    {0x85B2, 0xB03C},+    {0x85B3, 0xB03D},+    {0x85B4, 0xB03E},+    {0x85B5, 0xB03F},+    {0x85B6, 0xB040},+    {0x85B7, 0xB041},+    {0x85B8, 0xB042},+    {0x85B9, 0xB043},+    {0x85BA, 0xB046},+    {0x85BB, 0xB047},+    {0x85BC, 0xB049},+    {0x85BD, 0xB04B},+    {0x85BE, 0xB04D},+    {0x85BF, 0xB04F},+    {0x85C0, 0xB050},+    {0x85C1, 0xB051},+    {0x85C2, 0xB052},+    {0x85C3, 0xB056},+    {0x85C4, 0xB058},+    {0x85C5, 0xB05A},+    {0x85C6, 0xB05B},+    {0x85C7, 0xB05C},+    {0x85C8, 0xB05E},+    {0x85C9, 0xB05F},+    {0x85CA, 0xB060},+    {0x85CB, 0xB061},+    {0x85CC, 0xB062},+    {0x85CD, 0xB063},+    {0x85CE, 0xB064},+    {0x85CF, 0xB065},+    {0x85D0, 0xB066},+    {0x85D1, 0xB067},+    {0x85D2, 0xB068},+    {0x85D3, 0xB069},+    {0x85D4, 0xB06A},+    {0x85D5, 0xB06B},+    {0x85D6, 0xB06C},+    {0x85D7, 0xB06D},+    {0x85D8, 0xB06E},+    {0x85D9, 0xB06F},+    {0x85DA, 0xB070},+    {0x85DB, 0xB071},+    {0x85DC, 0xB072},+    {0x85DD, 0xB073},+    {0x85DE, 0xB074},+    {0x85DF, 0xB075},+    {0x85E0, 0xB076},+    {0x85E1, 0xB077},+    {0x85E2, 0xB078},+    {0x85E3, 0xB079},+    {0x85E4, 0xB07A},+    {0x85E5, 0xB07B},+    {0x85E6, 0xB07E},+    {0x85E7, 0xB07F},+    {0x85E8, 0xB081},+    {0x85E9, 0xB082},+    {0x85EA, 0xB083},+    {0x85EB, 0xB085},+    {0x85EC, 0xB086},+    {0x85ED, 0xB087},+    {0x85EE, 0xB088},+    {0x85EF, 0xB089},+    {0x85F0, 0xB08A},+    {0x85F1, 0xB08B},+    {0x85F2, 0xB08E},+    {0x85F3, 0xB090},+    {0x85F4, 0xB092},+    {0x85F5, 0xB093},+    {0x85F6, 0xB094},+    {0x85F7, 0xB095},+    {0x85F8, 0xB096},+    {0x85F9, 0xB097},+    {0x85FA, 0xB09B},+    {0x85FB, 0xB09D},+    {0x85FC, 0xB09E},+    {0x85FD, 0xB0A3},+    {0x85FE, 0xB0A4},+    {0x8641, 0xB0A5},+    {0x8642, 0xB0A6},+    {0x8643, 0xB0A7},+    {0x8644, 0xB0AA},+    {0x8645, 0xB0B0},+    {0x8646, 0xB0B2},+    {0x8647, 0xB0B6},+    {0x8648, 0xB0B7},+    {0x8649, 0xB0B9},+    {0x864A, 0xB0BA},+    {0x864B, 0xB0BB},+    {0x864C, 0xB0BD},+    {0x864D, 0xB0BE},+    {0x864E, 0xB0BF},+    {0x864F, 0xB0C0},+    {0x8650, 0xB0C1},+    {0x8651, 0xB0C2},+    {0x8652, 0xB0C3},+    {0x8653, 0xB0C6},+    {0x8654, 0xB0CA},+    {0x8655, 0xB0CB},+    {0x8656, 0xB0CC},+    {0x8657, 0xB0CD},+    {0x8658, 0xB0CE},+    {0x8659, 0xB0CF},+    {0x865A, 0xB0D2},+    {0x8661, 0xB0D3},+    {0x8662, 0xB0D5},+    {0x8663, 0xB0D6},+    {0x8664, 0xB0D7},+    {0x8665, 0xB0D9},+    {0x8666, 0xB0DA},+    {0x8667, 0xB0DB},+    {0x8668, 0xB0DC},+    {0x8669, 0xB0DD},+    {0x866A, 0xB0DE},+    {0x866B, 0xB0DF},+    {0x866C, 0xB0E1},+    {0x866D, 0xB0E2},+    {0x866E, 0xB0E3},+    {0x866F, 0xB0E4},+    {0x8670, 0xB0E6},+    {0x8671, 0xB0E7},+    {0x8672, 0xB0E8},+    {0x8673, 0xB0E9},+    {0x8674, 0xB0EA},+    {0x8675, 0xB0EB},+    {0x8676, 0xB0EC},+    {0x8677, 0xB0ED},+    {0x8678, 0xB0EE},+    {0x8679, 0xB0EF},+    {0x867A, 0xB0F0},+    {0x8681, 0xB0F1},+    {0x8682, 0xB0F2},+    {0x8683, 0xB0F3},+    {0x8684, 0xB0F4},+    {0x8685, 0xB0F5},+    {0x8686, 0xB0F6},+    {0x8687, 0xB0F7},+    {0x8688, 0xB0F8},+    {0x8689, 0xB0F9},+    {0x868A, 0xB0FA},+    {0x868B, 0xB0FB},+    {0x868C, 0xB0FC},+    {0x868D, 0xB0FD},+    {0x868E, 0xB0FE},+    {0x868F, 0xB0FF},+    {0x8690, 0xB100},+    {0x8691, 0xB101},+    {0x8692, 0xB102},+    {0x8693, 0xB103},+    {0x8694, 0xB104},+    {0x8695, 0xB105},+    {0x8696, 0xB106},+    {0x8697, 0xB107},+    {0x8698, 0xB10A},+    {0x8699, 0xB10D},+    {0x869A, 0xB10E},+    {0x869B, 0xB10F},+    {0x869C, 0xB111},+    {0x869D, 0xB114},+    {0x869E, 0xB115},+    {0x869F, 0xB116},+    {0x86A0, 0xB117},+    {0x86A1, 0xB11A},+    {0x86A2, 0xB11E},+    {0x86A3, 0xB11F},+    {0x86A4, 0xB120},+    {0x86A5, 0xB121},+    {0x86A6, 0xB122},+    {0x86A7, 0xB126},+    {0x86A8, 0xB127},+    {0x86A9, 0xB129},+    {0x86AA, 0xB12A},+    {0x86AB, 0xB12B},+    {0x86AC, 0xB12D},+    {0x86AD, 0xB12E},+    {0x86AE, 0xB12F},+    {0x86AF, 0xB130},+    {0x86B0, 0xB131},+    {0x86B1, 0xB132},+    {0x86B2, 0xB133},+    {0x86B3, 0xB136},+    {0x86B4, 0xB13A},+    {0x86B5, 0xB13B},+    {0x86B6, 0xB13C},+    {0x86B7, 0xB13D},+    {0x86B8, 0xB13E},+    {0x86B9, 0xB13F},+    {0x86BA, 0xB142},+    {0x86BB, 0xB143},+    {0x86BC, 0xB145},+    {0x86BD, 0xB146},+    {0x86BE, 0xB147},+    {0x86BF, 0xB149},+    {0x86C0, 0xB14A},+    {0x86C1, 0xB14B},+    {0x86C2, 0xB14C},+    {0x86C3, 0xB14D},+    {0x86C4, 0xB14E},+    {0x86C5, 0xB14F},+    {0x86C6, 0xB152},+    {0x86C7, 0xB153},+    {0x86C8, 0xB156},+    {0x86C9, 0xB157},+    {0x86CA, 0xB159},+    {0x86CB, 0xB15A},+    {0x86CC, 0xB15B},+    {0x86CD, 0xB15D},+    {0x86CE, 0xB15E},+    {0x86CF, 0xB15F},+    {0x86D0, 0xB161},+    {0x86D1, 0xB162},+    {0x86D2, 0xB163},+    {0x86D3, 0xB164},+    {0x86D4, 0xB165},+    {0x86D5, 0xB166},+    {0x86D6, 0xB167},+    {0x86D7, 0xB168},+    {0x86D8, 0xB169},+    {0x86D9, 0xB16A},+    {0x86DA, 0xB16B},+    {0x86DB, 0xB16C},+    {0x86DC, 0xB16D},+    {0x86DD, 0xB16E},+    {0x86DE, 0xB16F},+    {0x86DF, 0xB170},+    {0x86E0, 0xB171},+    {0x86E1, 0xB172},+    {0x86E2, 0xB173},+    {0x86E3, 0xB174},+    {0x86E4, 0xB175},+    {0x86E5, 0xB176},+    {0x86E6, 0xB177},+    {0x86E7, 0xB17A},+    {0x86E8, 0xB17B},+    {0x86E9, 0xB17D},+    {0x86EA, 0xB17E},+    {0x86EB, 0xB17F},+    {0x86EC, 0xB181},+    {0x86ED, 0xB183},+    {0x86EE, 0xB184},+    {0x86EF, 0xB185},+    {0x86F0, 0xB186},+    {0x86F1, 0xB187},+    {0x86F2, 0xB18A},+    {0x86F3, 0xB18C},+    {0x86F4, 0xB18E},+    {0x86F5, 0xB18F},+    {0x86F6, 0xB190},+    {0x86F7, 0xB191},+    {0x86F8, 0xB195},+    {0x86F9, 0xB196},+    {0x86FA, 0xB197},+    {0x86FB, 0xB199},+    {0x86FC, 0xB19A},+    {0x86FD, 0xB19B},+    {0x86FE, 0xB19D},+    {0x8741, 0xB19E},+    {0x8742, 0xB19F},+    {0x8743, 0xB1A0},+    {0x8744, 0xB1A1},+    {0x8745, 0xB1A2},+    {0x8746, 0xB1A3},+    {0x8747, 0xB1A4},+    {0x8748, 0xB1A5},+    {0x8749, 0xB1A6},+    {0x874A, 0xB1A7},+    {0x874B, 0xB1A9},+    {0x874C, 0xB1AA},+    {0x874D, 0xB1AB},+    {0x874E, 0xB1AC},+    {0x874F, 0xB1AD},+    {0x8750, 0xB1AE},+    {0x8751, 0xB1AF},+    {0x8752, 0xB1B0},+    {0x8753, 0xB1B1},+    {0x8754, 0xB1B2},+    {0x8755, 0xB1B3},+    {0x8756, 0xB1B4},+    {0x8757, 0xB1B5},+    {0x8758, 0xB1B6},+    {0x8759, 0xB1B7},+    {0x875A, 0xB1B8},+    {0x8761, 0xB1B9},+    {0x8762, 0xB1BA},+    {0x8763, 0xB1BB},+    {0x8764, 0xB1BC},+    {0x8765, 0xB1BD},+    {0x8766, 0xB1BE},+    {0x8767, 0xB1BF},+    {0x8768, 0xB1C0},+    {0x8769, 0xB1C1},+    {0x876A, 0xB1C2},+    {0x876B, 0xB1C3},+    {0x876C, 0xB1C4},+    {0x876D, 0xB1C5},+    {0x876E, 0xB1C6},+    {0x876F, 0xB1C7},+    {0x8770, 0xB1C8},+    {0x8771, 0xB1C9},+    {0x8772, 0xB1CA},+    {0x8773, 0xB1CB},+    {0x8774, 0xB1CD},+    {0x8775, 0xB1CE},+    {0x8776, 0xB1CF},+    {0x8777, 0xB1D1},+    {0x8778, 0xB1D2},+    {0x8779, 0xB1D3},+    {0x877A, 0xB1D5},+    {0x8781, 0xB1D6},+    {0x8782, 0xB1D7},+    {0x8783, 0xB1D8},+    {0x8784, 0xB1D9},+    {0x8785, 0xB1DA},+    {0x8786, 0xB1DB},+    {0x8787, 0xB1DE},+    {0x8788, 0xB1E0},+    {0x8789, 0xB1E1},+    {0x878A, 0xB1E2},+    {0x878B, 0xB1E3},+    {0x878C, 0xB1E4},+    {0x878D, 0xB1E5},+    {0x878E, 0xB1E6},+    {0x878F, 0xB1E7},+    {0x8790, 0xB1EA},+    {0x8791, 0xB1EB},+    {0x8792, 0xB1ED},+    {0x8793, 0xB1EE},+    {0x8794, 0xB1EF},+    {0x8795, 0xB1F1},+    {0x8796, 0xB1F2},+    {0x8797, 0xB1F3},+    {0x8798, 0xB1F4},+    {0x8799, 0xB1F5},+    {0x879A, 0xB1F6},+    {0x879B, 0xB1F7},+    {0x879C, 0xB1F8},+    {0x879D, 0xB1FA},+    {0x879E, 0xB1FC},+    {0x879F, 0xB1FE},+    {0x87A0, 0xB1FF},+    {0x87A1, 0xB200},+    {0x87A2, 0xB201},+    {0x87A3, 0xB202},+    {0x87A4, 0xB203},+    {0x87A5, 0xB206},+    {0x87A6, 0xB207},+    {0x87A7, 0xB209},+    {0x87A8, 0xB20A},+    {0x87A9, 0xB20D},+    {0x87AA, 0xB20E},+    {0x87AB, 0xB20F},+    {0x87AC, 0xB210},+    {0x87AD, 0xB211},+    {0x87AE, 0xB212},+    {0x87AF, 0xB213},+    {0x87B0, 0xB216},+    {0x87B1, 0xB218},+    {0x87B2, 0xB21A},+    {0x87B3, 0xB21B},+    {0x87B4, 0xB21C},+    {0x87B5, 0xB21D},+    {0x87B6, 0xB21E},+    {0x87B7, 0xB21F},+    {0x87B8, 0xB221},+    {0x87B9, 0xB222},+    {0x87BA, 0xB223},+    {0x87BB, 0xB224},+    {0x87BC, 0xB225},+    {0x87BD, 0xB226},+    {0x87BE, 0xB227},+    {0x87BF, 0xB228},+    {0x87C0, 0xB229},+    {0x87C1, 0xB22A},+    {0x87C2, 0xB22B},+    {0x87C3, 0xB22C},+    {0x87C4, 0xB22D},+    {0x87C5, 0xB22E},+    {0x87C6, 0xB22F},+    {0x87C7, 0xB230},+    {0x87C8, 0xB231},+    {0x87C9, 0xB232},+    {0x87CA, 0xB233},+    {0x87CB, 0xB235},+    {0x87CC, 0xB236},+    {0x87CD, 0xB237},+    {0x87CE, 0xB238},+    {0x87CF, 0xB239},+    {0x87D0, 0xB23A},+    {0x87D1, 0xB23B},+    {0x87D2, 0xB23D},+    {0x87D3, 0xB23E},+    {0x87D4, 0xB23F},+    {0x87D5, 0xB240},+    {0x87D6, 0xB241},+    {0x87D7, 0xB242},+    {0x87D8, 0xB243},+    {0x87D9, 0xB244},+    {0x87DA, 0xB245},+    {0x87DB, 0xB246},+    {0x87DC, 0xB247},+    {0x87DD, 0xB248},+    {0x87DE, 0xB249},+    {0x87DF, 0xB24A},+    {0x87E0, 0xB24B},+    {0x87E1, 0xB24C},+    {0x87E2, 0xB24D},+    {0x87E3, 0xB24E},+    {0x87E4, 0xB24F},+    {0x87E5, 0xB250},+    {0x87E6, 0xB251},+    {0x87E7, 0xB252},+    {0x87E8, 0xB253},+    {0x87E9, 0xB254},+    {0x87EA, 0xB255},+    {0x87EB, 0xB256},+    {0x87EC, 0xB257},+    {0x87ED, 0xB259},+    {0x87EE, 0xB25A},+    {0x87EF, 0xB25B},+    {0x87F0, 0xB25D},+    {0x87F1, 0xB25E},+    {0x87F2, 0xB25F},+    {0x87F3, 0xB261},+    {0x87F4, 0xB262},+    {0x87F5, 0xB263},+    {0x87F6, 0xB264},+    {0x87F7, 0xB265},+    {0x87F8, 0xB266},+    {0x87F9, 0xB267},+    {0x87FA, 0xB26A},+    {0x87FB, 0xB26B},+    {0x87FC, 0xB26C},+    {0x87FD, 0xB26D},+    {0x87FE, 0xB26E},+    {0x8841, 0xB26F},+    {0x8842, 0xB270},+    {0x8843, 0xB271},+    {0x8844, 0xB272},+    {0x8845, 0xB273},+    {0x8846, 0xB276},+    {0x8847, 0xB277},+    {0x8848, 0xB278},+    {0x8849, 0xB279},+    {0x884A, 0xB27A},+    {0x884B, 0xB27B},+    {0x884C, 0xB27D},+    {0x884D, 0xB27E},+    {0x884E, 0xB27F},+    {0x884F, 0xB280},+    {0x8850, 0xB281},+    {0x8851, 0xB282},+    {0x8852, 0xB283},+    {0x8853, 0xB286},+    {0x8854, 0xB287},+    {0x8855, 0xB288},+    {0x8856, 0xB28A},+    {0x8857, 0xB28B},+    {0x8858, 0xB28C},+    {0x8859, 0xB28D},+    {0x885A, 0xB28E},+    {0x8861, 0xB28F},+    {0x8862, 0xB292},+    {0x8863, 0xB293},+    {0x8864, 0xB295},+    {0x8865, 0xB296},+    {0x8866, 0xB297},+    {0x8867, 0xB29B},+    {0x8868, 0xB29C},+    {0x8869, 0xB29D},+    {0x886A, 0xB29E},+    {0x886B, 0xB29F},+    {0x886C, 0xB2A2},+    {0x886D, 0xB2A4},+    {0x886E, 0xB2A7},+    {0x886F, 0xB2A8},+    {0x8870, 0xB2A9},+    {0x8871, 0xB2AB},+    {0x8872, 0xB2AD},+    {0x8873, 0xB2AE},+    {0x8874, 0xB2AF},+    {0x8875, 0xB2B1},+    {0x8876, 0xB2B2},+    {0x8877, 0xB2B3},+    {0x8878, 0xB2B5},+    {0x8879, 0xB2B6},+    {0x887A, 0xB2B7},+    {0x8881, 0xB2B8},+    {0x8882, 0xB2B9},+    {0x8883, 0xB2BA},+    {0x8884, 0xB2BB},+    {0x8885, 0xB2BC},+    {0x8886, 0xB2BD},+    {0x8887, 0xB2BE},+    {0x8888, 0xB2BF},+    {0x8889, 0xB2C0},+    {0x888A, 0xB2C1},+    {0x888B, 0xB2C2},+    {0x888C, 0xB2C3},+    {0x888D, 0xB2C4},+    {0x888E, 0xB2C5},+    {0x888F, 0xB2C6},+    {0x8890, 0xB2C7},+    {0x8891, 0xB2CA},+    {0x8892, 0xB2CB},+    {0x8893, 0xB2CD},+    {0x8894, 0xB2CE},+    {0x8895, 0xB2CF},+    {0x8896, 0xB2D1},+    {0x8897, 0xB2D3},+    {0x8898, 0xB2D4},+    {0x8899, 0xB2D5},+    {0x889A, 0xB2D6},+    {0x889B, 0xB2D7},+    {0x889C, 0xB2DA},+    {0x889D, 0xB2DC},+    {0x889E, 0xB2DE},+    {0x889F, 0xB2DF},+    {0x88A0, 0xB2E0},+    {0x88A1, 0xB2E1},+    {0x88A2, 0xB2E3},+    {0x88A3, 0xB2E7},+    {0x88A4, 0xB2E9},+    {0x88A5, 0xB2EA},+    {0x88A6, 0xB2F0},+    {0x88A7, 0xB2F1},+    {0x88A8, 0xB2F2},+    {0x88A9, 0xB2F6},+    {0x88AA, 0xB2FC},+    {0x88AB, 0xB2FD},+    {0x88AC, 0xB2FE},+    {0x88AD, 0xB302},+    {0x88AE, 0xB303},+    {0x88AF, 0xB305},+    {0x88B0, 0xB306},+    {0x88B1, 0xB307},+    {0x88B2, 0xB309},+    {0x88B3, 0xB30A},+    {0x88B4, 0xB30B},+    {0x88B5, 0xB30C},+    {0x88B6, 0xB30D},+    {0x88B7, 0xB30E},+    {0x88B8, 0xB30F},+    {0x88B9, 0xB312},+    {0x88BA, 0xB316},+    {0x88BB, 0xB317},+    {0x88BC, 0xB318},+    {0x88BD, 0xB319},+    {0x88BE, 0xB31A},+    {0x88BF, 0xB31B},+    {0x88C0, 0xB31D},+    {0x88C1, 0xB31E},+    {0x88C2, 0xB31F},+    {0x88C3, 0xB320},+    {0x88C4, 0xB321},+    {0x88C5, 0xB322},+    {0x88C6, 0xB323},+    {0x88C7, 0xB324},+    {0x88C8, 0xB325},+    {0x88C9, 0xB326},+    {0x88CA, 0xB327},+    {0x88CB, 0xB328},+    {0x88CC, 0xB329},+    {0x88CD, 0xB32A},+    {0x88CE, 0xB32B},+    {0x88CF, 0xB32C},+    {0x88D0, 0xB32D},+    {0x88D1, 0xB32E},+    {0x88D2, 0xB32F},+    {0x88D3, 0xB330},+    {0x88D4, 0xB331},+    {0x88D5, 0xB332},+    {0x88D6, 0xB333},+    {0x88D7, 0xB334},+    {0x88D8, 0xB335},+    {0x88D9, 0xB336},+    {0x88DA, 0xB337},+    {0x88DB, 0xB338},+    {0x88DC, 0xB339},+    {0x88DD, 0xB33A},+    {0x88DE, 0xB33B},+    {0x88DF, 0xB33C},+    {0x88E0, 0xB33D},+    {0x88E1, 0xB33E},+    {0x88E2, 0xB33F},+    {0x88E3, 0xB340},+    {0x88E4, 0xB341},+    {0x88E5, 0xB342},+    {0x88E6, 0xB343},+    {0x88E7, 0xB344},+    {0x88E8, 0xB345},+    {0x88E9, 0xB346},+    {0x88EA, 0xB347},+    {0x88EB, 0xB348},+    {0x88EC, 0xB349},+    {0x88ED, 0xB34A},+    {0x88EE, 0xB34B},+    {0x88EF, 0xB34C},+    {0x88F0, 0xB34D},+    {0x88F1, 0xB34E},+    {0x88F2, 0xB34F},+    {0x88F3, 0xB350},+    {0x88F4, 0xB351},+    {0x88F5, 0xB352},+    {0x88F6, 0xB353},+    {0x88F7, 0xB357},+    {0x88F8, 0xB359},+    {0x88F9, 0xB35A},+    {0x88FA, 0xB35D},+    {0x88FB, 0xB360},+    {0x88FC, 0xB361},+    {0x88FD, 0xB362},+    {0x88FE, 0xB363},+    {0x8941, 0xB366},+    {0x8942, 0xB368},+    {0x8943, 0xB36A},+    {0x8944, 0xB36C},+    {0x8945, 0xB36D},+    {0x8946, 0xB36F},+    {0x8947, 0xB372},+    {0x8948, 0xB373},+    {0x8949, 0xB375},+    {0x894A, 0xB376},+    {0x894B, 0xB377},+    {0x894C, 0xB379},+    {0x894D, 0xB37A},+    {0x894E, 0xB37B},+    {0x894F, 0xB37C},+    {0x8950, 0xB37D},+    {0x8951, 0xB37E},+    {0x8952, 0xB37F},+    {0x8953, 0xB382},+    {0x8954, 0xB386},+    {0x8955, 0xB387},+    {0x8956, 0xB388},+    {0x8957, 0xB389},+    {0x8958, 0xB38A},+    {0x8959, 0xB38B},+    {0x895A, 0xB38D},+    {0x8961, 0xB38E},+    {0x8962, 0xB38F},+    {0x8963, 0xB391},+    {0x8964, 0xB392},+    {0x8965, 0xB393},+    {0x8966, 0xB395},+    {0x8967, 0xB396},+    {0x8968, 0xB397},+    {0x8969, 0xB398},+    {0x896A, 0xB399},+    {0x896B, 0xB39A},+    {0x896C, 0xB39B},+    {0x896D, 0xB39C},+    {0x896E, 0xB39D},+    {0x896F, 0xB39E},+    {0x8970, 0xB39F},+    {0x8971, 0xB3A2},+    {0x8972, 0xB3A3},+    {0x8973, 0xB3A4},+    {0x8974, 0xB3A5},+    {0x8975, 0xB3A6},+    {0x8976, 0xB3A7},+    {0x8977, 0xB3A9},+    {0x8978, 0xB3AA},+    {0x8979, 0xB3AB},+    {0x897A, 0xB3AD},+    {0x8981, 0xB3AE},+    {0x8982, 0xB3AF},+    {0x8983, 0xB3B0},+    {0x8984, 0xB3B1},+    {0x8985, 0xB3B2},+    {0x8986, 0xB3B3},+    {0x8987, 0xB3B4},+    {0x8988, 0xB3B5},+    {0x8989, 0xB3B6},+    {0x898A, 0xB3B7},+    {0x898B, 0xB3B8},+    {0x898C, 0xB3B9},+    {0x898D, 0xB3BA},+    {0x898E, 0xB3BB},+    {0x898F, 0xB3BC},+    {0x8990, 0xB3BD},+    {0x8991, 0xB3BE},+    {0x8992, 0xB3BF},+    {0x8993, 0xB3C0},+    {0x8994, 0xB3C1},+    {0x8995, 0xB3C2},+    {0x8996, 0xB3C3},+    {0x8997, 0xB3C6},+    {0x8998, 0xB3C7},+    {0x8999, 0xB3C9},+    {0x899A, 0xB3CA},+    {0x899B, 0xB3CD},+    {0x899C, 0xB3CF},+    {0x899D, 0xB3D1},+    {0x899E, 0xB3D2},+    {0x899F, 0xB3D3},+    {0x89A0, 0xB3D6},+    {0x89A1, 0xB3D8},+    {0x89A2, 0xB3DA},+    {0x89A3, 0xB3DC},+    {0x89A4, 0xB3DE},+    {0x89A5, 0xB3DF},+    {0x89A6, 0xB3E1},+    {0x89A7, 0xB3E2},+    {0x89A8, 0xB3E3},+    {0x89A9, 0xB3E5},+    {0x89AA, 0xB3E6},+    {0x89AB, 0xB3E7},+    {0x89AC, 0xB3E9},+    {0x89AD, 0xB3EA},+    {0x89AE, 0xB3EB},+    {0x89AF, 0xB3EC},+    {0x89B0, 0xB3ED},+    {0x89B1, 0xB3EE},+    {0x89B2, 0xB3EF},+    {0x89B3, 0xB3F0},+    {0x89B4, 0xB3F1},+    {0x89B5, 0xB3F2},+    {0x89B6, 0xB3F3},+    {0x89B7, 0xB3F4},+    {0x89B8, 0xB3F5},+    {0x89B9, 0xB3F6},+    {0x89BA, 0xB3F7},+    {0x89BB, 0xB3F8},+    {0x89BC, 0xB3F9},+    {0x89BD, 0xB3FA},+    {0x89BE, 0xB3FB},+    {0x89BF, 0xB3FD},+    {0x89C0, 0xB3FE},+    {0x89C1, 0xB3FF},+    {0x89C2, 0xB400},+    {0x89C3, 0xB401},+    {0x89C4, 0xB402},+    {0x89C5, 0xB403},+    {0x89C6, 0xB404},+    {0x89C7, 0xB405},+    {0x89C8, 0xB406},+    {0x89C9, 0xB407},+    {0x89CA, 0xB408},+    {0x89CB, 0xB409},+    {0x89CC, 0xB40A},+    {0x89CD, 0xB40B},+    {0x89CE, 0xB40C},+    {0x89CF, 0xB40D},+    {0x89D0, 0xB40E},+    {0x89D1, 0xB40F},+    {0x89D2, 0xB411},+    {0x89D3, 0xB412},+    {0x89D4, 0xB413},+    {0x89D5, 0xB414},+    {0x89D6, 0xB415},+    {0x89D7, 0xB416},+    {0x89D8, 0xB417},+    {0x89D9, 0xB419},+    {0x89DA, 0xB41A},+    {0x89DB, 0xB41B},+    {0x89DC, 0xB41D},+    {0x89DD, 0xB41E},+    {0x89DE, 0xB41F},+    {0x89DF, 0xB421},+    {0x89E0, 0xB422},+    {0x89E1, 0xB423},+    {0x89E2, 0xB424},+    {0x89E3, 0xB425},+    {0x89E4, 0xB426},+    {0x89E5, 0xB427},+    {0x89E6, 0xB42A},+    {0x89E7, 0xB42C},+    {0x89E8, 0xB42D},+    {0x89E9, 0xB42E},+    {0x89EA, 0xB42F},+    {0x89EB, 0xB430},+    {0x89EC, 0xB431},+    {0x89ED, 0xB432},+    {0x89EE, 0xB433},+    {0x89EF, 0xB435},+    {0x89F0, 0xB436},+    {0x89F1, 0xB437},+    {0x89F2, 0xB438},+    {0x89F3, 0xB439},+    {0x89F4, 0xB43A},+    {0x89F5, 0xB43B},+    {0x89F6, 0xB43C},+    {0x89F7, 0xB43D},+    {0x89F8, 0xB43E},+    {0x89F9, 0xB43F},+    {0x89FA, 0xB440},+    {0x89FB, 0xB441},+    {0x89FC, 0xB442},+    {0x89FD, 0xB443},+    {0x89FE, 0xB444},+    {0x8A41, 0xB445},+    {0x8A42, 0xB446},+    {0x8A43, 0xB447},+    {0x8A44, 0xB448},+    {0x8A45, 0xB449},+    {0x8A46, 0xB44A},+    {0x8A47, 0xB44B},+    {0x8A48, 0xB44C},+    {0x8A49, 0xB44D},+    {0x8A4A, 0xB44E},+    {0x8A4B, 0xB44F},+    {0x8A4C, 0xB452},+    {0x8A4D, 0xB453},+    {0x8A4E, 0xB455},+    {0x8A4F, 0xB456},+    {0x8A50, 0xB457},+    {0x8A51, 0xB459},+    {0x8A52, 0xB45A},+    {0x8A53, 0xB45B},+    {0x8A54, 0xB45C},+    {0x8A55, 0xB45D},+    {0x8A56, 0xB45E},+    {0x8A57, 0xB45F},+    {0x8A58, 0xB462},+    {0x8A59, 0xB464},+    {0x8A5A, 0xB466},+    {0x8A61, 0xB467},+    {0x8A62, 0xB468},+    {0x8A63, 0xB469},+    {0x8A64, 0xB46A},+    {0x8A65, 0xB46B},+    {0x8A66, 0xB46D},+    {0x8A67, 0xB46E},+    {0x8A68, 0xB46F},+    {0x8A69, 0xB470},+    {0x8A6A, 0xB471},+    {0x8A6B, 0xB472},+    {0x8A6C, 0xB473},+    {0x8A6D, 0xB474},+    {0x8A6E, 0xB475},+    {0x8A6F, 0xB476},+    {0x8A70, 0xB477},+    {0x8A71, 0xB478},+    {0x8A72, 0xB479},+    {0x8A73, 0xB47A},+    {0x8A74, 0xB47B},+    {0x8A75, 0xB47C},+    {0x8A76, 0xB47D},+    {0x8A77, 0xB47E},+    {0x8A78, 0xB47F},+    {0x8A79, 0xB481},+    {0x8A7A, 0xB482},+    {0x8A81, 0xB483},+    {0x8A82, 0xB484},+    {0x8A83, 0xB485},+    {0x8A84, 0xB486},+    {0x8A85, 0xB487},+    {0x8A86, 0xB489},+    {0x8A87, 0xB48A},+    {0x8A88, 0xB48B},+    {0x8A89, 0xB48C},+    {0x8A8A, 0xB48D},+    {0x8A8B, 0xB48E},+    {0x8A8C, 0xB48F},+    {0x8A8D, 0xB490},+    {0x8A8E, 0xB491},+    {0x8A8F, 0xB492},+    {0x8A90, 0xB493},+    {0x8A91, 0xB494},+    {0x8A92, 0xB495},+    {0x8A93, 0xB496},+    {0x8A94, 0xB497},+    {0x8A95, 0xB498},+    {0x8A96, 0xB499},+    {0x8A97, 0xB49A},+    {0x8A98, 0xB49B},+    {0x8A99, 0xB49C},+    {0x8A9A, 0xB49E},+    {0x8A9B, 0xB49F},+    {0x8A9C, 0xB4A0},+    {0x8A9D, 0xB4A1},+    {0x8A9E, 0xB4A2},+    {0x8A9F, 0xB4A3},+    {0x8AA0, 0xB4A5},+    {0x8AA1, 0xB4A6},+    {0x8AA2, 0xB4A7},+    {0x8AA3, 0xB4A9},+    {0x8AA4, 0xB4AA},+    {0x8AA5, 0xB4AB},+    {0x8AA6, 0xB4AD},+    {0x8AA7, 0xB4AE},+    {0x8AA8, 0xB4AF},+    {0x8AA9, 0xB4B0},+    {0x8AAA, 0xB4B1},+    {0x8AAB, 0xB4B2},+    {0x8AAC, 0xB4B3},+    {0x8AAD, 0xB4B4},+    {0x8AAE, 0xB4B6},+    {0x8AAF, 0xB4B8},+    {0x8AB0, 0xB4BA},+    {0x8AB1, 0xB4BB},+    {0x8AB2, 0xB4BC},+    {0x8AB3, 0xB4BD},+    {0x8AB4, 0xB4BE},+    {0x8AB5, 0xB4BF},+    {0x8AB6, 0xB4C1},+    {0x8AB7, 0xB4C2},+    {0x8AB8, 0xB4C3},+    {0x8AB9, 0xB4C5},+    {0x8ABA, 0xB4C6},+    {0x8ABB, 0xB4C7},+    {0x8ABC, 0xB4C9},+    {0x8ABD, 0xB4CA},+    {0x8ABE, 0xB4CB},+    {0x8ABF, 0xB4CC},+    {0x8AC0, 0xB4CD},+    {0x8AC1, 0xB4CE},+    {0x8AC2, 0xB4CF},+    {0x8AC3, 0xB4D1},+    {0x8AC4, 0xB4D2},+    {0x8AC5, 0xB4D3},+    {0x8AC6, 0xB4D4},+    {0x8AC7, 0xB4D6},+    {0x8AC8, 0xB4D7},+    {0x8AC9, 0xB4D8},+    {0x8ACA, 0xB4D9},+    {0x8ACB, 0xB4DA},+    {0x8ACC, 0xB4DB},+    {0x8ACD, 0xB4DE},+    {0x8ACE, 0xB4DF},+    {0x8ACF, 0xB4E1},+    {0x8AD0, 0xB4E2},+    {0x8AD1, 0xB4E5},+    {0x8AD2, 0xB4E7},+    {0x8AD3, 0xB4E8},+    {0x8AD4, 0xB4E9},+    {0x8AD5, 0xB4EA},+    {0x8AD6, 0xB4EB},+    {0x8AD7, 0xB4EE},+    {0x8AD8, 0xB4F0},+    {0x8AD9, 0xB4F2},+    {0x8ADA, 0xB4F3},+    {0x8ADB, 0xB4F4},+    {0x8ADC, 0xB4F5},+    {0x8ADD, 0xB4F6},+    {0x8ADE, 0xB4F7},+    {0x8ADF, 0xB4F9},+    {0x8AE0, 0xB4FA},+    {0x8AE1, 0xB4FB},+    {0x8AE2, 0xB4FC},+    {0x8AE3, 0xB4FD},+    {0x8AE4, 0xB4FE},+    {0x8AE5, 0xB4FF},+    {0x8AE6, 0xB500},+    {0x8AE7, 0xB501},+    {0x8AE8, 0xB502},+    {0x8AE9, 0xB503},+    {0x8AEA, 0xB504},+    {0x8AEB, 0xB505},+    {0x8AEC, 0xB506},+    {0x8AED, 0xB507},+    {0x8AEE, 0xB508},+    {0x8AEF, 0xB509},+    {0x8AF0, 0xB50A},+    {0x8AF1, 0xB50B},+    {0x8AF2, 0xB50C},+    {0x8AF3, 0xB50D},+    {0x8AF4, 0xB50E},+    {0x8AF5, 0xB50F},+    {0x8AF6, 0xB510},+    {0x8AF7, 0xB511},+    {0x8AF8, 0xB512},+    {0x8AF9, 0xB513},+    {0x8AFA, 0xB516},+    {0x8AFB, 0xB517},+    {0x8AFC, 0xB519},+    {0x8AFD, 0xB51A},+    {0x8AFE, 0xB51D},+    {0x8B41, 0xB51E},+    {0x8B42, 0xB51F},+    {0x8B43, 0xB520},+    {0x8B44, 0xB521},+    {0x8B45, 0xB522},+    {0x8B46, 0xB523},+    {0x8B47, 0xB526},+    {0x8B48, 0xB52B},+    {0x8B49, 0xB52C},+    {0x8B4A, 0xB52D},+    {0x8B4B, 0xB52E},+    {0x8B4C, 0xB52F},+    {0x8B4D, 0xB532},+    {0x8B4E, 0xB533},+    {0x8B4F, 0xB535},+    {0x8B50, 0xB536},+    {0x8B51, 0xB537},+    {0x8B52, 0xB539},+    {0x8B53, 0xB53A},+    {0x8B54, 0xB53B},+    {0x8B55, 0xB53C},+    {0x8B56, 0xB53D},+    {0x8B57, 0xB53E},+    {0x8B58, 0xB53F},+    {0x8B59, 0xB542},+    {0x8B5A, 0xB546},+    {0x8B61, 0xB547},+    {0x8B62, 0xB548},+    {0x8B63, 0xB549},+    {0x8B64, 0xB54A},+    {0x8B65, 0xB54E},+    {0x8B66, 0xB54F},+    {0x8B67, 0xB551},+    {0x8B68, 0xB552},+    {0x8B69, 0xB553},+    {0x8B6A, 0xB555},+    {0x8B6B, 0xB556},+    {0x8B6C, 0xB557},+    {0x8B6D, 0xB558},+    {0x8B6E, 0xB559},+    {0x8B6F, 0xB55A},+    {0x8B70, 0xB55B},+    {0x8B71, 0xB55E},+    {0x8B72, 0xB562},+    {0x8B73, 0xB563},+    {0x8B74, 0xB564},+    {0x8B75, 0xB565},+    {0x8B76, 0xB566},+    {0x8B77, 0xB567},+    {0x8B78, 0xB568},+    {0x8B79, 0xB569},+    {0x8B7A, 0xB56A},+    {0x8B81, 0xB56B},+    {0x8B82, 0xB56C},+    {0x8B83, 0xB56D},+    {0x8B84, 0xB56E},+    {0x8B85, 0xB56F},+    {0x8B86, 0xB570},+    {0x8B87, 0xB571},+    {0x8B88, 0xB572},+    {0x8B89, 0xB573},+    {0x8B8A, 0xB574},+    {0x8B8B, 0xB575},+    {0x8B8C, 0xB576},+    {0x8B8D, 0xB577},+    {0x8B8E, 0xB578},+    {0x8B8F, 0xB579},+    {0x8B90, 0xB57A},+    {0x8B91, 0xB57B},+    {0x8B92, 0xB57C},+    {0x8B93, 0xB57D},+    {0x8B94, 0xB57E},+    {0x8B95, 0xB57F},+    {0x8B96, 0xB580},+    {0x8B97, 0xB581},+    {0x8B98, 0xB582},+    {0x8B99, 0xB583},+    {0x8B9A, 0xB584},+    {0x8B9B, 0xB585},+    {0x8B9C, 0xB586},+    {0x8B9D, 0xB587},+    {0x8B9E, 0xB588},+    {0x8B9F, 0xB589},+    {0x8BA0, 0xB58A},+    {0x8BA1, 0xB58B},+    {0x8BA2, 0xB58C},+    {0x8BA3, 0xB58D},+    {0x8BA4, 0xB58E},+    {0x8BA5, 0xB58F},+    {0x8BA6, 0xB590},+    {0x8BA7, 0xB591},+    {0x8BA8, 0xB592},+    {0x8BA9, 0xB593},+    {0x8BAA, 0xB594},+    {0x8BAB, 0xB595},+    {0x8BAC, 0xB596},+    {0x8BAD, 0xB597},+    {0x8BAE, 0xB598},+    {0x8BAF, 0xB599},+    {0x8BB0, 0xB59A},+    {0x8BB1, 0xB59B},+    {0x8BB2, 0xB59C},+    {0x8BB3, 0xB59D},+    {0x8BB4, 0xB59E},+    {0x8BB5, 0xB59F},+    {0x8BB6, 0xB5A2},+    {0x8BB7, 0xB5A3},+    {0x8BB8, 0xB5A5},+    {0x8BB9, 0xB5A6},+    {0x8BBA, 0xB5A7},+    {0x8BBB, 0xB5A9},+    {0x8BBC, 0xB5AC},+    {0x8BBD, 0xB5AD},+    {0x8BBE, 0xB5AE},+    {0x8BBF, 0xB5AF},+    {0x8BC0, 0xB5B2},+    {0x8BC1, 0xB5B6},+    {0x8BC2, 0xB5B7},+    {0x8BC3, 0xB5B8},+    {0x8BC4, 0xB5B9},+    {0x8BC5, 0xB5BA},+    {0x8BC6, 0xB5BE},+    {0x8BC7, 0xB5BF},+    {0x8BC8, 0xB5C1},+    {0x8BC9, 0xB5C2},+    {0x8BCA, 0xB5C3},+    {0x8BCB, 0xB5C5},+    {0x8BCC, 0xB5C6},+    {0x8BCD, 0xB5C7},+    {0x8BCE, 0xB5C8},+    {0x8BCF, 0xB5C9},+    {0x8BD0, 0xB5CA},+    {0x8BD1, 0xB5CB},+    {0x8BD2, 0xB5CE},+    {0x8BD3, 0xB5D2},+    {0x8BD4, 0xB5D3},+    {0x8BD5, 0xB5D4},+    {0x8BD6, 0xB5D5},+    {0x8BD7, 0xB5D6},+    {0x8BD8, 0xB5D7},+    {0x8BD9, 0xB5D9},+    {0x8BDA, 0xB5DA},+    {0x8BDB, 0xB5DB},+    {0x8BDC, 0xB5DC},+    {0x8BDD, 0xB5DD},+    {0x8BDE, 0xB5DE},+    {0x8BDF, 0xB5DF},+    {0x8BE0, 0xB5E0},+    {0x8BE1, 0xB5E1},+    {0x8BE2, 0xB5E2},+    {0x8BE3, 0xB5E3},+    {0x8BE4, 0xB5E4},+    {0x8BE5, 0xB5E5},+    {0x8BE6, 0xB5E6},+    {0x8BE7, 0xB5E7},+    {0x8BE8, 0xB5E8},+    {0x8BE9, 0xB5E9},+    {0x8BEA, 0xB5EA},+    {0x8BEB, 0xB5EB},+    {0x8BEC, 0xB5ED},+    {0x8BED, 0xB5EE},+    {0x8BEE, 0xB5EF},+    {0x8BEF, 0xB5F0},+    {0x8BF0, 0xB5F1},+    {0x8BF1, 0xB5F2},+    {0x8BF2, 0xB5F3},+    {0x8BF3, 0xB5F4},+    {0x8BF4, 0xB5F5},+    {0x8BF5, 0xB5F6},+    {0x8BF6, 0xB5F7},+    {0x8BF7, 0xB5F8},+    {0x8BF8, 0xB5F9},+    {0x8BF9, 0xB5FA},+    {0x8BFA, 0xB5FB},+    {0x8BFB, 0xB5FC},+    {0x8BFC, 0xB5FD},+    {0x8BFD, 0xB5FE},+    {0x8BFE, 0xB5FF},+    {0x8C41, 0xB600},+    {0x8C42, 0xB601},+    {0x8C43, 0xB602},+    {0x8C44, 0xB603},+    {0x8C45, 0xB604},+    {0x8C46, 0xB605},+    {0x8C47, 0xB606},+    {0x8C48, 0xB607},+    {0x8C49, 0xB608},+    {0x8C4A, 0xB609},+    {0x8C4B, 0xB60A},+    {0x8C4C, 0xB60B},+    {0x8C4D, 0xB60C},+    {0x8C4E, 0xB60D},+    {0x8C4F, 0xB60E},+    {0x8C50, 0xB60F},+    {0x8C51, 0xB612},+    {0x8C52, 0xB613},+    {0x8C53, 0xB615},+    {0x8C54, 0xB616},+    {0x8C55, 0xB617},+    {0x8C56, 0xB619},+    {0x8C57, 0xB61A},+    {0x8C58, 0xB61B},+    {0x8C59, 0xB61C},+    {0x8C5A, 0xB61D},+    {0x8C61, 0xB61E},+    {0x8C62, 0xB61F},+    {0x8C63, 0xB620},+    {0x8C64, 0xB621},+    {0x8C65, 0xB622},+    {0x8C66, 0xB623},+    {0x8C67, 0xB624},+    {0x8C68, 0xB626},+    {0x8C69, 0xB627},+    {0x8C6A, 0xB628},+    {0x8C6B, 0xB629},+    {0x8C6C, 0xB62A},+    {0x8C6D, 0xB62B},+    {0x8C6E, 0xB62D},+    {0x8C6F, 0xB62E},+    {0x8C70, 0xB62F},+    {0x8C71, 0xB630},+    {0x8C72, 0xB631},+    {0x8C73, 0xB632},+    {0x8C74, 0xB633},+    {0x8C75, 0xB635},+    {0x8C76, 0xB636},+    {0x8C77, 0xB637},+    {0x8C78, 0xB638},+    {0x8C79, 0xB639},+    {0x8C7A, 0xB63A},+    {0x8C81, 0xB63B},+    {0x8C82, 0xB63C},+    {0x8C83, 0xB63D},+    {0x8C84, 0xB63E},+    {0x8C85, 0xB63F},+    {0x8C86, 0xB640},+    {0x8C87, 0xB641},+    {0x8C88, 0xB642},+    {0x8C89, 0xB643},+    {0x8C8A, 0xB644},+    {0x8C8B, 0xB645},+    {0x8C8C, 0xB646},+    {0x8C8D, 0xB647},+    {0x8C8E, 0xB649},+    {0x8C8F, 0xB64A},+    {0x8C90, 0xB64B},+    {0x8C91, 0xB64C},+    {0x8C92, 0xB64D},+    {0x8C93, 0xB64E},+    {0x8C94, 0xB64F},+    {0x8C95, 0xB650},+    {0x8C96, 0xB651},+    {0x8C97, 0xB652},+    {0x8C98, 0xB653},+    {0x8C99, 0xB654},+    {0x8C9A, 0xB655},+    {0x8C9B, 0xB656},+    {0x8C9C, 0xB657},+    {0x8C9D, 0xB658},+    {0x8C9E, 0xB659},+    {0x8C9F, 0xB65A},+    {0x8CA0, 0xB65B},+    {0x8CA1, 0xB65C},+    {0x8CA2, 0xB65D},+    {0x8CA3, 0xB65E},+    {0x8CA4, 0xB65F},+    {0x8CA5, 0xB660},+    {0x8CA6, 0xB661},+    {0x8CA7, 0xB662},+    {0x8CA8, 0xB663},+    {0x8CA9, 0xB665},+    {0x8CAA, 0xB666},+    {0x8CAB, 0xB667},+    {0x8CAC, 0xB669},+    {0x8CAD, 0xB66A},+    {0x8CAE, 0xB66B},+    {0x8CAF, 0xB66C},+    {0x8CB0, 0xB66D},+    {0x8CB1, 0xB66E},+    {0x8CB2, 0xB66F},+    {0x8CB3, 0xB670},+    {0x8CB4, 0xB671},+    {0x8CB5, 0xB672},+    {0x8CB6, 0xB673},+    {0x8CB7, 0xB674},+    {0x8CB8, 0xB675},+    {0x8CB9, 0xB676},+    {0x8CBA, 0xB677},+    {0x8CBB, 0xB678},+    {0x8CBC, 0xB679},+    {0x8CBD, 0xB67A},+    {0x8CBE, 0xB67B},+    {0x8CBF, 0xB67C},+    {0x8CC0, 0xB67D},+    {0x8CC1, 0xB67E},+    {0x8CC2, 0xB67F},+    {0x8CC3, 0xB680},+    {0x8CC4, 0xB681},+    {0x8CC5, 0xB682},+    {0x8CC6, 0xB683},+    {0x8CC7, 0xB684},+    {0x8CC8, 0xB685},+    {0x8CC9, 0xB686},+    {0x8CCA, 0xB687},+    {0x8CCB, 0xB688},+    {0x8CCC, 0xB689},+    {0x8CCD, 0xB68A},+    {0x8CCE, 0xB68B},+    {0x8CCF, 0xB68C},+    {0x8CD0, 0xB68D},+    {0x8CD1, 0xB68E},+    {0x8CD2, 0xB68F},+    {0x8CD3, 0xB690},+    {0x8CD4, 0xB691},+    {0x8CD5, 0xB692},+    {0x8CD6, 0xB693},+    {0x8CD7, 0xB694},+    {0x8CD8, 0xB695},+    {0x8CD9, 0xB696},+    {0x8CDA, 0xB697},+    {0x8CDB, 0xB698},+    {0x8CDC, 0xB699},+    {0x8CDD, 0xB69A},+    {0x8CDE, 0xB69B},+    {0x8CDF, 0xB69E},+    {0x8CE0, 0xB69F},+    {0x8CE1, 0xB6A1},+    {0x8CE2, 0xB6A2},+    {0x8CE3, 0xB6A3},+    {0x8CE4, 0xB6A5},+    {0x8CE5, 0xB6A6},+    {0x8CE6, 0xB6A7},+    {0x8CE7, 0xB6A8},+    {0x8CE8, 0xB6A9},+    {0x8CE9, 0xB6AA},+    {0x8CEA, 0xB6AD},+    {0x8CEB, 0xB6AE},+    {0x8CEC, 0xB6AF},+    {0x8CED, 0xB6B0},+    {0x8CEE, 0xB6B2},+    {0x8CEF, 0xB6B3},+    {0x8CF0, 0xB6B4},+    {0x8CF1, 0xB6B5},+    {0x8CF2, 0xB6B6},+    {0x8CF3, 0xB6B7},+    {0x8CF4, 0xB6B8},+    {0x8CF5, 0xB6B9},+    {0x8CF6, 0xB6BA},+    {0x8CF7, 0xB6BB},+    {0x8CF8, 0xB6BC},+    {0x8CF9, 0xB6BD},+    {0x8CFA, 0xB6BE},+    {0x8CFB, 0xB6BF},+    {0x8CFC, 0xB6C0},+    {0x8CFD, 0xB6C1},+    {0x8CFE, 0xB6C2},+    {0x8D41, 0xB6C3},+    {0x8D42, 0xB6C4},+    {0x8D43, 0xB6C5},+    {0x8D44, 0xB6C6},+    {0x8D45, 0xB6C7},+    {0x8D46, 0xB6C8},+    {0x8D47, 0xB6C9},+    {0x8D48, 0xB6CA},+    {0x8D49, 0xB6CB},+    {0x8D4A, 0xB6CC},+    {0x8D4B, 0xB6CD},+    {0x8D4C, 0xB6CE},+    {0x8D4D, 0xB6CF},+    {0x8D4E, 0xB6D0},+    {0x8D4F, 0xB6D1},+    {0x8D50, 0xB6D2},+    {0x8D51, 0xB6D3},+    {0x8D52, 0xB6D5},+    {0x8D53, 0xB6D6},+    {0x8D54, 0xB6D7},+    {0x8D55, 0xB6D8},+    {0x8D56, 0xB6D9},+    {0x8D57, 0xB6DA},+    {0x8D58, 0xB6DB},+    {0x8D59, 0xB6DC},+    {0x8D5A, 0xB6DD},+    {0x8D61, 0xB6DE},+    {0x8D62, 0xB6DF},+    {0x8D63, 0xB6E0},+    {0x8D64, 0xB6E1},+    {0x8D65, 0xB6E2},+    {0x8D66, 0xB6E3},+    {0x8D67, 0xB6E4},+    {0x8D68, 0xB6E5},+    {0x8D69, 0xB6E6},+    {0x8D6A, 0xB6E7},+    {0x8D6B, 0xB6E8},+    {0x8D6C, 0xB6E9},+    {0x8D6D, 0xB6EA},+    {0x8D6E, 0xB6EB},+    {0x8D6F, 0xB6EC},+    {0x8D70, 0xB6ED},+    {0x8D71, 0xB6EE},+    {0x8D72, 0xB6EF},+    {0x8D73, 0xB6F1},+    {0x8D74, 0xB6F2},+    {0x8D75, 0xB6F3},+    {0x8D76, 0xB6F5},+    {0x8D77, 0xB6F6},+    {0x8D78, 0xB6F7},+    {0x8D79, 0xB6F9},+    {0x8D7A, 0xB6FA},+    {0x8D81, 0xB6FB},+    {0x8D82, 0xB6FC},+    {0x8D83, 0xB6FD},+    {0x8D84, 0xB6FE},+    {0x8D85, 0xB6FF},+    {0x8D86, 0xB702},+    {0x8D87, 0xB703},+    {0x8D88, 0xB704},+    {0x8D89, 0xB706},+    {0x8D8A, 0xB707},+    {0x8D8B, 0xB708},+    {0x8D8C, 0xB709},+    {0x8D8D, 0xB70A},+    {0x8D8E, 0xB70B},+    {0x8D8F, 0xB70C},+    {0x8D90, 0xB70D},+    {0x8D91, 0xB70E},+    {0x8D92, 0xB70F},+    {0x8D93, 0xB710},+    {0x8D94, 0xB711},+    {0x8D95, 0xB712},+    {0x8D96, 0xB713},+    {0x8D97, 0xB714},+    {0x8D98, 0xB715},+    {0x8D99, 0xB716},+    {0x8D9A, 0xB717},+    {0x8D9B, 0xB718},+    {0x8D9C, 0xB719},+    {0x8D9D, 0xB71A},+    {0x8D9E, 0xB71B},+    {0x8D9F, 0xB71C},+    {0x8DA0, 0xB71D},+    {0x8DA1, 0xB71E},+    {0x8DA2, 0xB71F},+    {0x8DA3, 0xB720},+    {0x8DA4, 0xB721},+    {0x8DA5, 0xB722},+    {0x8DA6, 0xB723},+    {0x8DA7, 0xB724},+    {0x8DA8, 0xB725},+    {0x8DA9, 0xB726},+    {0x8DAA, 0xB727},+    {0x8DAB, 0xB72A},+    {0x8DAC, 0xB72B},+    {0x8DAD, 0xB72D},+    {0x8DAE, 0xB72E},+    {0x8DAF, 0xB731},+    {0x8DB0, 0xB732},+    {0x8DB1, 0xB733},+    {0x8DB2, 0xB734},+    {0x8DB3, 0xB735},+    {0x8DB4, 0xB736},+    {0x8DB5, 0xB737},+    {0x8DB6, 0xB73A},+    {0x8DB7, 0xB73C},+    {0x8DB8, 0xB73D},+    {0x8DB9, 0xB73E},+    {0x8DBA, 0xB73F},+    {0x8DBB, 0xB740},+    {0x8DBC, 0xB741},+    {0x8DBD, 0xB742},+    {0x8DBE, 0xB743},+    {0x8DBF, 0xB745},+    {0x8DC0, 0xB746},+    {0x8DC1, 0xB747},+    {0x8DC2, 0xB749},+    {0x8DC3, 0xB74A},+    {0x8DC4, 0xB74B},+    {0x8DC5, 0xB74D},+    {0x8DC6, 0xB74E},+    {0x8DC7, 0xB74F},+    {0x8DC8, 0xB750},+    {0x8DC9, 0xB751},+    {0x8DCA, 0xB752},+    {0x8DCB, 0xB753},+    {0x8DCC, 0xB756},+    {0x8DCD, 0xB757},+    {0x8DCE, 0xB758},+    {0x8DCF, 0xB759},+    {0x8DD0, 0xB75A},+    {0x8DD1, 0xB75B},+    {0x8DD2, 0xB75C},+    {0x8DD3, 0xB75D},+    {0x8DD4, 0xB75E},+    {0x8DD5, 0xB75F},+    {0x8DD6, 0xB761},+    {0x8DD7, 0xB762},+    {0x8DD8, 0xB763},+    {0x8DD9, 0xB765},+    {0x8DDA, 0xB766},+    {0x8DDB, 0xB767},+    {0x8DDC, 0xB769},+    {0x8DDD, 0xB76A},+    {0x8DDE, 0xB76B},+    {0x8DDF, 0xB76C},+    {0x8DE0, 0xB76D},+    {0x8DE1, 0xB76E},+    {0x8DE2, 0xB76F},+    {0x8DE3, 0xB772},+    {0x8DE4, 0xB774},+    {0x8DE5, 0xB776},+    {0x8DE6, 0xB777},+    {0x8DE7, 0xB778},+    {0x8DE8, 0xB779},+    {0x8DE9, 0xB77A},+    {0x8DEA, 0xB77B},+    {0x8DEB, 0xB77E},+    {0x8DEC, 0xB77F},+    {0x8DED, 0xB781},+    {0x8DEE, 0xB782},+    {0x8DEF, 0xB783},+    {0x8DF0, 0xB785},+    {0x8DF1, 0xB786},+    {0x8DF2, 0xB787},+    {0x8DF3, 0xB788},+    {0x8DF4, 0xB789},+    {0x8DF5, 0xB78A},+    {0x8DF6, 0xB78B},+    {0x8DF7, 0xB78E},+    {0x8DF8, 0xB793},+    {0x8DF9, 0xB794},+    {0x8DFA, 0xB795},+    {0x8DFB, 0xB79A},+    {0x8DFC, 0xB79B},+    {0x8DFD, 0xB79D},+    {0x8DFE, 0xB79E},+    {0x8E41, 0xB79F},+    {0x8E42, 0xB7A1},+    {0x8E43, 0xB7A2},+    {0x8E44, 0xB7A3},+    {0x8E45, 0xB7A4},+    {0x8E46, 0xB7A5},+    {0x8E47, 0xB7A6},+    {0x8E48, 0xB7A7},+    {0x8E49, 0xB7AA},+    {0x8E4A, 0xB7AE},+    {0x8E4B, 0xB7AF},+    {0x8E4C, 0xB7B0},+    {0x8E4D, 0xB7B1},+    {0x8E4E, 0xB7B2},+    {0x8E4F, 0xB7B3},+    {0x8E50, 0xB7B6},+    {0x8E51, 0xB7B7},+    {0x8E52, 0xB7B9},+    {0x8E53, 0xB7BA},+    {0x8E54, 0xB7BB},+    {0x8E55, 0xB7BC},+    {0x8E56, 0xB7BD},+    {0x8E57, 0xB7BE},+    {0x8E58, 0xB7BF},+    {0x8E59, 0xB7C0},+    {0x8E5A, 0xB7C1},+    {0x8E61, 0xB7C2},+    {0x8E62, 0xB7C3},+    {0x8E63, 0xB7C4},+    {0x8E64, 0xB7C5},+    {0x8E65, 0xB7C6},+    {0x8E66, 0xB7C8},+    {0x8E67, 0xB7CA},+    {0x8E68, 0xB7CB},+    {0x8E69, 0xB7CC},+    {0x8E6A, 0xB7CD},+    {0x8E6B, 0xB7CE},+    {0x8E6C, 0xB7CF},+    {0x8E6D, 0xB7D0},+    {0x8E6E, 0xB7D1},+    {0x8E6F, 0xB7D2},+    {0x8E70, 0xB7D3},+    {0x8E71, 0xB7D4},+    {0x8E72, 0xB7D5},+    {0x8E73, 0xB7D6},+    {0x8E74, 0xB7D7},+    {0x8E75, 0xB7D8},+    {0x8E76, 0xB7D9},+    {0x8E77, 0xB7DA},+    {0x8E78, 0xB7DB},+    {0x8E79, 0xB7DC},+    {0x8E7A, 0xB7DD},+    {0x8E81, 0xB7DE},+    {0x8E82, 0xB7DF},+    {0x8E83, 0xB7E0},+    {0x8E84, 0xB7E1},+    {0x8E85, 0xB7E2},+    {0x8E86, 0xB7E3},+    {0x8E87, 0xB7E4},+    {0x8E88, 0xB7E5},+    {0x8E89, 0xB7E6},+    {0x8E8A, 0xB7E7},+    {0x8E8B, 0xB7E8},+    {0x8E8C, 0xB7E9},+    {0x8E8D, 0xB7EA},+    {0x8E8E, 0xB7EB},+    {0x8E8F, 0xB7EE},+    {0x8E90, 0xB7EF},+    {0x8E91, 0xB7F1},+    {0x8E92, 0xB7F2},+    {0x8E93, 0xB7F3},+    {0x8E94, 0xB7F5},+    {0x8E95, 0xB7F6},+    {0x8E96, 0xB7F7},+    {0x8E97, 0xB7F8},+    {0x8E98, 0xB7F9},+    {0x8E99, 0xB7FA},+    {0x8E9A, 0xB7FB},+    {0x8E9B, 0xB7FE},+    {0x8E9C, 0xB802},+    {0x8E9D, 0xB803},+    {0x8E9E, 0xB804},+    {0x8E9F, 0xB805},+    {0x8EA0, 0xB806},+    {0x8EA1, 0xB80A},+    {0x8EA2, 0xB80B},+    {0x8EA3, 0xB80D},+    {0x8EA4, 0xB80E},+    {0x8EA5, 0xB80F},+    {0x8EA6, 0xB811},+    {0x8EA7, 0xB812},+    {0x8EA8, 0xB813},+    {0x8EA9, 0xB814},+    {0x8EAA, 0xB815},+    {0x8EAB, 0xB816},+    {0x8EAC, 0xB817},+    {0x8EAD, 0xB81A},+    {0x8EAE, 0xB81C},+    {0x8EAF, 0xB81E},+    {0x8EB0, 0xB81F},+    {0x8EB1, 0xB820},+    {0x8EB2, 0xB821},+    {0x8EB3, 0xB822},+    {0x8EB4, 0xB823},+    {0x8EB5, 0xB826},+    {0x8EB6, 0xB827},+    {0x8EB7, 0xB829},+    {0x8EB8, 0xB82A},+    {0x8EB9, 0xB82B},+    {0x8EBA, 0xB82D},+    {0x8EBB, 0xB82E},+    {0x8EBC, 0xB82F},+    {0x8EBD, 0xB830},+    {0x8EBE, 0xB831},+    {0x8EBF, 0xB832},+    {0x8EC0, 0xB833},+    {0x8EC1, 0xB836},+    {0x8EC2, 0xB83A},+    {0x8EC3, 0xB83B},+    {0x8EC4, 0xB83C},+    {0x8EC5, 0xB83D},+    {0x8EC6, 0xB83E},+    {0x8EC7, 0xB83F},+    {0x8EC8, 0xB841},+    {0x8EC9, 0xB842},+    {0x8ECA, 0xB843},+    {0x8ECB, 0xB845},+    {0x8ECC, 0xB846},+    {0x8ECD, 0xB847},+    {0x8ECE, 0xB848},+    {0x8ECF, 0xB849},+    {0x8ED0, 0xB84A},+    {0x8ED1, 0xB84B},+    {0x8ED2, 0xB84C},+    {0x8ED3, 0xB84D},+    {0x8ED4, 0xB84E},+    {0x8ED5, 0xB84F},+    {0x8ED6, 0xB850},+    {0x8ED7, 0xB852},+    {0x8ED8, 0xB854},+    {0x8ED9, 0xB855},+    {0x8EDA, 0xB856},+    {0x8EDB, 0xB857},+    {0x8EDC, 0xB858},+    {0x8EDD, 0xB859},+    {0x8EDE, 0xB85A},+    {0x8EDF, 0xB85B},+    {0x8EE0, 0xB85E},+    {0x8EE1, 0xB85F},+    {0x8EE2, 0xB861},+    {0x8EE3, 0xB862},+    {0x8EE4, 0xB863},+    {0x8EE5, 0xB865},+    {0x8EE6, 0xB866},+    {0x8EE7, 0xB867},+    {0x8EE8, 0xB868},+    {0x8EE9, 0xB869},+    {0x8EEA, 0xB86A},+    {0x8EEB, 0xB86B},+    {0x8EEC, 0xB86E},+    {0x8EED, 0xB870},+    {0x8EEE, 0xB872},+    {0x8EEF, 0xB873},+    {0x8EF0, 0xB874},+    {0x8EF1, 0xB875},+    {0x8EF2, 0xB876},+    {0x8EF3, 0xB877},+    {0x8EF4, 0xB879},+    {0x8EF5, 0xB87A},+    {0x8EF6, 0xB87B},+    {0x8EF7, 0xB87D},+    {0x8EF8, 0xB87E},+    {0x8EF9, 0xB87F},+    {0x8EFA, 0xB880},+    {0x8EFB, 0xB881},+    {0x8EFC, 0xB882},+    {0x8EFD, 0xB883},+    {0x8EFE, 0xB884},+    {0x8F41, 0xB885},+    {0x8F42, 0xB886},+    {0x8F43, 0xB887},+    {0x8F44, 0xB888},+    {0x8F45, 0xB889},+    {0x8F46, 0xB88A},+    {0x8F47, 0xB88B},+    {0x8F48, 0xB88C},+    {0x8F49, 0xB88E},+    {0x8F4A, 0xB88F},+    {0x8F4B, 0xB890},+    {0x8F4C, 0xB891},+    {0x8F4D, 0xB892},+    {0x8F4E, 0xB893},+    {0x8F4F, 0xB894},+    {0x8F50, 0xB895},+    {0x8F51, 0xB896},+    {0x8F52, 0xB897},+    {0x8F53, 0xB898},+    {0x8F54, 0xB899},+    {0x8F55, 0xB89A},+    {0x8F56, 0xB89B},+    {0x8F57, 0xB89C},+    {0x8F58, 0xB89D},+    {0x8F59, 0xB89E},+    {0x8F5A, 0xB89F},+    {0x8F61, 0xB8A0},+    {0x8F62, 0xB8A1},+    {0x8F63, 0xB8A2},+    {0x8F64, 0xB8A3},+    {0x8F65, 0xB8A4},+    {0x8F66, 0xB8A5},+    {0x8F67, 0xB8A6},+    {0x8F68, 0xB8A7},+    {0x8F69, 0xB8A9},+    {0x8F6A, 0xB8AA},+    {0x8F6B, 0xB8AB},+    {0x8F6C, 0xB8AC},+    {0x8F6D, 0xB8AD},+    {0x8F6E, 0xB8AE},+    {0x8F6F, 0xB8AF},+    {0x8F70, 0xB8B1},+    {0x8F71, 0xB8B2},+    {0x8F72, 0xB8B3},+    {0x8F73, 0xB8B5},+    {0x8F74, 0xB8B6},+    {0x8F75, 0xB8B7},+    {0x8F76, 0xB8B9},+    {0x8F77, 0xB8BA},+    {0x8F78, 0xB8BB},+    {0x8F79, 0xB8BC},+    {0x8F7A, 0xB8BD},+    {0x8F81, 0xB8BE},+    {0x8F82, 0xB8BF},+    {0x8F83, 0xB8C2},+    {0x8F84, 0xB8C4},+    {0x8F85, 0xB8C6},+    {0x8F86, 0xB8C7},+    {0x8F87, 0xB8C8},+    {0x8F88, 0xB8C9},+    {0x8F89, 0xB8CA},+    {0x8F8A, 0xB8CB},+    {0x8F8B, 0xB8CD},+    {0x8F8C, 0xB8CE},+    {0x8F8D, 0xB8CF},+    {0x8F8E, 0xB8D1},+    {0x8F8F, 0xB8D2},+    {0x8F90, 0xB8D3},+    {0x8F91, 0xB8D5},+    {0x8F92, 0xB8D6},+    {0x8F93, 0xB8D7},+    {0x8F94, 0xB8D8},+    {0x8F95, 0xB8D9},+    {0x8F96, 0xB8DA},+    {0x8F97, 0xB8DB},+    {0x8F98, 0xB8DC},+    {0x8F99, 0xB8DE},+    {0x8F9A, 0xB8E0},+    {0x8F9B, 0xB8E2},+    {0x8F9C, 0xB8E3},+    {0x8F9D, 0xB8E4},+    {0x8F9E, 0xB8E5},+    {0x8F9F, 0xB8E6},+    {0x8FA0, 0xB8E7},+    {0x8FA1, 0xB8EA},+    {0x8FA2, 0xB8EB},+    {0x8FA3, 0xB8ED},+    {0x8FA4, 0xB8EE},+    {0x8FA5, 0xB8EF},+    {0x8FA6, 0xB8F1},+    {0x8FA7, 0xB8F2},+    {0x8FA8, 0xB8F3},+    {0x8FA9, 0xB8F4},+    {0x8FAA, 0xB8F5},+    {0x8FAB, 0xB8F6},+    {0x8FAC, 0xB8F7},+    {0x8FAD, 0xB8FA},+    {0x8FAE, 0xB8FC},+    {0x8FAF, 0xB8FE},+    {0x8FB0, 0xB8FF},+    {0x8FB1, 0xB900},+    {0x8FB2, 0xB901},+    {0x8FB3, 0xB902},+    {0x8FB4, 0xB903},+    {0x8FB5, 0xB905},+    {0x8FB6, 0xB906},+    {0x8FB7, 0xB907},+    {0x8FB8, 0xB908},+    {0x8FB9, 0xB909},+    {0x8FBA, 0xB90A},+    {0x8FBB, 0xB90B},+    {0x8FBC, 0xB90C},+    {0x8FBD, 0xB90D},+    {0x8FBE, 0xB90E},+    {0x8FBF, 0xB90F},+    {0x8FC0, 0xB910},+    {0x8FC1, 0xB911},+    {0x8FC2, 0xB912},+    {0x8FC3, 0xB913},+    {0x8FC4, 0xB914},+    {0x8FC5, 0xB915},+    {0x8FC6, 0xB916},+    {0x8FC7, 0xB917},+    {0x8FC8, 0xB919},+    {0x8FC9, 0xB91A},+    {0x8FCA, 0xB91B},+    {0x8FCB, 0xB91C},+    {0x8FCC, 0xB91D},+    {0x8FCD, 0xB91E},+    {0x8FCE, 0xB91F},+    {0x8FCF, 0xB921},+    {0x8FD0, 0xB922},+    {0x8FD1, 0xB923},+    {0x8FD2, 0xB924},+    {0x8FD3, 0xB925},+    {0x8FD4, 0xB926},+    {0x8FD5, 0xB927},+    {0x8FD6, 0xB928},+    {0x8FD7, 0xB929},+    {0x8FD8, 0xB92A},+    {0x8FD9, 0xB92B},+    {0x8FDA, 0xB92C},+    {0x8FDB, 0xB92D},+    {0x8FDC, 0xB92E},+    {0x8FDD, 0xB92F},+    {0x8FDE, 0xB930},+    {0x8FDF, 0xB931},+    {0x8FE0, 0xB932},+    {0x8FE1, 0xB933},+    {0x8FE2, 0xB934},+    {0x8FE3, 0xB935},+    {0x8FE4, 0xB936},+    {0x8FE5, 0xB937},+    {0x8FE6, 0xB938},+    {0x8FE7, 0xB939},+    {0x8FE8, 0xB93A},+    {0x8FE9, 0xB93B},+    {0x8FEA, 0xB93E},+    {0x8FEB, 0xB93F},+    {0x8FEC, 0xB941},+    {0x8FED, 0xB942},+    {0x8FEE, 0xB943},+    {0x8FEF, 0xB945},+    {0x8FF0, 0xB946},+    {0x8FF1, 0xB947},+    {0x8FF2, 0xB948},+    {0x8FF3, 0xB949},+    {0x8FF4, 0xB94A},+    {0x8FF5, 0xB94B},+    {0x8FF6, 0xB94D},+    {0x8FF7, 0xB94E},+    {0x8FF8, 0xB950},+    {0x8FF9, 0xB952},+    {0x8FFA, 0xB953},+    {0x8FFB, 0xB954},+    {0x8FFC, 0xB955},+    {0x8FFD, 0xB956},+    {0x8FFE, 0xB957},+    {0x9041, 0xB95A},+    {0x9042, 0xB95B},+    {0x9043, 0xB95D},+    {0x9044, 0xB95E},+    {0x9045, 0xB95F},+    {0x9046, 0xB961},+    {0x9047, 0xB962},+    {0x9048, 0xB963},+    {0x9049, 0xB964},+    {0x904A, 0xB965},+    {0x904B, 0xB966},+    {0x904C, 0xB967},+    {0x904D, 0xB96A},+    {0x904E, 0xB96C},+    {0x904F, 0xB96E},+    {0x9050, 0xB96F},+    {0x9051, 0xB970},+    {0x9052, 0xB971},+    {0x9053, 0xB972},+    {0x9054, 0xB973},+    {0x9055, 0xB976},+    {0x9056, 0xB977},+    {0x9057, 0xB979},+    {0x9058, 0xB97A},+    {0x9059, 0xB97B},+    {0x905A, 0xB97D},+    {0x9061, 0xB97E},+    {0x9062, 0xB97F},+    {0x9063, 0xB980},+    {0x9064, 0xB981},+    {0x9065, 0xB982},+    {0x9066, 0xB983},+    {0x9067, 0xB986},+    {0x9068, 0xB988},+    {0x9069, 0xB98B},+    {0x906A, 0xB98C},+    {0x906B, 0xB98F},+    {0x906C, 0xB990},+    {0x906D, 0xB991},+    {0x906E, 0xB992},+    {0x906F, 0xB993},+    {0x9070, 0xB994},+    {0x9071, 0xB995},+    {0x9072, 0xB996},+    {0x9073, 0xB997},+    {0x9074, 0xB998},+    {0x9075, 0xB999},+    {0x9076, 0xB99A},+    {0x9077, 0xB99B},+    {0x9078, 0xB99C},+    {0x9079, 0xB99D},+    {0x907A, 0xB99E},+    {0x9081, 0xB99F},+    {0x9082, 0xB9A0},+    {0x9083, 0xB9A1},+    {0x9084, 0xB9A2},+    {0x9085, 0xB9A3},+    {0x9086, 0xB9A4},+    {0x9087, 0xB9A5},+    {0x9088, 0xB9A6},+    {0x9089, 0xB9A7},+    {0x908A, 0xB9A8},+    {0x908B, 0xB9A9},+    {0x908C, 0xB9AA},+    {0x908D, 0xB9AB},+    {0x908E, 0xB9AE},+    {0x908F, 0xB9AF},+    {0x9090, 0xB9B1},+    {0x9091, 0xB9B2},+    {0x9092, 0xB9B3},+    {0x9093, 0xB9B5},+    {0x9094, 0xB9B6},+    {0x9095, 0xB9B7},+    {0x9096, 0xB9B8},+    {0x9097, 0xB9B9},+    {0x9098, 0xB9BA},+    {0x9099, 0xB9BB},+    {0x909A, 0xB9BE},+    {0x909B, 0xB9C0},+    {0x909C, 0xB9C2},+    {0x909D, 0xB9C3},+    {0x909E, 0xB9C4},+    {0x909F, 0xB9C5},+    {0x90A0, 0xB9C6},+    {0x90A1, 0xB9C7},+    {0x90A2, 0xB9CA},+    {0x90A3, 0xB9CB},+    {0x90A4, 0xB9CD},+    {0x90A5, 0xB9D3},+    {0x90A6, 0xB9D4},+    {0x90A7, 0xB9D5},+    {0x90A8, 0xB9D6},+    {0x90A9, 0xB9D7},+    {0x90AA, 0xB9DA},+    {0x90AB, 0xB9DC},+    {0x90AC, 0xB9DF},+    {0x90AD, 0xB9E0},+    {0x90AE, 0xB9E2},+    {0x90AF, 0xB9E6},+    {0x90B0, 0xB9E7},+    {0x90B1, 0xB9E9},+    {0x90B2, 0xB9EA},+    {0x90B3, 0xB9EB},+    {0x90B4, 0xB9ED},+    {0x90B5, 0xB9EE},+    {0x90B6, 0xB9EF},+    {0x90B7, 0xB9F0},+    {0x90B8, 0xB9F1},+    {0x90B9, 0xB9F2},+    {0x90BA, 0xB9F3},+    {0x90BB, 0xB9F6},+    {0x90BC, 0xB9FB},+    {0x90BD, 0xB9FC},+    {0x90BE, 0xB9FD},+    {0x90BF, 0xB9FE},+    {0x90C0, 0xB9FF},+    {0x90C1, 0xBA02},+    {0x90C2, 0xBA03},+    {0x90C3, 0xBA04},+    {0x90C4, 0xBA05},+    {0x90C5, 0xBA06},+    {0x90C6, 0xBA07},+    {0x90C7, 0xBA09},+    {0x90C8, 0xBA0A},+    {0x90C9, 0xBA0B},+    {0x90CA, 0xBA0C},+    {0x90CB, 0xBA0D},+    {0x90CC, 0xBA0E},+    {0x90CD, 0xBA0F},+    {0x90CE, 0xBA10},+    {0x90CF, 0xBA11},+    {0x90D0, 0xBA12},+    {0x90D1, 0xBA13},+    {0x90D2, 0xBA14},+    {0x90D3, 0xBA16},+    {0x90D4, 0xBA17},+    {0x90D5, 0xBA18},+    {0x90D6, 0xBA19},+    {0x90D7, 0xBA1A},+    {0x90D8, 0xBA1B},+    {0x90D9, 0xBA1C},+    {0x90DA, 0xBA1D},+    {0x90DB, 0xBA1E},+    {0x90DC, 0xBA1F},+    {0x90DD, 0xBA20},+    {0x90DE, 0xBA21},+    {0x90DF, 0xBA22},+    {0x90E0, 0xBA23},+    {0x90E1, 0xBA24},+    {0x90E2, 0xBA25},+    {0x90E3, 0xBA26},+    {0x90E4, 0xBA27},+    {0x90E5, 0xBA28},+    {0x90E6, 0xBA29},+    {0x90E7, 0xBA2A},+    {0x90E8, 0xBA2B},+    {0x90E9, 0xBA2C},+    {0x90EA, 0xBA2D},+    {0x90EB, 0xBA2E},+    {0x90EC, 0xBA2F},+    {0x90ED, 0xBA30},+    {0x90EE, 0xBA31},+    {0x90EF, 0xBA32},+    {0x90F0, 0xBA33},+    {0x90F1, 0xBA34},+    {0x90F2, 0xBA35},+    {0x90F3, 0xBA36},+    {0x90F4, 0xBA37},+    {0x90F5, 0xBA3A},+    {0x90F6, 0xBA3B},+    {0x90F7, 0xBA3D},+    {0x90F8, 0xBA3E},+    {0x90F9, 0xBA3F},+    {0x90FA, 0xBA41},+    {0x90FB, 0xBA43},+    {0x90FC, 0xBA44},+    {0x90FD, 0xBA45},+    {0x90FE, 0xBA46},+    {0x9141, 0xBA47},+    {0x9142, 0xBA4A},+    {0x9143, 0xBA4C},+    {0x9144, 0xBA4F},+    {0x9145, 0xBA50},+    {0x9146, 0xBA51},+    {0x9147, 0xBA52},+    {0x9148, 0xBA56},+    {0x9149, 0xBA57},+    {0x914A, 0xBA59},+    {0x914B, 0xBA5A},+    {0x914C, 0xBA5B},+    {0x914D, 0xBA5D},+    {0x914E, 0xBA5E},+    {0x914F, 0xBA5F},+    {0x9150, 0xBA60},+    {0x9151, 0xBA61},+    {0x9152, 0xBA62},+    {0x9153, 0xBA63},+    {0x9154, 0xBA66},+    {0x9155, 0xBA6A},+    {0x9156, 0xBA6B},+    {0x9157, 0xBA6C},+    {0x9158, 0xBA6D},+    {0x9159, 0xBA6E},+    {0x915A, 0xBA6F},+    {0x9161, 0xBA72},+    {0x9162, 0xBA73},+    {0x9163, 0xBA75},+    {0x9164, 0xBA76},+    {0x9165, 0xBA77},+    {0x9166, 0xBA79},+    {0x9167, 0xBA7A},+    {0x9168, 0xBA7B},+    {0x9169, 0xBA7C},+    {0x916A, 0xBA7D},+    {0x916B, 0xBA7E},+    {0x916C, 0xBA7F},+    {0x916D, 0xBA80},+    {0x916E, 0xBA81},+    {0x916F, 0xBA82},+    {0x9170, 0xBA86},+    {0x9171, 0xBA88},+    {0x9172, 0xBA89},+    {0x9173, 0xBA8A},+    {0x9174, 0xBA8B},+    {0x9175, 0xBA8D},+    {0x9176, 0xBA8E},+    {0x9177, 0xBA8F},+    {0x9178, 0xBA90},+    {0x9179, 0xBA91},+    {0x917A, 0xBA92},+    {0x9181, 0xBA93},+    {0x9182, 0xBA94},+    {0x9183, 0xBA95},+    {0x9184, 0xBA96},+    {0x9185, 0xBA97},+    {0x9186, 0xBA98},+    {0x9187, 0xBA99},+    {0x9188, 0xBA9A},+    {0x9189, 0xBA9B},+    {0x918A, 0xBA9C},+    {0x918B, 0xBA9D},+    {0x918C, 0xBA9E},+    {0x918D, 0xBA9F},+    {0x918E, 0xBAA0},+    {0x918F, 0xBAA1},+    {0x9190, 0xBAA2},+    {0x9191, 0xBAA3},+    {0x9192, 0xBAA4},+    {0x9193, 0xBAA5},+    {0x9194, 0xBAA6},+    {0x9195, 0xBAA7},+    {0x9196, 0xBAAA},+    {0x9197, 0xBAAD},+    {0x9198, 0xBAAE},+    {0x9199, 0xBAAF},+    {0x919A, 0xBAB1},+    {0x919B, 0xBAB3},+    {0x919C, 0xBAB4},+    {0x919D, 0xBAB5},+    {0x919E, 0xBAB6},+    {0x919F, 0xBAB7},+    {0x91A0, 0xBABA},+    {0x91A1, 0xBABC},+    {0x91A2, 0xBABE},+    {0x91A3, 0xBABF},+    {0x91A4, 0xBAC0},+    {0x91A5, 0xBAC1},+    {0x91A6, 0xBAC2},+    {0x91A7, 0xBAC3},+    {0x91A8, 0xBAC5},+    {0x91A9, 0xBAC6},+    {0x91AA, 0xBAC7},+    {0x91AB, 0xBAC9},+    {0x91AC, 0xBACA},+    {0x91AD, 0xBACB},+    {0x91AE, 0xBACC},+    {0x91AF, 0xBACD},+    {0x91B0, 0xBACE},+    {0x91B1, 0xBACF},+    {0x91B2, 0xBAD0},+    {0x91B3, 0xBAD1},+    {0x91B4, 0xBAD2},+    {0x91B5, 0xBAD3},+    {0x91B6, 0xBAD4},+    {0x91B7, 0xBAD5},+    {0x91B8, 0xBAD6},+    {0x91B9, 0xBAD7},+    {0x91BA, 0xBADA},+    {0x91BB, 0xBADB},+    {0x91BC, 0xBADC},+    {0x91BD, 0xBADD},+    {0x91BE, 0xBADE},+    {0x91BF, 0xBADF},+    {0x91C0, 0xBAE0},+    {0x91C1, 0xBAE1},+    {0x91C2, 0xBAE2},+    {0x91C3, 0xBAE3},+    {0x91C4, 0xBAE4},+    {0x91C5, 0xBAE5},+    {0x91C6, 0xBAE6},+    {0x91C7, 0xBAE7},+    {0x91C8, 0xBAE8},+    {0x91C9, 0xBAE9},+    {0x91CA, 0xBAEA},+    {0x91CB, 0xBAEB},+    {0x91CC, 0xBAEC},+    {0x91CD, 0xBAED},+    {0x91CE, 0xBAEE},+    {0x91CF, 0xBAEF},+    {0x91D0, 0xBAF0},+    {0x91D1, 0xBAF1},+    {0x91D2, 0xBAF2},+    {0x91D3, 0xBAF3},+    {0x91D4, 0xBAF4},+    {0x91D5, 0xBAF5},+    {0x91D6, 0xBAF6},+    {0x91D7, 0xBAF7},+    {0x91D8, 0xBAF8},+    {0x91D9, 0xBAF9},+    {0x91DA, 0xBAFA},+    {0x91DB, 0xBAFB},+    {0x91DC, 0xBAFD},+    {0x91DD, 0xBAFE},+    {0x91DE, 0xBAFF},+    {0x91DF, 0xBB01},+    {0x91E0, 0xBB02},+    {0x91E1, 0xBB03},+    {0x91E2, 0xBB05},+    {0x91E3, 0xBB06},+    {0x91E4, 0xBB07},+    {0x91E5, 0xBB08},+    {0x91E6, 0xBB09},+    {0x91E7, 0xBB0A},+    {0x91E8, 0xBB0B},+    {0x91E9, 0xBB0C},+    {0x91EA, 0xBB0E},+    {0x91EB, 0xBB10},+    {0x91EC, 0xBB12},+    {0x91ED, 0xBB13},+    {0x91EE, 0xBB14},+    {0x91EF, 0xBB15},+    {0x91F0, 0xBB16},+    {0x91F1, 0xBB17},+    {0x91F2, 0xBB19},+    {0x91F3, 0xBB1A},+    {0x91F4, 0xBB1B},+    {0x91F5, 0xBB1D},+    {0x91F6, 0xBB1E},+    {0x91F7, 0xBB1F},+    {0x91F8, 0xBB21},+    {0x91F9, 0xBB22},+    {0x91FA, 0xBB23},+    {0x91FB, 0xBB24},+    {0x91FC, 0xBB25},+    {0x91FD, 0xBB26},+    {0x91FE, 0xBB27},+    {0x9241, 0xBB28},+    {0x9242, 0xBB2A},+    {0x9243, 0xBB2C},+    {0x9244, 0xBB2D},+    {0x9245, 0xBB2E},+    {0x9246, 0xBB2F},+    {0x9247, 0xBB30},+    {0x9248, 0xBB31},+    {0x9249, 0xBB32},+    {0x924A, 0xBB33},+    {0x924B, 0xBB37},+    {0x924C, 0xBB39},+    {0x924D, 0xBB3A},+    {0x924E, 0xBB3F},+    {0x924F, 0xBB40},+    {0x9250, 0xBB41},+    {0x9251, 0xBB42},+    {0x9252, 0xBB43},+    {0x9253, 0xBB46},+    {0x9254, 0xBB48},+    {0x9255, 0xBB4A},+    {0x9256, 0xBB4B},+    {0x9257, 0xBB4C},+    {0x9258, 0xBB4E},+    {0x9259, 0xBB51},+    {0x925A, 0xBB52},+    {0x9261, 0xBB53},+    {0x9262, 0xBB55},+    {0x9263, 0xBB56},+    {0x9264, 0xBB57},+    {0x9265, 0xBB59},+    {0x9266, 0xBB5A},+    {0x9267, 0xBB5B},+    {0x9268, 0xBB5C},+    {0x9269, 0xBB5D},+    {0x926A, 0xBB5E},+    {0x926B, 0xBB5F},+    {0x926C, 0xBB60},+    {0x926D, 0xBB62},+    {0x926E, 0xBB64},+    {0x926F, 0xBB65},+    {0x9270, 0xBB66},+    {0x9271, 0xBB67},+    {0x9272, 0xBB68},+    {0x9273, 0xBB69},+    {0x9274, 0xBB6A},+    {0x9275, 0xBB6B},+    {0x9276, 0xBB6D},+    {0x9277, 0xBB6E},+    {0x9278, 0xBB6F},+    {0x9279, 0xBB70},+    {0x927A, 0xBB71},+    {0x9281, 0xBB72},+    {0x9282, 0xBB73},+    {0x9283, 0xBB74},+    {0x9284, 0xBB75},+    {0x9285, 0xBB76},+    {0x9286, 0xBB77},+    {0x9287, 0xBB78},+    {0x9288, 0xBB79},+    {0x9289, 0xBB7A},+    {0x928A, 0xBB7B},+    {0x928B, 0xBB7C},+    {0x928C, 0xBB7D},+    {0x928D, 0xBB7E},+    {0x928E, 0xBB7F},+    {0x928F, 0xBB80},+    {0x9290, 0xBB81},+    {0x9291, 0xBB82},+    {0x9292, 0xBB83},+    {0x9293, 0xBB84},+    {0x9294, 0xBB85},+    {0x9295, 0xBB86},+    {0x9296, 0xBB87},+    {0x9297, 0xBB89},+    {0x9298, 0xBB8A},+    {0x9299, 0xBB8B},+    {0x929A, 0xBB8D},+    {0x929B, 0xBB8E},+    {0x929C, 0xBB8F},+    {0x929D, 0xBB91},+    {0x929E, 0xBB92},+    {0x929F, 0xBB93},+    {0x92A0, 0xBB94},+    {0x92A1, 0xBB95},+    {0x92A2, 0xBB96},+    {0x92A3, 0xBB97},+    {0x92A4, 0xBB98},+    {0x92A5, 0xBB99},+    {0x92A6, 0xBB9A},+    {0x92A7, 0xBB9B},+    {0x92A8, 0xBB9C},+    {0x92A9, 0xBB9D},+    {0x92AA, 0xBB9E},+    {0x92AB, 0xBB9F},+    {0x92AC, 0xBBA0},+    {0x92AD, 0xBBA1},+    {0x92AE, 0xBBA2},+    {0x92AF, 0xBBA3},+    {0x92B0, 0xBBA5},+    {0x92B1, 0xBBA6},+    {0x92B2, 0xBBA7},+    {0x92B3, 0xBBA9},+    {0x92B4, 0xBBAA},+    {0x92B5, 0xBBAB},+    {0x92B6, 0xBBAD},+    {0x92B7, 0xBBAE},+    {0x92B8, 0xBBAF},+    {0x92B9, 0xBBB0},+    {0x92BA, 0xBBB1},+    {0x92BB, 0xBBB2},+    {0x92BC, 0xBBB3},+    {0x92BD, 0xBBB5},+    {0x92BE, 0xBBB6},+    {0x92BF, 0xBBB8},+    {0x92C0, 0xBBB9},+    {0x92C1, 0xBBBA},+    {0x92C2, 0xBBBB},+    {0x92C3, 0xBBBC},+    {0x92C4, 0xBBBD},+    {0x92C5, 0xBBBE},+    {0x92C6, 0xBBBF},+    {0x92C7, 0xBBC1},+    {0x92C8, 0xBBC2},+    {0x92C9, 0xBBC3},+    {0x92CA, 0xBBC5},+    {0x92CB, 0xBBC6},+    {0x92CC, 0xBBC7},+    {0x92CD, 0xBBC9},+    {0x92CE, 0xBBCA},+    {0x92CF, 0xBBCB},+    {0x92D0, 0xBBCC},+    {0x92D1, 0xBBCD},+    {0x92D2, 0xBBCE},+    {0x92D3, 0xBBCF},+    {0x92D4, 0xBBD1},+    {0x92D5, 0xBBD2},+    {0x92D6, 0xBBD4},+    {0x92D7, 0xBBD5},+    {0x92D8, 0xBBD6},+    {0x92D9, 0xBBD7},+    {0x92DA, 0xBBD8},+    {0x92DB, 0xBBD9},+    {0x92DC, 0xBBDA},+    {0x92DD, 0xBBDB},+    {0x92DE, 0xBBDC},+    {0x92DF, 0xBBDD},+    {0x92E0, 0xBBDE},+    {0x92E1, 0xBBDF},+    {0x92E2, 0xBBE0},+    {0x92E3, 0xBBE1},+    {0x92E4, 0xBBE2},+    {0x92E5, 0xBBE3},+    {0x92E6, 0xBBE4},+    {0x92E7, 0xBBE5},+    {0x92E8, 0xBBE6},+    {0x92E9, 0xBBE7},+    {0x92EA, 0xBBE8},+    {0x92EB, 0xBBE9},+    {0x92EC, 0xBBEA},+    {0x92ED, 0xBBEB},+    {0x92EE, 0xBBEC},+    {0x92EF, 0xBBED},+    {0x92F0, 0xBBEE},+    {0x92F1, 0xBBEF},+    {0x92F2, 0xBBF0},+    {0x92F3, 0xBBF1},+    {0x92F4, 0xBBF2},+    {0x92F5, 0xBBF3},+    {0x92F6, 0xBBF4},+    {0x92F7, 0xBBF5},+    {0x92F8, 0xBBF6},+    {0x92F9, 0xBBF7},+    {0x92FA, 0xBBFA},+    {0x92FB, 0xBBFB},+    {0x92FC, 0xBBFD},+    {0x92FD, 0xBBFE},+    {0x92FE, 0xBC01},+    {0x9341, 0xBC03},+    {0x9342, 0xBC04},+    {0x9343, 0xBC05},+    {0x9344, 0xBC06},+    {0x9345, 0xBC07},+    {0x9346, 0xBC0A},+    {0x9347, 0xBC0E},+    {0x9348, 0xBC10},+    {0x9349, 0xBC12},+    {0x934A, 0xBC13},+    {0x934B, 0xBC19},+    {0x934C, 0xBC1A},+    {0x934D, 0xBC20},+    {0x934E, 0xBC21},+    {0x934F, 0xBC22},+    {0x9350, 0xBC23},+    {0x9351, 0xBC26},+    {0x9352, 0xBC28},+    {0x9353, 0xBC2A},+    {0x9354, 0xBC2B},+    {0x9355, 0xBC2C},+    {0x9356, 0xBC2E},+    {0x9357, 0xBC2F},+    {0x9358, 0xBC32},+    {0x9359, 0xBC33},+    {0x935A, 0xBC35},+    {0x9361, 0xBC36},+    {0x9362, 0xBC37},+    {0x9363, 0xBC39},+    {0x9364, 0xBC3A},+    {0x9365, 0xBC3B},+    {0x9366, 0xBC3C},+    {0x9367, 0xBC3D},+    {0x9368, 0xBC3E},+    {0x9369, 0xBC3F},+    {0x936A, 0xBC42},+    {0x936B, 0xBC46},+    {0x936C, 0xBC47},+    {0x936D, 0xBC48},+    {0x936E, 0xBC4A},+    {0x936F, 0xBC4B},+    {0x9370, 0xBC4E},+    {0x9371, 0xBC4F},+    {0x9372, 0xBC51},+    {0x9373, 0xBC52},+    {0x9374, 0xBC53},+    {0x9375, 0xBC54},+    {0x9376, 0xBC55},+    {0x9377, 0xBC56},+    {0x9378, 0xBC57},+    {0x9379, 0xBC58},+    {0x937A, 0xBC59},+    {0x9381, 0xBC5A},+    {0x9382, 0xBC5B},+    {0x9383, 0xBC5C},+    {0x9384, 0xBC5E},+    {0x9385, 0xBC5F},+    {0x9386, 0xBC60},+    {0x9387, 0xBC61},+    {0x9388, 0xBC62},+    {0x9389, 0xBC63},+    {0x938A, 0xBC64},+    {0x938B, 0xBC65},+    {0x938C, 0xBC66},+    {0x938D, 0xBC67},+    {0x938E, 0xBC68},+    {0x938F, 0xBC69},+    {0x9390, 0xBC6A},+    {0x9391, 0xBC6B},+    {0x9392, 0xBC6C},+    {0x9393, 0xBC6D},+    {0x9394, 0xBC6E},+    {0x9395, 0xBC6F},+    {0x9396, 0xBC70},+    {0x9397, 0xBC71},+    {0x9398, 0xBC72},+    {0x9399, 0xBC73},+    {0x939A, 0xBC74},+    {0x939B, 0xBC75},+    {0x939C, 0xBC76},+    {0x939D, 0xBC77},+    {0x939E, 0xBC78},+    {0x939F, 0xBC79},+    {0x93A0, 0xBC7A},+    {0x93A1, 0xBC7B},+    {0x93A2, 0xBC7C},+    {0x93A3, 0xBC7D},+    {0x93A4, 0xBC7E},+    {0x93A5, 0xBC7F},+    {0x93A6, 0xBC80},+    {0x93A7, 0xBC81},+    {0x93A8, 0xBC82},+    {0x93A9, 0xBC83},+    {0x93AA, 0xBC86},+    {0x93AB, 0xBC87},+    {0x93AC, 0xBC89},+    {0x93AD, 0xBC8A},+    {0x93AE, 0xBC8D},+    {0x93AF, 0xBC8F},+    {0x93B0, 0xBC90},+    {0x93B1, 0xBC91},+    {0x93B2, 0xBC92},+    {0x93B3, 0xBC93},+    {0x93B4, 0xBC96},+    {0x93B5, 0xBC98},+    {0x93B6, 0xBC9B},+    {0x93B7, 0xBC9C},+    {0x93B8, 0xBC9D},+    {0x93B9, 0xBC9E},+    {0x93BA, 0xBC9F},+    {0x93BB, 0xBCA2},+    {0x93BC, 0xBCA3},+    {0x93BD, 0xBCA5},+    {0x93BE, 0xBCA6},+    {0x93BF, 0xBCA9},+    {0x93C0, 0xBCAA},+    {0x93C1, 0xBCAB},+    {0x93C2, 0xBCAC},+    {0x93C3, 0xBCAD},+    {0x93C4, 0xBCAE},+    {0x93C5, 0xBCAF},+    {0x93C6, 0xBCB2},+    {0x93C7, 0xBCB6},+    {0x93C8, 0xBCB7},+    {0x93C9, 0xBCB8},+    {0x93CA, 0xBCB9},+    {0x93CB, 0xBCBA},+    {0x93CC, 0xBCBB},+    {0x93CD, 0xBCBE},+    {0x93CE, 0xBCBF},+    {0x93CF, 0xBCC1},+    {0x93D0, 0xBCC2},+    {0x93D1, 0xBCC3},+    {0x93D2, 0xBCC5},+    {0x93D3, 0xBCC6},+    {0x93D4, 0xBCC7},+    {0x93D5, 0xBCC8},+    {0x93D6, 0xBCC9},+    {0x93D7, 0xBCCA},+    {0x93D8, 0xBCCB},+    {0x93D9, 0xBCCC},+    {0x93DA, 0xBCCE},+    {0x93DB, 0xBCD2},+    {0x93DC, 0xBCD3},+    {0x93DD, 0xBCD4},+    {0x93DE, 0xBCD6},+    {0x93DF, 0xBCD7},+    {0x93E0, 0xBCD9},+    {0x93E1, 0xBCDA},+    {0x93E2, 0xBCDB},+    {0x93E3, 0xBCDD},+    {0x93E4, 0xBCDE},+    {0x93E5, 0xBCDF},+    {0x93E6, 0xBCE0},+    {0x93E7, 0xBCE1},+    {0x93E8, 0xBCE2},+    {0x93E9, 0xBCE3},+    {0x93EA, 0xBCE4},+    {0x93EB, 0xBCE5},+    {0x93EC, 0xBCE6},+    {0x93ED, 0xBCE7},+    {0x93EE, 0xBCE8},+    {0x93EF, 0xBCE9},+    {0x93F0, 0xBCEA},+    {0x93F1, 0xBCEB},+    {0x93F2, 0xBCEC},+    {0x93F3, 0xBCED},+    {0x93F4, 0xBCEE},+    {0x93F5, 0xBCEF},+    {0x93F6, 0xBCF0},+    {0x93F7, 0xBCF1},+    {0x93F8, 0xBCF2},+    {0x93F9, 0xBCF3},+    {0x93FA, 0xBCF7},+    {0x93FB, 0xBCF9},+    {0x93FC, 0xBCFA},+    {0x93FD, 0xBCFB},+    {0x93FE, 0xBCFD},+    {0x9441, 0xBCFE},+    {0x9442, 0xBCFF},+    {0x9443, 0xBD00},+    {0x9444, 0xBD01},+    {0x9445, 0xBD02},+    {0x9446, 0xBD03},+    {0x9447, 0xBD06},+    {0x9448, 0xBD08},+    {0x9449, 0xBD0A},+    {0x944A, 0xBD0B},+    {0x944B, 0xBD0C},+    {0x944C, 0xBD0D},+    {0x944D, 0xBD0E},+    {0x944E, 0xBD0F},+    {0x944F, 0xBD11},+    {0x9450, 0xBD12},+    {0x9451, 0xBD13},+    {0x9452, 0xBD15},+    {0x9453, 0xBD16},+    {0x9454, 0xBD17},+    {0x9455, 0xBD18},+    {0x9456, 0xBD19},+    {0x9457, 0xBD1A},+    {0x9458, 0xBD1B},+    {0x9459, 0xBD1C},+    {0x945A, 0xBD1D},+    {0x9461, 0xBD1E},+    {0x9462, 0xBD1F},+    {0x9463, 0xBD20},+    {0x9464, 0xBD21},+    {0x9465, 0xBD22},+    {0x9466, 0xBD23},+    {0x9467, 0xBD25},+    {0x9468, 0xBD26},+    {0x9469, 0xBD27},+    {0x946A, 0xBD28},+    {0x946B, 0xBD29},+    {0x946C, 0xBD2A},+    {0x946D, 0xBD2B},+    {0x946E, 0xBD2D},+    {0x946F, 0xBD2E},+    {0x9470, 0xBD2F},+    {0x9471, 0xBD30},+    {0x9472, 0xBD31},+    {0x9473, 0xBD32},+    {0x9474, 0xBD33},+    {0x9475, 0xBD34},+    {0x9476, 0xBD35},+    {0x9477, 0xBD36},+    {0x9478, 0xBD37},+    {0x9479, 0xBD38},+    {0x947A, 0xBD39},+    {0x9481, 0xBD3A},+    {0x9482, 0xBD3B},+    {0x9483, 0xBD3C},+    {0x9484, 0xBD3D},+    {0x9485, 0xBD3E},+    {0x9486, 0xBD3F},+    {0x9487, 0xBD41},+    {0x9488, 0xBD42},+    {0x9489, 0xBD43},+    {0x948A, 0xBD44},+    {0x948B, 0xBD45},+    {0x948C, 0xBD46},+    {0x948D, 0xBD47},+    {0x948E, 0xBD4A},+    {0x948F, 0xBD4B},+    {0x9490, 0xBD4D},+    {0x9491, 0xBD4E},+    {0x9492, 0xBD4F},+    {0x9493, 0xBD51},+    {0x9494, 0xBD52},+    {0x9495, 0xBD53},+    {0x9496, 0xBD54},+    {0x9497, 0xBD55},+    {0x9498, 0xBD56},+    {0x9499, 0xBD57},+    {0x949A, 0xBD5A},+    {0x949B, 0xBD5B},+    {0x949C, 0xBD5C},+    {0x949D, 0xBD5D},+    {0x949E, 0xBD5E},+    {0x949F, 0xBD5F},+    {0x94A0, 0xBD60},+    {0x94A1, 0xBD61},+    {0x94A2, 0xBD62},+    {0x94A3, 0xBD63},+    {0x94A4, 0xBD65},+    {0x94A5, 0xBD66},+    {0x94A6, 0xBD67},+    {0x94A7, 0xBD69},+    {0x94A8, 0xBD6A},+    {0x94A9, 0xBD6B},+    {0x94AA, 0xBD6C},+    {0x94AB, 0xBD6D},+    {0x94AC, 0xBD6E},+    {0x94AD, 0xBD6F},+    {0x94AE, 0xBD70},+    {0x94AF, 0xBD71},+    {0x94B0, 0xBD72},+    {0x94B1, 0xBD73},+    {0x94B2, 0xBD74},+    {0x94B3, 0xBD75},+    {0x94B4, 0xBD76},+    {0x94B5, 0xBD77},+    {0x94B6, 0xBD78},+    {0x94B7, 0xBD79},+    {0x94B8, 0xBD7A},+    {0x94B9, 0xBD7B},+    {0x94BA, 0xBD7C},+    {0x94BB, 0xBD7D},+    {0x94BC, 0xBD7E},+    {0x94BD, 0xBD7F},+    {0x94BE, 0xBD82},+    {0x94BF, 0xBD83},+    {0x94C0, 0xBD85},+    {0x94C1, 0xBD86},+    {0x94C2, 0xBD8B},+    {0x94C3, 0xBD8C},+    {0x94C4, 0xBD8D},+    {0x94C5, 0xBD8E},+    {0x94C6, 0xBD8F},+    {0x94C7, 0xBD92},+    {0x94C8, 0xBD94},+    {0x94C9, 0xBD96},+    {0x94CA, 0xBD97},+    {0x94CB, 0xBD98},+    {0x94CC, 0xBD9B},+    {0x94CD, 0xBD9D},+    {0x94CE, 0xBD9E},+    {0x94CF, 0xBD9F},+    {0x94D0, 0xBDA0},+    {0x94D1, 0xBDA1},+    {0x94D2, 0xBDA2},+    {0x94D3, 0xBDA3},+    {0x94D4, 0xBDA5},+    {0x94D5, 0xBDA6},+    {0x94D6, 0xBDA7},+    {0x94D7, 0xBDA8},+    {0x94D8, 0xBDA9},+    {0x94D9, 0xBDAA},+    {0x94DA, 0xBDAB},+    {0x94DB, 0xBDAC},+    {0x94DC, 0xBDAD},+    {0x94DD, 0xBDAE},+    {0x94DE, 0xBDAF},+    {0x94DF, 0xBDB1},+    {0x94E0, 0xBDB2},+    {0x94E1, 0xBDB3},+    {0x94E2, 0xBDB4},+    {0x94E3, 0xBDB5},+    {0x94E4, 0xBDB6},+    {0x94E5, 0xBDB7},+    {0x94E6, 0xBDB9},+    {0x94E7, 0xBDBA},+    {0x94E8, 0xBDBB},+    {0x94E9, 0xBDBC},+    {0x94EA, 0xBDBD},+    {0x94EB, 0xBDBE},+    {0x94EC, 0xBDBF},+    {0x94ED, 0xBDC0},+    {0x94EE, 0xBDC1},+    {0x94EF, 0xBDC2},+    {0x94F0, 0xBDC3},+    {0x94F1, 0xBDC4},+    {0x94F2, 0xBDC5},+    {0x94F3, 0xBDC6},+    {0x94F4, 0xBDC7},+    {0x94F5, 0xBDC8},+    {0x94F6, 0xBDC9},+    {0x94F7, 0xBDCA},+    {0x94F8, 0xBDCB},+    {0x94F9, 0xBDCC},+    {0x94FA, 0xBDCD},+    {0x94FB, 0xBDCE},+    {0x94FC, 0xBDCF},+    {0x94FD, 0xBDD0},+    {0x94FE, 0xBDD1},+    {0x9541, 0xBDD2},+    {0x9542, 0xBDD3},+    {0x9543, 0xBDD6},+    {0x9544, 0xBDD7},+    {0x9545, 0xBDD9},+    {0x9546, 0xBDDA},+    {0x9547, 0xBDDB},+    {0x9548, 0xBDDD},+    {0x9549, 0xBDDE},+    {0x954A, 0xBDDF},+    {0x954B, 0xBDE0},+    {0x954C, 0xBDE1},+    {0x954D, 0xBDE2},+    {0x954E, 0xBDE3},+    {0x954F, 0xBDE4},+    {0x9550, 0xBDE5},+    {0x9551, 0xBDE6},+    {0x9552, 0xBDE7},+    {0x9553, 0xBDE8},+    {0x9554, 0xBDEA},+    {0x9555, 0xBDEB},+    {0x9556, 0xBDEC},+    {0x9557, 0xBDED},+    {0x9558, 0xBDEE},+    {0x9559, 0xBDEF},+    {0x955A, 0xBDF1},+    {0x9561, 0xBDF2},+    {0x9562, 0xBDF3},+    {0x9563, 0xBDF5},+    {0x9564, 0xBDF6},+    {0x9565, 0xBDF7},+    {0x9566, 0xBDF9},+    {0x9567, 0xBDFA},+    {0x9568, 0xBDFB},+    {0x9569, 0xBDFC},+    {0x956A, 0xBDFD},+    {0x956B, 0xBDFE},+    {0x956C, 0xBDFF},+    {0x956D, 0xBE01},+    {0x956E, 0xBE02},+    {0x956F, 0xBE04},+    {0x9570, 0xBE06},+    {0x9571, 0xBE07},+    {0x9572, 0xBE08},+    {0x9573, 0xBE09},+    {0x9574, 0xBE0A},+    {0x9575, 0xBE0B},+    {0x9576, 0xBE0E},+    {0x9577, 0xBE0F},+    {0x9578, 0xBE11},+    {0x9579, 0xBE12},+    {0x957A, 0xBE13},+    {0x9581, 0xBE15},+    {0x9582, 0xBE16},+    {0x9583, 0xBE17},+    {0x9584, 0xBE18},+    {0x9585, 0xBE19},+    {0x9586, 0xBE1A},+    {0x9587, 0xBE1B},+    {0x9588, 0xBE1E},+    {0x9589, 0xBE20},+    {0x958A, 0xBE21},+    {0x958B, 0xBE22},+    {0x958C, 0xBE23},+    {0x958D, 0xBE24},+    {0x958E, 0xBE25},+    {0x958F, 0xBE26},+    {0x9590, 0xBE27},+    {0x9591, 0xBE28},+    {0x9592, 0xBE29},+    {0x9593, 0xBE2A},+    {0x9594, 0xBE2B},+    {0x9595, 0xBE2C},+    {0x9596, 0xBE2D},+    {0x9597, 0xBE2E},+    {0x9598, 0xBE2F},+    {0x9599, 0xBE30},+    {0x959A, 0xBE31},+    {0x959B, 0xBE32},+    {0x959C, 0xBE33},+    {0x959D, 0xBE34},+    {0x959E, 0xBE35},+    {0x959F, 0xBE36},+    {0x95A0, 0xBE37},+    {0x95A1, 0xBE38},+    {0x95A2, 0xBE39},+    {0x95A3, 0xBE3A},+    {0x95A4, 0xBE3B},+    {0x95A5, 0xBE3C},+    {0x95A6, 0xBE3D},+    {0x95A7, 0xBE3E},+    {0x95A8, 0xBE3F},+    {0x95A9, 0xBE40},+    {0x95AA, 0xBE41},+    {0x95AB, 0xBE42},+    {0x95AC, 0xBE43},+    {0x95AD, 0xBE46},+    {0x95AE, 0xBE47},+    {0x95AF, 0xBE49},+    {0x95B0, 0xBE4A},+    {0x95B1, 0xBE4B},+    {0x95B2, 0xBE4D},+    {0x95B3, 0xBE4F},+    {0x95B4, 0xBE50},+    {0x95B5, 0xBE51},+    {0x95B6, 0xBE52},+    {0x95B7, 0xBE53},+    {0x95B8, 0xBE56},+    {0x95B9, 0xBE58},+    {0x95BA, 0xBE5C},+    {0x95BB, 0xBE5D},+    {0x95BC, 0xBE5E},+    {0x95BD, 0xBE5F},+    {0x95BE, 0xBE62},+    {0x95BF, 0xBE63},+    {0x95C0, 0xBE65},+    {0x95C1, 0xBE66},+    {0x95C2, 0xBE67},+    {0x95C3, 0xBE69},+    {0x95C4, 0xBE6B},+    {0x95C5, 0xBE6C},+    {0x95C6, 0xBE6D},+    {0x95C7, 0xBE6E},+    {0x95C8, 0xBE6F},+    {0x95C9, 0xBE72},+    {0x95CA, 0xBE76},+    {0x95CB, 0xBE77},+    {0x95CC, 0xBE78},+    {0x95CD, 0xBE79},+    {0x95CE, 0xBE7A},+    {0x95CF, 0xBE7E},+    {0x95D0, 0xBE7F},+    {0x95D1, 0xBE81},+    {0x95D2, 0xBE82},+    {0x95D3, 0xBE83},+    {0x95D4, 0xBE85},+    {0x95D5, 0xBE86},+    {0x95D6, 0xBE87},+    {0x95D7, 0xBE88},+    {0x95D8, 0xBE89},+    {0x95D9, 0xBE8A},+    {0x95DA, 0xBE8B},+    {0x95DB, 0xBE8E},+    {0x95DC, 0xBE92},+    {0x95DD, 0xBE93},+    {0x95DE, 0xBE94},+    {0x95DF, 0xBE95},+    {0x95E0, 0xBE96},+    {0x95E1, 0xBE97},+    {0x95E2, 0xBE9A},+    {0x95E3, 0xBE9B},+    {0x95E4, 0xBE9C},+    {0x95E5, 0xBE9D},+    {0x95E6, 0xBE9E},+    {0x95E7, 0xBE9F},+    {0x95E8, 0xBEA0},+    {0x95E9, 0xBEA1},+    {0x95EA, 0xBEA2},+    {0x95EB, 0xBEA3},+    {0x95EC, 0xBEA4},+    {0x95ED, 0xBEA5},+    {0x95EE, 0xBEA6},+    {0x95EF, 0xBEA7},+    {0x95F0, 0xBEA9},+    {0x95F1, 0xBEAA},+    {0x95F2, 0xBEAB},+    {0x95F3, 0xBEAC},+    {0x95F4, 0xBEAD},+    {0x95F5, 0xBEAE},+    {0x95F6, 0xBEAF},+    {0x95F7, 0xBEB0},+    {0x95F8, 0xBEB1},+    {0x95F9, 0xBEB2},+    {0x95FA, 0xBEB3},+    {0x95FB, 0xBEB4},+    {0x95FC, 0xBEB5},+    {0x95FD, 0xBEB6},+    {0x95FE, 0xBEB7},+    {0x9641, 0xBEB8},+    {0x9642, 0xBEB9},+    {0x9643, 0xBEBA},+    {0x9644, 0xBEBB},+    {0x9645, 0xBEBC},+    {0x9646, 0xBEBD},+    {0x9647, 0xBEBE},+    {0x9648, 0xBEBF},+    {0x9649, 0xBEC0},+    {0x964A, 0xBEC1},+    {0x964B, 0xBEC2},+    {0x964C, 0xBEC3},+    {0x964D, 0xBEC4},+    {0x964E, 0xBEC5},+    {0x964F, 0xBEC6},+    {0x9650, 0xBEC7},+    {0x9651, 0xBEC8},+    {0x9652, 0xBEC9},+    {0x9653, 0xBECA},+    {0x9654, 0xBECB},+    {0x9655, 0xBECC},+    {0x9656, 0xBECD},+    {0x9657, 0xBECE},+    {0x9658, 0xBECF},+    {0x9659, 0xBED2},+    {0x965A, 0xBED3},+    {0x9661, 0xBED5},+    {0x9662, 0xBED6},+    {0x9663, 0xBED9},+    {0x9664, 0xBEDA},+    {0x9665, 0xBEDB},+    {0x9666, 0xBEDC},+    {0x9667, 0xBEDD},+    {0x9668, 0xBEDE},+    {0x9669, 0xBEDF},+    {0x966A, 0xBEE1},+    {0x966B, 0xBEE2},+    {0x966C, 0xBEE6},+    {0x966D, 0xBEE7},+    {0x966E, 0xBEE8},+    {0x966F, 0xBEE9},+    {0x9670, 0xBEEA},+    {0x9671, 0xBEEB},+    {0x9672, 0xBEED},+    {0x9673, 0xBEEE},+    {0x9674, 0xBEEF},+    {0x9675, 0xBEF0},+    {0x9676, 0xBEF1},+    {0x9677, 0xBEF2},+    {0x9678, 0xBEF3},+    {0x9679, 0xBEF4},+    {0x967A, 0xBEF5},+    {0x9681, 0xBEF6},+    {0x9682, 0xBEF7},+    {0x9683, 0xBEF8},+    {0x9684, 0xBEF9},+    {0x9685, 0xBEFA},+    {0x9686, 0xBEFB},+    {0x9687, 0xBEFC},+    {0x9688, 0xBEFD},+    {0x9689, 0xBEFE},+    {0x968A, 0xBEFF},+    {0x968B, 0xBF00},+    {0x968C, 0xBF02},+    {0x968D, 0xBF03},+    {0x968E, 0xBF04},+    {0x968F, 0xBF05},+    {0x9690, 0xBF06},+    {0x9691, 0xBF07},+    {0x9692, 0xBF0A},+    {0x9693, 0xBF0B},+    {0x9694, 0xBF0C},+    {0x9695, 0xBF0D},+    {0x9696, 0xBF0E},+    {0x9697, 0xBF0F},+    {0x9698, 0xBF10},+    {0x9699, 0xBF11},+    {0x969A, 0xBF12},+    {0x969B, 0xBF13},+    {0x969C, 0xBF14},+    {0x969D, 0xBF15},+    {0x969E, 0xBF16},+    {0x969F, 0xBF17},+    {0x96A0, 0xBF1A},+    {0x96A1, 0xBF1E},+    {0x96A2, 0xBF1F},+    {0x96A3, 0xBF20},+    {0x96A4, 0xBF21},+    {0x96A5, 0xBF22},+    {0x96A6, 0xBF23},+    {0x96A7, 0xBF24},+    {0x96A8, 0xBF25},+    {0x96A9, 0xBF26},+    {0x96AA, 0xBF27},+    {0x96AB, 0xBF28},+    {0x96AC, 0xBF29},+    {0x96AD, 0xBF2A},+    {0x96AE, 0xBF2B},+    {0x96AF, 0xBF2C},+    {0x96B0, 0xBF2D},+    {0x96B1, 0xBF2E},+    {0x96B2, 0xBF2F},+    {0x96B3, 0xBF30},+    {0x96B4, 0xBF31},+    {0x96B5, 0xBF32},+    {0x96B6, 0xBF33},+    {0x96B7, 0xBF34},+    {0x96B8, 0xBF35},+    {0x96B9, 0xBF36},+    {0x96BA, 0xBF37},+    {0x96BB, 0xBF38},+    {0x96BC, 0xBF39},+    {0x96BD, 0xBF3A},+    {0x96BE, 0xBF3B},+    {0x96BF, 0xBF3C},+    {0x96C0, 0xBF3D},+    {0x96C1, 0xBF3E},+    {0x96C2, 0xBF3F},+    {0x96C3, 0xBF42},+    {0x96C4, 0xBF43},+    {0x96C5, 0xBF45},+    {0x96C6, 0xBF46},+    {0x96C7, 0xBF47},+    {0x96C8, 0xBF49},+    {0x96C9, 0xBF4A},+    {0x96CA, 0xBF4B},+    {0x96CB, 0xBF4C},+    {0x96CC, 0xBF4D},+    {0x96CD, 0xBF4E},+    {0x96CE, 0xBF4F},+    {0x96CF, 0xBF52},+    {0x96D0, 0xBF53},+    {0x96D1, 0xBF54},+    {0x96D2, 0xBF56},+    {0x96D3, 0xBF57},+    {0x96D4, 0xBF58},+    {0x96D5, 0xBF59},+    {0x96D6, 0xBF5A},+    {0x96D7, 0xBF5B},+    {0x96D8, 0xBF5C},+    {0x96D9, 0xBF5D},+    {0x96DA, 0xBF5E},+    {0x96DB, 0xBF5F},+    {0x96DC, 0xBF60},+    {0x96DD, 0xBF61},+    {0x96DE, 0xBF62},+    {0x96DF, 0xBF63},+    {0x96E0, 0xBF64},+    {0x96E1, 0xBF65},+    {0x96E2, 0xBF66},+    {0x96E3, 0xBF67},+    {0x96E4, 0xBF68},+    {0x96E5, 0xBF69},+    {0x96E6, 0xBF6A},+    {0x96E7, 0xBF6B},+    {0x96E8, 0xBF6C},+    {0x96E9, 0xBF6D},+    {0x96EA, 0xBF6E},+    {0x96EB, 0xBF6F},+    {0x96EC, 0xBF70},+    {0x96ED, 0xBF71},+    {0x96EE, 0xBF72},+    {0x96EF, 0xBF73},+    {0x96F0, 0xBF74},+    {0x96F1, 0xBF75},+    {0x96F2, 0xBF76},+    {0x96F3, 0xBF77},+    {0x96F4, 0xBF78},+    {0x96F5, 0xBF79},+    {0x96F6, 0xBF7A},+    {0x96F7, 0xBF7B},+    {0x96F8, 0xBF7C},+    {0x96F9, 0xBF7D},+    {0x96FA, 0xBF7E},+    {0x96FB, 0xBF7F},+    {0x96FC, 0xBF80},+    {0x96FD, 0xBF81},+    {0x96FE, 0xBF82},+    {0x9741, 0xBF83},+    {0x9742, 0xBF84},+    {0x9743, 0xBF85},+    {0x9744, 0xBF86},+    {0x9745, 0xBF87},+    {0x9746, 0xBF88},+    {0x9747, 0xBF89},+    {0x9748, 0xBF8A},+    {0x9749, 0xBF8B},+    {0x974A, 0xBF8C},+    {0x974B, 0xBF8D},+    {0x974C, 0xBF8E},+    {0x974D, 0xBF8F},+    {0x974E, 0xBF90},+    {0x974F, 0xBF91},+    {0x9750, 0xBF92},+    {0x9751, 0xBF93},+    {0x9752, 0xBF95},+    {0x9753, 0xBF96},+    {0x9754, 0xBF97},+    {0x9755, 0xBF98},+    {0x9756, 0xBF99},+    {0x9757, 0xBF9A},+    {0x9758, 0xBF9B},+    {0x9759, 0xBF9C},+    {0x975A, 0xBF9D},+    {0x9761, 0xBF9E},+    {0x9762, 0xBF9F},+    {0x9763, 0xBFA0},+    {0x9764, 0xBFA1},+    {0x9765, 0xBFA2},+    {0x9766, 0xBFA3},+    {0x9767, 0xBFA4},+    {0x9768, 0xBFA5},+    {0x9769, 0xBFA6},+    {0x976A, 0xBFA7},+    {0x976B, 0xBFA8},+    {0x976C, 0xBFA9},+    {0x976D, 0xBFAA},+    {0x976E, 0xBFAB},+    {0x976F, 0xBFAC},+    {0x9770, 0xBFAD},+    {0x9771, 0xBFAE},+    {0x9772, 0xBFAF},+    {0x9773, 0xBFB1},+    {0x9774, 0xBFB2},+    {0x9775, 0xBFB3},+    {0x9776, 0xBFB4},+    {0x9777, 0xBFB5},+    {0x9778, 0xBFB6},+    {0x9779, 0xBFB7},+    {0x977A, 0xBFB8},+    {0x9781, 0xBFB9},+    {0x9782, 0xBFBA},+    {0x9783, 0xBFBB},+    {0x9784, 0xBFBC},+    {0x9785, 0xBFBD},+    {0x9786, 0xBFBE},+    {0x9787, 0xBFBF},+    {0x9788, 0xBFC0},+    {0x9789, 0xBFC1},+    {0x978A, 0xBFC2},+    {0x978B, 0xBFC3},+    {0x978C, 0xBFC4},+    {0x978D, 0xBFC6},+    {0x978E, 0xBFC7},+    {0x978F, 0xBFC8},+    {0x9790, 0xBFC9},+    {0x9791, 0xBFCA},+    {0x9792, 0xBFCB},+    {0x9793, 0xBFCE},+    {0x9794, 0xBFCF},+    {0x9795, 0xBFD1},+    {0x9796, 0xBFD2},+    {0x9797, 0xBFD3},+    {0x9798, 0xBFD5},+    {0x9799, 0xBFD6},+    {0x979A, 0xBFD7},+    {0x979B, 0xBFD8},+    {0x979C, 0xBFD9},+    {0x979D, 0xBFDA},+    {0x979E, 0xBFDB},+    {0x979F, 0xBFDD},+    {0x97A0, 0xBFDE},+    {0x97A1, 0xBFE0},+    {0x97A2, 0xBFE2},+    {0x97A3, 0xBFE3},+    {0x97A4, 0xBFE4},+    {0x97A5, 0xBFE5},+    {0x97A6, 0xBFE6},+    {0x97A7, 0xBFE7},+    {0x97A8, 0xBFE8},+    {0x97A9, 0xBFE9},+    {0x97AA, 0xBFEA},+    {0x97AB, 0xBFEB},+    {0x97AC, 0xBFEC},+    {0x97AD, 0xBFED},+    {0x97AE, 0xBFEE},+    {0x97AF, 0xBFEF},+    {0x97B0, 0xBFF0},+    {0x97B1, 0xBFF1},+    {0x97B2, 0xBFF2},+    {0x97B3, 0xBFF3},+    {0x97B4, 0xBFF4},+    {0x97B5, 0xBFF5},+    {0x97B6, 0xBFF6},+    {0x97B7, 0xBFF7},+    {0x97B8, 0xBFF8},+    {0x97B9, 0xBFF9},+    {0x97BA, 0xBFFA},+    {0x97BB, 0xBFFB},+    {0x97BC, 0xBFFC},+    {0x97BD, 0xBFFD},+    {0x97BE, 0xBFFE},+    {0x97BF, 0xBFFF},+    {0x97C0, 0xC000},+    {0x97C1, 0xC001},+    {0x97C2, 0xC002},+    {0x97C3, 0xC003},+    {0x97C4, 0xC004},+    {0x97C5, 0xC005},+    {0x97C6, 0xC006},+    {0x97C7, 0xC007},+    {0x97C8, 0xC008},+    {0x97C9, 0xC009},+    {0x97CA, 0xC00A},+    {0x97CB, 0xC00B},+    {0x97CC, 0xC00C},+    {0x97CD, 0xC00D},+    {0x97CE, 0xC00E},+    {0x97CF, 0xC00F},+    {0x97D0, 0xC010},+    {0x97D1, 0xC011},+    {0x97D2, 0xC012},+    {0x97D3, 0xC013},+    {0x97D4, 0xC014},+    {0x97D5, 0xC015},+    {0x97D6, 0xC016},+    {0x97D7, 0xC017},+    {0x97D8, 0xC018},+    {0x97D9, 0xC019},+    {0x97DA, 0xC01A},+    {0x97DB, 0xC01B},+    {0x97DC, 0xC01C},+    {0x97DD, 0xC01D},+    {0x97DE, 0xC01E},+    {0x97DF, 0xC01F},+    {0x97E0, 0xC020},+    {0x97E1, 0xC021},+    {0x97E2, 0xC022},+    {0x97E3, 0xC023},+    {0x97E4, 0xC024},+    {0x97E5, 0xC025},+    {0x97E6, 0xC026},+    {0x97E7, 0xC027},+    {0x97E8, 0xC028},+    {0x97E9, 0xC029},+    {0x97EA, 0xC02A},+    {0x97EB, 0xC02B},+    {0x97EC, 0xC02C},+    {0x97ED, 0xC02D},+    {0x97EE, 0xC02E},+    {0x97EF, 0xC02F},+    {0x97F0, 0xC030},+    {0x97F1, 0xC031},+    {0x97F2, 0xC032},+    {0x97F3, 0xC033},+    {0x97F4, 0xC034},+    {0x97F5, 0xC035},+    {0x97F6, 0xC036},+    {0x97F7, 0xC037},+    {0x97F8, 0xC038},+    {0x97F9, 0xC039},+    {0x97FA, 0xC03A},+    {0x97FB, 0xC03B},+    {0x97FC, 0xC03D},+    {0x97FD, 0xC03E},+    {0x97FE, 0xC03F},+    {0x9841, 0xC040},+    {0x9842, 0xC041},+    {0x9843, 0xC042},+    {0x9844, 0xC043},+    {0x9845, 0xC044},+    {0x9846, 0xC045},+    {0x9847, 0xC046},+    {0x9848, 0xC047},+    {0x9849, 0xC048},+    {0x984A, 0xC049},+    {0x984B, 0xC04A},+    {0x984C, 0xC04B},+    {0x984D, 0xC04C},+    {0x984E, 0xC04D},+    {0x984F, 0xC04E},+    {0x9850, 0xC04F},+    {0x9851, 0xC050},+    {0x9852, 0xC052},+    {0x9853, 0xC053},+    {0x9854, 0xC054},+    {0x9855, 0xC055},+    {0x9856, 0xC056},+    {0x9857, 0xC057},+    {0x9858, 0xC059},+    {0x9859, 0xC05A},+    {0x985A, 0xC05B},+    {0x9861, 0xC05D},+    {0x9862, 0xC05E},+    {0x9863, 0xC05F},+    {0x9864, 0xC061},+    {0x9865, 0xC062},+    {0x9866, 0xC063},+    {0x9867, 0xC064},+    {0x9868, 0xC065},+    {0x9869, 0xC066},+    {0x986A, 0xC067},+    {0x986B, 0xC06A},+    {0x986C, 0xC06B},+    {0x986D, 0xC06C},+    {0x986E, 0xC06D},+    {0x986F, 0xC06E},+    {0x9870, 0xC06F},+    {0x9871, 0xC070},+    {0x9872, 0xC071},+    {0x9873, 0xC072},+    {0x9874, 0xC073},+    {0x9875, 0xC074},+    {0x9876, 0xC075},+    {0x9877, 0xC076},+    {0x9878, 0xC077},+    {0x9879, 0xC078},+    {0x987A, 0xC079},+    {0x9881, 0xC07A},+    {0x9882, 0xC07B},+    {0x9883, 0xC07C},+    {0x9884, 0xC07D},+    {0x9885, 0xC07E},+    {0x9886, 0xC07F},+    {0x9887, 0xC080},+    {0x9888, 0xC081},+    {0x9889, 0xC082},+    {0x988A, 0xC083},+    {0x988B, 0xC084},+    {0x988C, 0xC085},+    {0x988D, 0xC086},+    {0x988E, 0xC087},+    {0x988F, 0xC088},+    {0x9890, 0xC089},+    {0x9891, 0xC08A},+    {0x9892, 0xC08B},+    {0x9893, 0xC08C},+    {0x9894, 0xC08D},+    {0x9895, 0xC08E},+    {0x9896, 0xC08F},+    {0x9897, 0xC092},+    {0x9898, 0xC093},+    {0x9899, 0xC095},+    {0x989A, 0xC096},+    {0x989B, 0xC097},+    {0x989C, 0xC099},+    {0x989D, 0xC09A},+    {0x989E, 0xC09B},+    {0x989F, 0xC09C},+    {0x98A0, 0xC09D},+    {0x98A1, 0xC09E},+    {0x98A2, 0xC09F},+    {0x98A3, 0xC0A2},+    {0x98A4, 0xC0A4},+    {0x98A5, 0xC0A6},+    {0x98A6, 0xC0A7},+    {0x98A7, 0xC0A8},+    {0x98A8, 0xC0A9},+    {0x98A9, 0xC0AA},+    {0x98AA, 0xC0AB},+    {0x98AB, 0xC0AE},+    {0x98AC, 0xC0B1},+    {0x98AD, 0xC0B2},+    {0x98AE, 0xC0B7},+    {0x98AF, 0xC0B8},+    {0x98B0, 0xC0B9},+    {0x98B1, 0xC0BA},+    {0x98B2, 0xC0BB},+    {0x98B3, 0xC0BE},+    {0x98B4, 0xC0C2},+    {0x98B5, 0xC0C3},+    {0x98B6, 0xC0C4},+    {0x98B7, 0xC0C6},+    {0x98B8, 0xC0C7},+    {0x98B9, 0xC0CA},+    {0x98BA, 0xC0CB},+    {0x98BB, 0xC0CD},+    {0x98BC, 0xC0CE},+    {0x98BD, 0xC0CF},+    {0x98BE, 0xC0D1},+    {0x98BF, 0xC0D2},+    {0x98C0, 0xC0D3},+    {0x98C1, 0xC0D4},+    {0x98C2, 0xC0D5},+    {0x98C3, 0xC0D6},+    {0x98C4, 0xC0D7},+    {0x98C5, 0xC0DA},+    {0x98C6, 0xC0DE},+    {0x98C7, 0xC0DF},+    {0x98C8, 0xC0E0},+    {0x98C9, 0xC0E1},+    {0x98CA, 0xC0E2},+    {0x98CB, 0xC0E3},+    {0x98CC, 0xC0E6},+    {0x98CD, 0xC0E7},+    {0x98CE, 0xC0E9},+    {0x98CF, 0xC0EA},+    {0x98D0, 0xC0EB},+    {0x98D1, 0xC0ED},+    {0x98D2, 0xC0EE},+    {0x98D3, 0xC0EF},+    {0x98D4, 0xC0F0},+    {0x98D5, 0xC0F1},+    {0x98D6, 0xC0F2},+    {0x98D7, 0xC0F3},+    {0x98D8, 0xC0F6},+    {0x98D9, 0xC0F8},+    {0x98DA, 0xC0FA},+    {0x98DB, 0xC0FB},+    {0x98DC, 0xC0FC},+    {0x98DD, 0xC0FD},+    {0x98DE, 0xC0FE},+    {0x98DF, 0xC0FF},+    {0x98E0, 0xC101},+    {0x98E1, 0xC102},+    {0x98E2, 0xC103},+    {0x98E3, 0xC105},+    {0x98E4, 0xC106},+    {0x98E5, 0xC107},+    {0x98E6, 0xC109},+    {0x98E7, 0xC10A},+    {0x98E8, 0xC10B},+    {0x98E9, 0xC10C},+    {0x98EA, 0xC10D},+    {0x98EB, 0xC10E},+    {0x98EC, 0xC10F},+    {0x98ED, 0xC111},+    {0x98EE, 0xC112},+    {0x98EF, 0xC113},+    {0x98F0, 0xC114},+    {0x98F1, 0xC116},+    {0x98F2, 0xC117},+    {0x98F3, 0xC118},+    {0x98F4, 0xC119},+    {0x98F5, 0xC11A},+    {0x98F6, 0xC11B},+    {0x98F7, 0xC121},+    {0x98F8, 0xC122},+    {0x98F9, 0xC125},+    {0x98FA, 0xC128},+    {0x98FB, 0xC129},+    {0x98FC, 0xC12A},+    {0x98FD, 0xC12B},+    {0x98FE, 0xC12E},+    {0x9941, 0xC132},+    {0x9942, 0xC133},+    {0x9943, 0xC134},+    {0x9944, 0xC135},+    {0x9945, 0xC137},+    {0x9946, 0xC13A},+    {0x9947, 0xC13B},+    {0x9948, 0xC13D},+    {0x9949, 0xC13E},+    {0x994A, 0xC13F},+    {0x994B, 0xC141},+    {0x994C, 0xC142},+    {0x994D, 0xC143},+    {0x994E, 0xC144},+    {0x994F, 0xC145},+    {0x9950, 0xC146},+    {0x9951, 0xC147},+    {0x9952, 0xC14A},+    {0x9953, 0xC14E},+    {0x9954, 0xC14F},+    {0x9955, 0xC150},+    {0x9956, 0xC151},+    {0x9957, 0xC152},+    {0x9958, 0xC153},+    {0x9959, 0xC156},+    {0x995A, 0xC157},+    {0x9961, 0xC159},+    {0x9962, 0xC15A},+    {0x9963, 0xC15B},+    {0x9964, 0xC15D},+    {0x9965, 0xC15E},+    {0x9966, 0xC15F},+    {0x9967, 0xC160},+    {0x9968, 0xC161},+    {0x9969, 0xC162},+    {0x996A, 0xC163},+    {0x996B, 0xC166},+    {0x996C, 0xC16A},+    {0x996D, 0xC16B},+    {0x996E, 0xC16C},+    {0x996F, 0xC16D},+    {0x9970, 0xC16E},+    {0x9971, 0xC16F},+    {0x9972, 0xC171},+    {0x9973, 0xC172},+    {0x9974, 0xC173},+    {0x9975, 0xC175},+    {0x9976, 0xC176},+    {0x9977, 0xC177},+    {0x9978, 0xC179},+    {0x9979, 0xC17A},+    {0x997A, 0xC17B},+    {0x9981, 0xC17C},+    {0x9982, 0xC17D},+    {0x9983, 0xC17E},+    {0x9984, 0xC17F},+    {0x9985, 0xC180},+    {0x9986, 0xC181},+    {0x9987, 0xC182},+    {0x9988, 0xC183},+    {0x9989, 0xC184},+    {0x998A, 0xC186},+    {0x998B, 0xC187},+    {0x998C, 0xC188},+    {0x998D, 0xC189},+    {0x998E, 0xC18A},+    {0x998F, 0xC18B},+    {0x9990, 0xC18F},+    {0x9991, 0xC191},+    {0x9992, 0xC192},+    {0x9993, 0xC193},+    {0x9994, 0xC195},+    {0x9995, 0xC197},+    {0x9996, 0xC198},+    {0x9997, 0xC199},+    {0x9998, 0xC19A},+    {0x9999, 0xC19B},+    {0x999A, 0xC19E},+    {0x999B, 0xC1A0},+    {0x999C, 0xC1A2},+    {0x999D, 0xC1A3},+    {0x999E, 0xC1A4},+    {0x999F, 0xC1A6},+    {0x99A0, 0xC1A7},+    {0x99A1, 0xC1AA},+    {0x99A2, 0xC1AB},+    {0x99A3, 0xC1AD},+    {0x99A4, 0xC1AE},+    {0x99A5, 0xC1AF},+    {0x99A6, 0xC1B1},+    {0x99A7, 0xC1B2},+    {0x99A8, 0xC1B3},+    {0x99A9, 0xC1B4},+    {0x99AA, 0xC1B5},+    {0x99AB, 0xC1B6},+    {0x99AC, 0xC1B7},+    {0x99AD, 0xC1B8},+    {0x99AE, 0xC1B9},+    {0x99AF, 0xC1BA},+    {0x99B0, 0xC1BB},+    {0x99B1, 0xC1BC},+    {0x99B2, 0xC1BE},+    {0x99B3, 0xC1BF},+    {0x99B4, 0xC1C0},+    {0x99B5, 0xC1C1},+    {0x99B6, 0xC1C2},+    {0x99B7, 0xC1C3},+    {0x99B8, 0xC1C5},+    {0x99B9, 0xC1C6},+    {0x99BA, 0xC1C7},+    {0x99BB, 0xC1C9},+    {0x99BC, 0xC1CA},+    {0x99BD, 0xC1CB},+    {0x99BE, 0xC1CD},+    {0x99BF, 0xC1CE},+    {0x99C0, 0xC1CF},+    {0x99C1, 0xC1D0},+    {0x99C2, 0xC1D1},+    {0x99C3, 0xC1D2},+    {0x99C4, 0xC1D3},+    {0x99C5, 0xC1D5},+    {0x99C6, 0xC1D6},+    {0x99C7, 0xC1D9},+    {0x99C8, 0xC1DA},+    {0x99C9, 0xC1DB},+    {0x99CA, 0xC1DC},+    {0x99CB, 0xC1DD},+    {0x99CC, 0xC1DE},+    {0x99CD, 0xC1DF},+    {0x99CE, 0xC1E1},+    {0x99CF, 0xC1E2},+    {0x99D0, 0xC1E3},+    {0x99D1, 0xC1E5},+    {0x99D2, 0xC1E6},+    {0x99D3, 0xC1E7},+    {0x99D4, 0xC1E9},+    {0x99D5, 0xC1EA},+    {0x99D6, 0xC1EB},+    {0x99D7, 0xC1EC},+    {0x99D8, 0xC1ED},+    {0x99D9, 0xC1EE},+    {0x99DA, 0xC1EF},+    {0x99DB, 0xC1F2},+    {0x99DC, 0xC1F4},+    {0x99DD, 0xC1F5},+    {0x99DE, 0xC1F6},+    {0x99DF, 0xC1F7},+    {0x99E0, 0xC1F8},+    {0x99E1, 0xC1F9},+    {0x99E2, 0xC1FA},+    {0x99E3, 0xC1FB},+    {0x99E4, 0xC1FE},+    {0x99E5, 0xC1FF},+    {0x99E6, 0xC201},+    {0x99E7, 0xC202},+    {0x99E8, 0xC203},+    {0x99E9, 0xC205},+    {0x99EA, 0xC206},+    {0x99EB, 0xC207},+    {0x99EC, 0xC208},+    {0x99ED, 0xC209},+    {0x99EE, 0xC20A},+    {0x99EF, 0xC20B},+    {0x99F0, 0xC20E},+    {0x99F1, 0xC210},+    {0x99F2, 0xC212},+    {0x99F3, 0xC213},+    {0x99F4, 0xC214},+    {0x99F5, 0xC215},+    {0x99F6, 0xC216},+    {0x99F7, 0xC217},+    {0x99F8, 0xC21A},+    {0x99F9, 0xC21B},+    {0x99FA, 0xC21D},+    {0x99FB, 0xC21E},+    {0x99FC, 0xC221},+    {0x99FD, 0xC222},+    {0x99FE, 0xC223},+    {0x9A41, 0xC224},+    {0x9A42, 0xC225},+    {0x9A43, 0xC226},+    {0x9A44, 0xC227},+    {0x9A45, 0xC22A},+    {0x9A46, 0xC22C},+    {0x9A47, 0xC22E},+    {0x9A48, 0xC230},+    {0x9A49, 0xC233},+    {0x9A4A, 0xC235},+    {0x9A4B, 0xC236},+    {0x9A4C, 0xC237},+    {0x9A4D, 0xC238},+    {0x9A4E, 0xC239},+    {0x9A4F, 0xC23A},+    {0x9A50, 0xC23B},+    {0x9A51, 0xC23C},+    {0x9A52, 0xC23D},+    {0x9A53, 0xC23E},+    {0x9A54, 0xC23F},+    {0x9A55, 0xC240},+    {0x9A56, 0xC241},+    {0x9A57, 0xC242},+    {0x9A58, 0xC243},+    {0x9A59, 0xC244},+    {0x9A5A, 0xC245},+    {0x9A61, 0xC246},+    {0x9A62, 0xC247},+    {0x9A63, 0xC249},+    {0x9A64, 0xC24A},+    {0x9A65, 0xC24B},+    {0x9A66, 0xC24C},+    {0x9A67, 0xC24D},+    {0x9A68, 0xC24E},+    {0x9A69, 0xC24F},+    {0x9A6A, 0xC252},+    {0x9A6B, 0xC253},+    {0x9A6C, 0xC255},+    {0x9A6D, 0xC256},+    {0x9A6E, 0xC257},+    {0x9A6F, 0xC259},+    {0x9A70, 0xC25A},+    {0x9A71, 0xC25B},+    {0x9A72, 0xC25C},+    {0x9A73, 0xC25D},+    {0x9A74, 0xC25E},+    {0x9A75, 0xC25F},+    {0x9A76, 0xC261},+    {0x9A77, 0xC262},+    {0x9A78, 0xC263},+    {0x9A79, 0xC264},+    {0x9A7A, 0xC266},+    {0x9A81, 0xC267},+    {0x9A82, 0xC268},+    {0x9A83, 0xC269},+    {0x9A84, 0xC26A},+    {0x9A85, 0xC26B},+    {0x9A86, 0xC26E},+    {0x9A87, 0xC26F},+    {0x9A88, 0xC271},+    {0x9A89, 0xC272},+    {0x9A8A, 0xC273},+    {0x9A8B, 0xC275},+    {0x9A8C, 0xC276},+    {0x9A8D, 0xC277},+    {0x9A8E, 0xC278},+    {0x9A8F, 0xC279},+    {0x9A90, 0xC27A},+    {0x9A91, 0xC27B},+    {0x9A92, 0xC27E},+    {0x9A93, 0xC280},+    {0x9A94, 0xC282},+    {0x9A95, 0xC283},+    {0x9A96, 0xC284},+    {0x9A97, 0xC285},+    {0x9A98, 0xC286},+    {0x9A99, 0xC287},+    {0x9A9A, 0xC28A},+    {0x9A9B, 0xC28B},+    {0x9A9C, 0xC28C},+    {0x9A9D, 0xC28D},+    {0x9A9E, 0xC28E},+    {0x9A9F, 0xC28F},+    {0x9AA0, 0xC291},+    {0x9AA1, 0xC292},+    {0x9AA2, 0xC293},+    {0x9AA3, 0xC294},+    {0x9AA4, 0xC295},+    {0x9AA5, 0xC296},+    {0x9AA6, 0xC297},+    {0x9AA7, 0xC299},+    {0x9AA8, 0xC29A},+    {0x9AA9, 0xC29C},+    {0x9AAA, 0xC29E},+    {0x9AAB, 0xC29F},+    {0x9AAC, 0xC2A0},+    {0x9AAD, 0xC2A1},+    {0x9AAE, 0xC2A2},+    {0x9AAF, 0xC2A3},+    {0x9AB0, 0xC2A6},+    {0x9AB1, 0xC2A7},+    {0x9AB2, 0xC2A9},+    {0x9AB3, 0xC2AA},+    {0x9AB4, 0xC2AB},+    {0x9AB5, 0xC2AE},+    {0x9AB6, 0xC2AF},+    {0x9AB7, 0xC2B0},+    {0x9AB8, 0xC2B1},+    {0x9AB9, 0xC2B2},+    {0x9ABA, 0xC2B3},+    {0x9ABB, 0xC2B6},+    {0x9ABC, 0xC2B8},+    {0x9ABD, 0xC2BA},+    {0x9ABE, 0xC2BB},+    {0x9ABF, 0xC2BC},+    {0x9AC0, 0xC2BD},+    {0x9AC1, 0xC2BE},+    {0x9AC2, 0xC2BF},+    {0x9AC3, 0xC2C0},+    {0x9AC4, 0xC2C1},+    {0x9AC5, 0xC2C2},+    {0x9AC6, 0xC2C3},+    {0x9AC7, 0xC2C4},+    {0x9AC8, 0xC2C5},+    {0x9AC9, 0xC2C6},+    {0x9ACA, 0xC2C7},+    {0x9ACB, 0xC2C8},+    {0x9ACC, 0xC2C9},+    {0x9ACD, 0xC2CA},+    {0x9ACE, 0xC2CB},+    {0x9ACF, 0xC2CC},+    {0x9AD0, 0xC2CD},+    {0x9AD1, 0xC2CE},+    {0x9AD2, 0xC2CF},+    {0x9AD3, 0xC2D0},+    {0x9AD4, 0xC2D1},+    {0x9AD5, 0xC2D2},+    {0x9AD6, 0xC2D3},+    {0x9AD7, 0xC2D4},+    {0x9AD8, 0xC2D5},+    {0x9AD9, 0xC2D6},+    {0x9ADA, 0xC2D7},+    {0x9ADB, 0xC2D8},+    {0x9ADC, 0xC2D9},+    {0x9ADD, 0xC2DA},+    {0x9ADE, 0xC2DB},+    {0x9ADF, 0xC2DE},+    {0x9AE0, 0xC2DF},+    {0x9AE1, 0xC2E1},+    {0x9AE2, 0xC2E2},+    {0x9AE3, 0xC2E5},+    {0x9AE4, 0xC2E6},+    {0x9AE5, 0xC2E7},+    {0x9AE6, 0xC2E8},+    {0x9AE7, 0xC2E9},+    {0x9AE8, 0xC2EA},+    {0x9AE9, 0xC2EE},+    {0x9AEA, 0xC2F0},+    {0x9AEB, 0xC2F2},+    {0x9AEC, 0xC2F3},+    {0x9AED, 0xC2F4},+    {0x9AEE, 0xC2F5},+    {0x9AEF, 0xC2F7},+    {0x9AF0, 0xC2FA},+    {0x9AF1, 0xC2FD},+    {0x9AF2, 0xC2FE},+    {0x9AF3, 0xC2FF},+    {0x9AF4, 0xC301},+    {0x9AF5, 0xC302},+    {0x9AF6, 0xC303},+    {0x9AF7, 0xC304},+    {0x9AF8, 0xC305},+    {0x9AF9, 0xC306},+    {0x9AFA, 0xC307},+    {0x9AFB, 0xC30A},+    {0x9AFC, 0xC30B},+    {0x9AFD, 0xC30E},+    {0x9AFE, 0xC30F},+    {0x9B41, 0xC310},+    {0x9B42, 0xC311},+    {0x9B43, 0xC312},+    {0x9B44, 0xC316},+    {0x9B45, 0xC317},+    {0x9B46, 0xC319},+    {0x9B47, 0xC31A},+    {0x9B48, 0xC31B},+    {0x9B49, 0xC31D},+    {0x9B4A, 0xC31E},+    {0x9B4B, 0xC31F},+    {0x9B4C, 0xC320},+    {0x9B4D, 0xC321},+    {0x9B4E, 0xC322},+    {0x9B4F, 0xC323},+    {0x9B50, 0xC326},+    {0x9B51, 0xC327},+    {0x9B52, 0xC32A},+    {0x9B53, 0xC32B},+    {0x9B54, 0xC32C},+    {0x9B55, 0xC32D},+    {0x9B56, 0xC32E},+    {0x9B57, 0xC32F},+    {0x9B58, 0xC330},+    {0x9B59, 0xC331},+    {0x9B5A, 0xC332},+    {0x9B61, 0xC333},+    {0x9B62, 0xC334},+    {0x9B63, 0xC335},+    {0x9B64, 0xC336},+    {0x9B65, 0xC337},+    {0x9B66, 0xC338},+    {0x9B67, 0xC339},+    {0x9B68, 0xC33A},+    {0x9B69, 0xC33B},+    {0x9B6A, 0xC33C},+    {0x9B6B, 0xC33D},+    {0x9B6C, 0xC33E},+    {0x9B6D, 0xC33F},+    {0x9B6E, 0xC340},+    {0x9B6F, 0xC341},+    {0x9B70, 0xC342},+    {0x9B71, 0xC343},+    {0x9B72, 0xC344},+    {0x9B73, 0xC346},+    {0x9B74, 0xC347},+    {0x9B75, 0xC348},+    {0x9B76, 0xC349},+    {0x9B77, 0xC34A},+    {0x9B78, 0xC34B},+    {0x9B79, 0xC34C},+    {0x9B7A, 0xC34D},+    {0x9B81, 0xC34E},+    {0x9B82, 0xC34F},+    {0x9B83, 0xC350},+    {0x9B84, 0xC351},+    {0x9B85, 0xC352},+    {0x9B86, 0xC353},+    {0x9B87, 0xC354},+    {0x9B88, 0xC355},+    {0x9B89, 0xC356},+    {0x9B8A, 0xC357},+    {0x9B8B, 0xC358},+    {0x9B8C, 0xC359},+    {0x9B8D, 0xC35A},+    {0x9B8E, 0xC35B},+    {0x9B8F, 0xC35C},+    {0x9B90, 0xC35D},+    {0x9B91, 0xC35E},+    {0x9B92, 0xC35F},+    {0x9B93, 0xC360},+    {0x9B94, 0xC361},+    {0x9B95, 0xC362},+    {0x9B96, 0xC363},+    {0x9B97, 0xC364},+    {0x9B98, 0xC365},+    {0x9B99, 0xC366},+    {0x9B9A, 0xC367},+    {0x9B9B, 0xC36A},+    {0x9B9C, 0xC36B},+    {0x9B9D, 0xC36D},+    {0x9B9E, 0xC36E},+    {0x9B9F, 0xC36F},+    {0x9BA0, 0xC371},+    {0x9BA1, 0xC373},+    {0x9BA2, 0xC374},+    {0x9BA3, 0xC375},+    {0x9BA4, 0xC376},+    {0x9BA5, 0xC377},+    {0x9BA6, 0xC37A},+    {0x9BA7, 0xC37B},+    {0x9BA8, 0xC37E},+    {0x9BA9, 0xC37F},+    {0x9BAA, 0xC380},+    {0x9BAB, 0xC381},+    {0x9BAC, 0xC382},+    {0x9BAD, 0xC383},+    {0x9BAE, 0xC385},+    {0x9BAF, 0xC386},+    {0x9BB0, 0xC387},+    {0x9BB1, 0xC389},+    {0x9BB2, 0xC38A},+    {0x9BB3, 0xC38B},+    {0x9BB4, 0xC38D},+    {0x9BB5, 0xC38E},+    {0x9BB6, 0xC38F},+    {0x9BB7, 0xC390},+    {0x9BB8, 0xC391},+    {0x9BB9, 0xC392},+    {0x9BBA, 0xC393},+    {0x9BBB, 0xC394},+    {0x9BBC, 0xC395},+    {0x9BBD, 0xC396},+    {0x9BBE, 0xC397},+    {0x9BBF, 0xC398},+    {0x9BC0, 0xC399},+    {0x9BC1, 0xC39A},+    {0x9BC2, 0xC39B},+    {0x9BC3, 0xC39C},+    {0x9BC4, 0xC39D},+    {0x9BC5, 0xC39E},+    {0x9BC6, 0xC39F},+    {0x9BC7, 0xC3A0},+    {0x9BC8, 0xC3A1},+    {0x9BC9, 0xC3A2},+    {0x9BCA, 0xC3A3},+    {0x9BCB, 0xC3A4},+    {0x9BCC, 0xC3A5},+    {0x9BCD, 0xC3A6},+    {0x9BCE, 0xC3A7},+    {0x9BCF, 0xC3A8},+    {0x9BD0, 0xC3A9},+    {0x9BD1, 0xC3AA},+    {0x9BD2, 0xC3AB},+    {0x9BD3, 0xC3AC},+    {0x9BD4, 0xC3AD},+    {0x9BD5, 0xC3AE},+    {0x9BD6, 0xC3AF},+    {0x9BD7, 0xC3B0},+    {0x9BD8, 0xC3B1},+    {0x9BD9, 0xC3B2},+    {0x9BDA, 0xC3B3},+    {0x9BDB, 0xC3B4},+    {0x9BDC, 0xC3B5},+    {0x9BDD, 0xC3B6},+    {0x9BDE, 0xC3B7},+    {0x9BDF, 0xC3B8},+    {0x9BE0, 0xC3B9},+    {0x9BE1, 0xC3BA},+    {0x9BE2, 0xC3BB},+    {0x9BE3, 0xC3BC},+    {0x9BE4, 0xC3BD},+    {0x9BE5, 0xC3BE},+    {0x9BE6, 0xC3BF},+    {0x9BE7, 0xC3C1},+    {0x9BE8, 0xC3C2},+    {0x9BE9, 0xC3C3},+    {0x9BEA, 0xC3C4},+    {0x9BEB, 0xC3C5},+    {0x9BEC, 0xC3C6},+    {0x9BED, 0xC3C7},+    {0x9BEE, 0xC3C8},+    {0x9BEF, 0xC3C9},+    {0x9BF0, 0xC3CA},+    {0x9BF1, 0xC3CB},+    {0x9BF2, 0xC3CC},+    {0x9BF3, 0xC3CD},+    {0x9BF4, 0xC3CE},+    {0x9BF5, 0xC3CF},+    {0x9BF6, 0xC3D0},+    {0x9BF7, 0xC3D1},+    {0x9BF8, 0xC3D2},+    {0x9BF9, 0xC3D3},+    {0x9BFA, 0xC3D4},+    {0x9BFB, 0xC3D5},+    {0x9BFC, 0xC3D6},+    {0x9BFD, 0xC3D7},+    {0x9BFE, 0xC3DA},+    {0x9C41, 0xC3DB},+    {0x9C42, 0xC3DD},+    {0x9C43, 0xC3DE},+    {0x9C44, 0xC3E1},+    {0x9C45, 0xC3E3},+    {0x9C46, 0xC3E4},+    {0x9C47, 0xC3E5},+    {0x9C48, 0xC3E6},+    {0x9C49, 0xC3E7},+    {0x9C4A, 0xC3EA},+    {0x9C4B, 0xC3EB},+    {0x9C4C, 0xC3EC},+    {0x9C4D, 0xC3EE},+    {0x9C4E, 0xC3EF},+    {0x9C4F, 0xC3F0},+    {0x9C50, 0xC3F1},+    {0x9C51, 0xC3F2},+    {0x9C52, 0xC3F3},+    {0x9C53, 0xC3F6},+    {0x9C54, 0xC3F7},+    {0x9C55, 0xC3F9},+    {0x9C56, 0xC3FA},+    {0x9C57, 0xC3FB},+    {0x9C58, 0xC3FC},+    {0x9C59, 0xC3FD},+    {0x9C5A, 0xC3FE},+    {0x9C61, 0xC3FF},+    {0x9C62, 0xC400},+    {0x9C63, 0xC401},+    {0x9C64, 0xC402},+    {0x9C65, 0xC403},+    {0x9C66, 0xC404},+    {0x9C67, 0xC405},+    {0x9C68, 0xC406},+    {0x9C69, 0xC407},+    {0x9C6A, 0xC409},+    {0x9C6B, 0xC40A},+    {0x9C6C, 0xC40B},+    {0x9C6D, 0xC40C},+    {0x9C6E, 0xC40D},+    {0x9C6F, 0xC40E},+    {0x9C70, 0xC40F},+    {0x9C71, 0xC411},+    {0x9C72, 0xC412},+    {0x9C73, 0xC413},+    {0x9C74, 0xC414},+    {0x9C75, 0xC415},+    {0x9C76, 0xC416},+    {0x9C77, 0xC417},+    {0x9C78, 0xC418},+    {0x9C79, 0xC419},+    {0x9C7A, 0xC41A},+    {0x9C81, 0xC41B},+    {0x9C82, 0xC41C},+    {0x9C83, 0xC41D},+    {0x9C84, 0xC41E},+    {0x9C85, 0xC41F},+    {0x9C86, 0xC420},+    {0x9C87, 0xC421},+    {0x9C88, 0xC422},+    {0x9C89, 0xC423},+    {0x9C8A, 0xC425},+    {0x9C8B, 0xC426},+    {0x9C8C, 0xC427},+    {0x9C8D, 0xC428},+    {0x9C8E, 0xC429},+    {0x9C8F, 0xC42A},+    {0x9C90, 0xC42B},+    {0x9C91, 0xC42D},+    {0x9C92, 0xC42E},+    {0x9C93, 0xC42F},+    {0x9C94, 0xC431},+    {0x9C95, 0xC432},+    {0x9C96, 0xC433},+    {0x9C97, 0xC435},+    {0x9C98, 0xC436},+    {0x9C99, 0xC437},+    {0x9C9A, 0xC438},+    {0x9C9B, 0xC439},+    {0x9C9C, 0xC43A},+    {0x9C9D, 0xC43B},+    {0x9C9E, 0xC43E},+    {0x9C9F, 0xC43F},+    {0x9CA0, 0xC440},+    {0x9CA1, 0xC441},+    {0x9CA2, 0xC442},+    {0x9CA3, 0xC443},+    {0x9CA4, 0xC444},+    {0x9CA5, 0xC445},+    {0x9CA6, 0xC446},+    {0x9CA7, 0xC447},+    {0x9CA8, 0xC449},+    {0x9CA9, 0xC44A},+    {0x9CAA, 0xC44B},+    {0x9CAB, 0xC44C},+    {0x9CAC, 0xC44D},+    {0x9CAD, 0xC44E},+    {0x9CAE, 0xC44F},+    {0x9CAF, 0xC450},+    {0x9CB0, 0xC451},+    {0x9CB1, 0xC452},+    {0x9CB2, 0xC453},+    {0x9CB3, 0xC454},+    {0x9CB4, 0xC455},+    {0x9CB5, 0xC456},+    {0x9CB6, 0xC457},+    {0x9CB7, 0xC458},+    {0x9CB8, 0xC459},+    {0x9CB9, 0xC45A},+    {0x9CBA, 0xC45B},+    {0x9CBB, 0xC45C},+    {0x9CBC, 0xC45D},+    {0x9CBD, 0xC45E},+    {0x9CBE, 0xC45F},+    {0x9CBF, 0xC460},+    {0x9CC0, 0xC461},+    {0x9CC1, 0xC462},+    {0x9CC2, 0xC463},+    {0x9CC3, 0xC466},+    {0x9CC4, 0xC467},+    {0x9CC5, 0xC469},+    {0x9CC6, 0xC46A},+    {0x9CC7, 0xC46B},+    {0x9CC8, 0xC46D},+    {0x9CC9, 0xC46E},+    {0x9CCA, 0xC46F},+    {0x9CCB, 0xC470},+    {0x9CCC, 0xC471},+    {0x9CCD, 0xC472},+    {0x9CCE, 0xC473},+    {0x9CCF, 0xC476},+    {0x9CD0, 0xC477},+    {0x9CD1, 0xC478},+    {0x9CD2, 0xC47A},+    {0x9CD3, 0xC47B},+    {0x9CD4, 0xC47C},+    {0x9CD5, 0xC47D},+    {0x9CD6, 0xC47E},+    {0x9CD7, 0xC47F},+    {0x9CD8, 0xC481},+    {0x9CD9, 0xC482},+    {0x9CDA, 0xC483},+    {0x9CDB, 0xC484},+    {0x9CDC, 0xC485},+    {0x9CDD, 0xC486},+    {0x9CDE, 0xC487},+    {0x9CDF, 0xC488},+    {0x9CE0, 0xC489},+    {0x9CE1, 0xC48A},+    {0x9CE2, 0xC48B},+    {0x9CE3, 0xC48C},+    {0x9CE4, 0xC48D},+    {0x9CE5, 0xC48E},+    {0x9CE6, 0xC48F},+    {0x9CE7, 0xC490},+    {0x9CE8, 0xC491},+    {0x9CE9, 0xC492},+    {0x9CEA, 0xC493},+    {0x9CEB, 0xC495},+    {0x9CEC, 0xC496},+    {0x9CED, 0xC497},+    {0x9CEE, 0xC498},+    {0x9CEF, 0xC499},+    {0x9CF0, 0xC49A},+    {0x9CF1, 0xC49B},+    {0x9CF2, 0xC49D},+    {0x9CF3, 0xC49E},+    {0x9CF4, 0xC49F},+    {0x9CF5, 0xC4A0},+    {0x9CF6, 0xC4A1},+    {0x9CF7, 0xC4A2},+    {0x9CF8, 0xC4A3},+    {0x9CF9, 0xC4A4},+    {0x9CFA, 0xC4A5},+    {0x9CFB, 0xC4A6},+    {0x9CFC, 0xC4A7},+    {0x9CFD, 0xC4A8},+    {0x9CFE, 0xC4A9},+    {0x9D41, 0xC4AA},+    {0x9D42, 0xC4AB},+    {0x9D43, 0xC4AC},+    {0x9D44, 0xC4AD},+    {0x9D45, 0xC4AE},+    {0x9D46, 0xC4AF},+    {0x9D47, 0xC4B0},+    {0x9D48, 0xC4B1},+    {0x9D49, 0xC4B2},+    {0x9D4A, 0xC4B3},+    {0x9D4B, 0xC4B4},+    {0x9D4C, 0xC4B5},+    {0x9D4D, 0xC4B6},+    {0x9D4E, 0xC4B7},+    {0x9D4F, 0xC4B9},+    {0x9D50, 0xC4BA},+    {0x9D51, 0xC4BB},+    {0x9D52, 0xC4BD},+    {0x9D53, 0xC4BE},+    {0x9D54, 0xC4BF},+    {0x9D55, 0xC4C0},+    {0x9D56, 0xC4C1},+    {0x9D57, 0xC4C2},+    {0x9D58, 0xC4C3},+    {0x9D59, 0xC4C4},+    {0x9D5A, 0xC4C5},+    {0x9D61, 0xC4C6},+    {0x9D62, 0xC4C7},+    {0x9D63, 0xC4C8},+    {0x9D64, 0xC4C9},+    {0x9D65, 0xC4CA},+    {0x9D66, 0xC4CB},+    {0x9D67, 0xC4CC},+    {0x9D68, 0xC4CD},+    {0x9D69, 0xC4CE},+    {0x9D6A, 0xC4CF},+    {0x9D6B, 0xC4D0},+    {0x9D6C, 0xC4D1},+    {0x9D6D, 0xC4D2},+    {0x9D6E, 0xC4D3},+    {0x9D6F, 0xC4D4},+    {0x9D70, 0xC4D5},+    {0x9D71, 0xC4D6},+    {0x9D72, 0xC4D7},+    {0x9D73, 0xC4D8},+    {0x9D74, 0xC4D9},+    {0x9D75, 0xC4DA},+    {0x9D76, 0xC4DB},+    {0x9D77, 0xC4DC},+    {0x9D78, 0xC4DD},+    {0x9D79, 0xC4DE},+    {0x9D7A, 0xC4DF},+    {0x9D81, 0xC4E0},+    {0x9D82, 0xC4E1},+    {0x9D83, 0xC4E2},+    {0x9D84, 0xC4E3},+    {0x9D85, 0xC4E4},+    {0x9D86, 0xC4E5},+    {0x9D87, 0xC4E6},+    {0x9D88, 0xC4E7},+    {0x9D89, 0xC4E8},+    {0x9D8A, 0xC4EA},+    {0x9D8B, 0xC4EB},+    {0x9D8C, 0xC4EC},+    {0x9D8D, 0xC4ED},+    {0x9D8E, 0xC4EE},+    {0x9D8F, 0xC4EF},+    {0x9D90, 0xC4F2},+    {0x9D91, 0xC4F3},+    {0x9D92, 0xC4F5},+    {0x9D93, 0xC4F6},+    {0x9D94, 0xC4F7},+    {0x9D95, 0xC4F9},+    {0x9D96, 0xC4FB},+    {0x9D97, 0xC4FC},+    {0x9D98, 0xC4FD},+    {0x9D99, 0xC4FE},+    {0x9D9A, 0xC502},+    {0x9D9B, 0xC503},+    {0x9D9C, 0xC504},+    {0x9D9D, 0xC505},+    {0x9D9E, 0xC506},+    {0x9D9F, 0xC507},+    {0x9DA0, 0xC508},+    {0x9DA1, 0xC509},+    {0x9DA2, 0xC50A},+    {0x9DA3, 0xC50B},+    {0x9DA4, 0xC50D},+    {0x9DA5, 0xC50E},+    {0x9DA6, 0xC50F},+    {0x9DA7, 0xC511},+    {0x9DA8, 0xC512},+    {0x9DA9, 0xC513},+    {0x9DAA, 0xC515},+    {0x9DAB, 0xC516},+    {0x9DAC, 0xC517},+    {0x9DAD, 0xC518},+    {0x9DAE, 0xC519},+    {0x9DAF, 0xC51A},+    {0x9DB0, 0xC51B},+    {0x9DB1, 0xC51D},+    {0x9DB2, 0xC51E},+    {0x9DB3, 0xC51F},+    {0x9DB4, 0xC520},+    {0x9DB5, 0xC521},+    {0x9DB6, 0xC522},+    {0x9DB7, 0xC523},+    {0x9DB8, 0xC524},+    {0x9DB9, 0xC525},+    {0x9DBA, 0xC526},+    {0x9DBB, 0xC527},+    {0x9DBC, 0xC52A},+    {0x9DBD, 0xC52B},+    {0x9DBE, 0xC52D},+    {0x9DBF, 0xC52E},+    {0x9DC0, 0xC52F},+    {0x9DC1, 0xC531},+    {0x9DC2, 0xC532},+    {0x9DC3, 0xC533},+    {0x9DC4, 0xC534},+    {0x9DC5, 0xC535},+    {0x9DC6, 0xC536},+    {0x9DC7, 0xC537},+    {0x9DC8, 0xC53A},+    {0x9DC9, 0xC53C},+    {0x9DCA, 0xC53E},+    {0x9DCB, 0xC53F},+    {0x9DCC, 0xC540},+    {0x9DCD, 0xC541},+    {0x9DCE, 0xC542},+    {0x9DCF, 0xC543},+    {0x9DD0, 0xC546},+    {0x9DD1, 0xC547},+    {0x9DD2, 0xC54B},+    {0x9DD3, 0xC54F},+    {0x9DD4, 0xC550},+    {0x9DD5, 0xC551},+    {0x9DD6, 0xC552},+    {0x9DD7, 0xC556},+    {0x9DD8, 0xC55A},+    {0x9DD9, 0xC55B},+    {0x9DDA, 0xC55C},+    {0x9DDB, 0xC55F},+    {0x9DDC, 0xC562},+    {0x9DDD, 0xC563},+    {0x9DDE, 0xC565},+    {0x9DDF, 0xC566},+    {0x9DE0, 0xC567},+    {0x9DE1, 0xC569},+    {0x9DE2, 0xC56A},+    {0x9DE3, 0xC56B},+    {0x9DE4, 0xC56C},+    {0x9DE5, 0xC56D},+    {0x9DE6, 0xC56E},+    {0x9DE7, 0xC56F},+    {0x9DE8, 0xC572},+    {0x9DE9, 0xC576},+    {0x9DEA, 0xC577},+    {0x9DEB, 0xC578},+    {0x9DEC, 0xC579},+    {0x9DED, 0xC57A},+    {0x9DEE, 0xC57B},+    {0x9DEF, 0xC57E},+    {0x9DF0, 0xC57F},+    {0x9DF1, 0xC581},+    {0x9DF2, 0xC582},+    {0x9DF3, 0xC583},+    {0x9DF4, 0xC585},+    {0x9DF5, 0xC586},+    {0x9DF6, 0xC588},+    {0x9DF7, 0xC589},+    {0x9DF8, 0xC58A},+    {0x9DF9, 0xC58B},+    {0x9DFA, 0xC58E},+    {0x9DFB, 0xC590},+    {0x9DFC, 0xC592},+    {0x9DFD, 0xC593},+    {0x9DFE, 0xC594},+    {0x9E41, 0xC596},+    {0x9E42, 0xC599},+    {0x9E43, 0xC59A},+    {0x9E44, 0xC59B},+    {0x9E45, 0xC59D},+    {0x9E46, 0xC59E},+    {0x9E47, 0xC59F},+    {0x9E48, 0xC5A1},+    {0x9E49, 0xC5A2},+    {0x9E4A, 0xC5A3},+    {0x9E4B, 0xC5A4},+    {0x9E4C, 0xC5A5},+    {0x9E4D, 0xC5A6},+    {0x9E4E, 0xC5A7},+    {0x9E4F, 0xC5A8},+    {0x9E50, 0xC5AA},+    {0x9E51, 0xC5AB},+    {0x9E52, 0xC5AC},+    {0x9E53, 0xC5AD},+    {0x9E54, 0xC5AE},+    {0x9E55, 0xC5AF},+    {0x9E56, 0xC5B0},+    {0x9E57, 0xC5B1},+    {0x9E58, 0xC5B2},+    {0x9E59, 0xC5B3},+    {0x9E5A, 0xC5B6},+    {0x9E61, 0xC5B7},+    {0x9E62, 0xC5BA},+    {0x9E63, 0xC5BF},+    {0x9E64, 0xC5C0},+    {0x9E65, 0xC5C1},+    {0x9E66, 0xC5C2},+    {0x9E67, 0xC5C3},+    {0x9E68, 0xC5CB},+    {0x9E69, 0xC5CD},+    {0x9E6A, 0xC5CF},+    {0x9E6B, 0xC5D2},+    {0x9E6C, 0xC5D3},+    {0x9E6D, 0xC5D5},+    {0x9E6E, 0xC5D6},+    {0x9E6F, 0xC5D7},+    {0x9E70, 0xC5D9},+    {0x9E71, 0xC5DA},+    {0x9E72, 0xC5DB},+    {0x9E73, 0xC5DC},+    {0x9E74, 0xC5DD},+    {0x9E75, 0xC5DE},+    {0x9E76, 0xC5DF},+    {0x9E77, 0xC5E2},+    {0x9E78, 0xC5E4},+    {0x9E79, 0xC5E6},+    {0x9E7A, 0xC5E7},+    {0x9E81, 0xC5E8},+    {0x9E82, 0xC5E9},+    {0x9E83, 0xC5EA},+    {0x9E84, 0xC5EB},+    {0x9E85, 0xC5EF},+    {0x9E86, 0xC5F1},+    {0x9E87, 0xC5F2},+    {0x9E88, 0xC5F3},+    {0x9E89, 0xC5F5},+    {0x9E8A, 0xC5F8},+    {0x9E8B, 0xC5F9},+    {0x9E8C, 0xC5FA},+    {0x9E8D, 0xC5FB},+    {0x9E8E, 0xC602},+    {0x9E8F, 0xC603},+    {0x9E90, 0xC604},+    {0x9E91, 0xC609},+    {0x9E92, 0xC60A},+    {0x9E93, 0xC60B},+    {0x9E94, 0xC60D},+    {0x9E95, 0xC60E},+    {0x9E96, 0xC60F},+    {0x9E97, 0xC611},+    {0x9E98, 0xC612},+    {0x9E99, 0xC613},+    {0x9E9A, 0xC614},+    {0x9E9B, 0xC615},+    {0x9E9C, 0xC616},+    {0x9E9D, 0xC617},+    {0x9E9E, 0xC61A},+    {0x9E9F, 0xC61D},+    {0x9EA0, 0xC61E},+    {0x9EA1, 0xC61F},+    {0x9EA2, 0xC620},+    {0x9EA3, 0xC621},+    {0x9EA4, 0xC622},+    {0x9EA5, 0xC623},+    {0x9EA6, 0xC626},+    {0x9EA7, 0xC627},+    {0x9EA8, 0xC629},+    {0x9EA9, 0xC62A},+    {0x9EAA, 0xC62B},+    {0x9EAB, 0xC62F},+    {0x9EAC, 0xC631},+    {0x9EAD, 0xC632},+    {0x9EAE, 0xC636},+    {0x9EAF, 0xC638},+    {0x9EB0, 0xC63A},+    {0x9EB1, 0xC63C},+    {0x9EB2, 0xC63D},+    {0x9EB3, 0xC63E},+    {0x9EB4, 0xC63F},+    {0x9EB5, 0xC642},+    {0x9EB6, 0xC643},+    {0x9EB7, 0xC645},+    {0x9EB8, 0xC646},+    {0x9EB9, 0xC647},+    {0x9EBA, 0xC649},+    {0x9EBB, 0xC64A},+    {0x9EBC, 0xC64B},+    {0x9EBD, 0xC64C},+    {0x9EBE, 0xC64D},+    {0x9EBF, 0xC64E},+    {0x9EC0, 0xC64F},+    {0x9EC1, 0xC652},+    {0x9EC2, 0xC656},+    {0x9EC3, 0xC657},+    {0x9EC4, 0xC658},+    {0x9EC5, 0xC659},+    {0x9EC6, 0xC65A},+    {0x9EC7, 0xC65B},+    {0x9EC8, 0xC65E},+    {0x9EC9, 0xC65F},+    {0x9ECA, 0xC661},+    {0x9ECB, 0xC662},+    {0x9ECC, 0xC663},+    {0x9ECD, 0xC664},+    {0x9ECE, 0xC665},+    {0x9ECF, 0xC666},+    {0x9ED0, 0xC667},+    {0x9ED1, 0xC668},+    {0x9ED2, 0xC669},+    {0x9ED3, 0xC66A},+    {0x9ED4, 0xC66B},+    {0x9ED5, 0xC66D},+    {0x9ED6, 0xC66E},+    {0x9ED7, 0xC670},+    {0x9ED8, 0xC672},+    {0x9ED9, 0xC673},+    {0x9EDA, 0xC674},+    {0x9EDB, 0xC675},+    {0x9EDC, 0xC676},+    {0x9EDD, 0xC677},+    {0x9EDE, 0xC67A},+    {0x9EDF, 0xC67B},+    {0x9EE0, 0xC67D},+    {0x9EE1, 0xC67E},+    {0x9EE2, 0xC67F},+    {0x9EE3, 0xC681},+    {0x9EE4, 0xC682},+    {0x9EE5, 0xC683},+    {0x9EE6, 0xC684},+    {0x9EE7, 0xC685},+    {0x9EE8, 0xC686},+    {0x9EE9, 0xC687},+    {0x9EEA, 0xC68A},+    {0x9EEB, 0xC68C},+    {0x9EEC, 0xC68E},+    {0x9EED, 0xC68F},+    {0x9EEE, 0xC690},+    {0x9EEF, 0xC691},+    {0x9EF0, 0xC692},+    {0x9EF1, 0xC693},+    {0x9EF2, 0xC696},+    {0x9EF3, 0xC697},+    {0x9EF4, 0xC699},+    {0x9EF5, 0xC69A},+    {0x9EF6, 0xC69B},+    {0x9EF7, 0xC69D},+    {0x9EF8, 0xC69E},+    {0x9EF9, 0xC69F},+    {0x9EFA, 0xC6A0},+    {0x9EFB, 0xC6A1},+    {0x9EFC, 0xC6A2},+    {0x9EFD, 0xC6A3},+    {0x9EFE, 0xC6A6},+    {0x9F41, 0xC6A8},+    {0x9F42, 0xC6AA},+    {0x9F43, 0xC6AB},+    {0x9F44, 0xC6AC},+    {0x9F45, 0xC6AD},+    {0x9F46, 0xC6AE},+    {0x9F47, 0xC6AF},+    {0x9F48, 0xC6B2},+    {0x9F49, 0xC6B3},+    {0x9F4A, 0xC6B5},+    {0x9F4B, 0xC6B6},+    {0x9F4C, 0xC6B7},+    {0x9F4D, 0xC6BB},+    {0x9F4E, 0xC6BC},+    {0x9F4F, 0xC6BD},+    {0x9F50, 0xC6BE},+    {0x9F51, 0xC6BF},+    {0x9F52, 0xC6C2},+    {0x9F53, 0xC6C4},+    {0x9F54, 0xC6C6},+    {0x9F55, 0xC6C7},+    {0x9F56, 0xC6C8},+    {0x9F57, 0xC6C9},+    {0x9F58, 0xC6CA},+    {0x9F59, 0xC6CB},+    {0x9F5A, 0xC6CE},+    {0x9F61, 0xC6CF},+    {0x9F62, 0xC6D1},+    {0x9F63, 0xC6D2},+    {0x9F64, 0xC6D3},+    {0x9F65, 0xC6D5},+    {0x9F66, 0xC6D6},+    {0x9F67, 0xC6D7},+    {0x9F68, 0xC6D8},+    {0x9F69, 0xC6D9},+    {0x9F6A, 0xC6DA},+    {0x9F6B, 0xC6DB},+    {0x9F6C, 0xC6DE},+    {0x9F6D, 0xC6DF},+    {0x9F6E, 0xC6E2},+    {0x9F6F, 0xC6E3},+    {0x9F70, 0xC6E4},+    {0x9F71, 0xC6E5},+    {0x9F72, 0xC6E6},+    {0x9F73, 0xC6E7},+    {0x9F74, 0xC6EA},+    {0x9F75, 0xC6EB},+    {0x9F76, 0xC6ED},+    {0x9F77, 0xC6EE},+    {0x9F78, 0xC6EF},+    {0x9F79, 0xC6F1},+    {0x9F7A, 0xC6F2},+    {0x9F81, 0xC6F3},+    {0x9F82, 0xC6F4},+    {0x9F83, 0xC6F5},+    {0x9F84, 0xC6F6},+    {0x9F85, 0xC6F7},+    {0x9F86, 0xC6FA},+    {0x9F87, 0xC6FB},+    {0x9F88, 0xC6FC},+    {0x9F89, 0xC6FE},+    {0x9F8A, 0xC6FF},+    {0x9F8B, 0xC700},+    {0x9F8C, 0xC701},+    {0x9F8D, 0xC702},+    {0x9F8E, 0xC703},+    {0x9F8F, 0xC706},+    {0x9F90, 0xC707},+    {0x9F91, 0xC709},+    {0x9F92, 0xC70A},+    {0x9F93, 0xC70B},+    {0x9F94, 0xC70D},+    {0x9F95, 0xC70E},+    {0x9F96, 0xC70F},+    {0x9F97, 0xC710},+    {0x9F98, 0xC711},+    {0x9F99, 0xC712},+    {0x9F9A, 0xC713},+    {0x9F9B, 0xC716},+    {0x9F9C, 0xC718},+    {0x9F9D, 0xC71A},+    {0x9F9E, 0xC71B},+    {0x9F9F, 0xC71C},+    {0x9FA0, 0xC71D},+    {0x9FA1, 0xC71E},+    {0x9FA2, 0xC71F},+    {0x9FA3, 0xC722},+    {0x9FA4, 0xC723},+    {0x9FA5, 0xC725},+    {0x9FA6, 0xC726},+    {0x9FA7, 0xC727},+    {0x9FA8, 0xC729},+    {0x9FA9, 0xC72A},+    {0x9FAA, 0xC72B},+    {0x9FAB, 0xC72C},+    {0x9FAC, 0xC72D},+    {0x9FAD, 0xC72E},+    {0x9FAE, 0xC72F},+    {0x9FAF, 0xC732},+    {0x9FB0, 0xC734},+    {0x9FB1, 0xC736},+    {0x9FB2, 0xC738},+    {0x9FB3, 0xC739},+    {0x9FB4, 0xC73A},+    {0x9FB5, 0xC73B},+    {0x9FB6, 0xC73E},+    {0x9FB7, 0xC73F},+    {0x9FB8, 0xC741},+    {0x9FB9, 0xC742},+    {0x9FBA, 0xC743},+    {0x9FBB, 0xC745},+    {0x9FBC, 0xC746},+    {0x9FBD, 0xC747},+    {0x9FBE, 0xC748},+    {0x9FBF, 0xC749},+    {0x9FC0, 0xC74B},+    {0x9FC1, 0xC74E},+    {0x9FC2, 0xC750},+    {0x9FC3, 0xC759},+    {0x9FC4, 0xC75A},+    {0x9FC5, 0xC75B},+    {0x9FC6, 0xC75D},+    {0x9FC7, 0xC75E},+    {0x9FC8, 0xC75F},+    {0x9FC9, 0xC761},+    {0x9FCA, 0xC762},+    {0x9FCB, 0xC763},+    {0x9FCC, 0xC764},+    {0x9FCD, 0xC765},+    {0x9FCE, 0xC766},+    {0x9FCF, 0xC767},+    {0x9FD0, 0xC769},+    {0x9FD1, 0xC76A},+    {0x9FD2, 0xC76C},+    {0x9FD3, 0xC76D},+    {0x9FD4, 0xC76E},+    {0x9FD5, 0xC76F},+    {0x9FD6, 0xC770},+    {0x9FD7, 0xC771},+    {0x9FD8, 0xC772},+    {0x9FD9, 0xC773},+    {0x9FDA, 0xC776},+    {0x9FDB, 0xC777},+    {0x9FDC, 0xC779},+    {0x9FDD, 0xC77A},+    {0x9FDE, 0xC77B},+    {0x9FDF, 0xC77F},+    {0x9FE0, 0xC780},+    {0x9FE1, 0xC781},+    {0x9FE2, 0xC782},+    {0x9FE3, 0xC786},+    {0x9FE4, 0xC78B},+    {0x9FE5, 0xC78C},+    {0x9FE6, 0xC78D},+    {0x9FE7, 0xC78F},+    {0x9FE8, 0xC792},+    {0x9FE9, 0xC793},+    {0x9FEA, 0xC795},+    {0x9FEB, 0xC799},+    {0x9FEC, 0xC79B},+    {0x9FED, 0xC79C},+    {0x9FEE, 0xC79D},+    {0x9FEF, 0xC79E},+    {0x9FF0, 0xC79F},+    {0x9FF1, 0xC7A2},+    {0x9FF2, 0xC7A7},+    {0x9FF3, 0xC7A8},+    {0x9FF4, 0xC7A9},+    {0x9FF5, 0xC7AA},+    {0x9FF6, 0xC7AB},+    {0x9FF7, 0xC7AE},+    {0x9FF8, 0xC7AF},+    {0x9FF9, 0xC7B1},+    {0x9FFA, 0xC7B2},+    {0x9FFB, 0xC7B3},+    {0x9FFC, 0xC7B5},+    {0x9FFD, 0xC7B6},+    {0x9FFE, 0xC7B7},+    {0xA041, 0xC7B8},+    {0xA042, 0xC7B9},+    {0xA043, 0xC7BA},+    {0xA044, 0xC7BB},+    {0xA045, 0xC7BE},+    {0xA046, 0xC7C2},+    {0xA047, 0xC7C3},+    {0xA048, 0xC7C4},+    {0xA049, 0xC7C5},+    {0xA04A, 0xC7C6},+    {0xA04B, 0xC7C7},+    {0xA04C, 0xC7CA},+    {0xA04D, 0xC7CB},+    {0xA04E, 0xC7CD},+    {0xA04F, 0xC7CF},+    {0xA050, 0xC7D1},+    {0xA051, 0xC7D2},+    {0xA052, 0xC7D3},+    {0xA053, 0xC7D4},+    {0xA054, 0xC7D5},+    {0xA055, 0xC7D6},+    {0xA056, 0xC7D7},+    {0xA057, 0xC7D9},+    {0xA058, 0xC7DA},+    {0xA059, 0xC7DB},+    {0xA05A, 0xC7DC},+    {0xA061, 0xC7DE},+    {0xA062, 0xC7DF},+    {0xA063, 0xC7E0},+    {0xA064, 0xC7E1},+    {0xA065, 0xC7E2},+    {0xA066, 0xC7E3},+    {0xA067, 0xC7E5},+    {0xA068, 0xC7E6},+    {0xA069, 0xC7E7},+    {0xA06A, 0xC7E9},+    {0xA06B, 0xC7EA},+    {0xA06C, 0xC7EB},+    {0xA06D, 0xC7ED},+    {0xA06E, 0xC7EE},+    {0xA06F, 0xC7EF},+    {0xA070, 0xC7F0},+    {0xA071, 0xC7F1},+    {0xA072, 0xC7F2},+    {0xA073, 0xC7F3},+    {0xA074, 0xC7F4},+    {0xA075, 0xC7F5},+    {0xA076, 0xC7F6},+    {0xA077, 0xC7F7},+    {0xA078, 0xC7F8},+    {0xA079, 0xC7F9},+    {0xA07A, 0xC7FA},+    {0xA081, 0xC7FB},+    {0xA082, 0xC7FC},+    {0xA083, 0xC7FD},+    {0xA084, 0xC7FE},+    {0xA085, 0xC7FF},+    {0xA086, 0xC802},+    {0xA087, 0xC803},+    {0xA088, 0xC805},+    {0xA089, 0xC806},+    {0xA08A, 0xC807},+    {0xA08B, 0xC809},+    {0xA08C, 0xC80B},+    {0xA08D, 0xC80C},+    {0xA08E, 0xC80D},+    {0xA08F, 0xC80E},+    {0xA090, 0xC80F},+    {0xA091, 0xC812},+    {0xA092, 0xC814},+    {0xA093, 0xC817},+    {0xA094, 0xC818},+    {0xA095, 0xC819},+    {0xA096, 0xC81A},+    {0xA097, 0xC81B},+    {0xA098, 0xC81E},+    {0xA099, 0xC81F},+    {0xA09A, 0xC821},+    {0xA09B, 0xC822},+    {0xA09C, 0xC823},+    {0xA09D, 0xC825},+    {0xA09E, 0xC826},+    {0xA09F, 0xC827},+    {0xA0A0, 0xC828},+    {0xA0A1, 0xC829},+    {0xA0A2, 0xC82A},+    {0xA0A3, 0xC82B},+    {0xA0A4, 0xC82E},+    {0xA0A5, 0xC830},+    {0xA0A6, 0xC832},+    {0xA0A7, 0xC833},+    {0xA0A8, 0xC834},+    {0xA0A9, 0xC835},+    {0xA0AA, 0xC836},+    {0xA0AB, 0xC837},+    {0xA0AC, 0xC839},+    {0xA0AD, 0xC83A},+    {0xA0AE, 0xC83B},+    {0xA0AF, 0xC83D},+    {0xA0B0, 0xC83E},+    {0xA0B1, 0xC83F},+    {0xA0B2, 0xC841},+    {0xA0B3, 0xC842},+    {0xA0B4, 0xC843},+    {0xA0B5, 0xC844},+    {0xA0B6, 0xC845},+    {0xA0B7, 0xC846},+    {0xA0B8, 0xC847},+    {0xA0B9, 0xC84A},+    {0xA0BA, 0xC84B},+    {0xA0BB, 0xC84E},+    {0xA0BC, 0xC84F},+    {0xA0BD, 0xC850},+    {0xA0BE, 0xC851},+    {0xA0BF, 0xC852},+    {0xA0C0, 0xC853},+    {0xA0C1, 0xC855},+    {0xA0C2, 0xC856},+    {0xA0C3, 0xC857},+    {0xA0C4, 0xC858},+    {0xA0C5, 0xC859},+    {0xA0C6, 0xC85A},+    {0xA0C7, 0xC85B},+    {0xA0C8, 0xC85C},+    {0xA0C9, 0xC85D},+    {0xA0CA, 0xC85E},+    {0xA0CB, 0xC85F},+    {0xA0CC, 0xC860},+    {0xA0CD, 0xC861},+    {0xA0CE, 0xC862},+    {0xA0CF, 0xC863},+    {0xA0D0, 0xC864},+    {0xA0D1, 0xC865},+    {0xA0D2, 0xC866},+    {0xA0D3, 0xC867},+    {0xA0D4, 0xC868},+    {0xA0D5, 0xC869},+    {0xA0D6, 0xC86A},+    {0xA0D7, 0xC86B},+    {0xA0D8, 0xC86C},+    {0xA0D9, 0xC86D},+    {0xA0DA, 0xC86E},+    {0xA0DB, 0xC86F},+    {0xA0DC, 0xC872},+    {0xA0DD, 0xC873},+    {0xA0DE, 0xC875},+    {0xA0DF, 0xC876},+    {0xA0E0, 0xC877},+    {0xA0E1, 0xC879},+    {0xA0E2, 0xC87B},+    {0xA0E3, 0xC87C},+    {0xA0E4, 0xC87D},+    {0xA0E5, 0xC87E},+    {0xA0E6, 0xC87F},+    {0xA0E7, 0xC882},+    {0xA0E8, 0xC884},+    {0xA0E9, 0xC888},+    {0xA0EA, 0xC889},+    {0xA0EB, 0xC88A},+    {0xA0EC, 0xC88E},+    {0xA0ED, 0xC88F},+    {0xA0EE, 0xC890},+    {0xA0EF, 0xC891},+    {0xA0F0, 0xC892},+    {0xA0F1, 0xC893},+    {0xA0F2, 0xC895},+    {0xA0F3, 0xC896},+    {0xA0F4, 0xC897},+    {0xA0F5, 0xC898},+    {0xA0F6, 0xC899},+    {0xA0F7, 0xC89A},+    {0xA0F8, 0xC89B},+    {0xA0F9, 0xC89C},+    {0xA0FA, 0xC89E},+    {0xA0FB, 0xC8A0},+    {0xA0FC, 0xC8A2},+    {0xA0FD, 0xC8A3},+    {0xA0FE, 0xC8A4},+    {0xA141, 0xC8A5},+    {0xA142, 0xC8A6},+    {0xA143, 0xC8A7},+    {0xA144, 0xC8A9},+    {0xA145, 0xC8AA},+    {0xA146, 0xC8AB},+    {0xA147, 0xC8AC},+    {0xA148, 0xC8AD},+    {0xA149, 0xC8AE},+    {0xA14A, 0xC8AF},+    {0xA14B, 0xC8B0},+    {0xA14C, 0xC8B1},+    {0xA14D, 0xC8B2},+    {0xA14E, 0xC8B3},+    {0xA14F, 0xC8B4},+    {0xA150, 0xC8B5},+    {0xA151, 0xC8B6},+    {0xA152, 0xC8B7},+    {0xA153, 0xC8B8},+    {0xA154, 0xC8B9},+    {0xA155, 0xC8BA},+    {0xA156, 0xC8BB},+    {0xA157, 0xC8BE},+    {0xA158, 0xC8BF},+    {0xA159, 0xC8C0},+    {0xA15A, 0xC8C1},+    {0xA161, 0xC8C2},+    {0xA162, 0xC8C3},+    {0xA163, 0xC8C5},+    {0xA164, 0xC8C6},+    {0xA165, 0xC8C7},+    {0xA166, 0xC8C9},+    {0xA167, 0xC8CA},+    {0xA168, 0xC8CB},+    {0xA169, 0xC8CD},+    {0xA16A, 0xC8CE},+    {0xA16B, 0xC8CF},+    {0xA16C, 0xC8D0},+    {0xA16D, 0xC8D1},+    {0xA16E, 0xC8D2},+    {0xA16F, 0xC8D3},+    {0xA170, 0xC8D6},+    {0xA171, 0xC8D8},+    {0xA172, 0xC8DA},+    {0xA173, 0xC8DB},+    {0xA174, 0xC8DC},+    {0xA175, 0xC8DD},+    {0xA176, 0xC8DE},+    {0xA177, 0xC8DF},+    {0xA178, 0xC8E2},+    {0xA179, 0xC8E3},+    {0xA17A, 0xC8E5},+    {0xA181, 0xC8E6},+    {0xA182, 0xC8E7},+    {0xA183, 0xC8E8},+    {0xA184, 0xC8E9},+    {0xA185, 0xC8EA},+    {0xA186, 0xC8EB},+    {0xA187, 0xC8EC},+    {0xA188, 0xC8ED},+    {0xA189, 0xC8EE},+    {0xA18A, 0xC8EF},+    {0xA18B, 0xC8F0},+    {0xA18C, 0xC8F1},+    {0xA18D, 0xC8F2},+    {0xA18E, 0xC8F3},+    {0xA18F, 0xC8F4},+    {0xA190, 0xC8F6},+    {0xA191, 0xC8F7},+    {0xA192, 0xC8F8},+    {0xA193, 0xC8F9},+    {0xA194, 0xC8FA},+    {0xA195, 0xC8FB},+    {0xA196, 0xC8FE},+    {0xA197, 0xC8FF},+    {0xA198, 0xC901},+    {0xA199, 0xC902},+    {0xA19A, 0xC903},+    {0xA19B, 0xC907},+    {0xA19C, 0xC908},+    {0xA19D, 0xC909},+    {0xA19E, 0xC90A},+    {0xA19F, 0xC90B},+    {0xA1A0, 0xC90E},+    {0xA1A1, 0x3000},+    {0xA1A2, 0x3001},+    {0xA1A3, 0x3002},+    {0xA1A4, 0x00B7},+    {0xA1A5, 0x2025},+    {0xA1A6, 0x2026},+    {0xA1A7, 0x00A8},+    {0xA1A8, 0x3003},+    {0xA1A9, 0x0000},+    {0xA1AA, 0x2015},+    {0xA1AB, 0x2225},+    {0xA1AC, 0xFF3C},+    {0xA1AD, 0x223C},+    {0xA1AE, 0x2018},+    {0xA1AF, 0x2019},+    {0xA1B0, 0x201C},+    {0xA1B1, 0x201D},+    {0xA1B2, 0x3014},+    {0xA1B3, 0x3015},+    {0xA1B4, 0x3008},+    {0xA1B5, 0x3009},+    {0xA1B6, 0x300A},+    {0xA1B7, 0x300B},+    {0xA1B8, 0x300C},+    {0xA1B9, 0x300D},+    {0xA1BA, 0x300E},+    {0xA1BB, 0x300F},+    {0xA1BC, 0x3010},+    {0xA1BD, 0x3011},+    {0xA1BE, 0x00B1},+    {0xA1BF, 0x00D7},+    {0xA1C0, 0x00F7},+    {0xA1C1, 0x2260},+    {0xA1C2, 0x2264},+    {0xA1C3, 0x2265},+    {0xA1C4, 0x221E},+    {0xA1C5, 0x2234},+    {0xA1C6, 0x00B0},+    {0xA1C7, 0x2032},+    {0xA1C8, 0x2033},+    {0xA1C9, 0x2103},+    {0xA1CA, 0x212B},+    {0xA1CB, 0xFFE0},+    {0xA1CC, 0xFFE1},+    {0xA1CD, 0xFFE5},+    {0xA1CE, 0x2642},+    {0xA1CF, 0x2640},+    {0xA1D0, 0x2220},+    {0xA1D1, 0x22A5},+    {0xA1D2, 0x2312},+    {0xA1D3, 0x2202},+    {0xA1D4, 0x2207},+    {0xA1D5, 0x2261},+    {0xA1D6, 0x2252},+    {0xA1D7, 0x00A7},+    {0xA1D8, 0x203B},+    {0xA1D9, 0x2606},+    {0xA1DA, 0x2605},+    {0xA1DB, 0x25CB},+    {0xA1DC, 0x25CF},+    {0xA1DD, 0x25CE},+    {0xA1DE, 0x25C7},+    {0xA1DF, 0x25C6},+    {0xA1E0, 0x25A1},+    {0xA1E1, 0x25A0},+    {0xA1E2, 0x25B3},+    {0xA1E3, 0x25B2},+    {0xA1E4, 0x25BD},+    {0xA1E5, 0x25BC},+    {0xA1E6, 0x2192},+    {0xA1E7, 0x2190},+    {0xA1E8, 0x2191},+    {0xA1E9, 0x2193},+    {0xA1EA, 0x2194},+    {0xA1EB, 0x3013},+    {0xA1EC, 0x226A},+    {0xA1ED, 0x226B},+    {0xA1EE, 0x221A},+    {0xA1EF, 0x223D},+    {0xA1F0, 0x221D},+    {0xA1F1, 0x2235},+    {0xA1F2, 0x222B},+    {0xA1F3, 0x222C},+    {0xA1F4, 0x2208},+    {0xA1F5, 0x220B},+    {0xA1F6, 0x2286},+    {0xA1F7, 0x2287},+    {0xA1F8, 0x2282},+    {0xA1F9, 0x2283},+    {0xA1FA, 0x222A},+    {0xA1FB, 0x2229},+    {0xA1FC, 0x2227},+    {0xA1FD, 0x2228},+    {0xA1FE, 0xFFE2},+    {0xA241, 0xC910},+    {0xA242, 0xC912},+    {0xA243, 0xC913},+    {0xA244, 0xC914},+    {0xA245, 0xC915},+    {0xA246, 0xC916},+    {0xA247, 0xC917},+    {0xA248, 0xC919},+    {0xA249, 0xC91A},+    {0xA24A, 0xC91B},+    {0xA24B, 0xC91C},+    {0xA24C, 0xC91D},+    {0xA24D, 0xC91E},+    {0xA24E, 0xC91F},+    {0xA24F, 0xC920},+    {0xA250, 0xC921},+    {0xA251, 0xC922},+    {0xA252, 0xC923},+    {0xA253, 0xC924},+    {0xA254, 0xC925},+    {0xA255, 0xC926},+    {0xA256, 0xC927},+    {0xA257, 0xC928},+    {0xA258, 0xC929},+    {0xA259, 0xC92A},+    {0xA25A, 0xC92B},+    {0xA261, 0xC92D},+    {0xA262, 0xC92E},+    {0xA263, 0xC92F},+    {0xA264, 0xC930},+    {0xA265, 0xC931},+    {0xA266, 0xC932},+    {0xA267, 0xC933},+    {0xA268, 0xC935},+    {0xA269, 0xC936},+    {0xA26A, 0xC937},+    {0xA26B, 0xC938},+    {0xA26C, 0xC939},+    {0xA26D, 0xC93A},+    {0xA26E, 0xC93B},+    {0xA26F, 0xC93C},+    {0xA270, 0xC93D},+    {0xA271, 0xC93E},+    {0xA272, 0xC93F},+    {0xA273, 0xC940},+    {0xA274, 0xC941},+    {0xA275, 0xC942},+    {0xA276, 0xC943},+    {0xA277, 0xC944},+    {0xA278, 0xC945},+    {0xA279, 0xC946},+    {0xA27A, 0xC947},+    {0xA281, 0xC948},+    {0xA282, 0xC949},+    {0xA283, 0xC94A},+    {0xA284, 0xC94B},+    {0xA285, 0xC94C},+    {0xA286, 0xC94D},+    {0xA287, 0xC94E},+    {0xA288, 0xC94F},+    {0xA289, 0xC952},+    {0xA28A, 0xC953},+    {0xA28B, 0xC955},+    {0xA28C, 0xC956},+    {0xA28D, 0xC957},+    {0xA28E, 0xC959},+    {0xA28F, 0xC95A},+    {0xA290, 0xC95B},+    {0xA291, 0xC95C},+    {0xA292, 0xC95D},+    {0xA293, 0xC95E},+    {0xA294, 0xC95F},+    {0xA295, 0xC962},+    {0xA296, 0xC964},+    {0xA297, 0xC965},+    {0xA298, 0xC966},+    {0xA299, 0xC967},+    {0xA29A, 0xC968},+    {0xA29B, 0xC969},+    {0xA29C, 0xC96A},+    {0xA29D, 0xC96B},+    {0xA29E, 0xC96D},+    {0xA29F, 0xC96E},+    {0xA2A0, 0xC96F},+    {0xA2A1, 0x21D2},+    {0xA2A2, 0x21D4},+    {0xA2A3, 0x2200},+    {0xA2A4, 0x2203},+    {0xA2A5, 0x00B4},+    {0xA2A6, 0xFF5E},+    {0xA2A7, 0x02C7},+    {0xA2A8, 0x02D8},+    {0xA2A9, 0x02DD},+    {0xA2AA, 0x02DA},+    {0xA2AB, 0x02D9},+    {0xA2AC, 0x00B8},+    {0xA2AD, 0x02DB},+    {0xA2AE, 0x00A1},+    {0xA2AF, 0x00BF},+    {0xA2B0, 0x02D0},+    {0xA2B1, 0x222E},+    {0xA2B2, 0x2211},+    {0xA2B3, 0x220F},+    {0xA2B4, 0x00A4},+    {0xA2B5, 0x2109},+    {0xA2B6, 0x2030},+    {0xA2B7, 0x25C1},+    {0xA2B8, 0x25C0},+    {0xA2B9, 0x25B7},+    {0xA2BA, 0x25B6},+    {0xA2BB, 0x2664},+    {0xA2BC, 0x2660},+    {0xA2BD, 0x2661},+    {0xA2BE, 0x2665},+    {0xA2BF, 0x2667},+    {0xA2C0, 0x2663},+    {0xA2C1, 0x2299},+    {0xA2C2, 0x25C8},+    {0xA2C3, 0x25A3},+    {0xA2C4, 0x25D0},+    {0xA2C5, 0x25D1},+    {0xA2C6, 0x2592},+    {0xA2C7, 0x25A4},+    {0xA2C8, 0x25A5},+    {0xA2C9, 0x25A8},+    {0xA2CA, 0x25A7},+    {0xA2CB, 0x25A6},+    {0xA2CC, 0x25A9},+    {0xA2CD, 0x2668},+    {0xA2CE, 0x260F},+    {0xA2CF, 0x260E},+    {0xA2D0, 0x261C},+    {0xA2D1, 0x261E},+    {0xA2D2, 0x00B6},+    {0xA2D3, 0x2020},+    {0xA2D4, 0x2021},+    {0xA2D5, 0x2195},+    {0xA2D6, 0x2197},+    {0xA2D7, 0x2199},+    {0xA2D8, 0x2196},+    {0xA2D9, 0x2198},+    {0xA2DA, 0x266D},+    {0xA2DB, 0x2669},+    {0xA2DC, 0x266A},+    {0xA2DD, 0x266C},+    {0xA2DE, 0x327F},+    {0xA2DF, 0x321C},+    {0xA2E0, 0x2116},+    {0xA2E1, 0x33C7},+    {0xA2E2, 0x2122},+    {0xA2E3, 0x33C2},+    {0xA2E4, 0x33D8},+    {0xA2E5, 0x2121},+    {0xA341, 0xC971},+    {0xA342, 0xC972},+    {0xA343, 0xC973},+    {0xA344, 0xC975},+    {0xA345, 0xC976},+    {0xA346, 0xC977},+    {0xA347, 0xC978},+    {0xA348, 0xC979},+    {0xA349, 0xC97A},+    {0xA34A, 0xC97B},+    {0xA34B, 0xC97D},+    {0xA34C, 0xC97E},+    {0xA34D, 0xC97F},+    {0xA34E, 0xC980},+    {0xA34F, 0xC981},+    {0xA350, 0xC982},+    {0xA351, 0xC983},+    {0xA352, 0xC984},+    {0xA353, 0xC985},+    {0xA354, 0xC986},+    {0xA355, 0xC987},+    {0xA356, 0xC98A},+    {0xA357, 0xC98B},+    {0xA358, 0xC98D},+    {0xA359, 0xC98E},+    {0xA35A, 0xC98F},+    {0xA361, 0xC991},+    {0xA362, 0xC992},+    {0xA363, 0xC993},+    {0xA364, 0xC994},+    {0xA365, 0xC995},+    {0xA366, 0xC996},+    {0xA367, 0xC997},+    {0xA368, 0xC99A},+    {0xA369, 0xC99C},+    {0xA36A, 0xC99E},+    {0xA36B, 0xC99F},+    {0xA36C, 0xC9A0},+    {0xA36D, 0xC9A1},+    {0xA36E, 0xC9A2},+    {0xA36F, 0xC9A3},+    {0xA370, 0xC9A4},+    {0xA371, 0xC9A5},+    {0xA372, 0xC9A6},+    {0xA373, 0xC9A7},+    {0xA374, 0xC9A8},+    {0xA375, 0xC9A9},+    {0xA376, 0xC9AA},+    {0xA377, 0xC9AB},+    {0xA378, 0xC9AC},+    {0xA379, 0xC9AD},+    {0xA37A, 0xC9AE},+    {0xA381, 0xC9AF},+    {0xA382, 0xC9B0},+    {0xA383, 0xC9B1},+    {0xA384, 0xC9B2},+    {0xA385, 0xC9B3},+    {0xA386, 0xC9B4},+    {0xA387, 0xC9B5},+    {0xA388, 0xC9B6},+    {0xA389, 0xC9B7},+    {0xA38A, 0xC9B8},+    {0xA38B, 0xC9B9},+    {0xA38C, 0xC9BA},+    {0xA38D, 0xC9BB},+    {0xA38E, 0xC9BC},+    {0xA38F, 0xC9BD},+    {0xA390, 0xC9BE},+    {0xA391, 0xC9BF},+    {0xA392, 0xC9C2},+    {0xA393, 0xC9C3},+    {0xA394, 0xC9C5},+    {0xA395, 0xC9C6},+    {0xA396, 0xC9C9},+    {0xA397, 0xC9CB},+    {0xA398, 0xC9CC},+    {0xA399, 0xC9CD},+    {0xA39A, 0xC9CE},+    {0xA39B, 0xC9CF},+    {0xA39C, 0xC9D2},+    {0xA39D, 0xC9D4},+    {0xA39E, 0xC9D7},+    {0xA39F, 0xC9D8},+    {0xA3A0, 0xC9DB},+    {0xA3A1, 0xFF01},+    {0xA3A2, 0xFF02},+    {0xA3A3, 0xFF03},+    {0xA3A4, 0xFF04},+    {0xA3A5, 0xFF05},+    {0xA3A6, 0xFF06},+    {0xA3A7, 0xFF07},+    {0xA3A8, 0xFF08},+    {0xA3A9, 0xFF09},+    {0xA3AA, 0xFF0A},+    {0xA3AB, 0xFF0B},+    {0xA3AC, 0xFF0C},+    {0xA3AD, 0xFF0D},+    {0xA3AE, 0xFF0E},+    {0xA3AF, 0xFF0F},+    {0xA3B0, 0xFF10},+    {0xA3B1, 0xFF11},+    {0xA3B2, 0xFF12},+    {0xA3B3, 0xFF13},+    {0xA3B4, 0xFF14},+    {0xA3B5, 0xFF15},+    {0xA3B6, 0xFF16},+    {0xA3B7, 0xFF17},+    {0xA3B8, 0xFF18},+    {0xA3B9, 0xFF19},+    {0xA3BA, 0xFF1A},+    {0xA3BB, 0xFF1B},+    {0xA3BC, 0xFF1C},+    {0xA3BD, 0xFF1D},+    {0xA3BE, 0xFF1E},+    {0xA3BF, 0xFF1F},+    {0xA3C0, 0xFF20},+    {0xA3C1, 0xFF21},+    {0xA3C2, 0xFF22},+    {0xA3C3, 0xFF23},+    {0xA3C4, 0xFF24},+    {0xA3C5, 0xFF25},+    {0xA3C6, 0xFF26},+    {0xA3C7, 0xFF27},+    {0xA3C8, 0xFF28},+    {0xA3C9, 0xFF29},+    {0xA3CA, 0xFF2A},+    {0xA3CB, 0xFF2B},+    {0xA3CC, 0xFF2C},+    {0xA3CD, 0xFF2D},+    {0xA3CE, 0xFF2E},+    {0xA3CF, 0xFF2F},+    {0xA3D0, 0xFF30},+    {0xA3D1, 0xFF31},+    {0xA3D2, 0xFF32},+    {0xA3D3, 0xFF33},+    {0xA3D4, 0xFF34},+    {0xA3D5, 0xFF35},+    {0xA3D6, 0xFF36},+    {0xA3D7, 0xFF37},+    {0xA3D8, 0xFF38},+    {0xA3D9, 0xFF39},+    {0xA3DA, 0xFF3A},+    {0xA3DB, 0xFF3B},+    {0xA3DC, 0xFFE6},+    {0xA3DD, 0xFF3D},+    {0xA3DE, 0xFF3E},+    {0xA3DF, 0xFF3F},+    {0xA3E0, 0xFF40},+    {0xA3E1, 0xFF41},+    {0xA3E2, 0xFF42},+    {0xA3E3, 0xFF43},+    {0xA3E4, 0xFF44},+    {0xA3E5, 0xFF45},+    {0xA3E6, 0xFF46},+    {0xA3E7, 0xFF47},+    {0xA3E8, 0xFF48},+    {0xA3E9, 0xFF49},+    {0xA3EA, 0xFF4A},+    {0xA3EB, 0xFF4B},+    {0xA3EC, 0xFF4C},+    {0xA3ED, 0xFF4D},+    {0xA3EE, 0xFF4E},+    {0xA3EF, 0xFF4F},+    {0xA3F0, 0xFF50},+    {0xA3F1, 0xFF51},+    {0xA3F2, 0xFF52},+    {0xA3F3, 0xFF53},+    {0xA3F4, 0xFF54},+    {0xA3F5, 0xFF55},+    {0xA3F6, 0xFF56},+    {0xA3F7, 0xFF57},+    {0xA3F8, 0xFF58},+    {0xA3F9, 0xFF59},+    {0xA3FA, 0xFF5A},+    {0xA3FB, 0xFF5B},+    {0xA3FC, 0xFF5C},+    {0xA3FD, 0xFF5D},+    {0xA3FE, 0xFFE3},+    {0xA441, 0xC9DE},+    {0xA442, 0xC9DF},+    {0xA443, 0xC9E1},+    {0xA444, 0xC9E3},+    {0xA445, 0xC9E5},+    {0xA446, 0xC9E6},+    {0xA447, 0xC9E8},+    {0xA448, 0xC9E9},+    {0xA449, 0xC9EA},+    {0xA44A, 0xC9EB},+    {0xA44B, 0xC9EE},+    {0xA44C, 0xC9F2},+    {0xA44D, 0xC9F3},+    {0xA44E, 0xC9F4},+    {0xA44F, 0xC9F5},+    {0xA450, 0xC9F6},+    {0xA451, 0xC9F7},+    {0xA452, 0xC9FA},+    {0xA453, 0xC9FB},+    {0xA454, 0xC9FD},+    {0xA455, 0xC9FE},+    {0xA456, 0xC9FF},+    {0xA457, 0xCA01},+    {0xA458, 0xCA02},+    {0xA459, 0xCA03},+    {0xA45A, 0xCA04},+    {0xA461, 0xCA05},+    {0xA462, 0xCA06},+    {0xA463, 0xCA07},+    {0xA464, 0xCA0A},+    {0xA465, 0xCA0E},+    {0xA466, 0xCA0F},+    {0xA467, 0xCA10},+    {0xA468, 0xCA11},+    {0xA469, 0xCA12},+    {0xA46A, 0xCA13},+    {0xA46B, 0xCA15},+    {0xA46C, 0xCA16},+    {0xA46D, 0xCA17},+    {0xA46E, 0xCA19},+    {0xA46F, 0xCA1A},+    {0xA470, 0xCA1B},+    {0xA471, 0xCA1C},+    {0xA472, 0xCA1D},+    {0xA473, 0xCA1E},+    {0xA474, 0xCA1F},+    {0xA475, 0xCA20},+    {0xA476, 0xCA21},+    {0xA477, 0xCA22},+    {0xA478, 0xCA23},+    {0xA479, 0xCA24},+    {0xA47A, 0xCA25},+    {0xA481, 0xCA26},+    {0xA482, 0xCA27},+    {0xA483, 0xCA28},+    {0xA484, 0xCA2A},+    {0xA485, 0xCA2B},+    {0xA486, 0xCA2C},+    {0xA487, 0xCA2D},+    {0xA488, 0xCA2E},+    {0xA489, 0xCA2F},+    {0xA48A, 0xCA30},+    {0xA48B, 0xCA31},+    {0xA48C, 0xCA32},+    {0xA48D, 0xCA33},+    {0xA48E, 0xCA34},+    {0xA48F, 0xCA35},+    {0xA490, 0xCA36},+    {0xA491, 0xCA37},+    {0xA492, 0xCA38},+    {0xA493, 0xCA39},+    {0xA494, 0xCA3A},+    {0xA495, 0xCA3B},+    {0xA496, 0xCA3C},+    {0xA497, 0xCA3D},+    {0xA498, 0xCA3E},+    {0xA499, 0xCA3F},+    {0xA49A, 0xCA40},+    {0xA49B, 0xCA41},+    {0xA49C, 0xCA42},+    {0xA49D, 0xCA43},+    {0xA49E, 0xCA44},+    {0xA49F, 0xCA45},+    {0xA4A0, 0xCA46},+    {0xA4A1, 0x3131},+    {0xA4A2, 0x3132},+    {0xA4A3, 0x3133},+    {0xA4A4, 0x3134},+    {0xA4A5, 0x3135},+    {0xA4A6, 0x3136},+    {0xA4A7, 0x3137},+    {0xA4A8, 0x3138},+    {0xA4A9, 0x3139},+    {0xA4AA, 0x313A},+    {0xA4AB, 0x313B},+    {0xA4AC, 0x313C},+    {0xA4AD, 0x313D},+    {0xA4AE, 0x313E},+    {0xA4AF, 0x313F},+    {0xA4B0, 0x3140},+    {0xA4B1, 0x3141},+    {0xA4B2, 0x3142},+    {0xA4B3, 0x3143},+    {0xA4B4, 0x3144},+    {0xA4B5, 0x3145},+    {0xA4B6, 0x3146},+    {0xA4B7, 0x3147},+    {0xA4B8, 0x3148},+    {0xA4B9, 0x3149},+    {0xA4BA, 0x314A},+    {0xA4BB, 0x314B},+    {0xA4BC, 0x314C},+    {0xA4BD, 0x314D},+    {0xA4BE, 0x314E},+    {0xA4BF, 0x314F},+    {0xA4C0, 0x3150},+    {0xA4C1, 0x3151},+    {0xA4C2, 0x3152},+    {0xA4C3, 0x3153},+    {0xA4C4, 0x3154},+    {0xA4C5, 0x3155},+    {0xA4C6, 0x3156},+    {0xA4C7, 0x3157},+    {0xA4C8, 0x3158},+    {0xA4C9, 0x3159},+    {0xA4CA, 0x315A},+    {0xA4CB, 0x315B},+    {0xA4CC, 0x315C},+    {0xA4CD, 0x315D},+    {0xA4CE, 0x315E},+    {0xA4CF, 0x315F},+    {0xA4D0, 0x3160},+    {0xA4D1, 0x3161},+    {0xA4D2, 0x3162},+    {0xA4D3, 0x3163},+    {0xA4D4, 0x3164},+    {0xA4D5, 0x3165},+    {0xA4D6, 0x3166},+    {0xA4D7, 0x3167},+    {0xA4D8, 0x3168},+    {0xA4D9, 0x3169},+    {0xA4DA, 0x316A},+    {0xA4DB, 0x316B},+    {0xA4DC, 0x316C},+    {0xA4DD, 0x316D},+    {0xA4DE, 0x316E},+    {0xA4DF, 0x316F},+    {0xA4E0, 0x3170},+    {0xA4E1, 0x3171},+    {0xA4E2, 0x3172},+    {0xA4E3, 0x3173},+    {0xA4E4, 0x3174},+    {0xA4E5, 0x3175},+    {0xA4E6, 0x3176},+    {0xA4E7, 0x3177},+    {0xA4E8, 0x3178},+    {0xA4E9, 0x3179},+    {0xA4EA, 0x317A},+    {0xA4EB, 0x317B},+    {0xA4EC, 0x317C},+    {0xA4ED, 0x317D},+    {0xA4EE, 0x317E},+    {0xA4EF, 0x317F},+    {0xA4F0, 0x3180},+    {0xA4F1, 0x3181},+    {0xA4F2, 0x3182},+    {0xA4F3, 0x3183},+    {0xA4F4, 0x3184},+    {0xA4F5, 0x3185},+    {0xA4F6, 0x3186},+    {0xA4F7, 0x3187},+    {0xA4F8, 0x3188},+    {0xA4F9, 0x3189},+    {0xA4FA, 0x318A},+    {0xA4FB, 0x318B},+    {0xA4FC, 0x318C},+    {0xA4FD, 0x318D},+    {0xA4FE, 0x318E},+    {0xA541, 0xCA47},+    {0xA542, 0xCA48},+    {0xA543, 0xCA49},+    {0xA544, 0xCA4A},+    {0xA545, 0xCA4B},+    {0xA546, 0xCA4E},+    {0xA547, 0xCA4F},+    {0xA548, 0xCA51},+    {0xA549, 0xCA52},+    {0xA54A, 0xCA53},+    {0xA54B, 0xCA55},+    {0xA54C, 0xCA56},+    {0xA54D, 0xCA57},+    {0xA54E, 0xCA58},+    {0xA54F, 0xCA59},+    {0xA550, 0xCA5A},+    {0xA551, 0xCA5B},+    {0xA552, 0xCA5E},+    {0xA553, 0xCA62},+    {0xA554, 0xCA63},+    {0xA555, 0xCA64},+    {0xA556, 0xCA65},+    {0xA557, 0xCA66},+    {0xA558, 0xCA67},+    {0xA559, 0xCA69},+    {0xA55A, 0xCA6A},+    {0xA561, 0xCA6B},+    {0xA562, 0xCA6C},+    {0xA563, 0xCA6D},+    {0xA564, 0xCA6E},+    {0xA565, 0xCA6F},+    {0xA566, 0xCA70},+    {0xA567, 0xCA71},+    {0xA568, 0xCA72},+    {0xA569, 0xCA73},+    {0xA56A, 0xCA74},+    {0xA56B, 0xCA75},+    {0xA56C, 0xCA76},+    {0xA56D, 0xCA77},+    {0xA56E, 0xCA78},+    {0xA56F, 0xCA79},+    {0xA570, 0xCA7A},+    {0xA571, 0xCA7B},+    {0xA572, 0xCA7C},+    {0xA573, 0xCA7E},+    {0xA574, 0xCA7F},+    {0xA575, 0xCA80},+    {0xA576, 0xCA81},+    {0xA577, 0xCA82},+    {0xA578, 0xCA83},+    {0xA579, 0xCA85},+    {0xA57A, 0xCA86},+    {0xA581, 0xCA87},+    {0xA582, 0xCA88},+    {0xA583, 0xCA89},+    {0xA584, 0xCA8A},+    {0xA585, 0xCA8B},+    {0xA586, 0xCA8C},+    {0xA587, 0xCA8D},+    {0xA588, 0xCA8E},+    {0xA589, 0xCA8F},+    {0xA58A, 0xCA90},+    {0xA58B, 0xCA91},+    {0xA58C, 0xCA92},+    {0xA58D, 0xCA93},+    {0xA58E, 0xCA94},+    {0xA58F, 0xCA95},+    {0xA590, 0xCA96},+    {0xA591, 0xCA97},+    {0xA592, 0xCA99},+    {0xA593, 0xCA9A},+    {0xA594, 0xCA9B},+    {0xA595, 0xCA9C},+    {0xA596, 0xCA9D},+    {0xA597, 0xCA9E},+    {0xA598, 0xCA9F},+    {0xA599, 0xCAA0},+    {0xA59A, 0xCAA1},+    {0xA59B, 0xCAA2},+    {0xA59C, 0xCAA3},+    {0xA59D, 0xCAA4},+    {0xA59E, 0xCAA5},+    {0xA59F, 0xCAA6},+    {0xA5A0, 0xCAA7},+    {0xA5A1, 0x2170},+    {0xA5A2, 0x2171},+    {0xA5A3, 0x2172},+    {0xA5A4, 0x2173},+    {0xA5A5, 0x2174},+    {0xA5A6, 0x2175},+    {0xA5A7, 0x2176},+    {0xA5A8, 0x2177},+    {0xA5A9, 0x2178},+    {0xA5AA, 0x2179},+    {0xA5B0, 0x2160},+    {0xA5B1, 0x2161},+    {0xA5B2, 0x2162},+    {0xA5B3, 0x2163},+    {0xA5B4, 0x2164},+    {0xA5B5, 0x2165},+    {0xA5B6, 0x2166},+    {0xA5B7, 0x2167},+    {0xA5B8, 0x2168},+    {0xA5B9, 0x2169},+    {0xA5C1, 0x0391},+    {0xA5C2, 0x0392},+    {0xA5C3, 0x0393},+    {0xA5C4, 0x0394},+    {0xA5C5, 0x0395},+    {0xA5C6, 0x0396},+    {0xA5C7, 0x0397},+    {0xA5C8, 0x0398},+    {0xA5C9, 0x0399},+    {0xA5CA, 0x039A},+    {0xA5CB, 0x039B},+    {0xA5CC, 0x039C},+    {0xA5CD, 0x039D},+    {0xA5CE, 0x039E},+    {0xA5CF, 0x039F},+    {0xA5D0, 0x03A0},+    {0xA5D1, 0x03A1},+    {0xA5D2, 0x03A3},+    {0xA5D3, 0x03A4},+    {0xA5D4, 0x03A5},+    {0xA5D5, 0x03A6},+    {0xA5D6, 0x03A7},+    {0xA5D7, 0x03A8},+    {0xA5D8, 0x03A9},+    {0xA5E1, 0x03B1},+    {0xA5E2, 0x03B2},+    {0xA5E3, 0x03B3},+    {0xA5E4, 0x03B4},+    {0xA5E5, 0x03B5},+    {0xA5E6, 0x03B6},+    {0xA5E7, 0x03B7},+    {0xA5E8, 0x03B8},+    {0xA5E9, 0x03B9},+    {0xA5EA, 0x03BA},+    {0xA5EB, 0x03BB},+    {0xA5EC, 0x03BC},+    {0xA5ED, 0x03BD},+    {0xA5EE, 0x03BE},+    {0xA5EF, 0x03BF},+    {0xA5F0, 0x03C0},+    {0xA5F1, 0x03C1},+    {0xA5F2, 0x03C3},+    {0xA5F3, 0x03C4},+    {0xA5F4, 0x03C5},+    {0xA5F5, 0x03C6},+    {0xA5F6, 0x03C7},+    {0xA5F7, 0x03C8},+    {0xA5F8, 0x03C9},+    {0xA641, 0xCAA8},+    {0xA642, 0xCAA9},+    {0xA643, 0xCAAA},+    {0xA644, 0xCAAB},+    {0xA645, 0xCAAC},+    {0xA646, 0xCAAD},+    {0xA647, 0xCAAE},+    {0xA648, 0xCAAF},+    {0xA649, 0xCAB0},+    {0xA64A, 0xCAB1},+    {0xA64B, 0xCAB2},+    {0xA64C, 0xCAB3},+    {0xA64D, 0xCAB4},+    {0xA64E, 0xCAB5},+    {0xA64F, 0xCAB6},+    {0xA650, 0xCAB7},+    {0xA651, 0xCAB8},+    {0xA652, 0xCAB9},+    {0xA653, 0xCABA},+    {0xA654, 0xCABB},+    {0xA655, 0xCABE},+    {0xA656, 0xCABF},+    {0xA657, 0xCAC1},+    {0xA658, 0xCAC2},+    {0xA659, 0xCAC3},+    {0xA65A, 0xCAC5},+    {0xA661, 0xCAC6},+    {0xA662, 0xCAC7},+    {0xA663, 0xCAC8},+    {0xA664, 0xCAC9},+    {0xA665, 0xCACA},+    {0xA666, 0xCACB},+    {0xA667, 0xCACE},+    {0xA668, 0xCAD0},+    {0xA669, 0xCAD2},+    {0xA66A, 0xCAD4},+    {0xA66B, 0xCAD5},+    {0xA66C, 0xCAD6},+    {0xA66D, 0xCAD7},+    {0xA66E, 0xCADA},+    {0xA66F, 0xCADB},+    {0xA670, 0xCADC},+    {0xA671, 0xCADD},+    {0xA672, 0xCADE},+    {0xA673, 0xCADF},+    {0xA674, 0xCAE1},+    {0xA675, 0xCAE2},+    {0xA676, 0xCAE3},+    {0xA677, 0xCAE4},+    {0xA678, 0xCAE5},+    {0xA679, 0xCAE6},+    {0xA67A, 0xCAE7},+    {0xA681, 0xCAE8},+    {0xA682, 0xCAE9},+    {0xA683, 0xCAEA},+    {0xA684, 0xCAEB},+    {0xA685, 0xCAED},+    {0xA686, 0xCAEE},+    {0xA687, 0xCAEF},+    {0xA688, 0xCAF0},+    {0xA689, 0xCAF1},+    {0xA68A, 0xCAF2},+    {0xA68B, 0xCAF3},+    {0xA68C, 0xCAF5},+    {0xA68D, 0xCAF6},+    {0xA68E, 0xCAF7},+    {0xA68F, 0xCAF8},+    {0xA690, 0xCAF9},+    {0xA691, 0xCAFA},+    {0xA692, 0xCAFB},+    {0xA693, 0xCAFC},+    {0xA694, 0xCAFD},+    {0xA695, 0xCAFE},+    {0xA696, 0xCAFF},+    {0xA697, 0xCB00},+    {0xA698, 0xCB01},+    {0xA699, 0xCB02},+    {0xA69A, 0xCB03},+    {0xA69B, 0xCB04},+    {0xA69C, 0xCB05},+    {0xA69D, 0xCB06},+    {0xA69E, 0xCB07},+    {0xA69F, 0xCB09},+    {0xA6A0, 0xCB0A},+    {0xA6A1, 0x2500},+    {0xA6A2, 0x2502},+    {0xA6A3, 0x250C},+    {0xA6A4, 0x2510},+    {0xA6A5, 0x2518},+    {0xA6A6, 0x2514},+    {0xA6A7, 0x251C},+    {0xA6A8, 0x252C},+    {0xA6A9, 0x2524},+    {0xA6AA, 0x2534},+    {0xA6AB, 0x253C},+    {0xA6AC, 0x2501},+    {0xA6AD, 0x2503},+    {0xA6AE, 0x250F},+    {0xA6AF, 0x2513},+    {0xA6B0, 0x251B},+    {0xA6B1, 0x2517},+    {0xA6B2, 0x2523},+    {0xA6B3, 0x2533},+    {0xA6B4, 0x252B},+    {0xA6B5, 0x253B},+    {0xA6B6, 0x254B},+    {0xA6B7, 0x2520},+    {0xA6B8, 0x252F},+    {0xA6B9, 0x2528},+    {0xA6BA, 0x2537},+    {0xA6BB, 0x253F},+    {0xA6BC, 0x251D},+    {0xA6BD, 0x2530},+    {0xA6BE, 0x2525},+    {0xA6BF, 0x2538},+    {0xA6C0, 0x2542},+    {0xA6C1, 0x2512},+    {0xA6C2, 0x2511},+    {0xA6C3, 0x251A},+    {0xA6C4, 0x2519},+    {0xA6C5, 0x2516},+    {0xA6C6, 0x2515},+    {0xA6C7, 0x250E},+    {0xA6C8, 0x250D},+    {0xA6C9, 0x251E},+    {0xA6CA, 0x251F},+    {0xA6CB, 0x2521},+    {0xA6CC, 0x2522},+    {0xA6CD, 0x2526},+    {0xA6CE, 0x2527},+    {0xA6CF, 0x2529},+    {0xA6D0, 0x252A},+    {0xA6D1, 0x252D},+    {0xA6D2, 0x252E},+    {0xA6D3, 0x2531},+    {0xA6D4, 0x2532},+    {0xA6D5, 0x2535},+    {0xA6D6, 0x2536},+    {0xA6D7, 0x2539},+    {0xA6D8, 0x253A},+    {0xA6D9, 0x253D},+    {0xA6DA, 0x253E},+    {0xA6DB, 0x2540},+    {0xA6DC, 0x2541},+    {0xA6DD, 0x2543},+    {0xA6DE, 0x2544},+    {0xA6DF, 0x2545},+    {0xA6E0, 0x2546},+    {0xA6E1, 0x2547},+    {0xA6E2, 0x2548},+    {0xA6E3, 0x2549},+    {0xA6E4, 0x254A},+    {0xA741, 0xCB0B},+    {0xA742, 0xCB0C},+    {0xA743, 0xCB0D},+    {0xA744, 0xCB0E},+    {0xA745, 0xCB0F},+    {0xA746, 0xCB11},+    {0xA747, 0xCB12},+    {0xA748, 0xCB13},+    {0xA749, 0xCB15},+    {0xA74A, 0xCB16},+    {0xA74B, 0xCB17},+    {0xA74C, 0xCB19},+    {0xA74D, 0xCB1A},+    {0xA74E, 0xCB1B},+    {0xA74F, 0xCB1C},+    {0xA750, 0xCB1D},+    {0xA751, 0xCB1E},+    {0xA752, 0xCB1F},+    {0xA753, 0xCB22},+    {0xA754, 0xCB23},+    {0xA755, 0xCB24},+    {0xA756, 0xCB25},+    {0xA757, 0xCB26},+    {0xA758, 0xCB27},+    {0xA759, 0xCB28},+    {0xA75A, 0xCB29},+    {0xA761, 0xCB2A},+    {0xA762, 0xCB2B},+    {0xA763, 0xCB2C},+    {0xA764, 0xCB2D},+    {0xA765, 0xCB2E},+    {0xA766, 0xCB2F},+    {0xA767, 0xCB30},+    {0xA768, 0xCB31},+    {0xA769, 0xCB32},+    {0xA76A, 0xCB33},+    {0xA76B, 0xCB34},+    {0xA76C, 0xCB35},+    {0xA76D, 0xCB36},+    {0xA76E, 0xCB37},+    {0xA76F, 0xCB38},+    {0xA770, 0xCB39},+    {0xA771, 0xCB3A},+    {0xA772, 0xCB3B},+    {0xA773, 0xCB3C},+    {0xA774, 0xCB3D},+    {0xA775, 0xCB3E},+    {0xA776, 0xCB3F},+    {0xA777, 0xCB40},+    {0xA778, 0xCB42},+    {0xA779, 0xCB43},+    {0xA77A, 0xCB44},+    {0xA781, 0xCB45},+    {0xA782, 0xCB46},+    {0xA783, 0xCB47},+    {0xA784, 0xCB4A},+    {0xA785, 0xCB4B},+    {0xA786, 0xCB4D},+    {0xA787, 0xCB4E},+    {0xA788, 0xCB4F},+    {0xA789, 0xCB51},+    {0xA78A, 0xCB52},+    {0xA78B, 0xCB53},+    {0xA78C, 0xCB54},+    {0xA78D, 0xCB55},+    {0xA78E, 0xCB56},+    {0xA78F, 0xCB57},+    {0xA790, 0xCB5A},+    {0xA791, 0xCB5B},+    {0xA792, 0xCB5C},+    {0xA793, 0xCB5E},+    {0xA794, 0xCB5F},+    {0xA795, 0xCB60},+    {0xA796, 0xCB61},+    {0xA797, 0xCB62},+    {0xA798, 0xCB63},+    {0xA799, 0xCB65},+    {0xA79A, 0xCB66},+    {0xA79B, 0xCB67},+    {0xA79C, 0xCB68},+    {0xA79D, 0xCB69},+    {0xA79E, 0xCB6A},+    {0xA79F, 0xCB6B},+    {0xA7A0, 0xCB6C},+    {0xA7A1, 0x3395},+    {0xA7A2, 0x3396},+    {0xA7A3, 0x3397},+    {0xA7A4, 0x2113},+    {0xA7A5, 0x3398},+    {0xA7A6, 0x33C4},+    {0xA7A7, 0x33A3},+    {0xA7A8, 0x33A4},+    {0xA7A9, 0x33A5},+    {0xA7AA, 0x33A6},+    {0xA7AB, 0x3399},+    {0xA7AC, 0x339A},+    {0xA7AD, 0x339B},+    {0xA7AE, 0x339C},+    {0xA7AF, 0x339D},+    {0xA7B0, 0x339E},+    {0xA7B1, 0x339F},+    {0xA7B2, 0x33A0},+    {0xA7B3, 0x33A1},+    {0xA7B4, 0x33A2},+    {0xA7B5, 0x33CA},+    {0xA7B6, 0x338D},+    {0xA7B7, 0x338E},+    {0xA7B8, 0x338F},+    {0xA7B9, 0x33CF},+    {0xA7BA, 0x3388},+    {0xA7BB, 0x3389},+    {0xA7BC, 0x33C8},+    {0xA7BD, 0x33A7},+    {0xA7BE, 0x33A8},+    {0xA7BF, 0x33B0},+    {0xA7C0, 0x33B1},+    {0xA7C1, 0x33B2},+    {0xA7C2, 0x33B3},+    {0xA7C3, 0x33B4},+    {0xA7C4, 0x33B5},+    {0xA7C5, 0x33B6},+    {0xA7C6, 0x33B7},+    {0xA7C7, 0x33B8},+    {0xA7C8, 0x33B9},+    {0xA7C9, 0x3380},+    {0xA7CA, 0x3381},+    {0xA7CB, 0x3382},+    {0xA7CC, 0x3383},+    {0xA7CD, 0x3384},+    {0xA7CE, 0x33BA},+    {0xA7CF, 0x33BB},+    {0xA7D0, 0x33BC},+    {0xA7D1, 0x33BD},+    {0xA7D2, 0x33BE},+    {0xA7D3, 0x33BF},+    {0xA7D4, 0x3390},+    {0xA7D5, 0x3391},+    {0xA7D6, 0x3392},+    {0xA7D7, 0x3393},+    {0xA7D8, 0x3394},+    {0xA7D9, 0x2126},+    {0xA7DA, 0x33C0},+    {0xA7DB, 0x33C1},+    {0xA7DC, 0x338A},+    {0xA7DD, 0x338B},+    {0xA7DE, 0x338C},+    {0xA7DF, 0x33D6},+    {0xA7E0, 0x33C5},+    {0xA7E1, 0x33AD},+    {0xA7E2, 0x33AE},+    {0xA7E3, 0x33AF},+    {0xA7E4, 0x33DB},+    {0xA7E5, 0x33A9},+    {0xA7E6, 0x33AA},+    {0xA7E7, 0x33AB},+    {0xA7E8, 0x33AC},+    {0xA7E9, 0x33DD},+    {0xA7EA, 0x33D0},+    {0xA7EB, 0x33D3},+    {0xA7EC, 0x33C3},+    {0xA7ED, 0x33C9},+    {0xA7EE, 0x33DC},+    {0xA7EF, 0x33C6},+    {0xA841, 0xCB6D},+    {0xA842, 0xCB6E},+    {0xA843, 0xCB6F},+    {0xA844, 0xCB70},+    {0xA845, 0xCB71},+    {0xA846, 0xCB72},+    {0xA847, 0xCB73},+    {0xA848, 0xCB74},+    {0xA849, 0xCB75},+    {0xA84A, 0xCB76},+    {0xA84B, 0xCB77},+    {0xA84C, 0xCB7A},+    {0xA84D, 0xCB7B},+    {0xA84E, 0xCB7C},+    {0xA84F, 0xCB7D},+    {0xA850, 0xCB7E},+    {0xA851, 0xCB7F},+    {0xA852, 0xCB80},+    {0xA853, 0xCB81},+    {0xA854, 0xCB82},+    {0xA855, 0xCB83},+    {0xA856, 0xCB84},+    {0xA857, 0xCB85},+    {0xA858, 0xCB86},+    {0xA859, 0xCB87},+    {0xA85A, 0xCB88},+    {0xA861, 0xCB89},+    {0xA862, 0xCB8A},+    {0xA863, 0xCB8B},+    {0xA864, 0xCB8C},+    {0xA865, 0xCB8D},+    {0xA866, 0xCB8E},+    {0xA867, 0xCB8F},+    {0xA868, 0xCB90},+    {0xA869, 0xCB91},+    {0xA86A, 0xCB92},+    {0xA86B, 0xCB93},+    {0xA86C, 0xCB94},+    {0xA86D, 0xCB95},+    {0xA86E, 0xCB96},+    {0xA86F, 0xCB97},+    {0xA870, 0xCB98},+    {0xA871, 0xCB99},+    {0xA872, 0xCB9A},+    {0xA873, 0xCB9B},+    {0xA874, 0xCB9D},+    {0xA875, 0xCB9E},+    {0xA876, 0xCB9F},+    {0xA877, 0xCBA0},+    {0xA878, 0xCBA1},+    {0xA879, 0xCBA2},+    {0xA87A, 0xCBA3},+    {0xA881, 0xCBA4},+    {0xA882, 0xCBA5},+    {0xA883, 0xCBA6},+    {0xA884, 0xCBA7},+    {0xA885, 0xCBA8},+    {0xA886, 0xCBA9},+    {0xA887, 0xCBAA},+    {0xA888, 0xCBAB},+    {0xA889, 0xCBAC},+    {0xA88A, 0xCBAD},+    {0xA88B, 0xCBAE},+    {0xA88C, 0xCBAF},+    {0xA88D, 0xCBB0},+    {0xA88E, 0xCBB1},+    {0xA88F, 0xCBB2},+    {0xA890, 0xCBB3},+    {0xA891, 0xCBB4},+    {0xA892, 0xCBB5},+    {0xA893, 0xCBB6},+    {0xA894, 0xCBB7},+    {0xA895, 0xCBB9},+    {0xA896, 0xCBBA},+    {0xA897, 0xCBBB},+    {0xA898, 0xCBBC},+    {0xA899, 0xCBBD},+    {0xA89A, 0xCBBE},+    {0xA89B, 0xCBBF},+    {0xA89C, 0xCBC0},+    {0xA89D, 0xCBC1},+    {0xA89E, 0xCBC2},+    {0xA89F, 0xCBC3},+    {0xA8A0, 0xCBC4},+    {0xA8A1, 0x00C6},+    {0xA8A2, 0x00D0},+    {0xA8A3, 0x00AA},+    {0xA8A4, 0x0126},+    {0xA8A6, 0x0132},+    {0xA8A8, 0x013F},+    {0xA8A9, 0x0141},+    {0xA8AA, 0x00D8},+    {0xA8AB, 0x0152},+    {0xA8AC, 0x00BA},+    {0xA8AD, 0x00DE},+    {0xA8AE, 0x0166},+    {0xA8AF, 0x014A},+    {0xA8B1, 0x3260},+    {0xA8B2, 0x3261},+    {0xA8B3, 0x3262},+    {0xA8B4, 0x3263},+    {0xA8B5, 0x3264},+    {0xA8B6, 0x3265},+    {0xA8B7, 0x3266},+    {0xA8B8, 0x3267},+    {0xA8B9, 0x3268},+    {0xA8BA, 0x3269},+    {0xA8BB, 0x326A},+    {0xA8BC, 0x326B},+    {0xA8BD, 0x326C},+    {0xA8BE, 0x326D},+    {0xA8BF, 0x326E},+    {0xA8C0, 0x326F},+    {0xA8C1, 0x3270},+    {0xA8C2, 0x3271},+    {0xA8C3, 0x3272},+    {0xA8C4, 0x3273},+    {0xA8C5, 0x3274},+    {0xA8C6, 0x3275},+    {0xA8C7, 0x3276},+    {0xA8C8, 0x3277},+    {0xA8C9, 0x3278},+    {0xA8CA, 0x3279},+    {0xA8CB, 0x327A},+    {0xA8CC, 0x327B},+    {0xA8CD, 0x24D0},+    {0xA8CE, 0x24D1},+    {0xA8CF, 0x24D2},+    {0xA8D0, 0x24D3},+    {0xA8D1, 0x24D4},+    {0xA8D2, 0x24D5},+    {0xA8D3, 0x24D6},+    {0xA8D4, 0x24D7},+    {0xA8D5, 0x24D8},+    {0xA8D6, 0x24D9},+    {0xA8D7, 0x24DA},+    {0xA8D8, 0x24DB},+    {0xA8D9, 0x24DC},+    {0xA8DA, 0x24DD},+    {0xA8DB, 0x24DE},+    {0xA8DC, 0x24DF},+    {0xA8DD, 0x24E0},+    {0xA8DE, 0x24E1},+    {0xA8DF, 0x24E2},+    {0xA8E0, 0x24E3},+    {0xA8E1, 0x24E4},+    {0xA8E2, 0x24E5},+    {0xA8E3, 0x24E6},+    {0xA8E4, 0x24E7},+    {0xA8E5, 0x24E8},+    {0xA8E6, 0x24E9},+    {0xA8E7, 0x2460},+    {0xA8E8, 0x2461},+    {0xA8E9, 0x2462},+    {0xA8EA, 0x2463},+    {0xA8EB, 0x2464},+    {0xA8EC, 0x2465},+    {0xA8ED, 0x2466},+    {0xA8EE, 0x2467},+    {0xA8EF, 0x2468},+    {0xA8F0, 0x2469},+    {0xA8F1, 0x246A},+    {0xA8F2, 0x246B},+    {0xA8F3, 0x246C},+    {0xA8F4, 0x246D},+    {0xA8F5, 0x246E},+    {0xA8F6, 0x00BD},+    {0xA8F7, 0x2153},+    {0xA8F8, 0x2154},+    {0xA8F9, 0x00BC},+    {0xA8FA, 0x00BE},+    {0xA8FB, 0x215B},+    {0xA8FC, 0x215C},+    {0xA8FD, 0x215D},+    {0xA8FE, 0x215E},+    {0xA941, 0xCBC5},+    {0xA942, 0xCBC6},+    {0xA943, 0xCBC7},+    {0xA944, 0xCBC8},+    {0xA945, 0xCBC9},+    {0xA946, 0xCBCA},+    {0xA947, 0xCBCB},+    {0xA948, 0xCBCC},+    {0xA949, 0xCBCD},+    {0xA94A, 0xCBCE},+    {0xA94B, 0xCBCF},+    {0xA94C, 0xCBD0},+    {0xA94D, 0xCBD1},+    {0xA94E, 0xCBD2},+    {0xA94F, 0xCBD3},+    {0xA950, 0xCBD5},+    {0xA951, 0xCBD6},+    {0xA952, 0xCBD7},+    {0xA953, 0xCBD8},+    {0xA954, 0xCBD9},+    {0xA955, 0xCBDA},+    {0xA956, 0xCBDB},+    {0xA957, 0xCBDC},+    {0xA958, 0xCBDD},+    {0xA959, 0xCBDE},+    {0xA95A, 0xCBDF},+    {0xA961, 0xCBE0},+    {0xA962, 0xCBE1},+    {0xA963, 0xCBE2},+    {0xA964, 0xCBE3},+    {0xA965, 0xCBE5},+    {0xA966, 0xCBE6},+    {0xA967, 0xCBE8},+    {0xA968, 0xCBEA},+    {0xA969, 0xCBEB},+    {0xA96A, 0xCBEC},+    {0xA96B, 0xCBED},+    {0xA96C, 0xCBEE},+    {0xA96D, 0xCBEF},+    {0xA96E, 0xCBF0},+    {0xA96F, 0xCBF1},+    {0xA970, 0xCBF2},+    {0xA971, 0xCBF3},+    {0xA972, 0xCBF4},+    {0xA973, 0xCBF5},+    {0xA974, 0xCBF6},+    {0xA975, 0xCBF7},+    {0xA976, 0xCBF8},+    {0xA977, 0xCBF9},+    {0xA978, 0xCBFA},+    {0xA979, 0xCBFB},+    {0xA97A, 0xCBFC},+    {0xA981, 0xCBFD},+    {0xA982, 0xCBFE},+    {0xA983, 0xCBFF},+    {0xA984, 0xCC00},+    {0xA985, 0xCC01},+    {0xA986, 0xCC02},+    {0xA987, 0xCC03},+    {0xA988, 0xCC04},+    {0xA989, 0xCC05},+    {0xA98A, 0xCC06},+    {0xA98B, 0xCC07},+    {0xA98C, 0xCC08},+    {0xA98D, 0xCC09},+    {0xA98E, 0xCC0A},+    {0xA98F, 0xCC0B},+    {0xA990, 0xCC0E},+    {0xA991, 0xCC0F},+    {0xA992, 0xCC11},+    {0xA993, 0xCC12},+    {0xA994, 0xCC13},+    {0xA995, 0xCC15},+    {0xA996, 0xCC16},+    {0xA997, 0xCC17},+    {0xA998, 0xCC18},+    {0xA999, 0xCC19},+    {0xA99A, 0xCC1A},+    {0xA99B, 0xCC1B},+    {0xA99C, 0xCC1E},+    {0xA99D, 0xCC1F},+    {0xA99E, 0xCC20},+    {0xA99F, 0xCC23},+    {0xA9A0, 0xCC24},+    {0xA9A1, 0x00E6},+    {0xA9A2, 0x0111},+    {0xA9A3, 0x00F0},+    {0xA9A4, 0x0127},+    {0xA9A5, 0x0131},+    {0xA9A6, 0x0133},+    {0xA9A7, 0x0138},+    {0xA9A8, 0x0140},+    {0xA9A9, 0x0142},+    {0xA9AA, 0x00F8},+    {0xA9AB, 0x0153},+    {0xA9AC, 0x00DF},+    {0xA9AD, 0x00FE},+    {0xA9AE, 0x0167},+    {0xA9AF, 0x014B},+    {0xA9B0, 0x0149},+    {0xA9B1, 0x3200},+    {0xA9B2, 0x3201},+    {0xA9B3, 0x3202},+    {0xA9B4, 0x3203},+    {0xA9B5, 0x3204},+    {0xA9B6, 0x3205},+    {0xA9B7, 0x3206},+    {0xA9B8, 0x3207},+    {0xA9B9, 0x3208},+    {0xA9BA, 0x3209},+    {0xA9BB, 0x320A},+    {0xA9BC, 0x320B},+    {0xA9BD, 0x320C},+    {0xA9BE, 0x320D},+    {0xA9BF, 0x320E},+    {0xA9C0, 0x320F},+    {0xA9C1, 0x3210},+    {0xA9C2, 0x3211},+    {0xA9C3, 0x3212},+    {0xA9C4, 0x3213},+    {0xA9C5, 0x3214},+    {0xA9C6, 0x3215},+    {0xA9C7, 0x3216},+    {0xA9C8, 0x3217},+    {0xA9C9, 0x3218},+    {0xA9CA, 0x3219},+    {0xA9CB, 0x321A},+    {0xA9CC, 0x321B},+    {0xA9CD, 0x249C},+    {0xA9CE, 0x249D},+    {0xA9CF, 0x249E},+    {0xA9D0, 0x249F},+    {0xA9D1, 0x24A0},+    {0xA9D2, 0x24A1},+    {0xA9D3, 0x24A2},+    {0xA9D4, 0x24A3},+    {0xA9D5, 0x24A4},+    {0xA9D6, 0x24A5},+    {0xA9D7, 0x24A6},+    {0xA9D8, 0x24A7},+    {0xA9D9, 0x24A8},+    {0xA9DA, 0x24A9},+    {0xA9DB, 0x24AA},+    {0xA9DC, 0x24AB},+    {0xA9DD, 0x24AC},+    {0xA9DE, 0x24AD},+    {0xA9DF, 0x24AE},+    {0xA9E0, 0x24AF},+    {0xA9E1, 0x24B0},+    {0xA9E2, 0x24B1},+    {0xA9E3, 0x24B2},+    {0xA9E4, 0x24B3},+    {0xA9E5, 0x24B4},+    {0xA9E6, 0x24B5},+    {0xA9E7, 0x2474},+    {0xA9E8, 0x2475},+    {0xA9E9, 0x2476},+    {0xA9EA, 0x2477},+    {0xA9EB, 0x2478},+    {0xA9EC, 0x2479},+    {0xA9ED, 0x247A},+    {0xA9EE, 0x247B},+    {0xA9EF, 0x247C},+    {0xA9F0, 0x247D},+    {0xA9F1, 0x247E},+    {0xA9F2, 0x247F},+    {0xA9F3, 0x2480},+    {0xA9F4, 0x2481},+    {0xA9F5, 0x2482},+    {0xA9F6, 0x00B9},+    {0xA9F7, 0x00B2},+    {0xA9F8, 0x00B3},+    {0xA9F9, 0x2074},+    {0xA9FA, 0x207F},+    {0xA9FB, 0x2081},+    {0xA9FC, 0x2082},+    {0xA9FD, 0x2083},+    {0xA9FE, 0x2084},+    {0xAA41, 0xCC25},+    {0xAA42, 0xCC26},+    {0xAA43, 0xCC2A},+    {0xAA44, 0xCC2B},+    {0xAA45, 0xCC2D},+    {0xAA46, 0xCC2F},+    {0xAA47, 0xCC31},+    {0xAA48, 0xCC32},+    {0xAA49, 0xCC33},+    {0xAA4A, 0xCC34},+    {0xAA4B, 0xCC35},+    {0xAA4C, 0xCC36},+    {0xAA4D, 0xCC37},+    {0xAA4E, 0xCC3A},+    {0xAA4F, 0xCC3F},+    {0xAA50, 0xCC40},+    {0xAA51, 0xCC41},+    {0xAA52, 0xCC42},+    {0xAA53, 0xCC43},+    {0xAA54, 0xCC46},+    {0xAA55, 0xCC47},+    {0xAA56, 0xCC49},+    {0xAA57, 0xCC4A},+    {0xAA58, 0xCC4B},+    {0xAA59, 0xCC4D},+    {0xAA5A, 0xCC4E},+    {0xAA61, 0xCC4F},+    {0xAA62, 0xCC50},+    {0xAA63, 0xCC51},+    {0xAA64, 0xCC52},+    {0xAA65, 0xCC53},+    {0xAA66, 0xCC56},+    {0xAA67, 0xCC5A},+    {0xAA68, 0xCC5B},+    {0xAA69, 0xCC5C},+    {0xAA6A, 0xCC5D},+    {0xAA6B, 0xCC5E},+    {0xAA6C, 0xCC5F},+    {0xAA6D, 0xCC61},+    {0xAA6E, 0xCC62},+    {0xAA6F, 0xCC63},+    {0xAA70, 0xCC65},+    {0xAA71, 0xCC67},+    {0xAA72, 0xCC69},+    {0xAA73, 0xCC6A},+    {0xAA74, 0xCC6B},+    {0xAA75, 0xCC6C},+    {0xAA76, 0xCC6D},+    {0xAA77, 0xCC6E},+    {0xAA78, 0xCC6F},+    {0xAA79, 0xCC71},+    {0xAA7A, 0xCC72},+    {0xAA81, 0xCC73},+    {0xAA82, 0xCC74},+    {0xAA83, 0xCC76},+    {0xAA84, 0xCC77},+    {0xAA85, 0xCC78},+    {0xAA86, 0xCC79},+    {0xAA87, 0xCC7A},+    {0xAA88, 0xCC7B},+    {0xAA89, 0xCC7C},+    {0xAA8A, 0xCC7D},+    {0xAA8B, 0xCC7E},+    {0xAA8C, 0xCC7F},+    {0xAA8D, 0xCC80},+    {0xAA8E, 0xCC81},+    {0xAA8F, 0xCC82},+    {0xAA90, 0xCC83},+    {0xAA91, 0xCC84},+    {0xAA92, 0xCC85},+    {0xAA93, 0xCC86},+    {0xAA94, 0xCC87},+    {0xAA95, 0xCC88},+    {0xAA96, 0xCC89},+    {0xAA97, 0xCC8A},+    {0xAA98, 0xCC8B},+    {0xAA99, 0xCC8C},+    {0xAA9A, 0xCC8D},+    {0xAA9B, 0xCC8E},+    {0xAA9C, 0xCC8F},+    {0xAA9D, 0xCC90},+    {0xAA9E, 0xCC91},+    {0xAA9F, 0xCC92},+    {0xAAA0, 0xCC93},+    {0xAAA1, 0x3041},+    {0xAAA2, 0x3042},+    {0xAAA3, 0x3043},+    {0xAAA4, 0x3044},+    {0xAAA5, 0x3045},+    {0xAAA6, 0x3046},+    {0xAAA7, 0x3047},+    {0xAAA8, 0x3048},+    {0xAAA9, 0x3049},+    {0xAAAA, 0x304A},+    {0xAAAB, 0x304B},+    {0xAAAC, 0x304C},+    {0xAAAD, 0x304D},+    {0xAAAE, 0x304E},+    {0xAAAF, 0x304F},+    {0xAAB0, 0x3050},+    {0xAAB1, 0x3051},+    {0xAAB2, 0x3052},+    {0xAAB3, 0x3053},+    {0xAAB4, 0x3054},+    {0xAAB5, 0x3055},+    {0xAAB6, 0x3056},+    {0xAAB7, 0x3057},+    {0xAAB8, 0x3058},+    {0xAAB9, 0x3059},+    {0xAABA, 0x305A},+    {0xAABB, 0x305B},+    {0xAABC, 0x305C},+    {0xAABD, 0x305D},+    {0xAABE, 0x305E},+    {0xAABF, 0x305F},+    {0xAAC0, 0x3060},+    {0xAAC1, 0x3061},+    {0xAAC2, 0x3062},+    {0xAAC3, 0x3063},+    {0xAAC4, 0x3064},+    {0xAAC5, 0x3065},+    {0xAAC6, 0x3066},+    {0xAAC7, 0x3067},+    {0xAAC8, 0x3068},+    {0xAAC9, 0x3069},+    {0xAACA, 0x306A},+    {0xAACB, 0x306B},+    {0xAACC, 0x306C},+    {0xAACD, 0x306D},+    {0xAACE, 0x306E},+    {0xAACF, 0x306F},+    {0xAAD0, 0x3070},+    {0xAAD1, 0x3071},+    {0xAAD2, 0x3072},+    {0xAAD3, 0x3073},+    {0xAAD4, 0x3074},+    {0xAAD5, 0x3075},+    {0xAAD6, 0x3076},+    {0xAAD7, 0x3077},+    {0xAAD8, 0x3078},+    {0xAAD9, 0x3079},+    {0xAADA, 0x307A},+    {0xAADB, 0x307B},+    {0xAADC, 0x307C},+    {0xAADD, 0x307D},+    {0xAADE, 0x307E},+    {0xAADF, 0x307F},+    {0xAAE0, 0x3080},+    {0xAAE1, 0x3081},+    {0xAAE2, 0x3082},+    {0xAAE3, 0x3083},+    {0xAAE4, 0x3084},+    {0xAAE5, 0x3085},+    {0xAAE6, 0x3086},+    {0xAAE7, 0x3087},+    {0xAAE8, 0x3088},+    {0xAAE9, 0x3089},+    {0xAAEA, 0x308A},+    {0xAAEB, 0x308B},+    {0xAAEC, 0x308C},+    {0xAAED, 0x308D},+    {0xAAEE, 0x308E},+    {0xAAEF, 0x308F},+    {0xAAF0, 0x3090},+    {0xAAF1, 0x3091},+    {0xAAF2, 0x3092},+    {0xAAF3, 0x3093},+    {0xAB41, 0xCC94},+    {0xAB42, 0xCC95},+    {0xAB43, 0xCC96},+    {0xAB44, 0xCC97},+    {0xAB45, 0xCC9A},+    {0xAB46, 0xCC9B},+    {0xAB47, 0xCC9D},+    {0xAB48, 0xCC9E},+    {0xAB49, 0xCC9F},+    {0xAB4A, 0xCCA1},+    {0xAB4B, 0xCCA2},+    {0xAB4C, 0xCCA3},+    {0xAB4D, 0xCCA4},+    {0xAB4E, 0xCCA5},+    {0xAB4F, 0xCCA6},+    {0xAB50, 0xCCA7},+    {0xAB51, 0xCCAA},+    {0xAB52, 0xCCAE},+    {0xAB53, 0xCCAF},+    {0xAB54, 0xCCB0},+    {0xAB55, 0xCCB1},+    {0xAB56, 0xCCB2},+    {0xAB57, 0xCCB3},+    {0xAB58, 0xCCB6},+    {0xAB59, 0xCCB7},+    {0xAB5A, 0xCCB9},+    {0xAB61, 0xCCBA},+    {0xAB62, 0xCCBB},+    {0xAB63, 0xCCBD},+    {0xAB64, 0xCCBE},+    {0xAB65, 0xCCBF},+    {0xAB66, 0xCCC0},+    {0xAB67, 0xCCC1},+    {0xAB68, 0xCCC2},+    {0xAB69, 0xCCC3},+    {0xAB6A, 0xCCC6},+    {0xAB6B, 0xCCC8},+    {0xAB6C, 0xCCCA},+    {0xAB6D, 0xCCCB},+    {0xAB6E, 0xCCCC},+    {0xAB6F, 0xCCCD},+    {0xAB70, 0xCCCE},+    {0xAB71, 0xCCCF},+    {0xAB72, 0xCCD1},+    {0xAB73, 0xCCD2},+    {0xAB74, 0xCCD3},+    {0xAB75, 0xCCD5},+    {0xAB76, 0xCCD6},+    {0xAB77, 0xCCD7},+    {0xAB78, 0xCCD8},+    {0xAB79, 0xCCD9},+    {0xAB7A, 0xCCDA},+    {0xAB81, 0xCCDB},+    {0xAB82, 0xCCDC},+    {0xAB83, 0xCCDD},+    {0xAB84, 0xCCDE},+    {0xAB85, 0xCCDF},+    {0xAB86, 0xCCE0},+    {0xAB87, 0xCCE1},+    {0xAB88, 0xCCE2},+    {0xAB89, 0xCCE3},+    {0xAB8A, 0xCCE5},+    {0xAB8B, 0xCCE6},+    {0xAB8C, 0xCCE7},+    {0xAB8D, 0xCCE8},+    {0xAB8E, 0xCCE9},+    {0xAB8F, 0xCCEA},+    {0xAB90, 0xCCEB},+    {0xAB91, 0xCCED},+    {0xAB92, 0xCCEE},+    {0xAB93, 0xCCEF},+    {0xAB94, 0xCCF1},+    {0xAB95, 0xCCF2},+    {0xAB96, 0xCCF3},+    {0xAB97, 0xCCF4},+    {0xAB98, 0xCCF5},+    {0xAB99, 0xCCF6},+    {0xAB9A, 0xCCF7},+    {0xAB9B, 0xCCF8},+    {0xAB9C, 0xCCF9},+    {0xAB9D, 0xCCFA},+    {0xAB9E, 0xCCFB},+    {0xAB9F, 0xCCFC},+    {0xABA0, 0xCCFD},+    {0xABA1, 0x30A1},+    {0xABA2, 0x30A2},+    {0xABA3, 0x30A3},+    {0xABA4, 0x30A4},+    {0xABA5, 0x30A5},+    {0xABA6, 0x30A6},+    {0xABA7, 0x30A7},+    {0xABA8, 0x30A8},+    {0xABA9, 0x30A9},+    {0xABAA, 0x30AA},+    {0xABAB, 0x30AB},+    {0xABAC, 0x30AC},+    {0xABAD, 0x30AD},+    {0xABAE, 0x30AE},+    {0xABAF, 0x30AF},+    {0xABB0, 0x30B0},+    {0xABB1, 0x30B1},+    {0xABB2, 0x30B2},+    {0xABB3, 0x30B3},+    {0xABB4, 0x30B4},+    {0xABB5, 0x30B5},+    {0xABB6, 0x30B6},+    {0xABB7, 0x30B7},+    {0xABB8, 0x30B8},+    {0xABB9, 0x30B9},+    {0xABBA, 0x30BA},+    {0xABBB, 0x30BB},+    {0xABBC, 0x30BC},+    {0xABBD, 0x30BD},+    {0xABBE, 0x30BE},+    {0xABBF, 0x30BF},+    {0xABC0, 0x30C0},+    {0xABC1, 0x30C1},+    {0xABC2, 0x30C2},+    {0xABC3, 0x30C3},+    {0xABC4, 0x30C4},+    {0xABC5, 0x30C5},+    {0xABC6, 0x30C6},+    {0xABC7, 0x30C7},+    {0xABC8, 0x30C8},+    {0xABC9, 0x30C9},+    {0xABCA, 0x30CA},+    {0xABCB, 0x30CB},+    {0xABCC, 0x30CC},+    {0xABCD, 0x30CD},+    {0xABCE, 0x30CE},+    {0xABCF, 0x30CF},+    {0xABD0, 0x30D0},+    {0xABD1, 0x30D1},+    {0xABD2, 0x30D2},+    {0xABD3, 0x30D3},+    {0xABD4, 0x30D4},+    {0xABD5, 0x30D5},+    {0xABD6, 0x30D6},+    {0xABD7, 0x30D7},+    {0xABD8, 0x30D8},+    {0xABD9, 0x30D9},+    {0xABDA, 0x30DA},+    {0xABDB, 0x30DB},+    {0xABDC, 0x30DC},+    {0xABDD, 0x30DD},+    {0xABDE, 0x30DE},+    {0xABDF, 0x30DF},+    {0xABE0, 0x30E0},+    {0xABE1, 0x30E1},+    {0xABE2, 0x30E2},+    {0xABE3, 0x30E3},+    {0xABE4, 0x30E4},+    {0xABE5, 0x30E5},+    {0xABE6, 0x30E6},+    {0xABE7, 0x30E7},+    {0xABE8, 0x30E8},+    {0xABE9, 0x30E9},+    {0xABEA, 0x30EA},+    {0xABEB, 0x30EB},+    {0xABEC, 0x30EC},+    {0xABED, 0x30ED},+    {0xABEE, 0x30EE},+    {0xABEF, 0x30EF},+    {0xABF0, 0x30F0},+    {0xABF1, 0x30F1},+    {0xABF2, 0x30F2},+    {0xABF3, 0x30F3},+    {0xABF4, 0x30F4},+    {0xABF5, 0x30F5},+    {0xABF6, 0x30F6},+    {0xAC41, 0xCCFE},+    {0xAC42, 0xCCFF},+    {0xAC43, 0xCD00},+    {0xAC44, 0xCD02},+    {0xAC45, 0xCD03},+    {0xAC46, 0xCD04},+    {0xAC47, 0xCD05},+    {0xAC48, 0xCD06},+    {0xAC49, 0xCD07},+    {0xAC4A, 0xCD0A},+    {0xAC4B, 0xCD0B},+    {0xAC4C, 0xCD0D},+    {0xAC4D, 0xCD0E},+    {0xAC4E, 0xCD0F},+    {0xAC4F, 0xCD11},+    {0xAC50, 0xCD12},+    {0xAC51, 0xCD13},+    {0xAC52, 0xCD14},+    {0xAC53, 0xCD15},+    {0xAC54, 0xCD16},+    {0xAC55, 0xCD17},+    {0xAC56, 0xCD1A},+    {0xAC57, 0xCD1C},+    {0xAC58, 0xCD1E},+    {0xAC59, 0xCD1F},+    {0xAC5A, 0xCD20},+    {0xAC61, 0xCD21},+    {0xAC62, 0xCD22},+    {0xAC63, 0xCD23},+    {0xAC64, 0xCD25},+    {0xAC65, 0xCD26},+    {0xAC66, 0xCD27},+    {0xAC67, 0xCD29},+    {0xAC68, 0xCD2A},+    {0xAC69, 0xCD2B},+    {0xAC6A, 0xCD2D},+    {0xAC6B, 0xCD2E},+    {0xAC6C, 0xCD2F},+    {0xAC6D, 0xCD30},+    {0xAC6E, 0xCD31},+    {0xAC6F, 0xCD32},+    {0xAC70, 0xCD33},+    {0xAC71, 0xCD34},+    {0xAC72, 0xCD35},+    {0xAC73, 0xCD36},+    {0xAC74, 0xCD37},+    {0xAC75, 0xCD38},+    {0xAC76, 0xCD3A},+    {0xAC77, 0xCD3B},+    {0xAC78, 0xCD3C},+    {0xAC79, 0xCD3D},+    {0xAC7A, 0xCD3E},+    {0xAC81, 0xCD3F},+    {0xAC82, 0xCD40},+    {0xAC83, 0xCD41},+    {0xAC84, 0xCD42},+    {0xAC85, 0xCD43},+    {0xAC86, 0xCD44},+    {0xAC87, 0xCD45},+    {0xAC88, 0xCD46},+    {0xAC89, 0xCD47},+    {0xAC8A, 0xCD48},+    {0xAC8B, 0xCD49},+    {0xAC8C, 0xCD4A},+    {0xAC8D, 0xCD4B},+    {0xAC8E, 0xCD4C},+    {0xAC8F, 0xCD4D},+    {0xAC90, 0xCD4E},+    {0xAC91, 0xCD4F},+    {0xAC92, 0xCD50},+    {0xAC93, 0xCD51},+    {0xAC94, 0xCD52},+    {0xAC95, 0xCD53},+    {0xAC96, 0xCD54},+    {0xAC97, 0xCD55},+    {0xAC98, 0xCD56},+    {0xAC99, 0xCD57},+    {0xAC9A, 0xCD58},+    {0xAC9B, 0xCD59},+    {0xAC9C, 0xCD5A},+    {0xAC9D, 0xCD5B},+    {0xAC9E, 0xCD5D},+    {0xAC9F, 0xCD5E},+    {0xACA0, 0xCD5F},+    {0xACA1, 0x0410},+    {0xACA2, 0x0411},+    {0xACA3, 0x0412},+    {0xACA4, 0x0413},+    {0xACA5, 0x0414},+    {0xACA6, 0x0415},+    {0xACA7, 0x0401},+    {0xACA8, 0x0416},+    {0xACA9, 0x0417},+    {0xACAA, 0x0418},+    {0xACAB, 0x0419},+    {0xACAC, 0x041A},+    {0xACAD, 0x041B},+    {0xACAE, 0x041C},+    {0xACAF, 0x041D},+    {0xACB0, 0x041E},+    {0xACB1, 0x041F},+    {0xACB2, 0x0420},+    {0xACB3, 0x0421},+    {0xACB4, 0x0422},+    {0xACB5, 0x0423},+    {0xACB6, 0x0424},+    {0xACB7, 0x0425},+    {0xACB8, 0x0426},+    {0xACB9, 0x0427},+    {0xACBA, 0x0428},+    {0xACBB, 0x0429},+    {0xACBC, 0x042A},+    {0xACBD, 0x042B},+    {0xACBE, 0x042C},+    {0xACBF, 0x042D},+    {0xACC0, 0x042E},+    {0xACC1, 0x042F},+    {0xACD1, 0x0430},+    {0xACD2, 0x0431},+    {0xACD3, 0x0432},+    {0xACD4, 0x0433},+    {0xACD5, 0x0434},+    {0xACD6, 0x0435},+    {0xACD7, 0x0451},+    {0xACD8, 0x0436},+    {0xACD9, 0x0437},+    {0xACDA, 0x0438},+    {0xACDB, 0x0439},+    {0xACDC, 0x043A},+    {0xACDD, 0x043B},+    {0xACDE, 0x043C},+    {0xACDF, 0x043D},+    {0xACE0, 0x043E},+    {0xACE1, 0x043F},+    {0xACE2, 0x0440},+    {0xACE3, 0x0441},+    {0xACE4, 0x0442},+    {0xACE5, 0x0443},+    {0xACE6, 0x0444},+    {0xACE7, 0x0445},+    {0xACE8, 0x0446},+    {0xACE9, 0x0447},+    {0xACEA, 0x0448},+    {0xACEB, 0x0449},+    {0xACEC, 0x044A},+    {0xACED, 0x044B},+    {0xACEE, 0x044C},+    {0xACEF, 0x044D},+    {0xACF0, 0x044E},+    {0xACF1, 0x044F},+    {0xAD41, 0xCD61},+    {0xAD42, 0xCD62},+    {0xAD43, 0xCD63},+    {0xAD44, 0xCD65},+    {0xAD45, 0xCD66},+    {0xAD46, 0xCD67},+    {0xAD47, 0xCD68},+    {0xAD48, 0xCD69},+    {0xAD49, 0xCD6A},+    {0xAD4A, 0xCD6B},+    {0xAD4B, 0xCD6E},+    {0xAD4C, 0xCD70},+    {0xAD4D, 0xCD72},+    {0xAD4E, 0xCD73},+    {0xAD4F, 0xCD74},+    {0xAD50, 0xCD75},+    {0xAD51, 0xCD76},+    {0xAD52, 0xCD77},+    {0xAD53, 0xCD79},+    {0xAD54, 0xCD7A},+    {0xAD55, 0xCD7B},+    {0xAD56, 0xCD7C},+    {0xAD57, 0xCD7D},+    {0xAD58, 0xCD7E},+    {0xAD59, 0xCD7F},+    {0xAD5A, 0xCD80},+    {0xAD61, 0xCD81},+    {0xAD62, 0xCD82},+    {0xAD63, 0xCD83},+    {0xAD64, 0xCD84},+    {0xAD65, 0xCD85},+    {0xAD66, 0xCD86},+    {0xAD67, 0xCD87},+    {0xAD68, 0xCD89},+    {0xAD69, 0xCD8A},+    {0xAD6A, 0xCD8B},+    {0xAD6B, 0xCD8C},+    {0xAD6C, 0xCD8D},+    {0xAD6D, 0xCD8E},+    {0xAD6E, 0xCD8F},+    {0xAD6F, 0xCD90},+    {0xAD70, 0xCD91},+    {0xAD71, 0xCD92},+    {0xAD72, 0xCD93},+    {0xAD73, 0xCD96},+    {0xAD74, 0xCD97},+    {0xAD75, 0xCD99},+    {0xAD76, 0xCD9A},+    {0xAD77, 0xCD9B},+    {0xAD78, 0xCD9D},+    {0xAD79, 0xCD9E},+    {0xAD7A, 0xCD9F},+    {0xAD81, 0xCDA0},+    {0xAD82, 0xCDA1},+    {0xAD83, 0xCDA2},+    {0xAD84, 0xCDA3},+    {0xAD85, 0xCDA6},+    {0xAD86, 0xCDA8},+    {0xAD87, 0xCDAA},+    {0xAD88, 0xCDAB},+    {0xAD89, 0xCDAC},+    {0xAD8A, 0xCDAD},+    {0xAD8B, 0xCDAE},+    {0xAD8C, 0xCDAF},+    {0xAD8D, 0xCDB1},+    {0xAD8E, 0xCDB2},+    {0xAD8F, 0xCDB3},+    {0xAD90, 0xCDB4},+    {0xAD91, 0xCDB5},+    {0xAD92, 0xCDB6},+    {0xAD93, 0xCDB7},+    {0xAD94, 0xCDB8},+    {0xAD95, 0xCDB9},+    {0xAD96, 0xCDBA},+    {0xAD97, 0xCDBB},+    {0xAD98, 0xCDBC},+    {0xAD99, 0xCDBD},+    {0xAD9A, 0xCDBE},+    {0xAD9B, 0xCDBF},+    {0xAD9C, 0xCDC0},+    {0xAD9D, 0xCDC1},+    {0xAD9E, 0xCDC2},+    {0xAD9F, 0xCDC3},+    {0xADA0, 0xCDC5},+    {0xAE41, 0xCDC6},+    {0xAE42, 0xCDC7},+    {0xAE43, 0xCDC8},+    {0xAE44, 0xCDC9},+    {0xAE45, 0xCDCA},+    {0xAE46, 0xCDCB},+    {0xAE47, 0xCDCD},+    {0xAE48, 0xCDCE},+    {0xAE49, 0xCDCF},+    {0xAE4A, 0xCDD1},+    {0xAE4B, 0xCDD2},+    {0xAE4C, 0xCDD3},+    {0xAE4D, 0xCDD4},+    {0xAE4E, 0xCDD5},+    {0xAE4F, 0xCDD6},+    {0xAE50, 0xCDD7},+    {0xAE51, 0xCDD8},+    {0xAE52, 0xCDD9},+    {0xAE53, 0xCDDA},+    {0xAE54, 0xCDDB},+    {0xAE55, 0xCDDC},+    {0xAE56, 0xCDDD},+    {0xAE57, 0xCDDE},+    {0xAE58, 0xCDDF},+    {0xAE59, 0xCDE0},+    {0xAE5A, 0xCDE1},+    {0xAE61, 0xCDE2},+    {0xAE62, 0xCDE3},+    {0xAE63, 0xCDE4},+    {0xAE64, 0xCDE5},+    {0xAE65, 0xCDE6},+    {0xAE66, 0xCDE7},+    {0xAE67, 0xCDE9},+    {0xAE68, 0xCDEA},+    {0xAE69, 0xCDEB},+    {0xAE6A, 0xCDED},+    {0xAE6B, 0xCDEE},+    {0xAE6C, 0xCDEF},+    {0xAE6D, 0xCDF1},+    {0xAE6E, 0xCDF2},+    {0xAE6F, 0xCDF3},+    {0xAE70, 0xCDF4},+    {0xAE71, 0xCDF5},+    {0xAE72, 0xCDF6},+    {0xAE73, 0xCDF7},+    {0xAE74, 0xCDFA},+    {0xAE75, 0xCDFC},+    {0xAE76, 0xCDFE},+    {0xAE77, 0xCDFF},+    {0xAE78, 0xCE00},+    {0xAE79, 0xCE01},+    {0xAE7A, 0xCE02},+    {0xAE81, 0xCE03},+    {0xAE82, 0xCE05},+    {0xAE83, 0xCE06},+    {0xAE84, 0xCE07},+    {0xAE85, 0xCE09},+    {0xAE86, 0xCE0A},+    {0xAE87, 0xCE0B},+    {0xAE88, 0xCE0D},+    {0xAE89, 0xCE0E},+    {0xAE8A, 0xCE0F},+    {0xAE8B, 0xCE10},+    {0xAE8C, 0xCE11},+    {0xAE8D, 0xCE12},+    {0xAE8E, 0xCE13},+    {0xAE8F, 0xCE15},+    {0xAE90, 0xCE16},+    {0xAE91, 0xCE17},+    {0xAE92, 0xCE18},+    {0xAE93, 0xCE1A},+    {0xAE94, 0xCE1B},+    {0xAE95, 0xCE1C},+    {0xAE96, 0xCE1D},+    {0xAE97, 0xCE1E},+    {0xAE98, 0xCE1F},+    {0xAE99, 0xCE22},+    {0xAE9A, 0xCE23},+    {0xAE9B, 0xCE25},+    {0xAE9C, 0xCE26},+    {0xAE9D, 0xCE27},+    {0xAE9E, 0xCE29},+    {0xAE9F, 0xCE2A},+    {0xAEA0, 0xCE2B},+    {0xAF41, 0xCE2C},+    {0xAF42, 0xCE2D},+    {0xAF43, 0xCE2E},+    {0xAF44, 0xCE2F},+    {0xAF45, 0xCE32},+    {0xAF46, 0xCE34},+    {0xAF47, 0xCE36},+    {0xAF48, 0xCE37},+    {0xAF49, 0xCE38},+    {0xAF4A, 0xCE39},+    {0xAF4B, 0xCE3A},+    {0xAF4C, 0xCE3B},+    {0xAF4D, 0xCE3C},+    {0xAF4E, 0xCE3D},+    {0xAF4F, 0xCE3E},+    {0xAF50, 0xCE3F},+    {0xAF51, 0xCE40},+    {0xAF52, 0xCE41},+    {0xAF53, 0xCE42},+    {0xAF54, 0xCE43},+    {0xAF55, 0xCE44},+    {0xAF56, 0xCE45},+    {0xAF57, 0xCE46},+    {0xAF58, 0xCE47},+    {0xAF59, 0xCE48},+    {0xAF5A, 0xCE49},+    {0xAF61, 0xCE4A},+    {0xAF62, 0xCE4B},+    {0xAF63, 0xCE4C},+    {0xAF64, 0xCE4D},+    {0xAF65, 0xCE4E},+    {0xAF66, 0xCE4F},+    {0xAF67, 0xCE50},+    {0xAF68, 0xCE51},+    {0xAF69, 0xCE52},+    {0xAF6A, 0xCE53},+    {0xAF6B, 0xCE54},+    {0xAF6C, 0xCE55},+    {0xAF6D, 0xCE56},+    {0xAF6E, 0xCE57},+    {0xAF6F, 0xCE5A},+    {0xAF70, 0xCE5B},+    {0xAF71, 0xCE5D},+    {0xAF72, 0xCE5E},+    {0xAF73, 0xCE62},+    {0xAF74, 0xCE63},+    {0xAF75, 0xCE64},+    {0xAF76, 0xCE65},+    {0xAF77, 0xCE66},+    {0xAF78, 0xCE67},+    {0xAF79, 0xCE6A},+    {0xAF7A, 0xCE6C},+    {0xAF81, 0xCE6E},+    {0xAF82, 0xCE6F},+    {0xAF83, 0xCE70},+    {0xAF84, 0xCE71},+    {0xAF85, 0xCE72},+    {0xAF86, 0xCE73},+    {0xAF87, 0xCE76},+    {0xAF88, 0xCE77},+    {0xAF89, 0xCE79},+    {0xAF8A, 0xCE7A},+    {0xAF8B, 0xCE7B},+    {0xAF8C, 0xCE7D},+    {0xAF8D, 0xCE7E},+    {0xAF8E, 0xCE7F},+    {0xAF8F, 0xCE80},+    {0xAF90, 0xCE81},+    {0xAF91, 0xCE82},+    {0xAF92, 0xCE83},+    {0xAF93, 0xCE86},+    {0xAF94, 0xCE88},+    {0xAF95, 0xCE8A},+    {0xAF96, 0xCE8B},+    {0xAF97, 0xCE8C},+    {0xAF98, 0xCE8D},+    {0xAF99, 0xCE8E},+    {0xAF9A, 0xCE8F},+    {0xAF9B, 0xCE92},+    {0xAF9C, 0xCE93},+    {0xAF9D, 0xCE95},+    {0xAF9E, 0xCE96},+    {0xAF9F, 0xCE97},+    {0xAFA0, 0xCE99},+    {0xB041, 0xCE9A},+    {0xB042, 0xCE9B},+    {0xB043, 0xCE9C},+    {0xB044, 0xCE9D},+    {0xB045, 0xCE9E},+    {0xB046, 0xCE9F},+    {0xB047, 0xCEA2},+    {0xB048, 0xCEA6},+    {0xB049, 0xCEA7},+    {0xB04A, 0xCEA8},+    {0xB04B, 0xCEA9},+    {0xB04C, 0xCEAA},+    {0xB04D, 0xCEAB},+    {0xB04E, 0xCEAE},+    {0xB04F, 0xCEAF},+    {0xB050, 0xCEB0},+    {0xB051, 0xCEB1},+    {0xB052, 0xCEB2},+    {0xB053, 0xCEB3},+    {0xB054, 0xCEB4},+    {0xB055, 0xCEB5},+    {0xB056, 0xCEB6},+    {0xB057, 0xCEB7},+    {0xB058, 0xCEB8},+    {0xB059, 0xCEB9},+    {0xB05A, 0xCEBA},+    {0xB061, 0xCEBB},+    {0xB062, 0xCEBC},+    {0xB063, 0xCEBD},+    {0xB064, 0xCEBE},+    {0xB065, 0xCEBF},+    {0xB066, 0xCEC0},+    {0xB067, 0xCEC2},+    {0xB068, 0xCEC3},+    {0xB069, 0xCEC4},+    {0xB06A, 0xCEC5},+    {0xB06B, 0xCEC6},+    {0xB06C, 0xCEC7},+    {0xB06D, 0xCEC8},+    {0xB06E, 0xCEC9},+    {0xB06F, 0xCECA},+    {0xB070, 0xCECB},+    {0xB071, 0xCECC},+    {0xB072, 0xCECD},+    {0xB073, 0xCECE},+    {0xB074, 0xCECF},+    {0xB075, 0xCED0},+    {0xB076, 0xCED1},+    {0xB077, 0xCED2},+    {0xB078, 0xCED3},+    {0xB079, 0xCED4},+    {0xB07A, 0xCED5},+    {0xB081, 0xCED6},+    {0xB082, 0xCED7},+    {0xB083, 0xCED8},+    {0xB084, 0xCED9},+    {0xB085, 0xCEDA},+    {0xB086, 0xCEDB},+    {0xB087, 0xCEDC},+    {0xB088, 0xCEDD},+    {0xB089, 0xCEDE},+    {0xB08A, 0xCEDF},+    {0xB08B, 0xCEE0},+    {0xB08C, 0xCEE1},+    {0xB08D, 0xCEE2},+    {0xB08E, 0xCEE3},+    {0xB08F, 0xCEE6},+    {0xB090, 0xCEE7},+    {0xB091, 0xCEE9},+    {0xB092, 0xCEEA},+    {0xB093, 0xCEED},+    {0xB094, 0xCEEE},+    {0xB095, 0xCEEF},+    {0xB096, 0xCEF0},+    {0xB097, 0xCEF1},+    {0xB098, 0xCEF2},+    {0xB099, 0xCEF3},+    {0xB09A, 0xCEF6},+    {0xB09B, 0xCEFA},+    {0xB09C, 0xCEFB},+    {0xB09D, 0xCEFC},+    {0xB09E, 0xCEFD},+    {0xB09F, 0xCEFE},+    {0xB0A0, 0xCEFF},+    {0xB0A1, 0xAC00},+    {0xB0A2, 0xAC01},+    {0xB0A3, 0xAC04},+    {0xB0A4, 0xAC07},+    {0xB0A5, 0xAC08},+    {0xB0A6, 0xAC09},+    {0xB0A7, 0xAC0A},+    {0xB0A8, 0xAC10},+    {0xB0A9, 0xAC11},+    {0xB0AA, 0xAC12},+    {0xB0AB, 0xAC13},+    {0xB0AC, 0xAC14},+    {0xB0AD, 0xAC15},+    {0xB0AE, 0xAC16},+    {0xB0AF, 0xAC17},+    {0xB0B0, 0xAC19},+    {0xB0B1, 0xAC1A},+    {0xB0B2, 0xAC1B},+    {0xB0B3, 0xAC1C},+    {0xB0B4, 0xAC1D},+    {0xB0B5, 0xAC20},+    {0xB0B6, 0xAC24},+    {0xB0B7, 0xAC2C},+    {0xB0B8, 0xAC2D},+    {0xB0B9, 0xAC2F},+    {0xB0BA, 0xAC30},+    {0xB0BB, 0xAC31},+    {0xB0BC, 0xAC38},+    {0xB0BD, 0xAC39},+    {0xB0BE, 0xAC3C},+    {0xB0BF, 0xAC40},+    {0xB0C0, 0xAC4B},+    {0xB0C1, 0xAC4D},+    {0xB0C2, 0xAC54},+    {0xB0C3, 0xAC58},+    {0xB0C4, 0xAC5C},+    {0xB0C5, 0xAC70},+    {0xB0C6, 0xAC71},+    {0xB0C7, 0xAC74},+    {0xB0C8, 0xAC77},+    {0xB0C9, 0xAC78},+    {0xB0CA, 0xAC7A},+    {0xB0CB, 0xAC80},+    {0xB0CC, 0xAC81},+    {0xB0CD, 0xAC83},+    {0xB0CE, 0xAC84},+    {0xB0CF, 0xAC85},+    {0xB0D0, 0xAC86},+    {0xB0D1, 0xAC89},+    {0xB0D2, 0xAC8A},+    {0xB0D3, 0xAC8B},+    {0xB0D4, 0xAC8C},+    {0xB0D5, 0xAC90},+    {0xB0D6, 0xAC94},+    {0xB0D7, 0xAC9C},+    {0xB0D8, 0xAC9D},+    {0xB0D9, 0xAC9F},+    {0xB0DA, 0xACA0},+    {0xB0DB, 0xACA1},+    {0xB0DC, 0xACA8},+    {0xB0DD, 0xACA9},+    {0xB0DE, 0xACAA},+    {0xB0DF, 0xACAC},+    {0xB0E0, 0xACAF},+    {0xB0E1, 0xACB0},+    {0xB0E2, 0xACB8},+    {0xB0E3, 0xACB9},+    {0xB0E4, 0xACBB},+    {0xB0E5, 0xACBC},+    {0xB0E6, 0xACBD},+    {0xB0E7, 0xACC1},+    {0xB0E8, 0xACC4},+    {0xB0E9, 0xACC8},+    {0xB0EA, 0xACCC},+    {0xB0EB, 0xACD5},+    {0xB0EC, 0xACD7},+    {0xB0ED, 0xACE0},+    {0xB0EE, 0xACE1},+    {0xB0EF, 0xACE4},+    {0xB0F0, 0xACE7},+    {0xB0F1, 0xACE8},+    {0xB0F2, 0xACEA},+    {0xB0F3, 0xACEC},+    {0xB0F4, 0xACEF},+    {0xB0F5, 0xACF0},+    {0xB0F6, 0xACF1},+    {0xB0F7, 0xACF3},+    {0xB0F8, 0xACF5},+    {0xB0F9, 0xACF6},+    {0xB0FA, 0xACFC},+    {0xB0FB, 0xACFD},+    {0xB0FC, 0xAD00},+    {0xB0FD, 0xAD04},+    {0xB0FE, 0xAD06},+    {0xB141, 0xCF02},+    {0xB142, 0xCF03},+    {0xB143, 0xCF05},+    {0xB144, 0xCF06},+    {0xB145, 0xCF07},+    {0xB146, 0xCF09},+    {0xB147, 0xCF0A},+    {0xB148, 0xCF0B},+    {0xB149, 0xCF0C},+    {0xB14A, 0xCF0D},+    {0xB14B, 0xCF0E},+    {0xB14C, 0xCF0F},+    {0xB14D, 0xCF12},+    {0xB14E, 0xCF14},+    {0xB14F, 0xCF16},+    {0xB150, 0xCF17},+    {0xB151, 0xCF18},+    {0xB152, 0xCF19},+    {0xB153, 0xCF1A},+    {0xB154, 0xCF1B},+    {0xB155, 0xCF1D},+    {0xB156, 0xCF1E},+    {0xB157, 0xCF1F},+    {0xB158, 0xCF21},+    {0xB159, 0xCF22},+    {0xB15A, 0xCF23},+    {0xB161, 0xCF25},+    {0xB162, 0xCF26},+    {0xB163, 0xCF27},+    {0xB164, 0xCF28},+    {0xB165, 0xCF29},+    {0xB166, 0xCF2A},+    {0xB167, 0xCF2B},+    {0xB168, 0xCF2E},+    {0xB169, 0xCF32},+    {0xB16A, 0xCF33},+    {0xB16B, 0xCF34},+    {0xB16C, 0xCF35},+    {0xB16D, 0xCF36},+    {0xB16E, 0xCF37},+    {0xB16F, 0xCF39},+    {0xB170, 0xCF3A},+    {0xB171, 0xCF3B},+    {0xB172, 0xCF3C},+    {0xB173, 0xCF3D},+    {0xB174, 0xCF3E},+    {0xB175, 0xCF3F},+    {0xB176, 0xCF40},+    {0xB177, 0xCF41},+    {0xB178, 0xCF42},+    {0xB179, 0xCF43},+    {0xB17A, 0xCF44},+    {0xB181, 0xCF45},+    {0xB182, 0xCF46},+    {0xB183, 0xCF47},+    {0xB184, 0xCF48},+    {0xB185, 0xCF49},+    {0xB186, 0xCF4A},+    {0xB187, 0xCF4B},+    {0xB188, 0xCF4C},+    {0xB189, 0xCF4D},+    {0xB18A, 0xCF4E},+    {0xB18B, 0xCF4F},+    {0xB18C, 0xCF50},+    {0xB18D, 0xCF51},+    {0xB18E, 0xCF52},+    {0xB18F, 0xCF53},+    {0xB190, 0xCF56},+    {0xB191, 0xCF57},+    {0xB192, 0xCF59},+    {0xB193, 0xCF5A},+    {0xB194, 0xCF5B},+    {0xB195, 0xCF5D},+    {0xB196, 0xCF5E},+    {0xB197, 0xCF5F},+    {0xB198, 0xCF60},+    {0xB199, 0xCF61},+    {0xB19A, 0xCF62},+    {0xB19B, 0xCF63},+    {0xB19C, 0xCF66},+    {0xB19D, 0xCF68},+    {0xB19E, 0xCF6A},+    {0xB19F, 0xCF6B},+    {0xB1A0, 0xCF6C},+    {0xB1A1, 0xAD0C},+    {0xB1A2, 0xAD0D},+    {0xB1A3, 0xAD0F},+    {0xB1A4, 0xAD11},+    {0xB1A5, 0xAD18},+    {0xB1A6, 0xAD1C},+    {0xB1A7, 0xAD20},+    {0xB1A8, 0xAD29},+    {0xB1A9, 0xAD2C},+    {0xB1AA, 0xAD2D},+    {0xB1AB, 0xAD34},+    {0xB1AC, 0xAD35},+    {0xB1AD, 0xAD38},+    {0xB1AE, 0xAD3C},+    {0xB1AF, 0xAD44},+    {0xB1B0, 0xAD45},+    {0xB1B1, 0xAD47},+    {0xB1B2, 0xAD49},+    {0xB1B3, 0xAD50},+    {0xB1B4, 0xAD54},+    {0xB1B5, 0xAD58},+    {0xB1B6, 0xAD61},+    {0xB1B7, 0xAD63},+    {0xB1B8, 0xAD6C},+    {0xB1B9, 0xAD6D},+    {0xB1BA, 0xAD70},+    {0xB1BB, 0xAD73},+    {0xB1BC, 0xAD74},+    {0xB1BD, 0xAD75},+    {0xB1BE, 0xAD76},+    {0xB1BF, 0xAD7B},+    {0xB1C0, 0xAD7C},+    {0xB1C1, 0xAD7D},+    {0xB1C2, 0xAD7F},+    {0xB1C3, 0xAD81},+    {0xB1C4, 0xAD82},+    {0xB1C5, 0xAD88},+    {0xB1C6, 0xAD89},+    {0xB1C7, 0xAD8C},+    {0xB1C8, 0xAD90},+    {0xB1C9, 0xAD9C},+    {0xB1CA, 0xAD9D},+    {0xB1CB, 0xADA4},+    {0xB1CC, 0xADB7},+    {0xB1CD, 0xADC0},+    {0xB1CE, 0xADC1},+    {0xB1CF, 0xADC4},+    {0xB1D0, 0xADC8},+    {0xB1D1, 0xADD0},+    {0xB1D2, 0xADD1},+    {0xB1D3, 0xADD3},+    {0xB1D4, 0xADDC},+    {0xB1D5, 0xADE0},+    {0xB1D6, 0xADE4},+    {0xB1D7, 0xADF8},+    {0xB1D8, 0xADF9},+    {0xB1D9, 0xADFC},+    {0xB1DA, 0xADFF},+    {0xB1DB, 0xAE00},+    {0xB1DC, 0xAE01},+    {0xB1DD, 0xAE08},+    {0xB1DE, 0xAE09},+    {0xB1DF, 0xAE0B},+    {0xB1E0, 0xAE0D},+    {0xB1E1, 0xAE14},+    {0xB1E2, 0xAE30},+    {0xB1E3, 0xAE31},+    {0xB1E4, 0xAE34},+    {0xB1E5, 0xAE37},+    {0xB1E6, 0xAE38},+    {0xB1E7, 0xAE3A},+    {0xB1E8, 0xAE40},+    {0xB1E9, 0xAE41},+    {0xB1EA, 0xAE43},+    {0xB1EB, 0xAE45},+    {0xB1EC, 0xAE46},+    {0xB1ED, 0xAE4A},+    {0xB1EE, 0xAE4C},+    {0xB1EF, 0xAE4D},+    {0xB1F0, 0xAE4E},+    {0xB1F1, 0xAE50},+    {0xB1F2, 0xAE54},+    {0xB1F3, 0xAE56},+    {0xB1F4, 0xAE5C},+    {0xB1F5, 0xAE5D},+    {0xB1F6, 0xAE5F},+    {0xB1F7, 0xAE60},+    {0xB1F8, 0xAE61},+    {0xB1F9, 0xAE65},+    {0xB1FA, 0xAE68},+    {0xB1FB, 0xAE69},+    {0xB1FC, 0xAE6C},+    {0xB1FD, 0xAE70},+    {0xB1FE, 0xAE78},+    {0xB241, 0xCF6D},+    {0xB242, 0xCF6E},+    {0xB243, 0xCF6F},+    {0xB244, 0xCF72},+    {0xB245, 0xCF73},+    {0xB246, 0xCF75},+    {0xB247, 0xCF76},+    {0xB248, 0xCF77},+    {0xB249, 0xCF79},+    {0xB24A, 0xCF7A},+    {0xB24B, 0xCF7B},+    {0xB24C, 0xCF7C},+    {0xB24D, 0xCF7D},+    {0xB24E, 0xCF7E},+    {0xB24F, 0xCF7F},+    {0xB250, 0xCF81},+    {0xB251, 0xCF82},+    {0xB252, 0xCF83},+    {0xB253, 0xCF84},+    {0xB254, 0xCF86},+    {0xB255, 0xCF87},+    {0xB256, 0xCF88},+    {0xB257, 0xCF89},+    {0xB258, 0xCF8A},+    {0xB259, 0xCF8B},+    {0xB25A, 0xCF8D},+    {0xB261, 0xCF8E},+    {0xB262, 0xCF8F},+    {0xB263, 0xCF90},+    {0xB264, 0xCF91},+    {0xB265, 0xCF92},+    {0xB266, 0xCF93},+    {0xB267, 0xCF94},+    {0xB268, 0xCF95},+    {0xB269, 0xCF96},+    {0xB26A, 0xCF97},+    {0xB26B, 0xCF98},+    {0xB26C, 0xCF99},+    {0xB26D, 0xCF9A},+    {0xB26E, 0xCF9B},+    {0xB26F, 0xCF9C},+    {0xB270, 0xCF9D},+    {0xB271, 0xCF9E},+    {0xB272, 0xCF9F},+    {0xB273, 0xCFA0},+    {0xB274, 0xCFA2},+    {0xB275, 0xCFA3},+    {0xB276, 0xCFA4},+    {0xB277, 0xCFA5},+    {0xB278, 0xCFA6},+    {0xB279, 0xCFA7},+    {0xB27A, 0xCFA9},+    {0xB281, 0xCFAA},+    {0xB282, 0xCFAB},+    {0xB283, 0xCFAC},+    {0xB284, 0xCFAD},+    {0xB285, 0xCFAE},+    {0xB286, 0xCFAF},+    {0xB287, 0xCFB1},+    {0xB288, 0xCFB2},+    {0xB289, 0xCFB3},+    {0xB28A, 0xCFB4},+    {0xB28B, 0xCFB5},+    {0xB28C, 0xCFB6},+    {0xB28D, 0xCFB7},+    {0xB28E, 0xCFB8},+    {0xB28F, 0xCFB9},+    {0xB290, 0xCFBA},+    {0xB291, 0xCFBB},+    {0xB292, 0xCFBC},+    {0xB293, 0xCFBD},+    {0xB294, 0xCFBE},+    {0xB295, 0xCFBF},+    {0xB296, 0xCFC0},+    {0xB297, 0xCFC1},+    {0xB298, 0xCFC2},+    {0xB299, 0xCFC3},+    {0xB29A, 0xCFC5},+    {0xB29B, 0xCFC6},+    {0xB29C, 0xCFC7},+    {0xB29D, 0xCFC8},+    {0xB29E, 0xCFC9},+    {0xB29F, 0xCFCA},+    {0xB2A0, 0xCFCB},+    {0xB2A1, 0xAE79},+    {0xB2A2, 0xAE7B},+    {0xB2A3, 0xAE7C},+    {0xB2A4, 0xAE7D},+    {0xB2A5, 0xAE84},+    {0xB2A6, 0xAE85},+    {0xB2A7, 0xAE8C},+    {0xB2A8, 0xAEBC},+    {0xB2A9, 0xAEBD},+    {0xB2AA, 0xAEBE},+    {0xB2AB, 0xAEC0},+    {0xB2AC, 0xAEC4},+    {0xB2AD, 0xAECC},+    {0xB2AE, 0xAECD},+    {0xB2AF, 0xAECF},+    {0xB2B0, 0xAED0},+    {0xB2B1, 0xAED1},+    {0xB2B2, 0xAED8},+    {0xB2B3, 0xAED9},+    {0xB2B4, 0xAEDC},+    {0xB2B5, 0xAEE8},+    {0xB2B6, 0xAEEB},+    {0xB2B7, 0xAEED},+    {0xB2B8, 0xAEF4},+    {0xB2B9, 0xAEF8},+    {0xB2BA, 0xAEFC},+    {0xB2BB, 0xAF07},+    {0xB2BC, 0xAF08},+    {0xB2BD, 0xAF0D},+    {0xB2BE, 0xAF10},+    {0xB2BF, 0xAF2C},+    {0xB2C0, 0xAF2D},+    {0xB2C1, 0xAF30},+    {0xB2C2, 0xAF32},+    {0xB2C3, 0xAF34},+    {0xB2C4, 0xAF3C},+    {0xB2C5, 0xAF3D},+    {0xB2C6, 0xAF3F},+    {0xB2C7, 0xAF41},+    {0xB2C8, 0xAF42},+    {0xB2C9, 0xAF43},+    {0xB2CA, 0xAF48},+    {0xB2CB, 0xAF49},+    {0xB2CC, 0xAF50},+    {0xB2CD, 0xAF5C},+    {0xB2CE, 0xAF5D},+    {0xB2CF, 0xAF64},+    {0xB2D0, 0xAF65},+    {0xB2D1, 0xAF79},+    {0xB2D2, 0xAF80},+    {0xB2D3, 0xAF84},+    {0xB2D4, 0xAF88},+    {0xB2D5, 0xAF90},+    {0xB2D6, 0xAF91},+    {0xB2D7, 0xAF95},+    {0xB2D8, 0xAF9C},+    {0xB2D9, 0xAFB8},+    {0xB2DA, 0xAFB9},+    {0xB2DB, 0xAFBC},+    {0xB2DC, 0xAFC0},+    {0xB2DD, 0xAFC7},+    {0xB2DE, 0xAFC8},+    {0xB2DF, 0xAFC9},+    {0xB2E0, 0xAFCB},+    {0xB2E1, 0xAFCD},+    {0xB2E2, 0xAFCE},+    {0xB2E3, 0xAFD4},+    {0xB2E4, 0xAFDC},+    {0xB2E5, 0xAFE8},+    {0xB2E6, 0xAFE9},+    {0xB2E7, 0xAFF0},+    {0xB2E8, 0xAFF1},+    {0xB2E9, 0xAFF4},+    {0xB2EA, 0xAFF8},+    {0xB2EB, 0xB000},+    {0xB2EC, 0xB001},+    {0xB2ED, 0xB004},+    {0xB2EE, 0xB00C},+    {0xB2EF, 0xB010},+    {0xB2F0, 0xB014},+    {0xB2F1, 0xB01C},+    {0xB2F2, 0xB01D},+    {0xB2F3, 0xB028},+    {0xB2F4, 0xB044},+    {0xB2F5, 0xB045},+    {0xB2F6, 0xB048},+    {0xB2F7, 0xB04A},+    {0xB2F8, 0xB04C},+    {0xB2F9, 0xB04E},+    {0xB2FA, 0xB053},+    {0xB2FB, 0xB054},+    {0xB2FC, 0xB055},+    {0xB2FD, 0xB057},+    {0xB2FE, 0xB059},+    {0xB341, 0xCFCC},+    {0xB342, 0xCFCD},+    {0xB343, 0xCFCE},+    {0xB344, 0xCFCF},+    {0xB345, 0xCFD0},+    {0xB346, 0xCFD1},+    {0xB347, 0xCFD2},+    {0xB348, 0xCFD3},+    {0xB349, 0xCFD4},+    {0xB34A, 0xCFD5},+    {0xB34B, 0xCFD6},+    {0xB34C, 0xCFD7},+    {0xB34D, 0xCFD8},+    {0xB34E, 0xCFD9},+    {0xB34F, 0xCFDA},+    {0xB350, 0xCFDB},+    {0xB351, 0xCFDC},+    {0xB352, 0xCFDD},+    {0xB353, 0xCFDE},+    {0xB354, 0xCFDF},+    {0xB355, 0xCFE2},+    {0xB356, 0xCFE3},+    {0xB357, 0xCFE5},+    {0xB358, 0xCFE6},+    {0xB359, 0xCFE7},+    {0xB35A, 0xCFE9},+    {0xB361, 0xCFEA},+    {0xB362, 0xCFEB},+    {0xB363, 0xCFEC},+    {0xB364, 0xCFED},+    {0xB365, 0xCFEE},+    {0xB366, 0xCFEF},+    {0xB367, 0xCFF2},+    {0xB368, 0xCFF4},+    {0xB369, 0xCFF6},+    {0xB36A, 0xCFF7},+    {0xB36B, 0xCFF8},+    {0xB36C, 0xCFF9},+    {0xB36D, 0xCFFA},+    {0xB36E, 0xCFFB},+    {0xB36F, 0xCFFD},+    {0xB370, 0xCFFE},+    {0xB371, 0xCFFF},+    {0xB372, 0xD001},+    {0xB373, 0xD002},+    {0xB374, 0xD003},+    {0xB375, 0xD005},+    {0xB376, 0xD006},+    {0xB377, 0xD007},+    {0xB378, 0xD008},+    {0xB379, 0xD009},+    {0xB37A, 0xD00A},+    {0xB381, 0xD00B},+    {0xB382, 0xD00C},+    {0xB383, 0xD00D},+    {0xB384, 0xD00E},+    {0xB385, 0xD00F},+    {0xB386, 0xD010},+    {0xB387, 0xD012},+    {0xB388, 0xD013},+    {0xB389, 0xD014},+    {0xB38A, 0xD015},+    {0xB38B, 0xD016},+    {0xB38C, 0xD017},+    {0xB38D, 0xD019},+    {0xB38E, 0xD01A},+    {0xB38F, 0xD01B},+    {0xB390, 0xD01C},+    {0xB391, 0xD01D},+    {0xB392, 0xD01E},+    {0xB393, 0xD01F},+    {0xB394, 0xD020},+    {0xB395, 0xD021},+    {0xB396, 0xD022},+    {0xB397, 0xD023},+    {0xB398, 0xD024},+    {0xB399, 0xD025},+    {0xB39A, 0xD026},+    {0xB39B, 0xD027},+    {0xB39C, 0xD028},+    {0xB39D, 0xD029},+    {0xB39E, 0xD02A},+    {0xB39F, 0xD02B},+    {0xB3A0, 0xD02C},+    {0xB3A1, 0xB05D},+    {0xB3A2, 0xB07C},+    {0xB3A3, 0xB07D},+    {0xB3A4, 0xB080},+    {0xB3A5, 0xB084},+    {0xB3A6, 0xB08C},+    {0xB3A7, 0xB08D},+    {0xB3A8, 0xB08F},+    {0xB3A9, 0xB091},+    {0xB3AA, 0xB098},+    {0xB3AB, 0xB099},+    {0xB3AC, 0xB09A},+    {0xB3AD, 0xB09C},+    {0xB3AE, 0xB09F},+    {0xB3AF, 0xB0A0},+    {0xB3B0, 0xB0A1},+    {0xB3B1, 0xB0A2},+    {0xB3B2, 0xB0A8},+    {0xB3B3, 0xB0A9},+    {0xB3B4, 0xB0AB},+    {0xB3B5, 0xB0AC},+    {0xB3B6, 0xB0AD},+    {0xB3B7, 0xB0AE},+    {0xB3B8, 0xB0AF},+    {0xB3B9, 0xB0B1},+    {0xB3BA, 0xB0B3},+    {0xB3BB, 0xB0B4},+    {0xB3BC, 0xB0B5},+    {0xB3BD, 0xB0B8},+    {0xB3BE, 0xB0BC},+    {0xB3BF, 0xB0C4},+    {0xB3C0, 0xB0C5},+    {0xB3C1, 0xB0C7},+    {0xB3C2, 0xB0C8},+    {0xB3C3, 0xB0C9},+    {0xB3C4, 0xB0D0},+    {0xB3C5, 0xB0D1},+    {0xB3C6, 0xB0D4},+    {0xB3C7, 0xB0D8},+    {0xB3C8, 0xB0E0},+    {0xB3C9, 0xB0E5},+    {0xB3CA, 0xB108},+    {0xB3CB, 0xB109},+    {0xB3CC, 0xB10B},+    {0xB3CD, 0xB10C},+    {0xB3CE, 0xB110},+    {0xB3CF, 0xB112},+    {0xB3D0, 0xB113},+    {0xB3D1, 0xB118},+    {0xB3D2, 0xB119},+    {0xB3D3, 0xB11B},+    {0xB3D4, 0xB11C},+    {0xB3D5, 0xB11D},+    {0xB3D6, 0xB123},+    {0xB3D7, 0xB124},+    {0xB3D8, 0xB125},+    {0xB3D9, 0xB128},+    {0xB3DA, 0xB12C},+    {0xB3DB, 0xB134},+    {0xB3DC, 0xB135},+    {0xB3DD, 0xB137},+    {0xB3DE, 0xB138},+    {0xB3DF, 0xB139},+    {0xB3E0, 0xB140},+    {0xB3E1, 0xB141},+    {0xB3E2, 0xB144},+    {0xB3E3, 0xB148},+    {0xB3E4, 0xB150},+    {0xB3E5, 0xB151},+    {0xB3E6, 0xB154},+    {0xB3E7, 0xB155},+    {0xB3E8, 0xB158},+    {0xB3E9, 0xB15C},+    {0xB3EA, 0xB160},+    {0xB3EB, 0xB178},+    {0xB3EC, 0xB179},+    {0xB3ED, 0xB17C},+    {0xB3EE, 0xB180},+    {0xB3EF, 0xB182},+    {0xB3F0, 0xB188},+    {0xB3F1, 0xB189},+    {0xB3F2, 0xB18B},+    {0xB3F3, 0xB18D},+    {0xB3F4, 0xB192},+    {0xB3F5, 0xB193},+    {0xB3F6, 0xB194},+    {0xB3F7, 0xB198},+    {0xB3F8, 0xB19C},+    {0xB3F9, 0xB1A8},+    {0xB3FA, 0xB1CC},+    {0xB3FB, 0xB1D0},+    {0xB3FC, 0xB1D4},+    {0xB3FD, 0xB1DC},+    {0xB3FE, 0xB1DD},+    {0xB441, 0xD02E},+    {0xB442, 0xD02F},+    {0xB443, 0xD030},+    {0xB444, 0xD031},+    {0xB445, 0xD032},+    {0xB446, 0xD033},+    {0xB447, 0xD036},+    {0xB448, 0xD037},+    {0xB449, 0xD039},+    {0xB44A, 0xD03A},+    {0xB44B, 0xD03B},+    {0xB44C, 0xD03D},+    {0xB44D, 0xD03E},+    {0xB44E, 0xD03F},+    {0xB44F, 0xD040},+    {0xB450, 0xD041},+    {0xB451, 0xD042},+    {0xB452, 0xD043},+    {0xB453, 0xD046},+    {0xB454, 0xD048},+    {0xB455, 0xD04A},+    {0xB456, 0xD04B},+    {0xB457, 0xD04C},+    {0xB458, 0xD04D},+    {0xB459, 0xD04E},+    {0xB45A, 0xD04F},+    {0xB461, 0xD051},+    {0xB462, 0xD052},+    {0xB463, 0xD053},+    {0xB464, 0xD055},+    {0xB465, 0xD056},+    {0xB466, 0xD057},+    {0xB467, 0xD059},+    {0xB468, 0xD05A},+    {0xB469, 0xD05B},+    {0xB46A, 0xD05C},+    {0xB46B, 0xD05D},+    {0xB46C, 0xD05E},+    {0xB46D, 0xD05F},+    {0xB46E, 0xD061},+    {0xB46F, 0xD062},+    {0xB470, 0xD063},+    {0xB471, 0xD064},+    {0xB472, 0xD065},+    {0xB473, 0xD066},+    {0xB474, 0xD067},+    {0xB475, 0xD068},+    {0xB476, 0xD069},+    {0xB477, 0xD06A},+    {0xB478, 0xD06B},+    {0xB479, 0xD06E},+    {0xB47A, 0xD06F},+    {0xB481, 0xD071},+    {0xB482, 0xD072},+    {0xB483, 0xD073},+    {0xB484, 0xD075},+    {0xB485, 0xD076},+    {0xB486, 0xD077},+    {0xB487, 0xD078},+    {0xB488, 0xD079},+    {0xB489, 0xD07A},+    {0xB48A, 0xD07B},+    {0xB48B, 0xD07E},+    {0xB48C, 0xD07F},+    {0xB48D, 0xD080},+    {0xB48E, 0xD082},+    {0xB48F, 0xD083},+    {0xB490, 0xD084},+    {0xB491, 0xD085},+    {0xB492, 0xD086},+    {0xB493, 0xD087},+    {0xB494, 0xD088},+    {0xB495, 0xD089},+    {0xB496, 0xD08A},+    {0xB497, 0xD08B},+    {0xB498, 0xD08C},+    {0xB499, 0xD08D},+    {0xB49A, 0xD08E},+    {0xB49B, 0xD08F},+    {0xB49C, 0xD090},+    {0xB49D, 0xD091},+    {0xB49E, 0xD092},+    {0xB49F, 0xD093},+    {0xB4A0, 0xD094},+    {0xB4A1, 0xB1DF},+    {0xB4A2, 0xB1E8},+    {0xB4A3, 0xB1E9},+    {0xB4A4, 0xB1EC},+    {0xB4A5, 0xB1F0},+    {0xB4A6, 0xB1F9},+    {0xB4A7, 0xB1FB},+    {0xB4A8, 0xB1FD},+    {0xB4A9, 0xB204},+    {0xB4AA, 0xB205},+    {0xB4AB, 0xB208},+    {0xB4AC, 0xB20B},+    {0xB4AD, 0xB20C},+    {0xB4AE, 0xB214},+    {0xB4AF, 0xB215},+    {0xB4B0, 0xB217},+    {0xB4B1, 0xB219},+    {0xB4B2, 0xB220},+    {0xB4B3, 0xB234},+    {0xB4B4, 0xB23C},+    {0xB4B5, 0xB258},+    {0xB4B6, 0xB25C},+    {0xB4B7, 0xB260},+    {0xB4B8, 0xB268},+    {0xB4B9, 0xB269},+    {0xB4BA, 0xB274},+    {0xB4BB, 0xB275},+    {0xB4BC, 0xB27C},+    {0xB4BD, 0xB284},+    {0xB4BE, 0xB285},+    {0xB4BF, 0xB289},+    {0xB4C0, 0xB290},+    {0xB4C1, 0xB291},+    {0xB4C2, 0xB294},+    {0xB4C3, 0xB298},+    {0xB4C4, 0xB299},+    {0xB4C5, 0xB29A},+    {0xB4C6, 0xB2A0},+    {0xB4C7, 0xB2A1},+    {0xB4C8, 0xB2A3},+    {0xB4C9, 0xB2A5},+    {0xB4CA, 0xB2A6},+    {0xB4CB, 0xB2AA},+    {0xB4CC, 0xB2AC},+    {0xB4CD, 0xB2B0},+    {0xB4CE, 0xB2B4},+    {0xB4CF, 0xB2C8},+    {0xB4D0, 0xB2C9},+    {0xB4D1, 0xB2CC},+    {0xB4D2, 0xB2D0},+    {0xB4D3, 0xB2D2},+    {0xB4D4, 0xB2D8},+    {0xB4D5, 0xB2D9},+    {0xB4D6, 0xB2DB},+    {0xB4D7, 0xB2DD},+    {0xB4D8, 0xB2E2},+    {0xB4D9, 0xB2E4},+    {0xB4DA, 0xB2E5},+    {0xB4DB, 0xB2E6},+    {0xB4DC, 0xB2E8},+    {0xB4DD, 0xB2EB},+    {0xB4DE, 0xB2EC},+    {0xB4DF, 0xB2ED},+    {0xB4E0, 0xB2EE},+    {0xB4E1, 0xB2EF},+    {0xB4E2, 0xB2F3},+    {0xB4E3, 0xB2F4},+    {0xB4E4, 0xB2F5},+    {0xB4E5, 0xB2F7},+    {0xB4E6, 0xB2F8},+    {0xB4E7, 0xB2F9},+    {0xB4E8, 0xB2FA},+    {0xB4E9, 0xB2FB},+    {0xB4EA, 0xB2FF},+    {0xB4EB, 0xB300},+    {0xB4EC, 0xB301},+    {0xB4ED, 0xB304},+    {0xB4EE, 0xB308},+    {0xB4EF, 0xB310},+    {0xB4F0, 0xB311},+    {0xB4F1, 0xB313},+    {0xB4F2, 0xB314},+    {0xB4F3, 0xB315},+    {0xB4F4, 0xB31C},+    {0xB4F5, 0xB354},+    {0xB4F6, 0xB355},+    {0xB4F7, 0xB356},+    {0xB4F8, 0xB358},+    {0xB4F9, 0xB35B},+    {0xB4FA, 0xB35C},+    {0xB4FB, 0xB35E},+    {0xB4FC, 0xB35F},+    {0xB4FD, 0xB364},+    {0xB4FE, 0xB365},+    {0xB541, 0xD095},+    {0xB542, 0xD096},+    {0xB543, 0xD097},+    {0xB544, 0xD098},+    {0xB545, 0xD099},+    {0xB546, 0xD09A},+    {0xB547, 0xD09B},+    {0xB548, 0xD09C},+    {0xB549, 0xD09D},+    {0xB54A, 0xD09E},+    {0xB54B, 0xD09F},+    {0xB54C, 0xD0A0},+    {0xB54D, 0xD0A1},+    {0xB54E, 0xD0A2},+    {0xB54F, 0xD0A3},+    {0xB550, 0xD0A6},+    {0xB551, 0xD0A7},+    {0xB552, 0xD0A9},+    {0xB553, 0xD0AA},+    {0xB554, 0xD0AB},+    {0xB555, 0xD0AD},+    {0xB556, 0xD0AE},+    {0xB557, 0xD0AF},+    {0xB558, 0xD0B0},+    {0xB559, 0xD0B1},+    {0xB55A, 0xD0B2},+    {0xB561, 0xD0B3},+    {0xB562, 0xD0B6},+    {0xB563, 0xD0B8},+    {0xB564, 0xD0BA},+    {0xB565, 0xD0BB},+    {0xB566, 0xD0BC},+    {0xB567, 0xD0BD},+    {0xB568, 0xD0BE},+    {0xB569, 0xD0BF},+    {0xB56A, 0xD0C2},+    {0xB56B, 0xD0C3},+    {0xB56C, 0xD0C5},+    {0xB56D, 0xD0C6},+    {0xB56E, 0xD0C7},+    {0xB56F, 0xD0CA},+    {0xB570, 0xD0CB},+    {0xB571, 0xD0CC},+    {0xB572, 0xD0CD},+    {0xB573, 0xD0CE},+    {0xB574, 0xD0CF},+    {0xB575, 0xD0D2},+    {0xB576, 0xD0D6},+    {0xB577, 0xD0D7},+    {0xB578, 0xD0D8},+    {0xB579, 0xD0D9},+    {0xB57A, 0xD0DA},+    {0xB581, 0xD0DB},+    {0xB582, 0xD0DE},+    {0xB583, 0xD0DF},+    {0xB584, 0xD0E1},+    {0xB585, 0xD0E2},+    {0xB586, 0xD0E3},+    {0xB587, 0xD0E5},+    {0xB588, 0xD0E6},+    {0xB589, 0xD0E7},+    {0xB58A, 0xD0E8},+    {0xB58B, 0xD0E9},+    {0xB58C, 0xD0EA},+    {0xB58D, 0xD0EB},+    {0xB58E, 0xD0EE},+    {0xB58F, 0xD0F2},+    {0xB590, 0xD0F3},+    {0xB591, 0xD0F4},+    {0xB592, 0xD0F5},+    {0xB593, 0xD0F6},+    {0xB594, 0xD0F7},+    {0xB595, 0xD0F9},+    {0xB596, 0xD0FA},+    {0xB597, 0xD0FB},+    {0xB598, 0xD0FC},+    {0xB599, 0xD0FD},+    {0xB59A, 0xD0FE},+    {0xB59B, 0xD0FF},+    {0xB59C, 0xD100},+    {0xB59D, 0xD101},+    {0xB59E, 0xD102},+    {0xB59F, 0xD103},+    {0xB5A0, 0xD104},+    {0xB5A1, 0xB367},+    {0xB5A2, 0xB369},+    {0xB5A3, 0xB36B},+    {0xB5A4, 0xB36E},+    {0xB5A5, 0xB370},+    {0xB5A6, 0xB371},+    {0xB5A7, 0xB374},+    {0xB5A8, 0xB378},+    {0xB5A9, 0xB380},+    {0xB5AA, 0xB381},+    {0xB5AB, 0xB383},+    {0xB5AC, 0xB384},+    {0xB5AD, 0xB385},+    {0xB5AE, 0xB38C},+    {0xB5AF, 0xB390},+    {0xB5B0, 0xB394},+    {0xB5B1, 0xB3A0},+    {0xB5B2, 0xB3A1},+    {0xB5B3, 0xB3A8},+    {0xB5B4, 0xB3AC},+    {0xB5B5, 0xB3C4},+    {0xB5B6, 0xB3C5},+    {0xB5B7, 0xB3C8},+    {0xB5B8, 0xB3CB},+    {0xB5B9, 0xB3CC},+    {0xB5BA, 0xB3CE},+    {0xB5BB, 0xB3D0},+    {0xB5BC, 0xB3D4},+    {0xB5BD, 0xB3D5},+    {0xB5BE, 0xB3D7},+    {0xB5BF, 0xB3D9},+    {0xB5C0, 0xB3DB},+    {0xB5C1, 0xB3DD},+    {0xB5C2, 0xB3E0},+    {0xB5C3, 0xB3E4},+    {0xB5C4, 0xB3E8},+    {0xB5C5, 0xB3FC},+    {0xB5C6, 0xB410},+    {0xB5C7, 0xB418},+    {0xB5C8, 0xB41C},+    {0xB5C9, 0xB420},+    {0xB5CA, 0xB428},+    {0xB5CB, 0xB429},+    {0xB5CC, 0xB42B},+    {0xB5CD, 0xB434},+    {0xB5CE, 0xB450},+    {0xB5CF, 0xB451},+    {0xB5D0, 0xB454},+    {0xB5D1, 0xB458},+    {0xB5D2, 0xB460},+    {0xB5D3, 0xB461},+    {0xB5D4, 0xB463},+    {0xB5D5, 0xB465},+    {0xB5D6, 0xB46C},+    {0xB5D7, 0xB480},+    {0xB5D8, 0xB488},+    {0xB5D9, 0xB49D},+    {0xB5DA, 0xB4A4},+    {0xB5DB, 0xB4A8},+    {0xB5DC, 0xB4AC},+    {0xB5DD, 0xB4B5},+    {0xB5DE, 0xB4B7},+    {0xB5DF, 0xB4B9},+    {0xB5E0, 0xB4C0},+    {0xB5E1, 0xB4C4},+    {0xB5E2, 0xB4C8},+    {0xB5E3, 0xB4D0},+    {0xB5E4, 0xB4D5},+    {0xB5E5, 0xB4DC},+    {0xB5E6, 0xB4DD},+    {0xB5E7, 0xB4E0},+    {0xB5E8, 0xB4E3},+    {0xB5E9, 0xB4E4},+    {0xB5EA, 0xB4E6},+    {0xB5EB, 0xB4EC},+    {0xB5EC, 0xB4ED},+    {0xB5ED, 0xB4EF},+    {0xB5EE, 0xB4F1},+    {0xB5EF, 0xB4F8},+    {0xB5F0, 0xB514},+    {0xB5F1, 0xB515},+    {0xB5F2, 0xB518},+    {0xB5F3, 0xB51B},+    {0xB5F4, 0xB51C},+    {0xB5F5, 0xB524},+    {0xB5F6, 0xB525},+    {0xB5F7, 0xB527},+    {0xB5F8, 0xB528},+    {0xB5F9, 0xB529},+    {0xB5FA, 0xB52A},+    {0xB5FB, 0xB530},+    {0xB5FC, 0xB531},+    {0xB5FD, 0xB534},+    {0xB5FE, 0xB538},+    {0xB641, 0xD105},+    {0xB642, 0xD106},+    {0xB643, 0xD107},+    {0xB644, 0xD108},+    {0xB645, 0xD109},+    {0xB646, 0xD10A},+    {0xB647, 0xD10B},+    {0xB648, 0xD10C},+    {0xB649, 0xD10E},+    {0xB64A, 0xD10F},+    {0xB64B, 0xD110},+    {0xB64C, 0xD111},+    {0xB64D, 0xD112},+    {0xB64E, 0xD113},+    {0xB64F, 0xD114},+    {0xB650, 0xD115},+    {0xB651, 0xD116},+    {0xB652, 0xD117},+    {0xB653, 0xD118},+    {0xB654, 0xD119},+    {0xB655, 0xD11A},+    {0xB656, 0xD11B},+    {0xB657, 0xD11C},+    {0xB658, 0xD11D},+    {0xB659, 0xD11E},+    {0xB65A, 0xD11F},+    {0xB661, 0xD120},+    {0xB662, 0xD121},+    {0xB663, 0xD122},+    {0xB664, 0xD123},+    {0xB665, 0xD124},+    {0xB666, 0xD125},+    {0xB667, 0xD126},+    {0xB668, 0xD127},+    {0xB669, 0xD128},+    {0xB66A, 0xD129},+    {0xB66B, 0xD12A},+    {0xB66C, 0xD12B},+    {0xB66D, 0xD12C},+    {0xB66E, 0xD12D},+    {0xB66F, 0xD12E},+    {0xB670, 0xD12F},+    {0xB671, 0xD132},+    {0xB672, 0xD133},+    {0xB673, 0xD135},+    {0xB674, 0xD136},+    {0xB675, 0xD137},+    {0xB676, 0xD139},+    {0xB677, 0xD13B},+    {0xB678, 0xD13C},+    {0xB679, 0xD13D},+    {0xB67A, 0xD13E},+    {0xB681, 0xD13F},+    {0xB682, 0xD142},+    {0xB683, 0xD146},+    {0xB684, 0xD147},+    {0xB685, 0xD148},+    {0xB686, 0xD149},+    {0xB687, 0xD14A},+    {0xB688, 0xD14B},+    {0xB689, 0xD14E},+    {0xB68A, 0xD14F},+    {0xB68B, 0xD151},+    {0xB68C, 0xD152},+    {0xB68D, 0xD153},+    {0xB68E, 0xD155},+    {0xB68F, 0xD156},+    {0xB690, 0xD157},+    {0xB691, 0xD158},+    {0xB692, 0xD159},+    {0xB693, 0xD15A},+    {0xB694, 0xD15B},+    {0xB695, 0xD15E},+    {0xB696, 0xD160},+    {0xB697, 0xD162},+    {0xB698, 0xD163},+    {0xB699, 0xD164},+    {0xB69A, 0xD165},+    {0xB69B, 0xD166},+    {0xB69C, 0xD167},+    {0xB69D, 0xD169},+    {0xB69E, 0xD16A},+    {0xB69F, 0xD16B},+    {0xB6A0, 0xD16D},+    {0xB6A1, 0xB540},+    {0xB6A2, 0xB541},+    {0xB6A3, 0xB543},+    {0xB6A4, 0xB544},+    {0xB6A5, 0xB545},+    {0xB6A6, 0xB54B},+    {0xB6A7, 0xB54C},+    {0xB6A8, 0xB54D},+    {0xB6A9, 0xB550},+    {0xB6AA, 0xB554},+    {0xB6AB, 0xB55C},+    {0xB6AC, 0xB55D},+    {0xB6AD, 0xB55F},+    {0xB6AE, 0xB560},+    {0xB6AF, 0xB561},+    {0xB6B0, 0xB5A0},+    {0xB6B1, 0xB5A1},+    {0xB6B2, 0xB5A4},+    {0xB6B3, 0xB5A8},+    {0xB6B4, 0xB5AA},+    {0xB6B5, 0xB5AB},+    {0xB6B6, 0xB5B0},+    {0xB6B7, 0xB5B1},+    {0xB6B8, 0xB5B3},+    {0xB6B9, 0xB5B4},+    {0xB6BA, 0xB5B5},+    {0xB6BB, 0xB5BB},+    {0xB6BC, 0xB5BC},+    {0xB6BD, 0xB5BD},+    {0xB6BE, 0xB5C0},+    {0xB6BF, 0xB5C4},+    {0xB6C0, 0xB5CC},+    {0xB6C1, 0xB5CD},+    {0xB6C2, 0xB5CF},+    {0xB6C3, 0xB5D0},+    {0xB6C4, 0xB5D1},+    {0xB6C5, 0xB5D8},+    {0xB6C6, 0xB5EC},+    {0xB6C7, 0xB610},+    {0xB6C8, 0xB611},+    {0xB6C9, 0xB614},+    {0xB6CA, 0xB618},+    {0xB6CB, 0xB625},+    {0xB6CC, 0xB62C},+    {0xB6CD, 0xB634},+    {0xB6CE, 0xB648},+    {0xB6CF, 0xB664},+    {0xB6D0, 0xB668},+    {0xB6D1, 0xB69C},+    {0xB6D2, 0xB69D},+    {0xB6D3, 0xB6A0},+    {0xB6D4, 0xB6A4},+    {0xB6D5, 0xB6AB},+    {0xB6D6, 0xB6AC},+    {0xB6D7, 0xB6B1},+    {0xB6D8, 0xB6D4},+    {0xB6D9, 0xB6F0},+    {0xB6DA, 0xB6F4},+    {0xB6DB, 0xB6F8},+    {0xB6DC, 0xB700},+    {0xB6DD, 0xB701},+    {0xB6DE, 0xB705},+    {0xB6DF, 0xB728},+    {0xB6E0, 0xB729},+    {0xB6E1, 0xB72C},+    {0xB6E2, 0xB72F},+    {0xB6E3, 0xB730},+    {0xB6E4, 0xB738},+    {0xB6E5, 0xB739},+    {0xB6E6, 0xB73B},+    {0xB6E7, 0xB744},+    {0xB6E8, 0xB748},+    {0xB6E9, 0xB74C},+    {0xB6EA, 0xB754},+    {0xB6EB, 0xB755},+    {0xB6EC, 0xB760},+    {0xB6ED, 0xB764},+    {0xB6EE, 0xB768},+    {0xB6EF, 0xB770},+    {0xB6F0, 0xB771},+    {0xB6F1, 0xB773},+    {0xB6F2, 0xB775},+    {0xB6F3, 0xB77C},+    {0xB6F4, 0xB77D},+    {0xB6F5, 0xB780},+    {0xB6F6, 0xB784},+    {0xB6F7, 0xB78C},+    {0xB6F8, 0xB78D},+    {0xB6F9, 0xB78F},+    {0xB6FA, 0xB790},+    {0xB6FB, 0xB791},+    {0xB6FC, 0xB792},+    {0xB6FD, 0xB796},+    {0xB6FE, 0xB797},+    {0xB741, 0xD16E},+    {0xB742, 0xD16F},+    {0xB743, 0xD170},+    {0xB744, 0xD171},+    {0xB745, 0xD172},+    {0xB746, 0xD173},+    {0xB747, 0xD174},+    {0xB748, 0xD175},+    {0xB749, 0xD176},+    {0xB74A, 0xD177},+    {0xB74B, 0xD178},+    {0xB74C, 0xD179},+    {0xB74D, 0xD17A},+    {0xB74E, 0xD17B},+    {0xB74F, 0xD17D},+    {0xB750, 0xD17E},+    {0xB751, 0xD17F},+    {0xB752, 0xD180},+    {0xB753, 0xD181},+    {0xB754, 0xD182},+    {0xB755, 0xD183},+    {0xB756, 0xD185},+    {0xB757, 0xD186},+    {0xB758, 0xD187},+    {0xB759, 0xD189},+    {0xB75A, 0xD18A},+    {0xB761, 0xD18B},+    {0xB762, 0xD18C},+    {0xB763, 0xD18D},+    {0xB764, 0xD18E},+    {0xB765, 0xD18F},+    {0xB766, 0xD190},+    {0xB767, 0xD191},+    {0xB768, 0xD192},+    {0xB769, 0xD193},+    {0xB76A, 0xD194},+    {0xB76B, 0xD195},+    {0xB76C, 0xD196},+    {0xB76D, 0xD197},+    {0xB76E, 0xD198},+    {0xB76F, 0xD199},+    {0xB770, 0xD19A},+    {0xB771, 0xD19B},+    {0xB772, 0xD19C},+    {0xB773, 0xD19D},+    {0xB774, 0xD19E},+    {0xB775, 0xD19F},+    {0xB776, 0xD1A2},+    {0xB777, 0xD1A3},+    {0xB778, 0xD1A5},+    {0xB779, 0xD1A6},+    {0xB77A, 0xD1A7},+    {0xB781, 0xD1A9},+    {0xB782, 0xD1AA},+    {0xB783, 0xD1AB},+    {0xB784, 0xD1AC},+    {0xB785, 0xD1AD},+    {0xB786, 0xD1AE},+    {0xB787, 0xD1AF},+    {0xB788, 0xD1B2},+    {0xB789, 0xD1B4},+    {0xB78A, 0xD1B6},+    {0xB78B, 0xD1B7},+    {0xB78C, 0xD1B8},+    {0xB78D, 0xD1B9},+    {0xB78E, 0xD1BB},+    {0xB78F, 0xD1BD},+    {0xB790, 0xD1BE},+    {0xB791, 0xD1BF},+    {0xB792, 0xD1C1},+    {0xB793, 0xD1C2},+    {0xB794, 0xD1C3},+    {0xB795, 0xD1C4},+    {0xB796, 0xD1C5},+    {0xB797, 0xD1C6},+    {0xB798, 0xD1C7},+    {0xB799, 0xD1C8},+    {0xB79A, 0xD1C9},+    {0xB79B, 0xD1CA},+    {0xB79C, 0xD1CB},+    {0xB79D, 0xD1CC},+    {0xB79E, 0xD1CD},+    {0xB79F, 0xD1CE},+    {0xB7A0, 0xD1CF},+    {0xB7A1, 0xB798},+    {0xB7A2, 0xB799},+    {0xB7A3, 0xB79C},+    {0xB7A4, 0xB7A0},+    {0xB7A5, 0xB7A8},+    {0xB7A6, 0xB7A9},+    {0xB7A7, 0xB7AB},+    {0xB7A8, 0xB7AC},+    {0xB7A9, 0xB7AD},+    {0xB7AA, 0xB7B4},+    {0xB7AB, 0xB7B5},+    {0xB7AC, 0xB7B8},+    {0xB7AD, 0xB7C7},+    {0xB7AE, 0xB7C9},+    {0xB7AF, 0xB7EC},+    {0xB7B0, 0xB7ED},+    {0xB7B1, 0xB7F0},+    {0xB7B2, 0xB7F4},+    {0xB7B3, 0xB7FC},+    {0xB7B4, 0xB7FD},+    {0xB7B5, 0xB7FF},+    {0xB7B6, 0xB800},+    {0xB7B7, 0xB801},+    {0xB7B8, 0xB807},+    {0xB7B9, 0xB808},+    {0xB7BA, 0xB809},+    {0xB7BB, 0xB80C},+    {0xB7BC, 0xB810},+    {0xB7BD, 0xB818},+    {0xB7BE, 0xB819},+    {0xB7BF, 0xB81B},+    {0xB7C0, 0xB81D},+    {0xB7C1, 0xB824},+    {0xB7C2, 0xB825},+    {0xB7C3, 0xB828},+    {0xB7C4, 0xB82C},+    {0xB7C5, 0xB834},+    {0xB7C6, 0xB835},+    {0xB7C7, 0xB837},+    {0xB7C8, 0xB838},+    {0xB7C9, 0xB839},+    {0xB7CA, 0xB840},+    {0xB7CB, 0xB844},+    {0xB7CC, 0xB851},+    {0xB7CD, 0xB853},+    {0xB7CE, 0xB85C},+    {0xB7CF, 0xB85D},+    {0xB7D0, 0xB860},+    {0xB7D1, 0xB864},+    {0xB7D2, 0xB86C},+    {0xB7D3, 0xB86D},+    {0xB7D4, 0xB86F},+    {0xB7D5, 0xB871},+    {0xB7D6, 0xB878},+    {0xB7D7, 0xB87C},+    {0xB7D8, 0xB88D},+    {0xB7D9, 0xB8A8},+    {0xB7DA, 0xB8B0},+    {0xB7DB, 0xB8B4},+    {0xB7DC, 0xB8B8},+    {0xB7DD, 0xB8C0},+    {0xB7DE, 0xB8C1},+    {0xB7DF, 0xB8C3},+    {0xB7E0, 0xB8C5},+    {0xB7E1, 0xB8CC},+    {0xB7E2, 0xB8D0},+    {0xB7E3, 0xB8D4},+    {0xB7E4, 0xB8DD},+    {0xB7E5, 0xB8DF},+    {0xB7E6, 0xB8E1},+    {0xB7E7, 0xB8E8},+    {0xB7E8, 0xB8E9},+    {0xB7E9, 0xB8EC},+    {0xB7EA, 0xB8F0},+    {0xB7EB, 0xB8F8},+    {0xB7EC, 0xB8F9},+    {0xB7ED, 0xB8FB},+    {0xB7EE, 0xB8FD},+    {0xB7EF, 0xB904},+    {0xB7F0, 0xB918},+    {0xB7F1, 0xB920},+    {0xB7F2, 0xB93C},+    {0xB7F3, 0xB93D},+    {0xB7F4, 0xB940},+    {0xB7F5, 0xB944},+    {0xB7F6, 0xB94C},+    {0xB7F7, 0xB94F},+    {0xB7F8, 0xB951},+    {0xB7F9, 0xB958},+    {0xB7FA, 0xB959},+    {0xB7FB, 0xB95C},+    {0xB7FC, 0xB960},+    {0xB7FD, 0xB968},+    {0xB7FE, 0xB969},+    {0xB841, 0xD1D0},+    {0xB842, 0xD1D1},+    {0xB843, 0xD1D2},+    {0xB844, 0xD1D3},+    {0xB845, 0xD1D4},+    {0xB846, 0xD1D5},+    {0xB847, 0xD1D6},+    {0xB848, 0xD1D7},+    {0xB849, 0xD1D9},+    {0xB84A, 0xD1DA},+    {0xB84B, 0xD1DB},+    {0xB84C, 0xD1DC},+    {0xB84D, 0xD1DD},+    {0xB84E, 0xD1DE},+    {0xB84F, 0xD1DF},+    {0xB850, 0xD1E0},+    {0xB851, 0xD1E1},+    {0xB852, 0xD1E2},+    {0xB853, 0xD1E3},+    {0xB854, 0xD1E4},+    {0xB855, 0xD1E5},+    {0xB856, 0xD1E6},+    {0xB857, 0xD1E7},+    {0xB858, 0xD1E8},+    {0xB859, 0xD1E9},+    {0xB85A, 0xD1EA},+    {0xB861, 0xD1EB},+    {0xB862, 0xD1EC},+    {0xB863, 0xD1ED},+    {0xB864, 0xD1EE},+    {0xB865, 0xD1EF},+    {0xB866, 0xD1F0},+    {0xB867, 0xD1F1},+    {0xB868, 0xD1F2},+    {0xB869, 0xD1F3},+    {0xB86A, 0xD1F5},+    {0xB86B, 0xD1F6},+    {0xB86C, 0xD1F7},+    {0xB86D, 0xD1F9},+    {0xB86E, 0xD1FA},+    {0xB86F, 0xD1FB},+    {0xB870, 0xD1FC},+    {0xB871, 0xD1FD},+    {0xB872, 0xD1FE},+    {0xB873, 0xD1FF},+    {0xB874, 0xD200},+    {0xB875, 0xD201},+    {0xB876, 0xD202},+    {0xB877, 0xD203},+    {0xB878, 0xD204},+    {0xB879, 0xD205},+    {0xB87A, 0xD206},+    {0xB881, 0xD208},+    {0xB882, 0xD20A},+    {0xB883, 0xD20B},+    {0xB884, 0xD20C},+    {0xB885, 0xD20D},+    {0xB886, 0xD20E},+    {0xB887, 0xD20F},+    {0xB888, 0xD211},+    {0xB889, 0xD212},+    {0xB88A, 0xD213},+    {0xB88B, 0xD214},+    {0xB88C, 0xD215},+    {0xB88D, 0xD216},+    {0xB88E, 0xD217},+    {0xB88F, 0xD218},+    {0xB890, 0xD219},+    {0xB891, 0xD21A},+    {0xB892, 0xD21B},+    {0xB893, 0xD21C},+    {0xB894, 0xD21D},+    {0xB895, 0xD21E},+    {0xB896, 0xD21F},+    {0xB897, 0xD220},+    {0xB898, 0xD221},+    {0xB899, 0xD222},+    {0xB89A, 0xD223},+    {0xB89B, 0xD224},+    {0xB89C, 0xD225},+    {0xB89D, 0xD226},+    {0xB89E, 0xD227},+    {0xB89F, 0xD228},+    {0xB8A0, 0xD229},+    {0xB8A1, 0xB96B},+    {0xB8A2, 0xB96D},+    {0xB8A3, 0xB974},+    {0xB8A4, 0xB975},+    {0xB8A5, 0xB978},+    {0xB8A6, 0xB97C},+    {0xB8A7, 0xB984},+    {0xB8A8, 0xB985},+    {0xB8A9, 0xB987},+    {0xB8AA, 0xB989},+    {0xB8AB, 0xB98A},+    {0xB8AC, 0xB98D},+    {0xB8AD, 0xB98E},+    {0xB8AE, 0xB9AC},+    {0xB8AF, 0xB9AD},+    {0xB8B0, 0xB9B0},+    {0xB8B1, 0xB9B4},+    {0xB8B2, 0xB9BC},+    {0xB8B3, 0xB9BD},+    {0xB8B4, 0xB9BF},+    {0xB8B5, 0xB9C1},+    {0xB8B6, 0xB9C8},+    {0xB8B7, 0xB9C9},+    {0xB8B8, 0xB9CC},+    {0xB8B9, 0xB9CE},+    {0xB8BA, 0xB9CF},+    {0xB8BB, 0xB9D0},+    {0xB8BC, 0xB9D1},+    {0xB8BD, 0xB9D2},+    {0xB8BE, 0xB9D8},+    {0xB8BF, 0xB9D9},+    {0xB8C0, 0xB9DB},+    {0xB8C1, 0xB9DD},+    {0xB8C2, 0xB9DE},+    {0xB8C3, 0xB9E1},+    {0xB8C4, 0xB9E3},+    {0xB8C5, 0xB9E4},+    {0xB8C6, 0xB9E5},+    {0xB8C7, 0xB9E8},+    {0xB8C8, 0xB9EC},+    {0xB8C9, 0xB9F4},+    {0xB8CA, 0xB9F5},+    {0xB8CB, 0xB9F7},+    {0xB8CC, 0xB9F8},+    {0xB8CD, 0xB9F9},+    {0xB8CE, 0xB9FA},+    {0xB8CF, 0xBA00},+    {0xB8D0, 0xBA01},+    {0xB8D1, 0xBA08},+    {0xB8D2, 0xBA15},+    {0xB8D3, 0xBA38},+    {0xB8D4, 0xBA39},+    {0xB8D5, 0xBA3C},+    {0xB8D6, 0xBA40},+    {0xB8D7, 0xBA42},+    {0xB8D8, 0xBA48},+    {0xB8D9, 0xBA49},+    {0xB8DA, 0xBA4B},+    {0xB8DB, 0xBA4D},+    {0xB8DC, 0xBA4E},+    {0xB8DD, 0xBA53},+    {0xB8DE, 0xBA54},+    {0xB8DF, 0xBA55},+    {0xB8E0, 0xBA58},+    {0xB8E1, 0xBA5C},+    {0xB8E2, 0xBA64},+    {0xB8E3, 0xBA65},+    {0xB8E4, 0xBA67},+    {0xB8E5, 0xBA68},+    {0xB8E6, 0xBA69},+    {0xB8E7, 0xBA70},+    {0xB8E8, 0xBA71},+    {0xB8E9, 0xBA74},+    {0xB8EA, 0xBA78},+    {0xB8EB, 0xBA83},+    {0xB8EC, 0xBA84},+    {0xB8ED, 0xBA85},+    {0xB8EE, 0xBA87},+    {0xB8EF, 0xBA8C},+    {0xB8F0, 0xBAA8},+    {0xB8F1, 0xBAA9},+    {0xB8F2, 0xBAAB},+    {0xB8F3, 0xBAAC},+    {0xB8F4, 0xBAB0},+    {0xB8F5, 0xBAB2},+    {0xB8F6, 0xBAB8},+    {0xB8F7, 0xBAB9},+    {0xB8F8, 0xBABB},+    {0xB8F9, 0xBABD},+    {0xB8FA, 0xBAC4},+    {0xB8FB, 0xBAC8},+    {0xB8FC, 0xBAD8},+    {0xB8FD, 0xBAD9},+    {0xB8FE, 0xBAFC},+    {0xB941, 0xD22A},+    {0xB942, 0xD22B},+    {0xB943, 0xD22E},+    {0xB944, 0xD22F},+    {0xB945, 0xD231},+    {0xB946, 0xD232},+    {0xB947, 0xD233},+    {0xB948, 0xD235},+    {0xB949, 0xD236},+    {0xB94A, 0xD237},+    {0xB94B, 0xD238},+    {0xB94C, 0xD239},+    {0xB94D, 0xD23A},+    {0xB94E, 0xD23B},+    {0xB94F, 0xD23E},+    {0xB950, 0xD240},+    {0xB951, 0xD242},+    {0xB952, 0xD243},+    {0xB953, 0xD244},+    {0xB954, 0xD245},+    {0xB955, 0xD246},+    {0xB956, 0xD247},+    {0xB957, 0xD249},+    {0xB958, 0xD24A},+    {0xB959, 0xD24B},+    {0xB95A, 0xD24C},+    {0xB961, 0xD24D},+    {0xB962, 0xD24E},+    {0xB963, 0xD24F},+    {0xB964, 0xD250},+    {0xB965, 0xD251},+    {0xB966, 0xD252},+    {0xB967, 0xD253},+    {0xB968, 0xD254},+    {0xB969, 0xD255},+    {0xB96A, 0xD256},+    {0xB96B, 0xD257},+    {0xB96C, 0xD258},+    {0xB96D, 0xD259},+    {0xB96E, 0xD25A},+    {0xB96F, 0xD25B},+    {0xB970, 0xD25D},+    {0xB971, 0xD25E},+    {0xB972, 0xD25F},+    {0xB973, 0xD260},+    {0xB974, 0xD261},+    {0xB975, 0xD262},+    {0xB976, 0xD263},+    {0xB977, 0xD265},+    {0xB978, 0xD266},+    {0xB979, 0xD267},+    {0xB97A, 0xD268},+    {0xB981, 0xD269},+    {0xB982, 0xD26A},+    {0xB983, 0xD26B},+    {0xB984, 0xD26C},+    {0xB985, 0xD26D},+    {0xB986, 0xD26E},+    {0xB987, 0xD26F},+    {0xB988, 0xD270},+    {0xB989, 0xD271},+    {0xB98A, 0xD272},+    {0xB98B, 0xD273},+    {0xB98C, 0xD274},+    {0xB98D, 0xD275},+    {0xB98E, 0xD276},+    {0xB98F, 0xD277},+    {0xB990, 0xD278},+    {0xB991, 0xD279},+    {0xB992, 0xD27A},+    {0xB993, 0xD27B},+    {0xB994, 0xD27C},+    {0xB995, 0xD27D},+    {0xB996, 0xD27E},+    {0xB997, 0xD27F},+    {0xB998, 0xD282},+    {0xB999, 0xD283},+    {0xB99A, 0xD285},+    {0xB99B, 0xD286},+    {0xB99C, 0xD287},+    {0xB99D, 0xD289},+    {0xB99E, 0xD28A},+    {0xB99F, 0xD28B},+    {0xB9A0, 0xD28C},+    {0xB9A1, 0xBB00},+    {0xB9A2, 0xBB04},+    {0xB9A3, 0xBB0D},+    {0xB9A4, 0xBB0F},+    {0xB9A5, 0xBB11},+    {0xB9A6, 0xBB18},+    {0xB9A7, 0xBB1C},+    {0xB9A8, 0xBB20},+    {0xB9A9, 0xBB29},+    {0xB9AA, 0xBB2B},+    {0xB9AB, 0xBB34},+    {0xB9AC, 0xBB35},+    {0xB9AD, 0xBB36},+    {0xB9AE, 0xBB38},+    {0xB9AF, 0xBB3B},+    {0xB9B0, 0xBB3C},+    {0xB9B1, 0xBB3D},+    {0xB9B2, 0xBB3E},+    {0xB9B3, 0xBB44},+    {0xB9B4, 0xBB45},+    {0xB9B5, 0xBB47},+    {0xB9B6, 0xBB49},+    {0xB9B7, 0xBB4D},+    {0xB9B8, 0xBB4F},+    {0xB9B9, 0xBB50},+    {0xB9BA, 0xBB54},+    {0xB9BB, 0xBB58},+    {0xB9BC, 0xBB61},+    {0xB9BD, 0xBB63},+    {0xB9BE, 0xBB6C},+    {0xB9BF, 0xBB88},+    {0xB9C0, 0xBB8C},+    {0xB9C1, 0xBB90},+    {0xB9C2, 0xBBA4},+    {0xB9C3, 0xBBA8},+    {0xB9C4, 0xBBAC},+    {0xB9C5, 0xBBB4},+    {0xB9C6, 0xBBB7},+    {0xB9C7, 0xBBC0},+    {0xB9C8, 0xBBC4},+    {0xB9C9, 0xBBC8},+    {0xB9CA, 0xBBD0},+    {0xB9CB, 0xBBD3},+    {0xB9CC, 0xBBF8},+    {0xB9CD, 0xBBF9},+    {0xB9CE, 0xBBFC},+    {0xB9CF, 0xBBFF},+    {0xB9D0, 0xBC00},+    {0xB9D1, 0xBC02},+    {0xB9D2, 0xBC08},+    {0xB9D3, 0xBC09},+    {0xB9D4, 0xBC0B},+    {0xB9D5, 0xBC0C},+    {0xB9D6, 0xBC0D},+    {0xB9D7, 0xBC0F},+    {0xB9D8, 0xBC11},+    {0xB9D9, 0xBC14},+    {0xB9DA, 0xBC15},+    {0xB9DB, 0xBC16},+    {0xB9DC, 0xBC17},+    {0xB9DD, 0xBC18},+    {0xB9DE, 0xBC1B},+    {0xB9DF, 0xBC1C},+    {0xB9E0, 0xBC1D},+    {0xB9E1, 0xBC1E},+    {0xB9E2, 0xBC1F},+    {0xB9E3, 0xBC24},+    {0xB9E4, 0xBC25},+    {0xB9E5, 0xBC27},+    {0xB9E6, 0xBC29},+    {0xB9E7, 0xBC2D},+    {0xB9E8, 0xBC30},+    {0xB9E9, 0xBC31},+    {0xB9EA, 0xBC34},+    {0xB9EB, 0xBC38},+    {0xB9EC, 0xBC40},+    {0xB9ED, 0xBC41},+    {0xB9EE, 0xBC43},+    {0xB9EF, 0xBC44},+    {0xB9F0, 0xBC45},+    {0xB9F1, 0xBC49},+    {0xB9F2, 0xBC4C},+    {0xB9F3, 0xBC4D},+    {0xB9F4, 0xBC50},+    {0xB9F5, 0xBC5D},+    {0xB9F6, 0xBC84},+    {0xB9F7, 0xBC85},+    {0xB9F8, 0xBC88},+    {0xB9F9, 0xBC8B},+    {0xB9FA, 0xBC8C},+    {0xB9FB, 0xBC8E},+    {0xB9FC, 0xBC94},+    {0xB9FD, 0xBC95},+    {0xB9FE, 0xBC97},+    {0xBA41, 0xD28D},+    {0xBA42, 0xD28E},+    {0xBA43, 0xD28F},+    {0xBA44, 0xD292},+    {0xBA45, 0xD293},+    {0xBA46, 0xD294},+    {0xBA47, 0xD296},+    {0xBA48, 0xD297},+    {0xBA49, 0xD298},+    {0xBA4A, 0xD299},+    {0xBA4B, 0xD29A},+    {0xBA4C, 0xD29B},+    {0xBA4D, 0xD29D},+    {0xBA4E, 0xD29E},+    {0xBA4F, 0xD29F},+    {0xBA50, 0xD2A1},+    {0xBA51, 0xD2A2},+    {0xBA52, 0xD2A3},+    {0xBA53, 0xD2A5},+    {0xBA54, 0xD2A6},+    {0xBA55, 0xD2A7},+    {0xBA56, 0xD2A8},+    {0xBA57, 0xD2A9},+    {0xBA58, 0xD2AA},+    {0xBA59, 0xD2AB},+    {0xBA5A, 0xD2AD},+    {0xBA61, 0xD2AE},+    {0xBA62, 0xD2AF},+    {0xBA63, 0xD2B0},+    {0xBA64, 0xD2B2},+    {0xBA65, 0xD2B3},+    {0xBA66, 0xD2B4},+    {0xBA67, 0xD2B5},+    {0xBA68, 0xD2B6},+    {0xBA69, 0xD2B7},+    {0xBA6A, 0xD2BA},+    {0xBA6B, 0xD2BB},+    {0xBA6C, 0xD2BD},+    {0xBA6D, 0xD2BE},+    {0xBA6E, 0xD2C1},+    {0xBA6F, 0xD2C3},+    {0xBA70, 0xD2C4},+    {0xBA71, 0xD2C5},+    {0xBA72, 0xD2C6},+    {0xBA73, 0xD2C7},+    {0xBA74, 0xD2CA},+    {0xBA75, 0xD2CC},+    {0xBA76, 0xD2CD},+    {0xBA77, 0xD2CE},+    {0xBA78, 0xD2CF},+    {0xBA79, 0xD2D0},+    {0xBA7A, 0xD2D1},+    {0xBA81, 0xD2D2},+    {0xBA82, 0xD2D3},+    {0xBA83, 0xD2D5},+    {0xBA84, 0xD2D6},+    {0xBA85, 0xD2D7},+    {0xBA86, 0xD2D9},+    {0xBA87, 0xD2DA},+    {0xBA88, 0xD2DB},+    {0xBA89, 0xD2DD},+    {0xBA8A, 0xD2DE},+    {0xBA8B, 0xD2DF},+    {0xBA8C, 0xD2E0},+    {0xBA8D, 0xD2E1},+    {0xBA8E, 0xD2E2},+    {0xBA8F, 0xD2E3},+    {0xBA90, 0xD2E6},+    {0xBA91, 0xD2E7},+    {0xBA92, 0xD2E8},+    {0xBA93, 0xD2E9},+    {0xBA94, 0xD2EA},+    {0xBA95, 0xD2EB},+    {0xBA96, 0xD2EC},+    {0xBA97, 0xD2ED},+    {0xBA98, 0xD2EE},+    {0xBA99, 0xD2EF},+    {0xBA9A, 0xD2F2},+    {0xBA9B, 0xD2F3},+    {0xBA9C, 0xD2F5},+    {0xBA9D, 0xD2F6},+    {0xBA9E, 0xD2F7},+    {0xBA9F, 0xD2F9},+    {0xBAA0, 0xD2FA},+    {0xBAA1, 0xBC99},+    {0xBAA2, 0xBC9A},+    {0xBAA3, 0xBCA0},+    {0xBAA4, 0xBCA1},+    {0xBAA5, 0xBCA4},+    {0xBAA6, 0xBCA7},+    {0xBAA7, 0xBCA8},+    {0xBAA8, 0xBCB0},+    {0xBAA9, 0xBCB1},+    {0xBAAA, 0xBCB3},+    {0xBAAB, 0xBCB4},+    {0xBAAC, 0xBCB5},+    {0xBAAD, 0xBCBC},+    {0xBAAE, 0xBCBD},+    {0xBAAF, 0xBCC0},+    {0xBAB0, 0xBCC4},+    {0xBAB1, 0xBCCD},+    {0xBAB2, 0xBCCF},+    {0xBAB3, 0xBCD0},+    {0xBAB4, 0xBCD1},+    {0xBAB5, 0xBCD5},+    {0xBAB6, 0xBCD8},+    {0xBAB7, 0xBCDC},+    {0xBAB8, 0xBCF4},+    {0xBAB9, 0xBCF5},+    {0xBABA, 0xBCF6},+    {0xBABB, 0xBCF8},+    {0xBABC, 0xBCFC},+    {0xBABD, 0xBD04},+    {0xBABE, 0xBD05},+    {0xBABF, 0xBD07},+    {0xBAC0, 0xBD09},+    {0xBAC1, 0xBD10},+    {0xBAC2, 0xBD14},+    {0xBAC3, 0xBD24},+    {0xBAC4, 0xBD2C},+    {0xBAC5, 0xBD40},+    {0xBAC6, 0xBD48},+    {0xBAC7, 0xBD49},+    {0xBAC8, 0xBD4C},+    {0xBAC9, 0xBD50},+    {0xBACA, 0xBD58},+    {0xBACB, 0xBD59},+    {0xBACC, 0xBD64},+    {0xBACD, 0xBD68},+    {0xBACE, 0xBD80},+    {0xBACF, 0xBD81},+    {0xBAD0, 0xBD84},+    {0xBAD1, 0xBD87},+    {0xBAD2, 0xBD88},+    {0xBAD3, 0xBD89},+    {0xBAD4, 0xBD8A},+    {0xBAD5, 0xBD90},+    {0xBAD6, 0xBD91},+    {0xBAD7, 0xBD93},+    {0xBAD8, 0xBD95},+    {0xBAD9, 0xBD99},+    {0xBADA, 0xBD9A},+    {0xBADB, 0xBD9C},+    {0xBADC, 0xBDA4},+    {0xBADD, 0xBDB0},+    {0xBADE, 0xBDB8},+    {0xBADF, 0xBDD4},+    {0xBAE0, 0xBDD5},+    {0xBAE1, 0xBDD8},+    {0xBAE2, 0xBDDC},+    {0xBAE3, 0xBDE9},+    {0xBAE4, 0xBDF0},+    {0xBAE5, 0xBDF4},+    {0xBAE6, 0xBDF8},+    {0xBAE7, 0xBE00},+    {0xBAE8, 0xBE03},+    {0xBAE9, 0xBE05},+    {0xBAEA, 0xBE0C},+    {0xBAEB, 0xBE0D},+    {0xBAEC, 0xBE10},+    {0xBAED, 0xBE14},+    {0xBAEE, 0xBE1C},+    {0xBAEF, 0xBE1D},+    {0xBAF0, 0xBE1F},+    {0xBAF1, 0xBE44},+    {0xBAF2, 0xBE45},+    {0xBAF3, 0xBE48},+    {0xBAF4, 0xBE4C},+    {0xBAF5, 0xBE4E},+    {0xBAF6, 0xBE54},+    {0xBAF7, 0xBE55},+    {0xBAF8, 0xBE57},+    {0xBAF9, 0xBE59},+    {0xBAFA, 0xBE5A},+    {0xBAFB, 0xBE5B},+    {0xBAFC, 0xBE60},+    {0xBAFD, 0xBE61},+    {0xBAFE, 0xBE64},+    {0xBB41, 0xD2FB},+    {0xBB42, 0xD2FC},+    {0xBB43, 0xD2FD},+    {0xBB44, 0xD2FE},+    {0xBB45, 0xD2FF},+    {0xBB46, 0xD302},+    {0xBB47, 0xD304},+    {0xBB48, 0xD306},+    {0xBB49, 0xD307},+    {0xBB4A, 0xD308},+    {0xBB4B, 0xD309},+    {0xBB4C, 0xD30A},+    {0xBB4D, 0xD30B},+    {0xBB4E, 0xD30F},+    {0xBB4F, 0xD311},+    {0xBB50, 0xD312},+    {0xBB51, 0xD313},+    {0xBB52, 0xD315},+    {0xBB53, 0xD317},+    {0xBB54, 0xD318},+    {0xBB55, 0xD319},+    {0xBB56, 0xD31A},+    {0xBB57, 0xD31B},+    {0xBB58, 0xD31E},+    {0xBB59, 0xD322},+    {0xBB5A, 0xD323},+    {0xBB61, 0xD324},+    {0xBB62, 0xD326},+    {0xBB63, 0xD327},+    {0xBB64, 0xD32A},+    {0xBB65, 0xD32B},+    {0xBB66, 0xD32D},+    {0xBB67, 0xD32E},+    {0xBB68, 0xD32F},+    {0xBB69, 0xD331},+    {0xBB6A, 0xD332},+    {0xBB6B, 0xD333},+    {0xBB6C, 0xD334},+    {0xBB6D, 0xD335},+    {0xBB6E, 0xD336},+    {0xBB6F, 0xD337},+    {0xBB70, 0xD33A},+    {0xBB71, 0xD33E},+    {0xBB72, 0xD33F},+    {0xBB73, 0xD340},+    {0xBB74, 0xD341},+    {0xBB75, 0xD342},+    {0xBB76, 0xD343},+    {0xBB77, 0xD346},+    {0xBB78, 0xD347},+    {0xBB79, 0xD348},+    {0xBB7A, 0xD349},+    {0xBB81, 0xD34A},+    {0xBB82, 0xD34B},+    {0xBB83, 0xD34C},+    {0xBB84, 0xD34D},+    {0xBB85, 0xD34E},+    {0xBB86, 0xD34F},+    {0xBB87, 0xD350},+    {0xBB88, 0xD351},+    {0xBB89, 0xD352},+    {0xBB8A, 0xD353},+    {0xBB8B, 0xD354},+    {0xBB8C, 0xD355},+    {0xBB8D, 0xD356},+    {0xBB8E, 0xD357},+    {0xBB8F, 0xD358},+    {0xBB90, 0xD359},+    {0xBB91, 0xD35A},+    {0xBB92, 0xD35B},+    {0xBB93, 0xD35C},+    {0xBB94, 0xD35D},+    {0xBB95, 0xD35E},+    {0xBB96, 0xD35F},+    {0xBB97, 0xD360},+    {0xBB98, 0xD361},+    {0xBB99, 0xD362},+    {0xBB9A, 0xD363},+    {0xBB9B, 0xD364},+    {0xBB9C, 0xD365},+    {0xBB9D, 0xD366},+    {0xBB9E, 0xD367},+    {0xBB9F, 0xD368},+    {0xBBA0, 0xD369},+    {0xBBA1, 0xBE68},+    {0xBBA2, 0xBE6A},+    {0xBBA3, 0xBE70},+    {0xBBA4, 0xBE71},+    {0xBBA5, 0xBE73},+    {0xBBA6, 0xBE74},+    {0xBBA7, 0xBE75},+    {0xBBA8, 0xBE7B},+    {0xBBA9, 0xBE7C},+    {0xBBAA, 0xBE7D},+    {0xBBAB, 0xBE80},+    {0xBBAC, 0xBE84},+    {0xBBAD, 0xBE8C},+    {0xBBAE, 0xBE8D},+    {0xBBAF, 0xBE8F},+    {0xBBB0, 0xBE90},+    {0xBBB1, 0xBE91},+    {0xBBB2, 0xBE98},+    {0xBBB3, 0xBE99},+    {0xBBB4, 0xBEA8},+    {0xBBB5, 0xBED0},+    {0xBBB6, 0xBED1},+    {0xBBB7, 0xBED4},+    {0xBBB8, 0xBED7},+    {0xBBB9, 0xBED8},+    {0xBBBA, 0xBEE0},+    {0xBBBB, 0xBEE3},+    {0xBBBC, 0xBEE4},+    {0xBBBD, 0xBEE5},+    {0xBBBE, 0xBEEC},+    {0xBBBF, 0xBF01},+    {0xBBC0, 0xBF08},+    {0xBBC1, 0xBF09},+    {0xBBC2, 0xBF18},+    {0xBBC3, 0xBF19},+    {0xBBC4, 0xBF1B},+    {0xBBC5, 0xBF1C},+    {0xBBC6, 0xBF1D},+    {0xBBC7, 0xBF40},+    {0xBBC8, 0xBF41},+    {0xBBC9, 0xBF44},+    {0xBBCA, 0xBF48},+    {0xBBCB, 0xBF50},+    {0xBBCC, 0xBF51},+    {0xBBCD, 0xBF55},+    {0xBBCE, 0xBF94},+    {0xBBCF, 0xBFB0},+    {0xBBD0, 0xBFC5},+    {0xBBD1, 0xBFCC},+    {0xBBD2, 0xBFCD},+    {0xBBD3, 0xBFD0},+    {0xBBD4, 0xBFD4},+    {0xBBD5, 0xBFDC},+    {0xBBD6, 0xBFDF},+    {0xBBD7, 0xBFE1},+    {0xBBD8, 0xC03C},+    {0xBBD9, 0xC051},+    {0xBBDA, 0xC058},+    {0xBBDB, 0xC05C},+    {0xBBDC, 0xC060},+    {0xBBDD, 0xC068},+    {0xBBDE, 0xC069},+    {0xBBDF, 0xC090},+    {0xBBE0, 0xC091},+    {0xBBE1, 0xC094},+    {0xBBE2, 0xC098},+    {0xBBE3, 0xC0A0},+    {0xBBE4, 0xC0A1},+    {0xBBE5, 0xC0A3},+    {0xBBE6, 0xC0A5},+    {0xBBE7, 0xC0AC},+    {0xBBE8, 0xC0AD},+    {0xBBE9, 0xC0AF},+    {0xBBEA, 0xC0B0},+    {0xBBEB, 0xC0B3},+    {0xBBEC, 0xC0B4},+    {0xBBED, 0xC0B5},+    {0xBBEE, 0xC0B6},+    {0xBBEF, 0xC0BC},+    {0xBBF0, 0xC0BD},+    {0xBBF1, 0xC0BF},+    {0xBBF2, 0xC0C0},+    {0xBBF3, 0xC0C1},+    {0xBBF4, 0xC0C5},+    {0xBBF5, 0xC0C8},+    {0xBBF6, 0xC0C9},+    {0xBBF7, 0xC0CC},+    {0xBBF8, 0xC0D0},+    {0xBBF9, 0xC0D8},+    {0xBBFA, 0xC0D9},+    {0xBBFB, 0xC0DB},+    {0xBBFC, 0xC0DC},+    {0xBBFD, 0xC0DD},+    {0xBBFE, 0xC0E4},+    {0xBC41, 0xD36A},+    {0xBC42, 0xD36B},+    {0xBC43, 0xD36C},+    {0xBC44, 0xD36D},+    {0xBC45, 0xD36E},+    {0xBC46, 0xD36F},+    {0xBC47, 0xD370},+    {0xBC48, 0xD371},+    {0xBC49, 0xD372},+    {0xBC4A, 0xD373},+    {0xBC4B, 0xD374},+    {0xBC4C, 0xD375},+    {0xBC4D, 0xD376},+    {0xBC4E, 0xD377},+    {0xBC4F, 0xD378},+    {0xBC50, 0xD379},+    {0xBC51, 0xD37A},+    {0xBC52, 0xD37B},+    {0xBC53, 0xD37E},+    {0xBC54, 0xD37F},+    {0xBC55, 0xD381},+    {0xBC56, 0xD382},+    {0xBC57, 0xD383},+    {0xBC58, 0xD385},+    {0xBC59, 0xD386},+    {0xBC5A, 0xD387},+    {0xBC61, 0xD388},+    {0xBC62, 0xD389},+    {0xBC63, 0xD38A},+    {0xBC64, 0xD38B},+    {0xBC65, 0xD38E},+    {0xBC66, 0xD392},+    {0xBC67, 0xD393},+    {0xBC68, 0xD394},+    {0xBC69, 0xD395},+    {0xBC6A, 0xD396},+    {0xBC6B, 0xD397},+    {0xBC6C, 0xD39A},+    {0xBC6D, 0xD39B},+    {0xBC6E, 0xD39D},+    {0xBC6F, 0xD39E},+    {0xBC70, 0xD39F},+    {0xBC71, 0xD3A1},+    {0xBC72, 0xD3A2},+    {0xBC73, 0xD3A3},+    {0xBC74, 0xD3A4},+    {0xBC75, 0xD3A5},+    {0xBC76, 0xD3A6},+    {0xBC77, 0xD3A7},+    {0xBC78, 0xD3AA},+    {0xBC79, 0xD3AC},+    {0xBC7A, 0xD3AE},+    {0xBC81, 0xD3AF},+    {0xBC82, 0xD3B0},+    {0xBC83, 0xD3B1},+    {0xBC84, 0xD3B2},+    {0xBC85, 0xD3B3},+    {0xBC86, 0xD3B5},+    {0xBC87, 0xD3B6},+    {0xBC88, 0xD3B7},+    {0xBC89, 0xD3B9},+    {0xBC8A, 0xD3BA},+    {0xBC8B, 0xD3BB},+    {0xBC8C, 0xD3BD},+    {0xBC8D, 0xD3BE},+    {0xBC8E, 0xD3BF},+    {0xBC8F, 0xD3C0},+    {0xBC90, 0xD3C1},+    {0xBC91, 0xD3C2},+    {0xBC92, 0xD3C3},+    {0xBC93, 0xD3C6},+    {0xBC94, 0xD3C7},+    {0xBC95, 0xD3CA},+    {0xBC96, 0xD3CB},+    {0xBC97, 0xD3CC},+    {0xBC98, 0xD3CD},+    {0xBC99, 0xD3CE},+    {0xBC9A, 0xD3CF},+    {0xBC9B, 0xD3D1},+    {0xBC9C, 0xD3D2},+    {0xBC9D, 0xD3D3},+    {0xBC9E, 0xD3D4},+    {0xBC9F, 0xD3D5},+    {0xBCA0, 0xD3D6},+    {0xBCA1, 0xC0E5},+    {0xBCA2, 0xC0E8},+    {0xBCA3, 0xC0EC},+    {0xBCA4, 0xC0F4},+    {0xBCA5, 0xC0F5},+    {0xBCA6, 0xC0F7},+    {0xBCA7, 0xC0F9},+    {0xBCA8, 0xC100},+    {0xBCA9, 0xC104},+    {0xBCAA, 0xC108},+    {0xBCAB, 0xC110},+    {0xBCAC, 0xC115},+    {0xBCAD, 0xC11C},+    {0xBCAE, 0xC11D},+    {0xBCAF, 0xC11E},+    {0xBCB0, 0xC11F},+    {0xBCB1, 0xC120},+    {0xBCB2, 0xC123},+    {0xBCB3, 0xC124},+    {0xBCB4, 0xC126},+    {0xBCB5, 0xC127},+    {0xBCB6, 0xC12C},+    {0xBCB7, 0xC12D},+    {0xBCB8, 0xC12F},+    {0xBCB9, 0xC130},+    {0xBCBA, 0xC131},+    {0xBCBB, 0xC136},+    {0xBCBC, 0xC138},+    {0xBCBD, 0xC139},+    {0xBCBE, 0xC13C},+    {0xBCBF, 0xC140},+    {0xBCC0, 0xC148},+    {0xBCC1, 0xC149},+    {0xBCC2, 0xC14B},+    {0xBCC3, 0xC14C},+    {0xBCC4, 0xC14D},+    {0xBCC5, 0xC154},+    {0xBCC6, 0xC155},+    {0xBCC7, 0xC158},+    {0xBCC8, 0xC15C},+    {0xBCC9, 0xC164},+    {0xBCCA, 0xC165},+    {0xBCCB, 0xC167},+    {0xBCCC, 0xC168},+    {0xBCCD, 0xC169},+    {0xBCCE, 0xC170},+    {0xBCCF, 0xC174},+    {0xBCD0, 0xC178},+    {0xBCD1, 0xC185},+    {0xBCD2, 0xC18C},+    {0xBCD3, 0xC18D},+    {0xBCD4, 0xC18E},+    {0xBCD5, 0xC190},+    {0xBCD6, 0xC194},+    {0xBCD7, 0xC196},+    {0xBCD8, 0xC19C},+    {0xBCD9, 0xC19D},+    {0xBCDA, 0xC19F},+    {0xBCDB, 0xC1A1},+    {0xBCDC, 0xC1A5},+    {0xBCDD, 0xC1A8},+    {0xBCDE, 0xC1A9},+    {0xBCDF, 0xC1AC},+    {0xBCE0, 0xC1B0},+    {0xBCE1, 0xC1BD},+    {0xBCE2, 0xC1C4},+    {0xBCE3, 0xC1C8},+    {0xBCE4, 0xC1CC},+    {0xBCE5, 0xC1D4},+    {0xBCE6, 0xC1D7},+    {0xBCE7, 0xC1D8},+    {0xBCE8, 0xC1E0},+    {0xBCE9, 0xC1E4},+    {0xBCEA, 0xC1E8},+    {0xBCEB, 0xC1F0},+    {0xBCEC, 0xC1F1},+    {0xBCED, 0xC1F3},+    {0xBCEE, 0xC1FC},+    {0xBCEF, 0xC1FD},+    {0xBCF0, 0xC200},+    {0xBCF1, 0xC204},+    {0xBCF2, 0xC20C},+    {0xBCF3, 0xC20D},+    {0xBCF4, 0xC20F},+    {0xBCF5, 0xC211},+    {0xBCF6, 0xC218},+    {0xBCF7, 0xC219},+    {0xBCF8, 0xC21C},+    {0xBCF9, 0xC21F},+    {0xBCFA, 0xC220},+    {0xBCFB, 0xC228},+    {0xBCFC, 0xC229},+    {0xBCFD, 0xC22B},+    {0xBCFE, 0xC22D},+    {0xBD41, 0xD3D7},+    {0xBD42, 0xD3D9},+    {0xBD43, 0xD3DA},+    {0xBD44, 0xD3DB},+    {0xBD45, 0xD3DC},+    {0xBD46, 0xD3DD},+    {0xBD47, 0xD3DE},+    {0xBD48, 0xD3DF},+    {0xBD49, 0xD3E0},+    {0xBD4A, 0xD3E2},+    {0xBD4B, 0xD3E4},+    {0xBD4C, 0xD3E5},+    {0xBD4D, 0xD3E6},+    {0xBD4E, 0xD3E7},+    {0xBD4F, 0xD3E8},+    {0xBD50, 0xD3E9},+    {0xBD51, 0xD3EA},+    {0xBD52, 0xD3EB},+    {0xBD53, 0xD3EE},+    {0xBD54, 0xD3EF},+    {0xBD55, 0xD3F1},+    {0xBD56, 0xD3F2},+    {0xBD57, 0xD3F3},+    {0xBD58, 0xD3F5},+    {0xBD59, 0xD3F6},+    {0xBD5A, 0xD3F7},+    {0xBD61, 0xD3F8},+    {0xBD62, 0xD3F9},+    {0xBD63, 0xD3FA},+    {0xBD64, 0xD3FB},+    {0xBD65, 0xD3FE},+    {0xBD66, 0xD400},+    {0xBD67, 0xD402},+    {0xBD68, 0xD403},+    {0xBD69, 0xD404},+    {0xBD6A, 0xD405},+    {0xBD6B, 0xD406},+    {0xBD6C, 0xD407},+    {0xBD6D, 0xD409},+    {0xBD6E, 0xD40A},+    {0xBD6F, 0xD40B},+    {0xBD70, 0xD40C},+    {0xBD71, 0xD40D},+    {0xBD72, 0xD40E},+    {0xBD73, 0xD40F},+    {0xBD74, 0xD410},+    {0xBD75, 0xD411},+    {0xBD76, 0xD412},+    {0xBD77, 0xD413},+    {0xBD78, 0xD414},+    {0xBD79, 0xD415},+    {0xBD7A, 0xD416},+    {0xBD81, 0xD417},+    {0xBD82, 0xD418},+    {0xBD83, 0xD419},+    {0xBD84, 0xD41A},+    {0xBD85, 0xD41B},+    {0xBD86, 0xD41C},+    {0xBD87, 0xD41E},+    {0xBD88, 0xD41F},+    {0xBD89, 0xD420},+    {0xBD8A, 0xD421},+    {0xBD8B, 0xD422},+    {0xBD8C, 0xD423},+    {0xBD8D, 0xD424},+    {0xBD8E, 0xD425},+    {0xBD8F, 0xD426},+    {0xBD90, 0xD427},+    {0xBD91, 0xD428},+    {0xBD92, 0xD429},+    {0xBD93, 0xD42A},+    {0xBD94, 0xD42B},+    {0xBD95, 0xD42C},+    {0xBD96, 0xD42D},+    {0xBD97, 0xD42E},+    {0xBD98, 0xD42F},+    {0xBD99, 0xD430},+    {0xBD9A, 0xD431},+    {0xBD9B, 0xD432},+    {0xBD9C, 0xD433},+    {0xBD9D, 0xD434},+    {0xBD9E, 0xD435},+    {0xBD9F, 0xD436},+    {0xBDA0, 0xD437},+    {0xBDA1, 0xC22F},+    {0xBDA2, 0xC231},+    {0xBDA3, 0xC232},+    {0xBDA4, 0xC234},+    {0xBDA5, 0xC248},+    {0xBDA6, 0xC250},+    {0xBDA7, 0xC251},+    {0xBDA8, 0xC254},+    {0xBDA9, 0xC258},+    {0xBDAA, 0xC260},+    {0xBDAB, 0xC265},+    {0xBDAC, 0xC26C},+    {0xBDAD, 0xC26D},+    {0xBDAE, 0xC270},+    {0xBDAF, 0xC274},+    {0xBDB0, 0xC27C},+    {0xBDB1, 0xC27D},+    {0xBDB2, 0xC27F},+    {0xBDB3, 0xC281},+    {0xBDB4, 0xC288},+    {0xBDB5, 0xC289},+    {0xBDB6, 0xC290},+    {0xBDB7, 0xC298},+    {0xBDB8, 0xC29B},+    {0xBDB9, 0xC29D},+    {0xBDBA, 0xC2A4},+    {0xBDBB, 0xC2A5},+    {0xBDBC, 0xC2A8},+    {0xBDBD, 0xC2AC},+    {0xBDBE, 0xC2AD},+    {0xBDBF, 0xC2B4},+    {0xBDC0, 0xC2B5},+    {0xBDC1, 0xC2B7},+    {0xBDC2, 0xC2B9},+    {0xBDC3, 0xC2DC},+    {0xBDC4, 0xC2DD},+    {0xBDC5, 0xC2E0},+    {0xBDC6, 0xC2E3},+    {0xBDC7, 0xC2E4},+    {0xBDC8, 0xC2EB},+    {0xBDC9, 0xC2EC},+    {0xBDCA, 0xC2ED},+    {0xBDCB, 0xC2EF},+    {0xBDCC, 0xC2F1},+    {0xBDCD, 0xC2F6},+    {0xBDCE, 0xC2F8},+    {0xBDCF, 0xC2F9},+    {0xBDD0, 0xC2FB},+    {0xBDD1, 0xC2FC},+    {0xBDD2, 0xC300},+    {0xBDD3, 0xC308},+    {0xBDD4, 0xC309},+    {0xBDD5, 0xC30C},+    {0xBDD6, 0xC30D},+    {0xBDD7, 0xC313},+    {0xBDD8, 0xC314},+    {0xBDD9, 0xC315},+    {0xBDDA, 0xC318},+    {0xBDDB, 0xC31C},+    {0xBDDC, 0xC324},+    {0xBDDD, 0xC325},+    {0xBDDE, 0xC328},+    {0xBDDF, 0xC329},+    {0xBDE0, 0xC345},+    {0xBDE1, 0xC368},+    {0xBDE2, 0xC369},+    {0xBDE3, 0xC36C},+    {0xBDE4, 0xC370},+    {0xBDE5, 0xC372},+    {0xBDE6, 0xC378},+    {0xBDE7, 0xC379},+    {0xBDE8, 0xC37C},+    {0xBDE9, 0xC37D},+    {0xBDEA, 0xC384},+    {0xBDEB, 0xC388},+    {0xBDEC, 0xC38C},+    {0xBDED, 0xC3C0},+    {0xBDEE, 0xC3D8},+    {0xBDEF, 0xC3D9},+    {0xBDF0, 0xC3DC},+    {0xBDF1, 0xC3DF},+    {0xBDF2, 0xC3E0},+    {0xBDF3, 0xC3E2},+    {0xBDF4, 0xC3E8},+    {0xBDF5, 0xC3E9},+    {0xBDF6, 0xC3ED},+    {0xBDF7, 0xC3F4},+    {0xBDF8, 0xC3F5},+    {0xBDF9, 0xC3F8},+    {0xBDFA, 0xC408},+    {0xBDFB, 0xC410},+    {0xBDFC, 0xC424},+    {0xBDFD, 0xC42C},+    {0xBDFE, 0xC430},+    {0xBE41, 0xD438},+    {0xBE42, 0xD439},+    {0xBE43, 0xD43A},+    {0xBE44, 0xD43B},+    {0xBE45, 0xD43C},+    {0xBE46, 0xD43D},+    {0xBE47, 0xD43E},+    {0xBE48, 0xD43F},+    {0xBE49, 0xD441},+    {0xBE4A, 0xD442},+    {0xBE4B, 0xD443},+    {0xBE4C, 0xD445},+    {0xBE4D, 0xD446},+    {0xBE4E, 0xD447},+    {0xBE4F, 0xD448},+    {0xBE50, 0xD449},+    {0xBE51, 0xD44A},+    {0xBE52, 0xD44B},+    {0xBE53, 0xD44C},+    {0xBE54, 0xD44D},+    {0xBE55, 0xD44E},+    {0xBE56, 0xD44F},+    {0xBE57, 0xD450},+    {0xBE58, 0xD451},+    {0xBE59, 0xD452},+    {0xBE5A, 0xD453},+    {0xBE61, 0xD454},+    {0xBE62, 0xD455},+    {0xBE63, 0xD456},+    {0xBE64, 0xD457},+    {0xBE65, 0xD458},+    {0xBE66, 0xD459},+    {0xBE67, 0xD45A},+    {0xBE68, 0xD45B},+    {0xBE69, 0xD45D},+    {0xBE6A, 0xD45E},+    {0xBE6B, 0xD45F},+    {0xBE6C, 0xD461},+    {0xBE6D, 0xD462},+    {0xBE6E, 0xD463},+    {0xBE6F, 0xD465},+    {0xBE70, 0xD466},+    {0xBE71, 0xD467},+    {0xBE72, 0xD468},+    {0xBE73, 0xD469},+    {0xBE74, 0xD46A},+    {0xBE75, 0xD46B},+    {0xBE76, 0xD46C},+    {0xBE77, 0xD46E},+    {0xBE78, 0xD470},+    {0xBE79, 0xD471},+    {0xBE7A, 0xD472},+    {0xBE81, 0xD473},+    {0xBE82, 0xD474},+    {0xBE83, 0xD475},+    {0xBE84, 0xD476},+    {0xBE85, 0xD477},+    {0xBE86, 0xD47A},+    {0xBE87, 0xD47B},+    {0xBE88, 0xD47D},+    {0xBE89, 0xD47E},+    {0xBE8A, 0xD481},+    {0xBE8B, 0xD483},+    {0xBE8C, 0xD484},+    {0xBE8D, 0xD485},+    {0xBE8E, 0xD486},+    {0xBE8F, 0xD487},+    {0xBE90, 0xD48A},+    {0xBE91, 0xD48C},+    {0xBE92, 0xD48E},+    {0xBE93, 0xD48F},+    {0xBE94, 0xD490},+    {0xBE95, 0xD491},+    {0xBE96, 0xD492},+    {0xBE97, 0xD493},+    {0xBE98, 0xD495},+    {0xBE99, 0xD496},+    {0xBE9A, 0xD497},+    {0xBE9B, 0xD498},+    {0xBE9C, 0xD499},+    {0xBE9D, 0xD49A},+    {0xBE9E, 0xD49B},+    {0xBE9F, 0xD49C},+    {0xBEA0, 0xD49D},+    {0xBEA1, 0xC434},+    {0xBEA2, 0xC43C},+    {0xBEA3, 0xC43D},+    {0xBEA4, 0xC448},+    {0xBEA5, 0xC464},+    {0xBEA6, 0xC465},+    {0xBEA7, 0xC468},+    {0xBEA8, 0xC46C},+    {0xBEA9, 0xC474},+    {0xBEAA, 0xC475},+    {0xBEAB, 0xC479},+    {0xBEAC, 0xC480},+    {0xBEAD, 0xC494},+    {0xBEAE, 0xC49C},+    {0xBEAF, 0xC4B8},+    {0xBEB0, 0xC4BC},+    {0xBEB1, 0xC4E9},+    {0xBEB2, 0xC4F0},+    {0xBEB3, 0xC4F1},+    {0xBEB4, 0xC4F4},+    {0xBEB5, 0xC4F8},+    {0xBEB6, 0xC4FA},+    {0xBEB7, 0xC4FF},+    {0xBEB8, 0xC500},+    {0xBEB9, 0xC501},+    {0xBEBA, 0xC50C},+    {0xBEBB, 0xC510},+    {0xBEBC, 0xC514},+    {0xBEBD, 0xC51C},+    {0xBEBE, 0xC528},+    {0xBEBF, 0xC529},+    {0xBEC0, 0xC52C},+    {0xBEC1, 0xC530},+    {0xBEC2, 0xC538},+    {0xBEC3, 0xC539},+    {0xBEC4, 0xC53B},+    {0xBEC5, 0xC53D},+    {0xBEC6, 0xC544},+    {0xBEC7, 0xC545},+    {0xBEC8, 0xC548},+    {0xBEC9, 0xC549},+    {0xBECA, 0xC54A},+    {0xBECB, 0xC54C},+    {0xBECC, 0xC54D},+    {0xBECD, 0xC54E},+    {0xBECE, 0xC553},+    {0xBECF, 0xC554},+    {0xBED0, 0xC555},+    {0xBED1, 0xC557},+    {0xBED2, 0xC558},+    {0xBED3, 0xC559},+    {0xBED4, 0xC55D},+    {0xBED5, 0xC55E},+    {0xBED6, 0xC560},+    {0xBED7, 0xC561},+    {0xBED8, 0xC564},+    {0xBED9, 0xC568},+    {0xBEDA, 0xC570},+    {0xBEDB, 0xC571},+    {0xBEDC, 0xC573},+    {0xBEDD, 0xC574},+    {0xBEDE, 0xC575},+    {0xBEDF, 0xC57C},+    {0xBEE0, 0xC57D},+    {0xBEE1, 0xC580},+    {0xBEE2, 0xC584},+    {0xBEE3, 0xC587},+    {0xBEE4, 0xC58C},+    {0xBEE5, 0xC58D},+    {0xBEE6, 0xC58F},+    {0xBEE7, 0xC591},+    {0xBEE8, 0xC595},+    {0xBEE9, 0xC597},+    {0xBEEA, 0xC598},+    {0xBEEB, 0xC59C},+    {0xBEEC, 0xC5A0},+    {0xBEED, 0xC5A9},+    {0xBEEE, 0xC5B4},+    {0xBEEF, 0xC5B5},+    {0xBEF0, 0xC5B8},+    {0xBEF1, 0xC5B9},+    {0xBEF2, 0xC5BB},+    {0xBEF3, 0xC5BC},+    {0xBEF4, 0xC5BD},+    {0xBEF5, 0xC5BE},+    {0xBEF6, 0xC5C4},+    {0xBEF7, 0xC5C5},+    {0xBEF8, 0xC5C6},+    {0xBEF9, 0xC5C7},+    {0xBEFA, 0xC5C8},+    {0xBEFB, 0xC5C9},+    {0xBEFC, 0xC5CA},+    {0xBEFD, 0xC5CC},+    {0xBEFE, 0xC5CE},+    {0xBF41, 0xD49E},+    {0xBF42, 0xD49F},+    {0xBF43, 0xD4A0},+    {0xBF44, 0xD4A1},+    {0xBF45, 0xD4A2},+    {0xBF46, 0xD4A3},+    {0xBF47, 0xD4A4},+    {0xBF48, 0xD4A5},+    {0xBF49, 0xD4A6},+    {0xBF4A, 0xD4A7},+    {0xBF4B, 0xD4A8},+    {0xBF4C, 0xD4AA},+    {0xBF4D, 0xD4AB},+    {0xBF4E, 0xD4AC},+    {0xBF4F, 0xD4AD},+    {0xBF50, 0xD4AE},+    {0xBF51, 0xD4AF},+    {0xBF52, 0xD4B0},+    {0xBF53, 0xD4B1},+    {0xBF54, 0xD4B2},+    {0xBF55, 0xD4B3},+    {0xBF56, 0xD4B4},+    {0xBF57, 0xD4B5},+    {0xBF58, 0xD4B6},+    {0xBF59, 0xD4B7},+    {0xBF5A, 0xD4B8},+    {0xBF61, 0xD4B9},+    {0xBF62, 0xD4BA},+    {0xBF63, 0xD4BB},+    {0xBF64, 0xD4BC},+    {0xBF65, 0xD4BD},+    {0xBF66, 0xD4BE},+    {0xBF67, 0xD4BF},+    {0xBF68, 0xD4C0},+    {0xBF69, 0xD4C1},+    {0xBF6A, 0xD4C2},+    {0xBF6B, 0xD4C3},+    {0xBF6C, 0xD4C4},+    {0xBF6D, 0xD4C5},+    {0xBF6E, 0xD4C6},+    {0xBF6F, 0xD4C7},+    {0xBF70, 0xD4C8},+    {0xBF71, 0xD4C9},+    {0xBF72, 0xD4CA},+    {0xBF73, 0xD4CB},+    {0xBF74, 0xD4CD},+    {0xBF75, 0xD4CE},+    {0xBF76, 0xD4CF},+    {0xBF77, 0xD4D1},+    {0xBF78, 0xD4D2},+    {0xBF79, 0xD4D3},+    {0xBF7A, 0xD4D5},+    {0xBF81, 0xD4D6},+    {0xBF82, 0xD4D7},+    {0xBF83, 0xD4D8},+    {0xBF84, 0xD4D9},+    {0xBF85, 0xD4DA},+    {0xBF86, 0xD4DB},+    {0xBF87, 0xD4DD},+    {0xBF88, 0xD4DE},+    {0xBF89, 0xD4E0},+    {0xBF8A, 0xD4E1},+    {0xBF8B, 0xD4E2},+    {0xBF8C, 0xD4E3},+    {0xBF8D, 0xD4E4},+    {0xBF8E, 0xD4E5},+    {0xBF8F, 0xD4E6},+    {0xBF90, 0xD4E7},+    {0xBF91, 0xD4E9},+    {0xBF92, 0xD4EA},+    {0xBF93, 0xD4EB},+    {0xBF94, 0xD4ED},+    {0xBF95, 0xD4EE},+    {0xBF96, 0xD4EF},+    {0xBF97, 0xD4F1},+    {0xBF98, 0xD4F2},+    {0xBF99, 0xD4F3},+    {0xBF9A, 0xD4F4},+    {0xBF9B, 0xD4F5},+    {0xBF9C, 0xD4F6},+    {0xBF9D, 0xD4F7},+    {0xBF9E, 0xD4F9},+    {0xBF9F, 0xD4FA},+    {0xBFA0, 0xD4FC},+    {0xBFA1, 0xC5D0},+    {0xBFA2, 0xC5D1},+    {0xBFA3, 0xC5D4},+    {0xBFA4, 0xC5D8},+    {0xBFA5, 0xC5E0},+    {0xBFA6, 0xC5E1},+    {0xBFA7, 0xC5E3},+    {0xBFA8, 0xC5E5},+    {0xBFA9, 0xC5EC},+    {0xBFAA, 0xC5ED},+    {0xBFAB, 0xC5EE},+    {0xBFAC, 0xC5F0},+    {0xBFAD, 0xC5F4},+    {0xBFAE, 0xC5F6},+    {0xBFAF, 0xC5F7},+    {0xBFB0, 0xC5FC},+    {0xBFB1, 0xC5FD},+    {0xBFB2, 0xC5FE},+    {0xBFB3, 0xC5FF},+    {0xBFB4, 0xC600},+    {0xBFB5, 0xC601},+    {0xBFB6, 0xC605},+    {0xBFB7, 0xC606},+    {0xBFB8, 0xC607},+    {0xBFB9, 0xC608},+    {0xBFBA, 0xC60C},+    {0xBFBB, 0xC610},+    {0xBFBC, 0xC618},+    {0xBFBD, 0xC619},+    {0xBFBE, 0xC61B},+    {0xBFBF, 0xC61C},+    {0xBFC0, 0xC624},+    {0xBFC1, 0xC625},+    {0xBFC2, 0xC628},+    {0xBFC3, 0xC62C},+    {0xBFC4, 0xC62D},+    {0xBFC5, 0xC62E},+    {0xBFC6, 0xC630},+    {0xBFC7, 0xC633},+    {0xBFC8, 0xC634},+    {0xBFC9, 0xC635},+    {0xBFCA, 0xC637},+    {0xBFCB, 0xC639},+    {0xBFCC, 0xC63B},+    {0xBFCD, 0xC640},+    {0xBFCE, 0xC641},+    {0xBFCF, 0xC644},+    {0xBFD0, 0xC648},+    {0xBFD1, 0xC650},+    {0xBFD2, 0xC651},+    {0xBFD3, 0xC653},+    {0xBFD4, 0xC654},+    {0xBFD5, 0xC655},+    {0xBFD6, 0xC65C},+    {0xBFD7, 0xC65D},+    {0xBFD8, 0xC660},+    {0xBFD9, 0xC66C},+    {0xBFDA, 0xC66F},+    {0xBFDB, 0xC671},+    {0xBFDC, 0xC678},+    {0xBFDD, 0xC679},+    {0xBFDE, 0xC67C},+    {0xBFDF, 0xC680},+    {0xBFE0, 0xC688},+    {0xBFE1, 0xC689},+    {0xBFE2, 0xC68B},+    {0xBFE3, 0xC68D},+    {0xBFE4, 0xC694},+    {0xBFE5, 0xC695},+    {0xBFE6, 0xC698},+    {0xBFE7, 0xC69C},+    {0xBFE8, 0xC6A4},+    {0xBFE9, 0xC6A5},+    {0xBFEA, 0xC6A7},+    {0xBFEB, 0xC6A9},+    {0xBFEC, 0xC6B0},+    {0xBFED, 0xC6B1},+    {0xBFEE, 0xC6B4},+    {0xBFEF, 0xC6B8},+    {0xBFF0, 0xC6B9},+    {0xBFF1, 0xC6BA},+    {0xBFF2, 0xC6C0},+    {0xBFF3, 0xC6C1},+    {0xBFF4, 0xC6C3},+    {0xBFF5, 0xC6C5},+    {0xBFF6, 0xC6CC},+    {0xBFF7, 0xC6CD},+    {0xBFF8, 0xC6D0},+    {0xBFF9, 0xC6D4},+    {0xBFFA, 0xC6DC},+    {0xBFFB, 0xC6DD},+    {0xBFFC, 0xC6E0},+    {0xBFFD, 0xC6E1},+    {0xBFFE, 0xC6E8},+    {0xC041, 0xD4FE},+    {0xC042, 0xD4FF},+    {0xC043, 0xD500},+    {0xC044, 0xD501},+    {0xC045, 0xD502},+    {0xC046, 0xD503},+    {0xC047, 0xD505},+    {0xC048, 0xD506},+    {0xC049, 0xD507},+    {0xC04A, 0xD509},+    {0xC04B, 0xD50A},+    {0xC04C, 0xD50B},+    {0xC04D, 0xD50D},+    {0xC04E, 0xD50E},+    {0xC04F, 0xD50F},+    {0xC050, 0xD510},+    {0xC051, 0xD511},+    {0xC052, 0xD512},+    {0xC053, 0xD513},+    {0xC054, 0xD516},+    {0xC055, 0xD518},+    {0xC056, 0xD519},+    {0xC057, 0xD51A},+    {0xC058, 0xD51B},+    {0xC059, 0xD51C},+    {0xC05A, 0xD51D},+    {0xC061, 0xD51E},+    {0xC062, 0xD51F},+    {0xC063, 0xD520},+    {0xC064, 0xD521},+    {0xC065, 0xD522},+    {0xC066, 0xD523},+    {0xC067, 0xD524},+    {0xC068, 0xD525},+    {0xC069, 0xD526},+    {0xC06A, 0xD527},+    {0xC06B, 0xD528},+    {0xC06C, 0xD529},+    {0xC06D, 0xD52A},+    {0xC06E, 0xD52B},+    {0xC06F, 0xD52C},+    {0xC070, 0xD52D},+    {0xC071, 0xD52E},+    {0xC072, 0xD52F},+    {0xC073, 0xD530},+    {0xC074, 0xD531},+    {0xC075, 0xD532},+    {0xC076, 0xD533},+    {0xC077, 0xD534},+    {0xC078, 0xD535},+    {0xC079, 0xD536},+    {0xC07A, 0xD537},+    {0xC081, 0xD538},+    {0xC082, 0xD539},+    {0xC083, 0xD53A},+    {0xC084, 0xD53B},+    {0xC085, 0xD53E},+    {0xC086, 0xD53F},+    {0xC087, 0xD541},+    {0xC088, 0xD542},+    {0xC089, 0xD543},+    {0xC08A, 0xD545},+    {0xC08B, 0xD546},+    {0xC08C, 0xD547},+    {0xC08D, 0xD548},+    {0xC08E, 0xD549},+    {0xC08F, 0xD54A},+    {0xC090, 0xD54B},+    {0xC091, 0xD54E},+    {0xC092, 0xD550},+    {0xC093, 0xD552},+    {0xC094, 0xD553},+    {0xC095, 0xD554},+    {0xC096, 0xD555},+    {0xC097, 0xD556},+    {0xC098, 0xD557},+    {0xC099, 0xD55A},+    {0xC09A, 0xD55B},+    {0xC09B, 0xD55D},+    {0xC09C, 0xD55E},+    {0xC09D, 0xD55F},+    {0xC09E, 0xD561},+    {0xC09F, 0xD562},+    {0xC0A0, 0xD563},+    {0xC0A1, 0xC6E9},+    {0xC0A2, 0xC6EC},+    {0xC0A3, 0xC6F0},+    {0xC0A4, 0xC6F8},+    {0xC0A5, 0xC6F9},+    {0xC0A6, 0xC6FD},+    {0xC0A7, 0xC704},+    {0xC0A8, 0xC705},+    {0xC0A9, 0xC708},+    {0xC0AA, 0xC70C},+    {0xC0AB, 0xC714},+    {0xC0AC, 0xC715},+    {0xC0AD, 0xC717},+    {0xC0AE, 0xC719},+    {0xC0AF, 0xC720},+    {0xC0B0, 0xC721},+    {0xC0B1, 0xC724},+    {0xC0B2, 0xC728},+    {0xC0B3, 0xC730},+    {0xC0B4, 0xC731},+    {0xC0B5, 0xC733},+    {0xC0B6, 0xC735},+    {0xC0B7, 0xC737},+    {0xC0B8, 0xC73C},+    {0xC0B9, 0xC73D},+    {0xC0BA, 0xC740},+    {0xC0BB, 0xC744},+    {0xC0BC, 0xC74A},+    {0xC0BD, 0xC74C},+    {0xC0BE, 0xC74D},+    {0xC0BF, 0xC74F},+    {0xC0C0, 0xC751},+    {0xC0C1, 0xC752},+    {0xC0C2, 0xC753},+    {0xC0C3, 0xC754},+    {0xC0C4, 0xC755},+    {0xC0C5, 0xC756},+    {0xC0C6, 0xC757},+    {0xC0C7, 0xC758},+    {0xC0C8, 0xC75C},+    {0xC0C9, 0xC760},+    {0xC0CA, 0xC768},+    {0xC0CB, 0xC76B},+    {0xC0CC, 0xC774},+    {0xC0CD, 0xC775},+    {0xC0CE, 0xC778},+    {0xC0CF, 0xC77C},+    {0xC0D0, 0xC77D},+    {0xC0D1, 0xC77E},+    {0xC0D2, 0xC783},+    {0xC0D3, 0xC784},+    {0xC0D4, 0xC785},+    {0xC0D5, 0xC787},+    {0xC0D6, 0xC788},+    {0xC0D7, 0xC789},+    {0xC0D8, 0xC78A},+    {0xC0D9, 0xC78E},+    {0xC0DA, 0xC790},+    {0xC0DB, 0xC791},+    {0xC0DC, 0xC794},+    {0xC0DD, 0xC796},+    {0xC0DE, 0xC797},+    {0xC0DF, 0xC798},+    {0xC0E0, 0xC79A},+    {0xC0E1, 0xC7A0},+    {0xC0E2, 0xC7A1},+    {0xC0E3, 0xC7A3},+    {0xC0E4, 0xC7A4},+    {0xC0E5, 0xC7A5},+    {0xC0E6, 0xC7A6},+    {0xC0E7, 0xC7AC},+    {0xC0E8, 0xC7AD},+    {0xC0E9, 0xC7B0},+    {0xC0EA, 0xC7B4},+    {0xC0EB, 0xC7BC},+    {0xC0EC, 0xC7BD},+    {0xC0ED, 0xC7BF},+    {0xC0EE, 0xC7C0},+    {0xC0EF, 0xC7C1},+    {0xC0F0, 0xC7C8},+    {0xC0F1, 0xC7C9},+    {0xC0F2, 0xC7CC},+    {0xC0F3, 0xC7CE},+    {0xC0F4, 0xC7D0},+    {0xC0F5, 0xC7D8},+    {0xC0F6, 0xC7DD},+    {0xC0F7, 0xC7E4},+    {0xC0F8, 0xC7E8},+    {0xC0F9, 0xC7EC},+    {0xC0FA, 0xC800},+    {0xC0FB, 0xC801},+    {0xC0FC, 0xC804},+    {0xC0FD, 0xC808},+    {0xC0FE, 0xC80A},+    {0xC141, 0xD564},+    {0xC142, 0xD566},+    {0xC143, 0xD567},+    {0xC144, 0xD56A},+    {0xC145, 0xD56C},+    {0xC146, 0xD56E},+    {0xC147, 0xD56F},+    {0xC148, 0xD570},+    {0xC149, 0xD571},+    {0xC14A, 0xD572},+    {0xC14B, 0xD573},+    {0xC14C, 0xD576},+    {0xC14D, 0xD577},+    {0xC14E, 0xD579},+    {0xC14F, 0xD57A},+    {0xC150, 0xD57B},+    {0xC151, 0xD57D},+    {0xC152, 0xD57E},+    {0xC153, 0xD57F},+    {0xC154, 0xD580},+    {0xC155, 0xD581},+    {0xC156, 0xD582},+    {0xC157, 0xD583},+    {0xC158, 0xD586},+    {0xC159, 0xD58A},+    {0xC15A, 0xD58B},+    {0xC161, 0xD58C},+    {0xC162, 0xD58D},+    {0xC163, 0xD58E},+    {0xC164, 0xD58F},+    {0xC165, 0xD591},+    {0xC166, 0xD592},+    {0xC167, 0xD593},+    {0xC168, 0xD594},+    {0xC169, 0xD595},+    {0xC16A, 0xD596},+    {0xC16B, 0xD597},+    {0xC16C, 0xD598},+    {0xC16D, 0xD599},+    {0xC16E, 0xD59A},+    {0xC16F, 0xD59B},+    {0xC170, 0xD59C},+    {0xC171, 0xD59D},+    {0xC172, 0xD59E},+    {0xC173, 0xD59F},+    {0xC174, 0xD5A0},+    {0xC175, 0xD5A1},+    {0xC176, 0xD5A2},+    {0xC177, 0xD5A3},+    {0xC178, 0xD5A4},+    {0xC179, 0xD5A6},+    {0xC17A, 0xD5A7},+    {0xC181, 0xD5A8},+    {0xC182, 0xD5A9},+    {0xC183, 0xD5AA},+    {0xC184, 0xD5AB},+    {0xC185, 0xD5AC},+    {0xC186, 0xD5AD},+    {0xC187, 0xD5AE},+    {0xC188, 0xD5AF},+    {0xC189, 0xD5B0},+    {0xC18A, 0xD5B1},+    {0xC18B, 0xD5B2},+    {0xC18C, 0xD5B3},+    {0xC18D, 0xD5B4},+    {0xC18E, 0xD5B5},+    {0xC18F, 0xD5B6},+    {0xC190, 0xD5B7},+    {0xC191, 0xD5B8},+    {0xC192, 0xD5B9},+    {0xC193, 0xD5BA},+    {0xC194, 0xD5BB},+    {0xC195, 0xD5BC},+    {0xC196, 0xD5BD},+    {0xC197, 0xD5BE},+    {0xC198, 0xD5BF},+    {0xC199, 0xD5C0},+    {0xC19A, 0xD5C1},+    {0xC19B, 0xD5C2},+    {0xC19C, 0xD5C3},+    {0xC19D, 0xD5C4},+    {0xC19E, 0xD5C5},+    {0xC19F, 0xD5C6},+    {0xC1A0, 0xD5C7},+    {0xC1A1, 0xC810},+    {0xC1A2, 0xC811},+    {0xC1A3, 0xC813},+    {0xC1A4, 0xC815},+    {0xC1A5, 0xC816},+    {0xC1A6, 0xC81C},+    {0xC1A7, 0xC81D},+    {0xC1A8, 0xC820},+    {0xC1A9, 0xC824},+    {0xC1AA, 0xC82C},+    {0xC1AB, 0xC82D},+    {0xC1AC, 0xC82F},+    {0xC1AD, 0xC831},+    {0xC1AE, 0xC838},+    {0xC1AF, 0xC83C},+    {0xC1B0, 0xC840},+    {0xC1B1, 0xC848},+    {0xC1B2, 0xC849},+    {0xC1B3, 0xC84C},+    {0xC1B4, 0xC84D},+    {0xC1B5, 0xC854},+    {0xC1B6, 0xC870},+    {0xC1B7, 0xC871},+    {0xC1B8, 0xC874},+    {0xC1B9, 0xC878},+    {0xC1BA, 0xC87A},+    {0xC1BB, 0xC880},+    {0xC1BC, 0xC881},+    {0xC1BD, 0xC883},+    {0xC1BE, 0xC885},+    {0xC1BF, 0xC886},+    {0xC1C0, 0xC887},+    {0xC1C1, 0xC88B},+    {0xC1C2, 0xC88C},+    {0xC1C3, 0xC88D},+    {0xC1C4, 0xC894},+    {0xC1C5, 0xC89D},+    {0xC1C6, 0xC89F},+    {0xC1C7, 0xC8A1},+    {0xC1C8, 0xC8A8},+    {0xC1C9, 0xC8BC},+    {0xC1CA, 0xC8BD},+    {0xC1CB, 0xC8C4},+    {0xC1CC, 0xC8C8},+    {0xC1CD, 0xC8CC},+    {0xC1CE, 0xC8D4},+    {0xC1CF, 0xC8D5},+    {0xC1D0, 0xC8D7},+    {0xC1D1, 0xC8D9},+    {0xC1D2, 0xC8E0},+    {0xC1D3, 0xC8E1},+    {0xC1D4, 0xC8E4},+    {0xC1D5, 0xC8F5},+    {0xC1D6, 0xC8FC},+    {0xC1D7, 0xC8FD},+    {0xC1D8, 0xC900},+    {0xC1D9, 0xC904},+    {0xC1DA, 0xC905},+    {0xC1DB, 0xC906},+    {0xC1DC, 0xC90C},+    {0xC1DD, 0xC90D},+    {0xC1DE, 0xC90F},+    {0xC1DF, 0xC911},+    {0xC1E0, 0xC918},+    {0xC1E1, 0xC92C},+    {0xC1E2, 0xC934},+    {0xC1E3, 0xC950},+    {0xC1E4, 0xC951},+    {0xC1E5, 0xC954},+    {0xC1E6, 0xC958},+    {0xC1E7, 0xC960},+    {0xC1E8, 0xC961},+    {0xC1E9, 0xC963},+    {0xC1EA, 0xC96C},+    {0xC1EB, 0xC970},+    {0xC1EC, 0xC974},+    {0xC1ED, 0xC97C},+    {0xC1EE, 0xC988},+    {0xC1EF, 0xC989},+    {0xC1F0, 0xC98C},+    {0xC1F1, 0xC990},+    {0xC1F2, 0xC998},+    {0xC1F3, 0xC999},+    {0xC1F4, 0xC99B},+    {0xC1F5, 0xC99D},+    {0xC1F6, 0xC9C0},+    {0xC1F7, 0xC9C1},+    {0xC1F8, 0xC9C4},+    {0xC1F9, 0xC9C7},+    {0xC1FA, 0xC9C8},+    {0xC1FB, 0xC9CA},+    {0xC1FC, 0xC9D0},+    {0xC1FD, 0xC9D1},+    {0xC1FE, 0xC9D3},+    {0xC241, 0xD5CA},+    {0xC242, 0xD5CB},+    {0xC243, 0xD5CD},+    {0xC244, 0xD5CE},+    {0xC245, 0xD5CF},+    {0xC246, 0xD5D1},+    {0xC247, 0xD5D3},+    {0xC248, 0xD5D4},+    {0xC249, 0xD5D5},+    {0xC24A, 0xD5D6},+    {0xC24B, 0xD5D7},+    {0xC24C, 0xD5DA},+    {0xC24D, 0xD5DC},+    {0xC24E, 0xD5DE},+    {0xC24F, 0xD5DF},+    {0xC250, 0xD5E0},+    {0xC251, 0xD5E1},+    {0xC252, 0xD5E2},+    {0xC253, 0xD5E3},+    {0xC254, 0xD5E6},+    {0xC255, 0xD5E7},+    {0xC256, 0xD5E9},+    {0xC257, 0xD5EA},+    {0xC258, 0xD5EB},+    {0xC259, 0xD5ED},+    {0xC25A, 0xD5EE},+    {0xC261, 0xD5EF},+    {0xC262, 0xD5F0},+    {0xC263, 0xD5F1},+    {0xC264, 0xD5F2},+    {0xC265, 0xD5F3},+    {0xC266, 0xD5F6},+    {0xC267, 0xD5F8},+    {0xC268, 0xD5FA},+    {0xC269, 0xD5FB},+    {0xC26A, 0xD5FC},+    {0xC26B, 0xD5FD},+    {0xC26C, 0xD5FE},+    {0xC26D, 0xD5FF},+    {0xC26E, 0xD602},+    {0xC26F, 0xD603},+    {0xC270, 0xD605},+    {0xC271, 0xD606},+    {0xC272, 0xD607},+    {0xC273, 0xD609},+    {0xC274, 0xD60A},+    {0xC275, 0xD60B},+    {0xC276, 0xD60C},+    {0xC277, 0xD60D},+    {0xC278, 0xD60E},+    {0xC279, 0xD60F},+    {0xC27A, 0xD612},+    {0xC281, 0xD616},+    {0xC282, 0xD617},+    {0xC283, 0xD618},+    {0xC284, 0xD619},+    {0xC285, 0xD61A},+    {0xC286, 0xD61B},+    {0xC287, 0xD61D},+    {0xC288, 0xD61E},+    {0xC289, 0xD61F},+    {0xC28A, 0xD621},+    {0xC28B, 0xD622},+    {0xC28C, 0xD623},+    {0xC28D, 0xD625},+    {0xC28E, 0xD626},+    {0xC28F, 0xD627},+    {0xC290, 0xD628},+    {0xC291, 0xD629},+    {0xC292, 0xD62A},+    {0xC293, 0xD62B},+    {0xC294, 0xD62C},+    {0xC295, 0xD62E},+    {0xC296, 0xD62F},+    {0xC297, 0xD630},+    {0xC298, 0xD631},+    {0xC299, 0xD632},+    {0xC29A, 0xD633},+    {0xC29B, 0xD634},+    {0xC29C, 0xD635},+    {0xC29D, 0xD636},+    {0xC29E, 0xD637},+    {0xC29F, 0xD63A},+    {0xC2A0, 0xD63B},+    {0xC2A1, 0xC9D5},+    {0xC2A2, 0xC9D6},+    {0xC2A3, 0xC9D9},+    {0xC2A4, 0xC9DA},+    {0xC2A5, 0xC9DC},+    {0xC2A6, 0xC9DD},+    {0xC2A7, 0xC9E0},+    {0xC2A8, 0xC9E2},+    {0xC2A9, 0xC9E4},+    {0xC2AA, 0xC9E7},+    {0xC2AB, 0xC9EC},+    {0xC2AC, 0xC9ED},+    {0xC2AD, 0xC9EF},+    {0xC2AE, 0xC9F0},+    {0xC2AF, 0xC9F1},+    {0xC2B0, 0xC9F8},+    {0xC2B1, 0xC9F9},+    {0xC2B2, 0xC9FC},+    {0xC2B3, 0xCA00},+    {0xC2B4, 0xCA08},+    {0xC2B5, 0xCA09},+    {0xC2B6, 0xCA0B},+    {0xC2B7, 0xCA0C},+    {0xC2B8, 0xCA0D},+    {0xC2B9, 0xCA14},+    {0xC2BA, 0xCA18},+    {0xC2BB, 0xCA29},+    {0xC2BC, 0xCA4C},+    {0xC2BD, 0xCA4D},+    {0xC2BE, 0xCA50},+    {0xC2BF, 0xCA54},+    {0xC2C0, 0xCA5C},+    {0xC2C1, 0xCA5D},+    {0xC2C2, 0xCA5F},+    {0xC2C3, 0xCA60},+    {0xC2C4, 0xCA61},+    {0xC2C5, 0xCA68},+    {0xC2C6, 0xCA7D},+    {0xC2C7, 0xCA84},+    {0xC2C8, 0xCA98},+    {0xC2C9, 0xCABC},+    {0xC2CA, 0xCABD},+    {0xC2CB, 0xCAC0},+    {0xC2CC, 0xCAC4},+    {0xC2CD, 0xCACC},+    {0xC2CE, 0xCACD},+    {0xC2CF, 0xCACF},+    {0xC2D0, 0xCAD1},+    {0xC2D1, 0xCAD3},+    {0xC2D2, 0xCAD8},+    {0xC2D3, 0xCAD9},+    {0xC2D4, 0xCAE0},+    {0xC2D5, 0xCAEC},+    {0xC2D6, 0xCAF4},+    {0xC2D7, 0xCB08},+    {0xC2D8, 0xCB10},+    {0xC2D9, 0xCB14},+    {0xC2DA, 0xCB18},+    {0xC2DB, 0xCB20},+    {0xC2DC, 0xCB21},+    {0xC2DD, 0xCB41},+    {0xC2DE, 0xCB48},+    {0xC2DF, 0xCB49},+    {0xC2E0, 0xCB4C},+    {0xC2E1, 0xCB50},+    {0xC2E2, 0xCB58},+    {0xC2E3, 0xCB59},+    {0xC2E4, 0xCB5D},+    {0xC2E5, 0xCB64},+    {0xC2E6, 0xCB78},+    {0xC2E7, 0xCB79},+    {0xC2E8, 0xCB9C},+    {0xC2E9, 0xCBB8},+    {0xC2EA, 0xCBD4},+    {0xC2EB, 0xCBE4},+    {0xC2EC, 0xCBE7},+    {0xC2ED, 0xCBE9},+    {0xC2EE, 0xCC0C},+    {0xC2EF, 0xCC0D},+    {0xC2F0, 0xCC10},+    {0xC2F1, 0xCC14},+    {0xC2F2, 0xCC1C},+    {0xC2F3, 0xCC1D},+    {0xC2F4, 0xCC21},+    {0xC2F5, 0xCC22},+    {0xC2F6, 0xCC27},+    {0xC2F7, 0xCC28},+    {0xC2F8, 0xCC29},+    {0xC2F9, 0xCC2C},+    {0xC2FA, 0xCC2E},+    {0xC2FB, 0xCC30},+    {0xC2FC, 0xCC38},+    {0xC2FD, 0xCC39},+    {0xC2FE, 0xCC3B},+    {0xC341, 0xD63D},+    {0xC342, 0xD63E},+    {0xC343, 0xD63F},+    {0xC344, 0xD641},+    {0xC345, 0xD642},+    {0xC346, 0xD643},+    {0xC347, 0xD644},+    {0xC348, 0xD646},+    {0xC349, 0xD647},+    {0xC34A, 0xD64A},+    {0xC34B, 0xD64C},+    {0xC34C, 0xD64E},+    {0xC34D, 0xD64F},+    {0xC34E, 0xD650},+    {0xC34F, 0xD652},+    {0xC350, 0xD653},+    {0xC351, 0xD656},+    {0xC352, 0xD657},+    {0xC353, 0xD659},+    {0xC354, 0xD65A},+    {0xC355, 0xD65B},+    {0xC356, 0xD65D},+    {0xC357, 0xD65E},+    {0xC358, 0xD65F},+    {0xC359, 0xD660},+    {0xC35A, 0xD661},+    {0xC361, 0xD662},+    {0xC362, 0xD663},+    {0xC363, 0xD664},+    {0xC364, 0xD665},+    {0xC365, 0xD666},+    {0xC366, 0xD668},+    {0xC367, 0xD66A},+    {0xC368, 0xD66B},+    {0xC369, 0xD66C},+    {0xC36A, 0xD66D},+    {0xC36B, 0xD66E},+    {0xC36C, 0xD66F},+    {0xC36D, 0xD672},+    {0xC36E, 0xD673},+    {0xC36F, 0xD675},+    {0xC370, 0xD676},+    {0xC371, 0xD677},+    {0xC372, 0xD678},+    {0xC373, 0xD679},+    {0xC374, 0xD67A},+    {0xC375, 0xD67B},+    {0xC376, 0xD67C},+    {0xC377, 0xD67D},+    {0xC378, 0xD67E},+    {0xC379, 0xD67F},+    {0xC37A, 0xD680},+    {0xC381, 0xD681},+    {0xC382, 0xD682},+    {0xC383, 0xD684},+    {0xC384, 0xD686},+    {0xC385, 0xD687},+    {0xC386, 0xD688},+    {0xC387, 0xD689},+    {0xC388, 0xD68A},+    {0xC389, 0xD68B},+    {0xC38A, 0xD68E},+    {0xC38B, 0xD68F},+    {0xC38C, 0xD691},+    {0xC38D, 0xD692},+    {0xC38E, 0xD693},+    {0xC38F, 0xD695},+    {0xC390, 0xD696},+    {0xC391, 0xD697},+    {0xC392, 0xD698},+    {0xC393, 0xD699},+    {0xC394, 0xD69A},+    {0xC395, 0xD69B},+    {0xC396, 0xD69C},+    {0xC397, 0xD69E},+    {0xC398, 0xD6A0},+    {0xC399, 0xD6A2},+    {0xC39A, 0xD6A3},+    {0xC39B, 0xD6A4},+    {0xC39C, 0xD6A5},+    {0xC39D, 0xD6A6},+    {0xC39E, 0xD6A7},+    {0xC39F, 0xD6A9},+    {0xC3A0, 0xD6AA},+    {0xC3A1, 0xCC3C},+    {0xC3A2, 0xCC3D},+    {0xC3A3, 0xCC3E},+    {0xC3A4, 0xCC44},+    {0xC3A5, 0xCC45},+    {0xC3A6, 0xCC48},+    {0xC3A7, 0xCC4C},+    {0xC3A8, 0xCC54},+    {0xC3A9, 0xCC55},+    {0xC3AA, 0xCC57},+    {0xC3AB, 0xCC58},+    {0xC3AC, 0xCC59},+    {0xC3AD, 0xCC60},+    {0xC3AE, 0xCC64},+    {0xC3AF, 0xCC66},+    {0xC3B0, 0xCC68},+    {0xC3B1, 0xCC70},+    {0xC3B2, 0xCC75},+    {0xC3B3, 0xCC98},+    {0xC3B4, 0xCC99},+    {0xC3B5, 0xCC9C},+    {0xC3B6, 0xCCA0},+    {0xC3B7, 0xCCA8},+    {0xC3B8, 0xCCA9},+    {0xC3B9, 0xCCAB},+    {0xC3BA, 0xCCAC},+    {0xC3BB, 0xCCAD},+    {0xC3BC, 0xCCB4},+    {0xC3BD, 0xCCB5},+    {0xC3BE, 0xCCB8},+    {0xC3BF, 0xCCBC},+    {0xC3C0, 0xCCC4},+    {0xC3C1, 0xCCC5},+    {0xC3C2, 0xCCC7},+    {0xC3C3, 0xCCC9},+    {0xC3C4, 0xCCD0},+    {0xC3C5, 0xCCD4},+    {0xC3C6, 0xCCE4},+    {0xC3C7, 0xCCEC},+    {0xC3C8, 0xCCF0},+    {0xC3C9, 0xCD01},+    {0xC3CA, 0xCD08},+    {0xC3CB, 0xCD09},+    {0xC3CC, 0xCD0C},+    {0xC3CD, 0xCD10},+    {0xC3CE, 0xCD18},+    {0xC3CF, 0xCD19},+    {0xC3D0, 0xCD1B},+    {0xC3D1, 0xCD1D},+    {0xC3D2, 0xCD24},+    {0xC3D3, 0xCD28},+    {0xC3D4, 0xCD2C},+    {0xC3D5, 0xCD39},+    {0xC3D6, 0xCD5C},+    {0xC3D7, 0xCD60},+    {0xC3D8, 0xCD64},+    {0xC3D9, 0xCD6C},+    {0xC3DA, 0xCD6D},+    {0xC3DB, 0xCD6F},+    {0xC3DC, 0xCD71},+    {0xC3DD, 0xCD78},+    {0xC3DE, 0xCD88},+    {0xC3DF, 0xCD94},+    {0xC3E0, 0xCD95},+    {0xC3E1, 0xCD98},+    {0xC3E2, 0xCD9C},+    {0xC3E3, 0xCDA4},+    {0xC3E4, 0xCDA5},+    {0xC3E5, 0xCDA7},+    {0xC3E6, 0xCDA9},+    {0xC3E7, 0xCDB0},+    {0xC3E8, 0xCDC4},+    {0xC3E9, 0xCDCC},+    {0xC3EA, 0xCDD0},+    {0xC3EB, 0xCDE8},+    {0xC3EC, 0xCDEC},+    {0xC3ED, 0xCDF0},+    {0xC3EE, 0xCDF8},+    {0xC3EF, 0xCDF9},+    {0xC3F0, 0xCDFB},+    {0xC3F1, 0xCDFD},+    {0xC3F2, 0xCE04},+    {0xC3F3, 0xCE08},+    {0xC3F4, 0xCE0C},+    {0xC3F5, 0xCE14},+    {0xC3F6, 0xCE19},+    {0xC3F7, 0xCE20},+    {0xC3F8, 0xCE21},+    {0xC3F9, 0xCE24},+    {0xC3FA, 0xCE28},+    {0xC3FB, 0xCE30},+    {0xC3FC, 0xCE31},+    {0xC3FD, 0xCE33},+    {0xC3FE, 0xCE35},+    {0xC441, 0xD6AB},+    {0xC442, 0xD6AD},+    {0xC443, 0xD6AE},+    {0xC444, 0xD6AF},+    {0xC445, 0xD6B1},+    {0xC446, 0xD6B2},+    {0xC447, 0xD6B3},+    {0xC448, 0xD6B4},+    {0xC449, 0xD6B5},+    {0xC44A, 0xD6B6},+    {0xC44B, 0xD6B7},+    {0xC44C, 0xD6B8},+    {0xC44D, 0xD6BA},+    {0xC44E, 0xD6BC},+    {0xC44F, 0xD6BD},+    {0xC450, 0xD6BE},+    {0xC451, 0xD6BF},+    {0xC452, 0xD6C0},+    {0xC453, 0xD6C1},+    {0xC454, 0xD6C2},+    {0xC455, 0xD6C3},+    {0xC456, 0xD6C6},+    {0xC457, 0xD6C7},+    {0xC458, 0xD6C9},+    {0xC459, 0xD6CA},+    {0xC45A, 0xD6CB},+    {0xC461, 0xD6CD},+    {0xC462, 0xD6CE},+    {0xC463, 0xD6CF},+    {0xC464, 0xD6D0},+    {0xC465, 0xD6D2},+    {0xC466, 0xD6D3},+    {0xC467, 0xD6D5},+    {0xC468, 0xD6D6},+    {0xC469, 0xD6D8},+    {0xC46A, 0xD6DA},+    {0xC46B, 0xD6DB},+    {0xC46C, 0xD6DC},+    {0xC46D, 0xD6DD},+    {0xC46E, 0xD6DE},+    {0xC46F, 0xD6DF},+    {0xC470, 0xD6E1},+    {0xC471, 0xD6E2},+    {0xC472, 0xD6E3},+    {0xC473, 0xD6E5},+    {0xC474, 0xD6E6},+    {0xC475, 0xD6E7},+    {0xC476, 0xD6E9},+    {0xC477, 0xD6EA},+    {0xC478, 0xD6EB},+    {0xC479, 0xD6EC},+    {0xC47A, 0xD6ED},+    {0xC481, 0xD6EE},+    {0xC482, 0xD6EF},+    {0xC483, 0xD6F1},+    {0xC484, 0xD6F2},+    {0xC485, 0xD6F3},+    {0xC486, 0xD6F4},+    {0xC487, 0xD6F6},+    {0xC488, 0xD6F7},+    {0xC489, 0xD6F8},+    {0xC48A, 0xD6F9},+    {0xC48B, 0xD6FA},+    {0xC48C, 0xD6FB},+    {0xC48D, 0xD6FE},+    {0xC48E, 0xD6FF},+    {0xC48F, 0xD701},+    {0xC490, 0xD702},+    {0xC491, 0xD703},+    {0xC492, 0xD705},+    {0xC493, 0xD706},+    {0xC494, 0xD707},+    {0xC495, 0xD708},+    {0xC496, 0xD709},+    {0xC497, 0xD70A},+    {0xC498, 0xD70B},+    {0xC499, 0xD70C},+    {0xC49A, 0xD70D},+    {0xC49B, 0xD70E},+    {0xC49C, 0xD70F},+    {0xC49D, 0xD710},+    {0xC49E, 0xD712},+    {0xC49F, 0xD713},+    {0xC4A0, 0xD714},+    {0xC4A1, 0xCE58},+    {0xC4A2, 0xCE59},+    {0xC4A3, 0xCE5C},+    {0xC4A4, 0xCE5F},+    {0xC4A5, 0xCE60},+    {0xC4A6, 0xCE61},+    {0xC4A7, 0xCE68},+    {0xC4A8, 0xCE69},+    {0xC4A9, 0xCE6B},+    {0xC4AA, 0xCE6D},+    {0xC4AB, 0xCE74},+    {0xC4AC, 0xCE75},+    {0xC4AD, 0xCE78},+    {0xC4AE, 0xCE7C},+    {0xC4AF, 0xCE84},+    {0xC4B0, 0xCE85},+    {0xC4B1, 0xCE87},+    {0xC4B2, 0xCE89},+    {0xC4B3, 0xCE90},+    {0xC4B4, 0xCE91},+    {0xC4B5, 0xCE94},+    {0xC4B6, 0xCE98},+    {0xC4B7, 0xCEA0},+    {0xC4B8, 0xCEA1},+    {0xC4B9, 0xCEA3},+    {0xC4BA, 0xCEA4},+    {0xC4BB, 0xCEA5},+    {0xC4BC, 0xCEAC},+    {0xC4BD, 0xCEAD},+    {0xC4BE, 0xCEC1},+    {0xC4BF, 0xCEE4},+    {0xC4C0, 0xCEE5},+    {0xC4C1, 0xCEE8},+    {0xC4C2, 0xCEEB},+    {0xC4C3, 0xCEEC},+    {0xC4C4, 0xCEF4},+    {0xC4C5, 0xCEF5},+    {0xC4C6, 0xCEF7},+    {0xC4C7, 0xCEF8},+    {0xC4C8, 0xCEF9},+    {0xC4C9, 0xCF00},+    {0xC4CA, 0xCF01},+    {0xC4CB, 0xCF04},+    {0xC4CC, 0xCF08},+    {0xC4CD, 0xCF10},+    {0xC4CE, 0xCF11},+    {0xC4CF, 0xCF13},+    {0xC4D0, 0xCF15},+    {0xC4D1, 0xCF1C},+    {0xC4D2, 0xCF20},+    {0xC4D3, 0xCF24},+    {0xC4D4, 0xCF2C},+    {0xC4D5, 0xCF2D},+    {0xC4D6, 0xCF2F},+    {0xC4D7, 0xCF30},+    {0xC4D8, 0xCF31},+    {0xC4D9, 0xCF38},+    {0xC4DA, 0xCF54},+    {0xC4DB, 0xCF55},+    {0xC4DC, 0xCF58},+    {0xC4DD, 0xCF5C},+    {0xC4DE, 0xCF64},+    {0xC4DF, 0xCF65},+    {0xC4E0, 0xCF67},+    {0xC4E1, 0xCF69},+    {0xC4E2, 0xCF70},+    {0xC4E3, 0xCF71},+    {0xC4E4, 0xCF74},+    {0xC4E5, 0xCF78},+    {0xC4E6, 0xCF80},+    {0xC4E7, 0xCF85},+    {0xC4E8, 0xCF8C},+    {0xC4E9, 0xCFA1},+    {0xC4EA, 0xCFA8},+    {0xC4EB, 0xCFB0},+    {0xC4EC, 0xCFC4},+    {0xC4ED, 0xCFE0},+    {0xC4EE, 0xCFE1},+    {0xC4EF, 0xCFE4},+    {0xC4F0, 0xCFE8},+    {0xC4F1, 0xCFF0},+    {0xC4F2, 0xCFF1},+    {0xC4F3, 0xCFF3},+    {0xC4F4, 0xCFF5},+    {0xC4F5, 0xCFFC},+    {0xC4F6, 0xD000},+    {0xC4F7, 0xD004},+    {0xC4F8, 0xD011},+    {0xC4F9, 0xD018},+    {0xC4FA, 0xD02D},+    {0xC4FB, 0xD034},+    {0xC4FC, 0xD035},+    {0xC4FD, 0xD038},+    {0xC4FE, 0xD03C},+    {0xC541, 0xD715},+    {0xC542, 0xD716},+    {0xC543, 0xD717},+    {0xC544, 0xD71A},+    {0xC545, 0xD71B},+    {0xC546, 0xD71D},+    {0xC547, 0xD71E},+    {0xC548, 0xD71F},+    {0xC549, 0xD721},+    {0xC54A, 0xD722},+    {0xC54B, 0xD723},+    {0xC54C, 0xD724},+    {0xC54D, 0xD725},+    {0xC54E, 0xD726},+    {0xC54F, 0xD727},+    {0xC550, 0xD72A},+    {0xC551, 0xD72C},+    {0xC552, 0xD72E},+    {0xC553, 0xD72F},+    {0xC554, 0xD730},+    {0xC555, 0xD731},+    {0xC556, 0xD732},+    {0xC557, 0xD733},+    {0xC558, 0xD736},+    {0xC559, 0xD737},+    {0xC55A, 0xD739},+    {0xC561, 0xD73A},+    {0xC562, 0xD73B},+    {0xC563, 0xD73D},+    {0xC564, 0xD73E},+    {0xC565, 0xD73F},+    {0xC566, 0xD740},+    {0xC567, 0xD741},+    {0xC568, 0xD742},+    {0xC569, 0xD743},+    {0xC56A, 0xD745},+    {0xC56B, 0xD746},+    {0xC56C, 0xD748},+    {0xC56D, 0xD74A},+    {0xC56E, 0xD74B},+    {0xC56F, 0xD74C},+    {0xC570, 0xD74D},+    {0xC571, 0xD74E},+    {0xC572, 0xD74F},+    {0xC573, 0xD752},+    {0xC574, 0xD753},+    {0xC575, 0xD755},+    {0xC576, 0xD75A},+    {0xC577, 0xD75B},+    {0xC578, 0xD75C},+    {0xC579, 0xD75D},+    {0xC57A, 0xD75E},+    {0xC581, 0xD75F},+    {0xC582, 0xD762},+    {0xC583, 0xD764},+    {0xC584, 0xD766},+    {0xC585, 0xD767},+    {0xC586, 0xD768},+    {0xC587, 0xD76A},+    {0xC588, 0xD76B},+    {0xC589, 0xD76D},+    {0xC58A, 0xD76E},+    {0xC58B, 0xD76F},+    {0xC58C, 0xD771},+    {0xC58D, 0xD772},+    {0xC58E, 0xD773},+    {0xC58F, 0xD775},+    {0xC590, 0xD776},+    {0xC591, 0xD777},+    {0xC592, 0xD778},+    {0xC593, 0xD779},+    {0xC594, 0xD77A},+    {0xC595, 0xD77B},+    {0xC596, 0xD77E},+    {0xC597, 0xD77F},+    {0xC598, 0xD780},+    {0xC599, 0xD782},+    {0xC59A, 0xD783},+    {0xC59B, 0xD784},+    {0xC59C, 0xD785},+    {0xC59D, 0xD786},+    {0xC59E, 0xD787},+    {0xC59F, 0xD78A},+    {0xC5A0, 0xD78B},+    {0xC5A1, 0xD044},+    {0xC5A2, 0xD045},+    {0xC5A3, 0xD047},+    {0xC5A4, 0xD049},+    {0xC5A5, 0xD050},+    {0xC5A6, 0xD054},+    {0xC5A7, 0xD058},+    {0xC5A8, 0xD060},+    {0xC5A9, 0xD06C},+    {0xC5AA, 0xD06D},+    {0xC5AB, 0xD070},+    {0xC5AC, 0xD074},+    {0xC5AD, 0xD07C},+    {0xC5AE, 0xD07D},+    {0xC5AF, 0xD081},+    {0xC5B0, 0xD0A4},+    {0xC5B1, 0xD0A5},+    {0xC5B2, 0xD0A8},+    {0xC5B3, 0xD0AC},+    {0xC5B4, 0xD0B4},+    {0xC5B5, 0xD0B5},+    {0xC5B6, 0xD0B7},+    {0xC5B7, 0xD0B9},+    {0xC5B8, 0xD0C0},+    {0xC5B9, 0xD0C1},+    {0xC5BA, 0xD0C4},+    {0xC5BB, 0xD0C8},+    {0xC5BC, 0xD0C9},+    {0xC5BD, 0xD0D0},+    {0xC5BE, 0xD0D1},+    {0xC5BF, 0xD0D3},+    {0xC5C0, 0xD0D4},+    {0xC5C1, 0xD0D5},+    {0xC5C2, 0xD0DC},+    {0xC5C3, 0xD0DD},+    {0xC5C4, 0xD0E0},+    {0xC5C5, 0xD0E4},+    {0xC5C6, 0xD0EC},+    {0xC5C7, 0xD0ED},+    {0xC5C8, 0xD0EF},+    {0xC5C9, 0xD0F0},+    {0xC5CA, 0xD0F1},+    {0xC5CB, 0xD0F8},+    {0xC5CC, 0xD10D},+    {0xC5CD, 0xD130},+    {0xC5CE, 0xD131},+    {0xC5CF, 0xD134},+    {0xC5D0, 0xD138},+    {0xC5D1, 0xD13A},+    {0xC5D2, 0xD140},+    {0xC5D3, 0xD141},+    {0xC5D4, 0xD143},+    {0xC5D5, 0xD144},+    {0xC5D6, 0xD145},+    {0xC5D7, 0xD14C},+    {0xC5D8, 0xD14D},+    {0xC5D9, 0xD150},+    {0xC5DA, 0xD154},+    {0xC5DB, 0xD15C},+    {0xC5DC, 0xD15D},+    {0xC5DD, 0xD15F},+    {0xC5DE, 0xD161},+    {0xC5DF, 0xD168},+    {0xC5E0, 0xD16C},+    {0xC5E1, 0xD17C},+    {0xC5E2, 0xD184},+    {0xC5E3, 0xD188},+    {0xC5E4, 0xD1A0},+    {0xC5E5, 0xD1A1},+    {0xC5E6, 0xD1A4},+    {0xC5E7, 0xD1A8},+    {0xC5E8, 0xD1B0},+    {0xC5E9, 0xD1B1},+    {0xC5EA, 0xD1B3},+    {0xC5EB, 0xD1B5},+    {0xC5EC, 0xD1BA},+    {0xC5ED, 0xD1BC},+    {0xC5EE, 0xD1C0},+    {0xC5EF, 0xD1D8},+    {0xC5F0, 0xD1F4},+    {0xC5F1, 0xD1F8},+    {0xC5F2, 0xD207},+    {0xC5F3, 0xD209},+    {0xC5F4, 0xD210},+    {0xC5F5, 0xD22C},+    {0xC5F6, 0xD22D},+    {0xC5F7, 0xD230},+    {0xC5F8, 0xD234},+    {0xC5F9, 0xD23C},+    {0xC5FA, 0xD23D},+    {0xC5FB, 0xD23F},+    {0xC5FC, 0xD241},+    {0xC5FD, 0xD248},+    {0xC5FE, 0xD25C},+    {0xC641, 0xD78D},+    {0xC642, 0xD78E},+    {0xC643, 0xD78F},+    {0xC644, 0xD791},+    {0xC645, 0xD792},+    {0xC646, 0xD793},+    {0xC647, 0xD794},+    {0xC648, 0xD795},+    {0xC649, 0xD796},+    {0xC64A, 0xD797},+    {0xC64B, 0xD79A},+    {0xC64C, 0xD79C},+    {0xC64D, 0xD79E},+    {0xC64E, 0xD79F},+    {0xC64F, 0xD7A0},+    {0xC650, 0xD7A1},+    {0xC651, 0xD7A2},+    {0xC652, 0xD7A3},+    {0xC6A1, 0xD264},+    {0xC6A2, 0xD280},+    {0xC6A3, 0xD281},+    {0xC6A4, 0xD284},+    {0xC6A5, 0xD288},+    {0xC6A6, 0xD290},+    {0xC6A7, 0xD291},+    {0xC6A8, 0xD295},+    {0xC6A9, 0xD29C},+    {0xC6AA, 0xD2A0},+    {0xC6AB, 0xD2A4},+    {0xC6AC, 0xD2AC},+    {0xC6AD, 0xD2B1},+    {0xC6AE, 0xD2B8},+    {0xC6AF, 0xD2B9},+    {0xC6B0, 0xD2BC},+    {0xC6B1, 0xD2BF},+    {0xC6B2, 0xD2C0},+    {0xC6B3, 0xD2C2},+    {0xC6B4, 0xD2C8},+    {0xC6B5, 0xD2C9},+    {0xC6B6, 0xD2CB},+    {0xC6B7, 0xD2D4},+    {0xC6B8, 0xD2D8},+    {0xC6B9, 0xD2DC},+    {0xC6BA, 0xD2E4},+    {0xC6BB, 0xD2E5},+    {0xC6BC, 0xD2F0},+    {0xC6BD, 0xD2F1},+    {0xC6BE, 0xD2F4},+    {0xC6BF, 0xD2F8},+    {0xC6C0, 0xD300},+    {0xC6C1, 0xD301},+    {0xC6C2, 0xD303},+    {0xC6C3, 0xD305},+    {0xC6C4, 0xD30C},+    {0xC6C5, 0xD30D},+    {0xC6C6, 0xD30E},+    {0xC6C7, 0xD310},+    {0xC6C8, 0xD314},+    {0xC6C9, 0xD316},+    {0xC6CA, 0xD31C},+    {0xC6CB, 0xD31D},+    {0xC6CC, 0xD31F},+    {0xC6CD, 0xD320},+    {0xC6CE, 0xD321},+    {0xC6CF, 0xD325},+    {0xC6D0, 0xD328},+    {0xC6D1, 0xD329},+    {0xC6D2, 0xD32C},+    {0xC6D3, 0xD330},+    {0xC6D4, 0xD338},+    {0xC6D5, 0xD339},+    {0xC6D6, 0xD33B},+    {0xC6D7, 0xD33C},+    {0xC6D8, 0xD33D},+    {0xC6D9, 0xD344},+    {0xC6DA, 0xD345},+    {0xC6DB, 0xD37C},+    {0xC6DC, 0xD37D},+    {0xC6DD, 0xD380},+    {0xC6DE, 0xD384},+    {0xC6DF, 0xD38C},+    {0xC6E0, 0xD38D},+    {0xC6E1, 0xD38F},+    {0xC6E2, 0xD390},+    {0xC6E3, 0xD391},+    {0xC6E4, 0xD398},+    {0xC6E5, 0xD399},+    {0xC6E6, 0xD39C},+    {0xC6E7, 0xD3A0},+    {0xC6E8, 0xD3A8},+    {0xC6E9, 0xD3A9},+    {0xC6EA, 0xD3AB},+    {0xC6EB, 0xD3AD},+    {0xC6EC, 0xD3B4},+    {0xC6ED, 0xD3B8},+    {0xC6EE, 0xD3BC},+    {0xC6EF, 0xD3C4},+    {0xC6F0, 0xD3C5},+    {0xC6F1, 0xD3C8},+    {0xC6F2, 0xD3C9},+    {0xC6F3, 0xD3D0},+    {0xC6F4, 0xD3D8},+    {0xC6F5, 0xD3E1},+    {0xC6F6, 0xD3E3},+    {0xC6F7, 0xD3EC},+    {0xC6F8, 0xD3ED},+    {0xC6F9, 0xD3F0},+    {0xC6FA, 0xD3F4},+    {0xC6FB, 0xD3FC},+    {0xC6FC, 0xD3FD},+    {0xC6FD, 0xD3FF},+    {0xC6FE, 0xD401},+    {0xC7A1, 0xD408},+    {0xC7A2, 0xD41D},+    {0xC7A3, 0xD440},+    {0xC7A4, 0xD444},+    {0xC7A5, 0xD45C},+    {0xC7A6, 0xD460},+    {0xC7A7, 0xD464},+    {0xC7A8, 0xD46D},+    {0xC7A9, 0xD46F},+    {0xC7AA, 0xD478},+    {0xC7AB, 0xD479},+    {0xC7AC, 0xD47C},+    {0xC7AD, 0xD47F},+    {0xC7AE, 0xD480},+    {0xC7AF, 0xD482},+    {0xC7B0, 0xD488},+    {0xC7B1, 0xD489},+    {0xC7B2, 0xD48B},+    {0xC7B3, 0xD48D},+    {0xC7B4, 0xD494},+    {0xC7B5, 0xD4A9},+    {0xC7B6, 0xD4CC},+    {0xC7B7, 0xD4D0},+    {0xC7B8, 0xD4D4},+    {0xC7B9, 0xD4DC},+    {0xC7BA, 0xD4DF},+    {0xC7BB, 0xD4E8},+    {0xC7BC, 0xD4EC},+    {0xC7BD, 0xD4F0},+    {0xC7BE, 0xD4F8},+    {0xC7BF, 0xD4FB},+    {0xC7C0, 0xD4FD},+    {0xC7C1, 0xD504},+    {0xC7C2, 0xD508},+    {0xC7C3, 0xD50C},+    {0xC7C4, 0xD514},+    {0xC7C5, 0xD515},+    {0xC7C6, 0xD517},+    {0xC7C7, 0xD53C},+    {0xC7C8, 0xD53D},+    {0xC7C9, 0xD540},+    {0xC7CA, 0xD544},+    {0xC7CB, 0xD54C},+    {0xC7CC, 0xD54D},+    {0xC7CD, 0xD54F},+    {0xC7CE, 0xD551},+    {0xC7CF, 0xD558},+    {0xC7D0, 0xD559},+    {0xC7D1, 0xD55C},+    {0xC7D2, 0xD560},+    {0xC7D3, 0xD565},+    {0xC7D4, 0xD568},+    {0xC7D5, 0xD569},+    {0xC7D6, 0xD56B},+    {0xC7D7, 0xD56D},+    {0xC7D8, 0xD574},+    {0xC7D9, 0xD575},+    {0xC7DA, 0xD578},+    {0xC7DB, 0xD57C},+    {0xC7DC, 0xD584},+    {0xC7DD, 0xD585},+    {0xC7DE, 0xD587},+    {0xC7DF, 0xD588},+    {0xC7E0, 0xD589},+    {0xC7E1, 0xD590},+    {0xC7E2, 0xD5A5},+    {0xC7E3, 0xD5C8},+    {0xC7E4, 0xD5C9},+    {0xC7E5, 0xD5CC},+    {0xC7E6, 0xD5D0},+    {0xC7E7, 0xD5D2},+    {0xC7E8, 0xD5D8},+    {0xC7E9, 0xD5D9},+    {0xC7EA, 0xD5DB},+    {0xC7EB, 0xD5DD},+    {0xC7EC, 0xD5E4},+    {0xC7ED, 0xD5E5},+    {0xC7EE, 0xD5E8},+    {0xC7EF, 0xD5EC},+    {0xC7F0, 0xD5F4},+    {0xC7F1, 0xD5F5},+    {0xC7F2, 0xD5F7},+    {0xC7F3, 0xD5F9},+    {0xC7F4, 0xD600},+    {0xC7F5, 0xD601},+    {0xC7F6, 0xD604},+    {0xC7F7, 0xD608},+    {0xC7F8, 0xD610},+    {0xC7F9, 0xD611},+    {0xC7FA, 0xD613},+    {0xC7FB, 0xD614},+    {0xC7FC, 0xD615},+    {0xC7FD, 0xD61C},+    {0xC7FE, 0xD620},+    {0xC8A1, 0xD624},+    {0xC8A2, 0xD62D},+    {0xC8A3, 0xD638},+    {0xC8A4, 0xD639},+    {0xC8A5, 0xD63C},+    {0xC8A6, 0xD640},+    {0xC8A7, 0xD645},+    {0xC8A8, 0xD648},+    {0xC8A9, 0xD649},+    {0xC8AA, 0xD64B},+    {0xC8AB, 0xD64D},+    {0xC8AC, 0xD651},+    {0xC8AD, 0xD654},+    {0xC8AE, 0xD655},+    {0xC8AF, 0xD658},+    {0xC8B0, 0xD65C},+    {0xC8B1, 0xD667},+    {0xC8B2, 0xD669},+    {0xC8B3, 0xD670},+    {0xC8B4, 0xD671},+    {0xC8B5, 0xD674},+    {0xC8B6, 0xD683},+    {0xC8B7, 0xD685},+    {0xC8B8, 0xD68C},+    {0xC8B9, 0xD68D},+    {0xC8BA, 0xD690},+    {0xC8BB, 0xD694},+    {0xC8BC, 0xD69D},+    {0xC8BD, 0xD69F},+    {0xC8BE, 0xD6A1},+    {0xC8BF, 0xD6A8},+    {0xC8C0, 0xD6AC},+    {0xC8C1, 0xD6B0},+    {0xC8C2, 0xD6B9},+    {0xC8C3, 0xD6BB},+    {0xC8C4, 0xD6C4},+    {0xC8C5, 0xD6C5},+    {0xC8C6, 0xD6C8},+    {0xC8C7, 0xD6CC},+    {0xC8C8, 0xD6D1},+    {0xC8C9, 0xD6D4},+    {0xC8CA, 0xD6D7},+    {0xC8CB, 0xD6D9},+    {0xC8CC, 0xD6E0},+    {0xC8CD, 0xD6E4},+    {0xC8CE, 0xD6E8},+    {0xC8CF, 0xD6F0},+    {0xC8D0, 0xD6F5},+    {0xC8D1, 0xD6FC},+    {0xC8D2, 0xD6FD},+    {0xC8D3, 0xD700},+    {0xC8D4, 0xD704},+    {0xC8D5, 0xD711},+    {0xC8D6, 0xD718},+    {0xC8D7, 0xD719},+    {0xC8D8, 0xD71C},+    {0xC8D9, 0xD720},+    {0xC8DA, 0xD728},+    {0xC8DB, 0xD729},+    {0xC8DC, 0xD72B},+    {0xC8DD, 0xD72D},+    {0xC8DE, 0xD734},+    {0xC8DF, 0xD735},+    {0xC8E0, 0xD738},+    {0xC8E1, 0xD73C},+    {0xC8E2, 0xD744},+    {0xC8E3, 0xD747},+    {0xC8E4, 0xD749},+    {0xC8E5, 0xD750},+    {0xC8E6, 0xD751},+    {0xC8E7, 0xD754},+    {0xC8E8, 0xD756},+    {0xC8E9, 0xD757},+    {0xC8EA, 0xD758},+    {0xC8EB, 0xD759},+    {0xC8EC, 0xD760},+    {0xC8ED, 0xD761},+    {0xC8EE, 0xD763},+    {0xC8EF, 0xD765},+    {0xC8F0, 0xD769},+    {0xC8F1, 0xD76C},+    {0xC8F2, 0xD770},+    {0xC8F3, 0xD774},+    {0xC8F4, 0xD77C},+    {0xC8F5, 0xD77D},+    {0xC8F6, 0xD781},+    {0xC8F7, 0xD788},+    {0xC8F8, 0xD789},+    {0xC8F9, 0xD78C},+    {0xC8FA, 0xD790},+    {0xC8FB, 0xD798},+    {0xC8FC, 0xD799},+    {0xC8FD, 0xD79B},+    {0xC8FE, 0xD79D},+    {0xC9A1, 0xE000},+    {0xC9A2, 0xE001},+    {0xC9A3, 0xE002},+    {0xC9A4, 0xE003},+    {0xC9A5, 0xE004},+    {0xC9A6, 0xE005},+    {0xC9A7, 0xE006},+    {0xC9A8, 0xE007},+    {0xC9A9, 0xE008},+    {0xC9AA, 0xE009},+    {0xC9AB, 0xE00A},+    {0xC9AC, 0xE00B},+    {0xC9AD, 0xE00C},+    {0xC9AE, 0xE00D},+    {0xC9AF, 0xE00E},+    {0xC9B0, 0xE00F},+    {0xC9B1, 0xE010},+    {0xC9B2, 0xE011},+    {0xC9B3, 0xE012},+    {0xC9B4, 0xE013},+    {0xC9B5, 0xE014},+    {0xC9B6, 0xE015},+    {0xC9B7, 0xE016},+    {0xC9B8, 0xE017},+    {0xC9B9, 0xE018},+    {0xC9BA, 0xE019},+    {0xC9BB, 0xE01A},+    {0xC9BC, 0xE01B},+    {0xC9BD, 0xE01C},+    {0xC9BE, 0xE01D},+    {0xC9BF, 0xE01E},+    {0xC9C0, 0xE01F},+    {0xC9C1, 0xE020},+    {0xC9C2, 0xE021},+    {0xC9C3, 0xE022},+    {0xC9C4, 0xE023},+    {0xC9C5, 0xE024},+    {0xC9C6, 0xE025},+    {0xC9C7, 0xE026},+    {0xC9C8, 0xE027},+    {0xC9C9, 0xE028},+    {0xC9CA, 0xE029},+    {0xC9CB, 0xE02A},+    {0xC9CC, 0xE02B},+    {0xC9CD, 0xE02C},+    {0xC9CE, 0xE02D},+    {0xC9CF, 0xE02E},+    {0xC9D0, 0xE02F},+    {0xC9D1, 0xE030},+    {0xC9D2, 0xE031},+    {0xC9D3, 0xE032},+    {0xC9D4, 0xE033},+    {0xC9D5, 0xE034},+    {0xC9D6, 0xE035},+    {0xC9D7, 0xE036},+    {0xC9D8, 0xE037},+    {0xC9D9, 0xE038},+    {0xC9DA, 0xE039},+    {0xC9DB, 0xE03A},+    {0xC9DC, 0xE03B},+    {0xC9DD, 0xE03C},+    {0xC9DE, 0xE03D},+    {0xC9DF, 0xE03E},+    {0xC9E0, 0xE03F},+    {0xC9E1, 0xE040},+    {0xC9E2, 0xE041},+    {0xC9E3, 0xE042},+    {0xC9E4, 0xE043},+    {0xC9E5, 0xE044},+    {0xC9E6, 0xE045},+    {0xC9E7, 0xE046},+    {0xC9E8, 0xE047},+    {0xC9E9, 0xE048},+    {0xC9EA, 0xE049},+    {0xC9EB, 0xE04A},+    {0xC9EC, 0xE04B},+    {0xC9ED, 0xE04C},+    {0xC9EE, 0xE04D},+    {0xC9EF, 0xE04E},+    {0xC9F0, 0xE04F},+    {0xC9F1, 0xE050},+    {0xC9F2, 0xE051},+    {0xC9F3, 0xE052},+    {0xC9F4, 0xE053},+    {0xC9F5, 0xE054},+    {0xC9F6, 0xE055},+    {0xC9F7, 0xE056},+    {0xC9F8, 0xE057},+    {0xC9F9, 0xE058},+    {0xC9FA, 0xE059},+    {0xC9FB, 0xE05A},+    {0xC9FC, 0xE05B},+    {0xC9FD, 0xE05C},+    {0xC9FE, 0xE05D},+    {0xCAA1, 0x4F3D},+    {0xCAA2, 0x4F73},+    {0xCAA3, 0x5047},+    {0xCAA4, 0x50F9},+    {0xCAA5, 0x52A0},+    {0xCAA6, 0x53EF},+    {0xCAA7, 0x5475},+    {0xCAA8, 0x54E5},+    {0xCAA9, 0x5609},+    {0xCAAA, 0x5AC1},+    {0xCAAB, 0x5BB6},+    {0xCAAC, 0x6687},+    {0xCAAD, 0x67B6},+    {0xCAAE, 0x67B7},+    {0xCAAF, 0x67EF},+    {0xCAB0, 0x6B4C},+    {0xCAB1, 0x73C2},+    {0xCAB2, 0x75C2},+    {0xCAB3, 0x7A3C},+    {0xCAB4, 0x82DB},+    {0xCAB5, 0x8304},+    {0xCAB6, 0x8857},+    {0xCAB7, 0x8888},+    {0xCAB8, 0x8A36},+    {0xCAB9, 0x8CC8},+    {0xCABA, 0x8DCF},+    {0xCABB, 0x8EFB},+    {0xCABC, 0x8FE6},+    {0xCABD, 0x99D5},+    {0xCABE, 0x523B},+    {0xCABF, 0x5374},+    {0xCAC0, 0x5404},+    {0xCAC1, 0x606A},+    {0xCAC2, 0x6164},+    {0xCAC3, 0x6BBC},+    {0xCAC4, 0x73CF},+    {0xCAC5, 0x811A},+    {0xCAC6, 0x89BA},+    {0xCAC7, 0x89D2},+    {0xCAC8, 0x95A3},+    {0xCAC9, 0x4F83},+    {0xCACA, 0x520A},+    {0xCACB, 0x58BE},+    {0xCACC, 0x5978},+    {0xCACD, 0x59E6},+    {0xCACE, 0x5E72},+    {0xCACF, 0x5E79},+    {0xCAD0, 0x61C7},+    {0xCAD1, 0x63C0},+    {0xCAD2, 0x6746},+    {0xCAD3, 0x67EC},+    {0xCAD4, 0x687F},+    {0xCAD5, 0x6F97},+    {0xCAD6, 0x764E},+    {0xCAD7, 0x770B},+    {0xCAD8, 0x78F5},+    {0xCAD9, 0x7A08},+    {0xCADA, 0x7AFF},+    {0xCADB, 0x7C21},+    {0xCADC, 0x809D},+    {0xCADD, 0x826E},+    {0xCADE, 0x8271},+    {0xCADF, 0x8AEB},+    {0xCAE0, 0x9593},+    {0xCAE1, 0x4E6B},+    {0xCAE2, 0x559D},+    {0xCAE3, 0x66F7},+    {0xCAE4, 0x6E34},+    {0xCAE5, 0x78A3},+    {0xCAE6, 0x7AED},+    {0xCAE7, 0x845B},+    {0xCAE8, 0x8910},+    {0xCAE9, 0x874E},+    {0xCAEA, 0x97A8},+    {0xCAEB, 0x52D8},+    {0xCAEC, 0x574E},+    {0xCAED, 0x582A},+    {0xCAEE, 0x5D4C},+    {0xCAEF, 0x611F},+    {0xCAF0, 0x61BE},+    {0xCAF1, 0x6221},+    {0xCAF2, 0x6562},+    {0xCAF3, 0x67D1},+    {0xCAF4, 0x6A44},+    {0xCAF5, 0x6E1B},+    {0xCAF6, 0x7518},+    {0xCAF7, 0x75B3},+    {0xCAF8, 0x76E3},+    {0xCAF9, 0x77B0},+    {0xCAFA, 0x7D3A},+    {0xCAFB, 0x90AF},+    {0xCAFC, 0x9451},+    {0xCAFD, 0x9452},+    {0xCAFE, 0x9F95},+    {0xCBA1, 0x5323},+    {0xCBA2, 0x5CAC},+    {0xCBA3, 0x7532},+    {0xCBA4, 0x80DB},+    {0xCBA5, 0x9240},+    {0xCBA6, 0x9598},+    {0xCBA7, 0x525B},+    {0xCBA8, 0x5808},+    {0xCBA9, 0x59DC},+    {0xCBAA, 0x5CA1},+    {0xCBAB, 0x5D17},+    {0xCBAC, 0x5EB7},+    {0xCBAD, 0x5F3A},+    {0xCBAE, 0x5F4A},+    {0xCBAF, 0x6177},+    {0xCBB0, 0x6C5F},+    {0xCBB1, 0x757A},+    {0xCBB2, 0x7586},+    {0xCBB3, 0x7CE0},+    {0xCBB4, 0x7D73},+    {0xCBB5, 0x7DB1},+    {0xCBB6, 0x7F8C},+    {0xCBB7, 0x8154},+    {0xCBB8, 0x8221},+    {0xCBB9, 0x8591},+    {0xCBBA, 0x8941},+    {0xCBBB, 0x8B1B},+    {0xCBBC, 0x92FC},+    {0xCBBD, 0x964D},+    {0xCBBE, 0x9C47},+    {0xCBBF, 0x4ECB},+    {0xCBC0, 0x4EF7},+    {0xCBC1, 0x500B},+    {0xCBC2, 0x51F1},+    {0xCBC3, 0x584F},+    {0xCBC4, 0x6137},+    {0xCBC5, 0x613E},+    {0xCBC6, 0x6168},+    {0xCBC7, 0x6539},+    {0xCBC8, 0x69EA},+    {0xCBC9, 0x6F11},+    {0xCBCA, 0x75A5},+    {0xCBCB, 0x7686},+    {0xCBCC, 0x76D6},+    {0xCBCD, 0x7B87},+    {0xCBCE, 0x82A5},+    {0xCBCF, 0x84CB},+    {0xCBD0, 0xF900},+    {0xCBD1, 0x93A7},+    {0xCBD2, 0x958B},+    {0xCBD3, 0x5580},+    {0xCBD4, 0x5BA2},+    {0xCBD5, 0x5751},+    {0xCBD6, 0xF901},+    {0xCBD7, 0x7CB3},+    {0xCBD8, 0x7FB9},+    {0xCBD9, 0x91B5},+    {0xCBDA, 0x5028},+    {0xCBDB, 0x53BB},+    {0xCBDC, 0x5C45},+    {0xCBDD, 0x5DE8},+    {0xCBDE, 0x62D2},+    {0xCBDF, 0x636E},+    {0xCBE0, 0x64DA},+    {0xCBE1, 0x64E7},+    {0xCBE2, 0x6E20},+    {0xCBE3, 0x70AC},+    {0xCBE4, 0x795B},+    {0xCBE5, 0x8DDD},+    {0xCBE6, 0x8E1E},+    {0xCBE7, 0xF902},+    {0xCBE8, 0x907D},+    {0xCBE9, 0x9245},+    {0xCBEA, 0x92F8},+    {0xCBEB, 0x4E7E},+    {0xCBEC, 0x4EF6},+    {0xCBED, 0x5065},+    {0xCBEE, 0x5DFE},+    {0xCBEF, 0x5EFA},+    {0xCBF0, 0x6106},+    {0xCBF1, 0x6957},+    {0xCBF2, 0x8171},+    {0xCBF3, 0x8654},+    {0xCBF4, 0x8E47},+    {0xCBF5, 0x9375},+    {0xCBF6, 0x9A2B},+    {0xCBF7, 0x4E5E},+    {0xCBF8, 0x5091},+    {0xCBF9, 0x6770},+    {0xCBFA, 0x6840},+    {0xCBFB, 0x5109},+    {0xCBFC, 0x528D},+    {0xCBFD, 0x5292},+    {0xCBFE, 0x6AA2},+    {0xCCA1, 0x77BC},+    {0xCCA2, 0x9210},+    {0xCCA3, 0x9ED4},+    {0xCCA4, 0x52AB},+    {0xCCA5, 0x602F},+    {0xCCA6, 0x8FF2},+    {0xCCA7, 0x5048},+    {0xCCA8, 0x61A9},+    {0xCCA9, 0x63ED},+    {0xCCAA, 0x64CA},+    {0xCCAB, 0x683C},+    {0xCCAC, 0x6A84},+    {0xCCAD, 0x6FC0},+    {0xCCAE, 0x8188},+    {0xCCAF, 0x89A1},+    {0xCCB0, 0x9694},+    {0xCCB1, 0x5805},+    {0xCCB2, 0x727D},+    {0xCCB3, 0x72AC},+    {0xCCB4, 0x7504},+    {0xCCB5, 0x7D79},+    {0xCCB6, 0x7E6D},+    {0xCCB7, 0x80A9},+    {0xCCB8, 0x898B},+    {0xCCB9, 0x8B74},+    {0xCCBA, 0x9063},+    {0xCCBB, 0x9D51},+    {0xCCBC, 0x6289},+    {0xCCBD, 0x6C7A},+    {0xCCBE, 0x6F54},+    {0xCCBF, 0x7D50},+    {0xCCC0, 0x7F3A},+    {0xCCC1, 0x8A23},+    {0xCCC2, 0x517C},+    {0xCCC3, 0x614A},+    {0xCCC4, 0x7B9D},+    {0xCCC5, 0x8B19},+    {0xCCC6, 0x9257},+    {0xCCC7, 0x938C},+    {0xCCC8, 0x4EAC},+    {0xCCC9, 0x4FD3},+    {0xCCCA, 0x501E},+    {0xCCCB, 0x50BE},+    {0xCCCC, 0x5106},+    {0xCCCD, 0x52C1},+    {0xCCCE, 0x52CD},+    {0xCCCF, 0x537F},+    {0xCCD0, 0x5770},+    {0xCCD1, 0x5883},+    {0xCCD2, 0x5E9A},+    {0xCCD3, 0x5F91},+    {0xCCD4, 0x6176},+    {0xCCD5, 0x61AC},+    {0xCCD6, 0x64CE},+    {0xCCD7, 0x656C},+    {0xCCD8, 0x666F},+    {0xCCD9, 0x66BB},+    {0xCCDA, 0x66F4},+    {0xCCDB, 0x6897},+    {0xCCDC, 0x6D87},+    {0xCCDD, 0x7085},+    {0xCCDE, 0x70F1},+    {0xCCDF, 0x749F},+    {0xCCE0, 0x74A5},+    {0xCCE1, 0x74CA},+    {0xCCE2, 0x75D9},+    {0xCCE3, 0x786C},+    {0xCCE4, 0x78EC},+    {0xCCE5, 0x7ADF},+    {0xCCE6, 0x7AF6},+    {0xCCE7, 0x7D45},+    {0xCCE8, 0x7D93},+    {0xCCE9, 0x8015},+    {0xCCEA, 0x803F},+    {0xCCEB, 0x811B},+    {0xCCEC, 0x8396},+    {0xCCED, 0x8B66},+    {0xCCEE, 0x8F15},+    {0xCCEF, 0x9015},+    {0xCCF0, 0x93E1},+    {0xCCF1, 0x9803},+    {0xCCF2, 0x9838},+    {0xCCF3, 0x9A5A},+    {0xCCF4, 0x9BE8},+    {0xCCF5, 0x4FC2},+    {0xCCF6, 0x5553},+    {0xCCF7, 0x583A},+    {0xCCF8, 0x5951},+    {0xCCF9, 0x5B63},+    {0xCCFA, 0x5C46},+    {0xCCFB, 0x60B8},+    {0xCCFC, 0x6212},+    {0xCCFD, 0x6842},+    {0xCCFE, 0x68B0},+    {0xCDA1, 0x68E8},+    {0xCDA2, 0x6EAA},+    {0xCDA3, 0x754C},+    {0xCDA4, 0x7678},+    {0xCDA5, 0x78CE},+    {0xCDA6, 0x7A3D},+    {0xCDA7, 0x7CFB},+    {0xCDA8, 0x7E6B},+    {0xCDA9, 0x7E7C},+    {0xCDAA, 0x8A08},+    {0xCDAB, 0x8AA1},+    {0xCDAC, 0x8C3F},+    {0xCDAD, 0x968E},+    {0xCDAE, 0x9DC4},+    {0xCDAF, 0x53E4},+    {0xCDB0, 0x53E9},+    {0xCDB1, 0x544A},+    {0xCDB2, 0x5471},+    {0xCDB3, 0x56FA},+    {0xCDB4, 0x59D1},+    {0xCDB5, 0x5B64},+    {0xCDB6, 0x5C3B},+    {0xCDB7, 0x5EAB},+    {0xCDB8, 0x62F7},+    {0xCDB9, 0x6537},+    {0xCDBA, 0x6545},+    {0xCDBB, 0x6572},+    {0xCDBC, 0x66A0},+    {0xCDBD, 0x67AF},+    {0xCDBE, 0x69C1},+    {0xCDBF, 0x6CBD},+    {0xCDC0, 0x75FC},+    {0xCDC1, 0x7690},+    {0xCDC2, 0x777E},+    {0xCDC3, 0x7A3F},+    {0xCDC4, 0x7F94},+    {0xCDC5, 0x8003},+    {0xCDC6, 0x80A1},+    {0xCDC7, 0x818F},+    {0xCDC8, 0x82E6},+    {0xCDC9, 0x82FD},+    {0xCDCA, 0x83F0},+    {0xCDCB, 0x85C1},+    {0xCDCC, 0x8831},+    {0xCDCD, 0x88B4},+    {0xCDCE, 0x8AA5},+    {0xCDCF, 0xF903},+    {0xCDD0, 0x8F9C},+    {0xCDD1, 0x932E},+    {0xCDD2, 0x96C7},+    {0xCDD3, 0x9867},+    {0xCDD4, 0x9AD8},+    {0xCDD5, 0x9F13},+    {0xCDD6, 0x54ED},+    {0xCDD7, 0x659B},+    {0xCDD8, 0x66F2},+    {0xCDD9, 0x688F},+    {0xCDDA, 0x7A40},+    {0xCDDB, 0x8C37},+    {0xCDDC, 0x9D60},+    {0xCDDD, 0x56F0},+    {0xCDDE, 0x5764},+    {0xCDDF, 0x5D11},+    {0xCDE0, 0x6606},+    {0xCDE1, 0x68B1},+    {0xCDE2, 0x68CD},+    {0xCDE3, 0x6EFE},+    {0xCDE4, 0x7428},+    {0xCDE5, 0x889E},+    {0xCDE6, 0x9BE4},+    {0xCDE7, 0x6C68},+    {0xCDE8, 0xF904},+    {0xCDE9, 0x9AA8},+    {0xCDEA, 0x4F9B},+    {0xCDEB, 0x516C},+    {0xCDEC, 0x5171},+    {0xCDED, 0x529F},+    {0xCDEE, 0x5B54},+    {0xCDEF, 0x5DE5},+    {0xCDF0, 0x6050},+    {0xCDF1, 0x606D},+    {0xCDF2, 0x62F1},+    {0xCDF3, 0x63A7},+    {0xCDF4, 0x653B},+    {0xCDF5, 0x73D9},+    {0xCDF6, 0x7A7A},+    {0xCDF7, 0x86A3},+    {0xCDF8, 0x8CA2},+    {0xCDF9, 0x978F},+    {0xCDFA, 0x4E32},+    {0xCDFB, 0x5BE1},+    {0xCDFC, 0x6208},+    {0xCDFD, 0x679C},+    {0xCDFE, 0x74DC},+    {0xCEA1, 0x79D1},+    {0xCEA2, 0x83D3},+    {0xCEA3, 0x8A87},+    {0xCEA4, 0x8AB2},+    {0xCEA5, 0x8DE8},+    {0xCEA6, 0x904E},+    {0xCEA7, 0x934B},+    {0xCEA8, 0x9846},+    {0xCEA9, 0x5ED3},+    {0xCEAA, 0x69E8},+    {0xCEAB, 0x85FF},+    {0xCEAC, 0x90ED},+    {0xCEAD, 0xF905},+    {0xCEAE, 0x51A0},+    {0xCEAF, 0x5B98},+    {0xCEB0, 0x5BEC},+    {0xCEB1, 0x6163},+    {0xCEB2, 0x68FA},+    {0xCEB3, 0x6B3E},+    {0xCEB4, 0x704C},+    {0xCEB5, 0x742F},+    {0xCEB6, 0x74D8},+    {0xCEB7, 0x7BA1},+    {0xCEB8, 0x7F50},+    {0xCEB9, 0x83C5},+    {0xCEBA, 0x89C0},+    {0xCEBB, 0x8CAB},+    {0xCEBC, 0x95DC},+    {0xCEBD, 0x9928},+    {0xCEBE, 0x522E},+    {0xCEBF, 0x605D},+    {0xCEC0, 0x62EC},+    {0xCEC1, 0x9002},+    {0xCEC2, 0x4F8A},+    {0xCEC3, 0x5149},+    {0xCEC4, 0x5321},+    {0xCEC5, 0x58D9},+    {0xCEC6, 0x5EE3},+    {0xCEC7, 0x66E0},+    {0xCEC8, 0x6D38},+    {0xCEC9, 0x709A},+    {0xCECA, 0x72C2},+    {0xCECB, 0x73D6},+    {0xCECC, 0x7B50},+    {0xCECD, 0x80F1},+    {0xCECE, 0x945B},+    {0xCECF, 0x5366},+    {0xCED0, 0x639B},+    {0xCED1, 0x7F6B},+    {0xCED2, 0x4E56},+    {0xCED3, 0x5080},+    {0xCED4, 0x584A},+    {0xCED5, 0x58DE},+    {0xCED6, 0x602A},+    {0xCED7, 0x6127},+    {0xCED8, 0x62D0},+    {0xCED9, 0x69D0},+    {0xCEDA, 0x9B41},+    {0xCEDB, 0x5B8F},+    {0xCEDC, 0x7D18},+    {0xCEDD, 0x80B1},+    {0xCEDE, 0x8F5F},+    {0xCEDF, 0x4EA4},+    {0xCEE0, 0x50D1},+    {0xCEE1, 0x54AC},+    {0xCEE2, 0x55AC},+    {0xCEE3, 0x5B0C},+    {0xCEE4, 0x5DA0},+    {0xCEE5, 0x5DE7},+    {0xCEE6, 0x652A},+    {0xCEE7, 0x654E},+    {0xCEE8, 0x6821},+    {0xCEE9, 0x6A4B},+    {0xCEEA, 0x72E1},+    {0xCEEB, 0x768E},+    {0xCEEC, 0x77EF},+    {0xCEED, 0x7D5E},+    {0xCEEE, 0x7FF9},+    {0xCEEF, 0x81A0},+    {0xCEF0, 0x854E},+    {0xCEF1, 0x86DF},+    {0xCEF2, 0x8F03},+    {0xCEF3, 0x8F4E},+    {0xCEF4, 0x90CA},+    {0xCEF5, 0x9903},+    {0xCEF6, 0x9A55},+    {0xCEF7, 0x9BAB},+    {0xCEF8, 0x4E18},+    {0xCEF9, 0x4E45},+    {0xCEFA, 0x4E5D},+    {0xCEFB, 0x4EC7},+    {0xCEFC, 0x4FF1},+    {0xCEFD, 0x5177},+    {0xCEFE, 0x52FE},+    {0xCFA1, 0x5340},+    {0xCFA2, 0x53E3},+    {0xCFA3, 0x53E5},+    {0xCFA4, 0x548E},+    {0xCFA5, 0x5614},+    {0xCFA6, 0x5775},+    {0xCFA7, 0x57A2},+    {0xCFA8, 0x5BC7},+    {0xCFA9, 0x5D87},+    {0xCFAA, 0x5ED0},+    {0xCFAB, 0x61FC},+    {0xCFAC, 0x62D8},+    {0xCFAD, 0x6551},+    {0xCFAE, 0x67B8},+    {0xCFAF, 0x67E9},+    {0xCFB0, 0x69CB},+    {0xCFB1, 0x6B50},+    {0xCFB2, 0x6BC6},+    {0xCFB3, 0x6BEC},+    {0xCFB4, 0x6C42},+    {0xCFB5, 0x6E9D},+    {0xCFB6, 0x7078},+    {0xCFB7, 0x72D7},+    {0xCFB8, 0x7396},+    {0xCFB9, 0x7403},+    {0xCFBA, 0x77BF},+    {0xCFBB, 0x77E9},+    {0xCFBC, 0x7A76},+    {0xCFBD, 0x7D7F},+    {0xCFBE, 0x8009},+    {0xCFBF, 0x81FC},+    {0xCFC0, 0x8205},+    {0xCFC1, 0x820A},+    {0xCFC2, 0x82DF},+    {0xCFC3, 0x8862},+    {0xCFC4, 0x8B33},+    {0xCFC5, 0x8CFC},+    {0xCFC6, 0x8EC0},+    {0xCFC7, 0x9011},+    {0xCFC8, 0x90B1},+    {0xCFC9, 0x9264},+    {0xCFCA, 0x92B6},+    {0xCFCB, 0x99D2},+    {0xCFCC, 0x9A45},+    {0xCFCD, 0x9CE9},+    {0xCFCE, 0x9DD7},+    {0xCFCF, 0x9F9C},+    {0xCFD0, 0x570B},+    {0xCFD1, 0x5C40},+    {0xCFD2, 0x83CA},+    {0xCFD3, 0x97A0},+    {0xCFD4, 0x97AB},+    {0xCFD5, 0x9EB4},+    {0xCFD6, 0x541B},+    {0xCFD7, 0x7A98},+    {0xCFD8, 0x7FA4},+    {0xCFD9, 0x88D9},+    {0xCFDA, 0x8ECD},+    {0xCFDB, 0x90E1},+    {0xCFDC, 0x5800},+    {0xCFDD, 0x5C48},+    {0xCFDE, 0x6398},+    {0xCFDF, 0x7A9F},+    {0xCFE0, 0x5BAE},+    {0xCFE1, 0x5F13},+    {0xCFE2, 0x7A79},+    {0xCFE3, 0x7AAE},+    {0xCFE4, 0x828E},+    {0xCFE5, 0x8EAC},+    {0xCFE6, 0x5026},+    {0xCFE7, 0x5238},+    {0xCFE8, 0x52F8},+    {0xCFE9, 0x5377},+    {0xCFEA, 0x5708},+    {0xCFEB, 0x62F3},+    {0xCFEC, 0x6372},+    {0xCFED, 0x6B0A},+    {0xCFEE, 0x6DC3},+    {0xCFEF, 0x7737},+    {0xCFF0, 0x53A5},+    {0xCFF1, 0x7357},+    {0xCFF2, 0x8568},+    {0xCFF3, 0x8E76},+    {0xCFF4, 0x95D5},+    {0xCFF5, 0x673A},+    {0xCFF6, 0x6AC3},+    {0xCFF7, 0x6F70},+    {0xCFF8, 0x8A6D},+    {0xCFF9, 0x8ECC},+    {0xCFFA, 0x994B},+    {0xCFFB, 0xF906},+    {0xCFFC, 0x6677},+    {0xCFFD, 0x6B78},+    {0xCFFE, 0x8CB4},+    {0xD0A1, 0x9B3C},+    {0xD0A2, 0xF907},+    {0xD0A3, 0x53EB},+    {0xD0A4, 0x572D},+    {0xD0A5, 0x594E},+    {0xD0A6, 0x63C6},+    {0xD0A7, 0x69FB},+    {0xD0A8, 0x73EA},+    {0xD0A9, 0x7845},+    {0xD0AA, 0x7ABA},+    {0xD0AB, 0x7AC5},+    {0xD0AC, 0x7CFE},+    {0xD0AD, 0x8475},+    {0xD0AE, 0x898F},+    {0xD0AF, 0x8D73},+    {0xD0B0, 0x9035},+    {0xD0B1, 0x95A8},+    {0xD0B2, 0x52FB},+    {0xD0B3, 0x5747},+    {0xD0B4, 0x7547},+    {0xD0B5, 0x7B60},+    {0xD0B6, 0x83CC},+    {0xD0B7, 0x921E},+    {0xD0B8, 0xF908},+    {0xD0B9, 0x6A58},+    {0xD0BA, 0x514B},+    {0xD0BB, 0x524B},+    {0xD0BC, 0x5287},+    {0xD0BD, 0x621F},+    {0xD0BE, 0x68D8},+    {0xD0BF, 0x6975},+    {0xD0C0, 0x9699},+    {0xD0C1, 0x50C5},+    {0xD0C2, 0x52A4},+    {0xD0C3, 0x52E4},+    {0xD0C4, 0x61C3},+    {0xD0C5, 0x65A4},+    {0xD0C6, 0x6839},+    {0xD0C7, 0x69FF},+    {0xD0C8, 0x747E},+    {0xD0C9, 0x7B4B},+    {0xD0CA, 0x82B9},+    {0xD0CB, 0x83EB},+    {0xD0CC, 0x89B2},+    {0xD0CD, 0x8B39},+    {0xD0CE, 0x8FD1},+    {0xD0CF, 0x9949},+    {0xD0D0, 0xF909},+    {0xD0D1, 0x4ECA},+    {0xD0D2, 0x5997},+    {0xD0D3, 0x64D2},+    {0xD0D4, 0x6611},+    {0xD0D5, 0x6A8E},+    {0xD0D6, 0x7434},+    {0xD0D7, 0x7981},+    {0xD0D8, 0x79BD},+    {0xD0D9, 0x82A9},+    {0xD0DA, 0x887E},+    {0xD0DB, 0x887F},+    {0xD0DC, 0x895F},+    {0xD0DD, 0xF90A},+    {0xD0DE, 0x9326},+    {0xD0DF, 0x4F0B},+    {0xD0E0, 0x53CA},+    {0xD0E1, 0x6025},+    {0xD0E2, 0x6271},+    {0xD0E3, 0x6C72},+    {0xD0E4, 0x7D1A},+    {0xD0E5, 0x7D66},+    {0xD0E6, 0x4E98},+    {0xD0E7, 0x5162},+    {0xD0E8, 0x77DC},+    {0xD0E9, 0x80AF},+    {0xD0EA, 0x4F01},+    {0xD0EB, 0x4F0E},+    {0xD0EC, 0x5176},+    {0xD0ED, 0x5180},+    {0xD0EE, 0x55DC},+    {0xD0EF, 0x5668},+    {0xD0F0, 0x573B},+    {0xD0F1, 0x57FA},+    {0xD0F2, 0x57FC},+    {0xD0F3, 0x5914},+    {0xD0F4, 0x5947},+    {0xD0F5, 0x5993},+    {0xD0F6, 0x5BC4},+    {0xD0F7, 0x5C90},+    {0xD0F8, 0x5D0E},+    {0xD0F9, 0x5DF1},+    {0xD0FA, 0x5E7E},+    {0xD0FB, 0x5FCC},+    {0xD0FC, 0x6280},+    {0xD0FD, 0x65D7},+    {0xD0FE, 0x65E3},+    {0xD1A1, 0x671E},+    {0xD1A2, 0x671F},+    {0xD1A3, 0x675E},+    {0xD1A4, 0x68CB},+    {0xD1A5, 0x68C4},+    {0xD1A6, 0x6A5F},+    {0xD1A7, 0x6B3A},+    {0xD1A8, 0x6C23},+    {0xD1A9, 0x6C7D},+    {0xD1AA, 0x6C82},+    {0xD1AB, 0x6DC7},+    {0xD1AC, 0x7398},+    {0xD1AD, 0x7426},+    {0xD1AE, 0x742A},+    {0xD1AF, 0x7482},+    {0xD1B0, 0x74A3},+    {0xD1B1, 0x7578},+    {0xD1B2, 0x757F},+    {0xD1B3, 0x7881},+    {0xD1B4, 0x78EF},+    {0xD1B5, 0x7941},+    {0xD1B6, 0x7947},+    {0xD1B7, 0x7948},+    {0xD1B8, 0x797A},+    {0xD1B9, 0x7B95},+    {0xD1BA, 0x7D00},+    {0xD1BB, 0x7DBA},+    {0xD1BC, 0x7F88},+    {0xD1BD, 0x8006},+    {0xD1BE, 0x802D},+    {0xD1BF, 0x808C},+    {0xD1C0, 0x8A18},+    {0xD1C1, 0x8B4F},+    {0xD1C2, 0x8C48},+    {0xD1C3, 0x8D77},+    {0xD1C4, 0x9321},+    {0xD1C5, 0x9324},+    {0xD1C6, 0x98E2},+    {0xD1C7, 0x9951},+    {0xD1C8, 0x9A0E},+    {0xD1C9, 0x9A0F},+    {0xD1CA, 0x9A65},+    {0xD1CB, 0x9E92},+    {0xD1CC, 0x7DCA},+    {0xD1CD, 0x4F76},+    {0xD1CE, 0x5409},+    {0xD1CF, 0x62EE},+    {0xD1D0, 0x6854},+    {0xD1D1, 0x91D1},+    {0xD1D2, 0x55AB},+    {0xD1D3, 0x513A},+    {0xD1D4, 0xF90B},+    {0xD1D5, 0xF90C},+    {0xD1D6, 0x5A1C},+    {0xD1D7, 0x61E6},+    {0xD1D8, 0xF90D},+    {0xD1D9, 0x62CF},+    {0xD1DA, 0x62FF},+    {0xD1DB, 0xF90E},+    {0xD1DC, 0xF90F},+    {0xD1DD, 0xF910},+    {0xD1DE, 0xF911},+    {0xD1DF, 0xF912},+    {0xD1E0, 0xF913},+    {0xD1E1, 0x90A3},+    {0xD1E2, 0xF914},+    {0xD1E3, 0xF915},+    {0xD1E4, 0xF916},+    {0xD1E5, 0xF917},+    {0xD1E6, 0xF918},+    {0xD1E7, 0x8AFE},+    {0xD1E8, 0xF919},+    {0xD1E9, 0xF91A},+    {0xD1EA, 0xF91B},+    {0xD1EB, 0xF91C},+    {0xD1EC, 0x6696},+    {0xD1ED, 0xF91D},+    {0xD1EE, 0x7156},+    {0xD1EF, 0xF91E},+    {0xD1F0, 0xF91F},+    {0xD1F1, 0x96E3},+    {0xD1F2, 0xF920},+    {0xD1F3, 0x634F},+    {0xD1F4, 0x637A},+    {0xD1F5, 0x5357},+    {0xD1F6, 0xF921},+    {0xD1F7, 0x678F},+    {0xD1F8, 0x6960},+    {0xD1F9, 0x6E73},+    {0xD1FA, 0xF922},+    {0xD1FB, 0x7537},+    {0xD1FC, 0xF923},+    {0xD1FD, 0xF924},+    {0xD1FE, 0xF925},+    {0xD2A1, 0x7D0D},+    {0xD2A2, 0xF926},+    {0xD2A3, 0xF927},+    {0xD2A4, 0x8872},+    {0xD2A5, 0x56CA},+    {0xD2A6, 0x5A18},+    {0xD2A7, 0xF928},+    {0xD2A8, 0xF929},+    {0xD2A9, 0xF92A},+    {0xD2AA, 0xF92B},+    {0xD2AB, 0xF92C},+    {0xD2AC, 0x4E43},+    {0xD2AD, 0xF92D},+    {0xD2AE, 0x5167},+    {0xD2AF, 0x5948},+    {0xD2B0, 0x67F0},+    {0xD2B1, 0x8010},+    {0xD2B2, 0xF92E},+    {0xD2B3, 0x5973},+    {0xD2B4, 0x5E74},+    {0xD2B5, 0x649A},+    {0xD2B6, 0x79CA},+    {0xD2B7, 0x5FF5},+    {0xD2B8, 0x606C},+    {0xD2B9, 0x62C8},+    {0xD2BA, 0x637B},+    {0xD2BB, 0x5BE7},+    {0xD2BC, 0x5BD7},+    {0xD2BD, 0x52AA},+    {0xD2BE, 0xF92F},+    {0xD2BF, 0x5974},+    {0xD2C0, 0x5F29},+    {0xD2C1, 0x6012},+    {0xD2C2, 0xF930},+    {0xD2C3, 0xF931},+    {0xD2C4, 0xF932},+    {0xD2C5, 0x7459},+    {0xD2C6, 0xF933},+    {0xD2C7, 0xF934},+    {0xD2C8, 0xF935},+    {0xD2C9, 0xF936},+    {0xD2CA, 0xF937},+    {0xD2CB, 0xF938},+    {0xD2CC, 0x99D1},+    {0xD2CD, 0xF939},+    {0xD2CE, 0xF93A},+    {0xD2CF, 0xF93B},+    {0xD2D0, 0xF93C},+    {0xD2D1, 0xF93D},+    {0xD2D2, 0xF93E},+    {0xD2D3, 0xF93F},+    {0xD2D4, 0xF940},+    {0xD2D5, 0xF941},+    {0xD2D6, 0xF942},+    {0xD2D7, 0xF943},+    {0xD2D8, 0x6FC3},+    {0xD2D9, 0xF944},+    {0xD2DA, 0xF945},+    {0xD2DB, 0x81BF},+    {0xD2DC, 0x8FB2},+    {0xD2DD, 0x60F1},+    {0xD2DE, 0xF946},+    {0xD2DF, 0xF947},+    {0xD2E0, 0x8166},+    {0xD2E1, 0xF948},+    {0xD2E2, 0xF949},+    {0xD2E3, 0x5C3F},+    {0xD2E4, 0xF94A},+    {0xD2E5, 0xF94B},+    {0xD2E6, 0xF94C},+    {0xD2E7, 0xF94D},+    {0xD2E8, 0xF94E},+    {0xD2E9, 0xF94F},+    {0xD2EA, 0xF950},+    {0xD2EB, 0xF951},+    {0xD2EC, 0x5AE9},+    {0xD2ED, 0x8A25},+    {0xD2EE, 0x677B},+    {0xD2EF, 0x7D10},+    {0xD2F0, 0xF952},+    {0xD2F1, 0xF953},+    {0xD2F2, 0xF954},+    {0xD2F3, 0xF955},+    {0xD2F4, 0xF956},+    {0xD2F5, 0xF957},+    {0xD2F6, 0x80FD},+    {0xD2F7, 0xF958},+    {0xD2F8, 0xF959},+    {0xD2F9, 0x5C3C},+    {0xD2FA, 0x6CE5},+    {0xD2FB, 0x533F},+    {0xD2FC, 0x6EBA},+    {0xD2FD, 0x591A},+    {0xD2FE, 0x8336},+    {0xD3A1, 0x4E39},+    {0xD3A2, 0x4EB6},+    {0xD3A3, 0x4F46},+    {0xD3A4, 0x55AE},+    {0xD3A5, 0x5718},+    {0xD3A6, 0x58C7},+    {0xD3A7, 0x5F56},+    {0xD3A8, 0x65B7},+    {0xD3A9, 0x65E6},+    {0xD3AA, 0x6A80},+    {0xD3AB, 0x6BB5},+    {0xD3AC, 0x6E4D},+    {0xD3AD, 0x77ED},+    {0xD3AE, 0x7AEF},+    {0xD3AF, 0x7C1E},+    {0xD3B0, 0x7DDE},+    {0xD3B1, 0x86CB},+    {0xD3B2, 0x8892},+    {0xD3B3, 0x9132},+    {0xD3B4, 0x935B},+    {0xD3B5, 0x64BB},+    {0xD3B6, 0x6FBE},+    {0xD3B7, 0x737A},+    {0xD3B8, 0x75B8},+    {0xD3B9, 0x9054},+    {0xD3BA, 0x5556},+    {0xD3BB, 0x574D},+    {0xD3BC, 0x61BA},+    {0xD3BD, 0x64D4},+    {0xD3BE, 0x66C7},+    {0xD3BF, 0x6DE1},+    {0xD3C0, 0x6E5B},+    {0xD3C1, 0x6F6D},+    {0xD3C2, 0x6FB9},+    {0xD3C3, 0x75F0},+    {0xD3C4, 0x8043},+    {0xD3C5, 0x81BD},+    {0xD3C6, 0x8541},+    {0xD3C7, 0x8983},+    {0xD3C8, 0x8AC7},+    {0xD3C9, 0x8B5A},+    {0xD3CA, 0x931F},+    {0xD3CB, 0x6C93},+    {0xD3CC, 0x7553},+    {0xD3CD, 0x7B54},+    {0xD3CE, 0x8E0F},+    {0xD3CF, 0x905D},+    {0xD3D0, 0x5510},+    {0xD3D1, 0x5802},+    {0xD3D2, 0x5858},+    {0xD3D3, 0x5E62},+    {0xD3D4, 0x6207},+    {0xD3D5, 0x649E},+    {0xD3D6, 0x68E0},+    {0xD3D7, 0x7576},+    {0xD3D8, 0x7CD6},+    {0xD3D9, 0x87B3},+    {0xD3DA, 0x9EE8},+    {0xD3DB, 0x4EE3},+    {0xD3DC, 0x5788},+    {0xD3DD, 0x576E},+    {0xD3DE, 0x5927},+    {0xD3DF, 0x5C0D},+    {0xD3E0, 0x5CB1},+    {0xD3E1, 0x5E36},+    {0xD3E2, 0x5F85},+    {0xD3E3, 0x6234},+    {0xD3E4, 0x64E1},+    {0xD3E5, 0x73B3},+    {0xD3E6, 0x81FA},+    {0xD3E7, 0x888B},+    {0xD3E8, 0x8CB8},+    {0xD3E9, 0x968A},+    {0xD3EA, 0x9EDB},+    {0xD3EB, 0x5B85},+    {0xD3EC, 0x5FB7},+    {0xD3ED, 0x60B3},+    {0xD3EE, 0x5012},+    {0xD3EF, 0x5200},+    {0xD3F0, 0x5230},+    {0xD3F1, 0x5716},+    {0xD3F2, 0x5835},+    {0xD3F3, 0x5857},+    {0xD3F4, 0x5C0E},+    {0xD3F5, 0x5C60},+    {0xD3F6, 0x5CF6},+    {0xD3F7, 0x5D8B},+    {0xD3F8, 0x5EA6},+    {0xD3F9, 0x5F92},+    {0xD3FA, 0x60BC},+    {0xD3FB, 0x6311},+    {0xD3FC, 0x6389},+    {0xD3FD, 0x6417},+    {0xD3FE, 0x6843},+    {0xD4A1, 0x68F9},+    {0xD4A2, 0x6AC2},+    {0xD4A3, 0x6DD8},+    {0xD4A4, 0x6E21},+    {0xD4A5, 0x6ED4},+    {0xD4A6, 0x6FE4},+    {0xD4A7, 0x71FE},+    {0xD4A8, 0x76DC},+    {0xD4A9, 0x7779},+    {0xD4AA, 0x79B1},+    {0xD4AB, 0x7A3B},+    {0xD4AC, 0x8404},+    {0xD4AD, 0x89A9},+    {0xD4AE, 0x8CED},+    {0xD4AF, 0x8DF3},+    {0xD4B0, 0x8E48},+    {0xD4B1, 0x9003},+    {0xD4B2, 0x9014},+    {0xD4B3, 0x9053},+    {0xD4B4, 0x90FD},+    {0xD4B5, 0x934D},+    {0xD4B6, 0x9676},+    {0xD4B7, 0x97DC},+    {0xD4B8, 0x6BD2},+    {0xD4B9, 0x7006},+    {0xD4BA, 0x7258},+    {0xD4BB, 0x72A2},+    {0xD4BC, 0x7368},+    {0xD4BD, 0x7763},+    {0xD4BE, 0x79BF},+    {0xD4BF, 0x7BE4},+    {0xD4C0, 0x7E9B},+    {0xD4C1, 0x8B80},+    {0xD4C2, 0x58A9},+    {0xD4C3, 0x60C7},+    {0xD4C4, 0x6566},+    {0xD4C5, 0x65FD},+    {0xD4C6, 0x66BE},+    {0xD4C7, 0x6C8C},+    {0xD4C8, 0x711E},+    {0xD4C9, 0x71C9},+    {0xD4CA, 0x8C5A},+    {0xD4CB, 0x9813},+    {0xD4CC, 0x4E6D},+    {0xD4CD, 0x7A81},+    {0xD4CE, 0x4EDD},+    {0xD4CF, 0x51AC},+    {0xD4D0, 0x51CD},+    {0xD4D1, 0x52D5},+    {0xD4D2, 0x540C},+    {0xD4D3, 0x61A7},+    {0xD4D4, 0x6771},+    {0xD4D5, 0x6850},+    {0xD4D6, 0x68DF},+    {0xD4D7, 0x6D1E},+    {0xD4D8, 0x6F7C},+    {0xD4D9, 0x75BC},+    {0xD4DA, 0x77B3},+    {0xD4DB, 0x7AE5},+    {0xD4DC, 0x80F4},+    {0xD4DD, 0x8463},+    {0xD4DE, 0x9285},+    {0xD4DF, 0x515C},+    {0xD4E0, 0x6597},+    {0xD4E1, 0x675C},+    {0xD4E2, 0x6793},+    {0xD4E3, 0x75D8},+    {0xD4E4, 0x7AC7},+    {0xD4E5, 0x8373},+    {0xD4E6, 0xF95A},+    {0xD4E7, 0x8C46},+    {0xD4E8, 0x9017},+    {0xD4E9, 0x982D},+    {0xD4EA, 0x5C6F},+    {0xD4EB, 0x81C0},+    {0xD4EC, 0x829A},+    {0xD4ED, 0x9041},+    {0xD4EE, 0x906F},+    {0xD4EF, 0x920D},+    {0xD4F0, 0x5F97},+    {0xD4F1, 0x5D9D},+    {0xD4F2, 0x6A59},+    {0xD4F3, 0x71C8},+    {0xD4F4, 0x767B},+    {0xD4F5, 0x7B49},+    {0xD4F6, 0x85E4},+    {0xD4F7, 0x8B04},+    {0xD4F8, 0x9127},+    {0xD4F9, 0x9A30},+    {0xD4FA, 0x5587},+    {0xD4FB, 0x61F6},+    {0xD4FC, 0xF95B},+    {0xD4FD, 0x7669},+    {0xD4FE, 0x7F85},+    {0xD5A1, 0x863F},+    {0xD5A2, 0x87BA},+    {0xD5A3, 0x88F8},+    {0xD5A4, 0x908F},+    {0xD5A5, 0xF95C},+    {0xD5A6, 0x6D1B},+    {0xD5A7, 0x70D9},+    {0xD5A8, 0x73DE},+    {0xD5A9, 0x7D61},+    {0xD5AA, 0x843D},+    {0xD5AB, 0xF95D},+    {0xD5AC, 0x916A},+    {0xD5AD, 0x99F1},+    {0xD5AE, 0xF95E},+    {0xD5AF, 0x4E82},+    {0xD5B0, 0x5375},+    {0xD5B1, 0x6B04},+    {0xD5B2, 0x6B12},+    {0xD5B3, 0x703E},+    {0xD5B4, 0x721B},+    {0xD5B5, 0x862D},+    {0xD5B6, 0x9E1E},+    {0xD5B7, 0x524C},+    {0xD5B8, 0x8FA3},+    {0xD5B9, 0x5D50},+    {0xD5BA, 0x64E5},+    {0xD5BB, 0x652C},+    {0xD5BC, 0x6B16},+    {0xD5BD, 0x6FEB},+    {0xD5BE, 0x7C43},+    {0xD5BF, 0x7E9C},+    {0xD5C0, 0x85CD},+    {0xD5C1, 0x8964},+    {0xD5C2, 0x89BD},+    {0xD5C3, 0x62C9},+    {0xD5C4, 0x81D8},+    {0xD5C5, 0x881F},+    {0xD5C6, 0x5ECA},+    {0xD5C7, 0x6717},+    {0xD5C8, 0x6D6A},+    {0xD5C9, 0x72FC},+    {0xD5CA, 0x7405},+    {0xD5CB, 0x746F},+    {0xD5CC, 0x8782},+    {0xD5CD, 0x90DE},+    {0xD5CE, 0x4F86},+    {0xD5CF, 0x5D0D},+    {0xD5D0, 0x5FA0},+    {0xD5D1, 0x840A},+    {0xD5D2, 0x51B7},+    {0xD5D3, 0x63A0},+    {0xD5D4, 0x7565},+    {0xD5D5, 0x4EAE},+    {0xD5D6, 0x5006},+    {0xD5D7, 0x5169},+    {0xD5D8, 0x51C9},+    {0xD5D9, 0x6881},+    {0xD5DA, 0x6A11},+    {0xD5DB, 0x7CAE},+    {0xD5DC, 0x7CB1},+    {0xD5DD, 0x7CE7},+    {0xD5DE, 0x826F},+    {0xD5DF, 0x8AD2},+    {0xD5E0, 0x8F1B},+    {0xD5E1, 0x91CF},+    {0xD5E2, 0x4FB6},+    {0xD5E3, 0x5137},+    {0xD5E4, 0x52F5},+    {0xD5E5, 0x5442},+    {0xD5E6, 0x5EEC},+    {0xD5E7, 0x616E},+    {0xD5E8, 0x623E},+    {0xD5E9, 0x65C5},+    {0xD5EA, 0x6ADA},+    {0xD5EB, 0x6FFE},+    {0xD5EC, 0x792A},+    {0xD5ED, 0x85DC},+    {0xD5EE, 0x8823},+    {0xD5EF, 0x95AD},+    {0xD5F0, 0x9A62},+    {0xD5F1, 0x9A6A},+    {0xD5F2, 0x9E97},+    {0xD5F3, 0x9ECE},+    {0xD5F4, 0x529B},+    {0xD5F5, 0x66C6},+    {0xD5F6, 0x6B77},+    {0xD5F7, 0x701D},+    {0xD5F8, 0x792B},+    {0xD5F9, 0x8F62},+    {0xD5FA, 0x9742},+    {0xD5FB, 0x6190},+    {0xD5FC, 0x6200},+    {0xD5FD, 0x6523},+    {0xD5FE, 0x6F23},+    {0xD6A1, 0x7149},+    {0xD6A2, 0x7489},+    {0xD6A3, 0x7DF4},+    {0xD6A4, 0x806F},+    {0xD6A5, 0x84EE},+    {0xD6A6, 0x8F26},+    {0xD6A7, 0x9023},+    {0xD6A8, 0x934A},+    {0xD6A9, 0x51BD},+    {0xD6AA, 0x5217},+    {0xD6AB, 0x52A3},+    {0xD6AC, 0x6D0C},+    {0xD6AD, 0x70C8},+    {0xD6AE, 0x88C2},+    {0xD6AF, 0x5EC9},+    {0xD6B0, 0x6582},+    {0xD6B1, 0x6BAE},+    {0xD6B2, 0x6FC2},+    {0xD6B3, 0x7C3E},+    {0xD6B4, 0x7375},+    {0xD6B5, 0x4EE4},+    {0xD6B6, 0x4F36},+    {0xD6B7, 0x56F9},+    {0xD6B8, 0xF95F},+    {0xD6B9, 0x5CBA},+    {0xD6BA, 0x5DBA},+    {0xD6BB, 0x601C},+    {0xD6BC, 0x73B2},+    {0xD6BD, 0x7B2D},+    {0xD6BE, 0x7F9A},+    {0xD6BF, 0x7FCE},+    {0xD6C0, 0x8046},+    {0xD6C1, 0x901E},+    {0xD6C2, 0x9234},+    {0xD6C3, 0x96F6},+    {0xD6C4, 0x9748},+    {0xD6C5, 0x9818},+    {0xD6C6, 0x9F61},+    {0xD6C7, 0x4F8B},+    {0xD6C8, 0x6FA7},+    {0xD6C9, 0x79AE},+    {0xD6CA, 0x91B4},+    {0xD6CB, 0x96B7},+    {0xD6CC, 0x52DE},+    {0xD6CD, 0xF960},+    {0xD6CE, 0x6488},+    {0xD6CF, 0x64C4},+    {0xD6D0, 0x6AD3},+    {0xD6D1, 0x6F5E},+    {0xD6D2, 0x7018},+    {0xD6D3, 0x7210},+    {0xD6D4, 0x76E7},+    {0xD6D5, 0x8001},+    {0xD6D6, 0x8606},+    {0xD6D7, 0x865C},+    {0xD6D8, 0x8DEF},+    {0xD6D9, 0x8F05},+    {0xD6DA, 0x9732},+    {0xD6DB, 0x9B6F},+    {0xD6DC, 0x9DFA},+    {0xD6DD, 0x9E75},+    {0xD6DE, 0x788C},+    {0xD6DF, 0x797F},+    {0xD6E0, 0x7DA0},+    {0xD6E1, 0x83C9},+    {0xD6E2, 0x9304},+    {0xD6E3, 0x9E7F},+    {0xD6E4, 0x9E93},+    {0xD6E5, 0x8AD6},+    {0xD6E6, 0x58DF},+    {0xD6E7, 0x5F04},+    {0xD6E8, 0x6727},+    {0xD6E9, 0x7027},+    {0xD6EA, 0x74CF},+    {0xD6EB, 0x7C60},+    {0xD6EC, 0x807E},+    {0xD6ED, 0x5121},+    {0xD6EE, 0x7028},+    {0xD6EF, 0x7262},+    {0xD6F0, 0x78CA},+    {0xD6F1, 0x8CC2},+    {0xD6F2, 0x8CDA},+    {0xD6F3, 0x8CF4},+    {0xD6F4, 0x96F7},+    {0xD6F5, 0x4E86},+    {0xD6F6, 0x50DA},+    {0xD6F7, 0x5BEE},+    {0xD6F8, 0x5ED6},+    {0xD6F9, 0x6599},+    {0xD6FA, 0x71CE},+    {0xD6FB, 0x7642},+    {0xD6FC, 0x77AD},+    {0xD6FD, 0x804A},+    {0xD6FE, 0x84FC},+    {0xD7A1, 0x907C},+    {0xD7A2, 0x9B27},+    {0xD7A3, 0x9F8D},+    {0xD7A4, 0x58D8},+    {0xD7A5, 0x5A41},+    {0xD7A6, 0x5C62},+    {0xD7A7, 0x6A13},+    {0xD7A8, 0x6DDA},+    {0xD7A9, 0x6F0F},+    {0xD7AA, 0x763B},+    {0xD7AB, 0x7D2F},+    {0xD7AC, 0x7E37},+    {0xD7AD, 0x851E},+    {0xD7AE, 0x8938},+    {0xD7AF, 0x93E4},+    {0xD7B0, 0x964B},+    {0xD7B1, 0x5289},+    {0xD7B2, 0x65D2},+    {0xD7B3, 0x67F3},+    {0xD7B4, 0x69B4},+    {0xD7B5, 0x6D41},+    {0xD7B6, 0x6E9C},+    {0xD7B7, 0x700F},+    {0xD7B8, 0x7409},+    {0xD7B9, 0x7460},+    {0xD7BA, 0x7559},+    {0xD7BB, 0x7624},+    {0xD7BC, 0x786B},+    {0xD7BD, 0x8B2C},+    {0xD7BE, 0x985E},+    {0xD7BF, 0x516D},+    {0xD7C0, 0x622E},+    {0xD7C1, 0x9678},+    {0xD7C2, 0x4F96},+    {0xD7C3, 0x502B},+    {0xD7C4, 0x5D19},+    {0xD7C5, 0x6DEA},+    {0xD7C6, 0x7DB8},+    {0xD7C7, 0x8F2A},+    {0xD7C8, 0x5F8B},+    {0xD7C9, 0x6144},+    {0xD7CA, 0x6817},+    {0xD7CB, 0xF961},+    {0xD7CC, 0x9686},+    {0xD7CD, 0x52D2},+    {0xD7CE, 0x808B},+    {0xD7CF, 0x51DC},+    {0xD7D0, 0x51CC},+    {0xD7D1, 0x695E},+    {0xD7D2, 0x7A1C},+    {0xD7D3, 0x7DBE},+    {0xD7D4, 0x83F1},+    {0xD7D5, 0x9675},+    {0xD7D6, 0x4FDA},+    {0xD7D7, 0x5229},+    {0xD7D8, 0x5398},+    {0xD7D9, 0x540F},+    {0xD7DA, 0x550E},+    {0xD7DB, 0x5C65},+    {0xD7DC, 0x60A7},+    {0xD7DD, 0x674E},+    {0xD7DE, 0x68A8},+    {0xD7DF, 0x6D6C},+    {0xD7E0, 0x7281},+    {0xD7E1, 0x72F8},+    {0xD7E2, 0x7406},+    {0xD7E3, 0x7483},+    {0xD7E4, 0xF962},+    {0xD7E5, 0x75E2},+    {0xD7E6, 0x7C6C},+    {0xD7E7, 0x7F79},+    {0xD7E8, 0x7FB8},+    {0xD7E9, 0x8389},+    {0xD7EA, 0x88CF},+    {0xD7EB, 0x88E1},+    {0xD7EC, 0x91CC},+    {0xD7ED, 0x91D0},+    {0xD7EE, 0x96E2},+    {0xD7EF, 0x9BC9},+    {0xD7F0, 0x541D},+    {0xD7F1, 0x6F7E},+    {0xD7F2, 0x71D0},+    {0xD7F3, 0x7498},+    {0xD7F4, 0x85FA},+    {0xD7F5, 0x8EAA},+    {0xD7F6, 0x96A3},+    {0xD7F7, 0x9C57},+    {0xD7F8, 0x9E9F},+    {0xD7F9, 0x6797},+    {0xD7FA, 0x6DCB},+    {0xD7FB, 0x7433},+    {0xD7FC, 0x81E8},+    {0xD7FD, 0x9716},+    {0xD7FE, 0x782C},+    {0xD8A1, 0x7ACB},+    {0xD8A2, 0x7B20},+    {0xD8A3, 0x7C92},+    {0xD8A4, 0x6469},+    {0xD8A5, 0x746A},+    {0xD8A6, 0x75F2},+    {0xD8A7, 0x78BC},+    {0xD8A8, 0x78E8},+    {0xD8A9, 0x99AC},+    {0xD8AA, 0x9B54},+    {0xD8AB, 0x9EBB},+    {0xD8AC, 0x5BDE},+    {0xD8AD, 0x5E55},+    {0xD8AE, 0x6F20},+    {0xD8AF, 0x819C},+    {0xD8B0, 0x83AB},+    {0xD8B1, 0x9088},+    {0xD8B2, 0x4E07},+    {0xD8B3, 0x534D},+    {0xD8B4, 0x5A29},+    {0xD8B5, 0x5DD2},+    {0xD8B6, 0x5F4E},+    {0xD8B7, 0x6162},+    {0xD8B8, 0x633D},+    {0xD8B9, 0x6669},+    {0xD8BA, 0x66FC},+    {0xD8BB, 0x6EFF},+    {0xD8BC, 0x6F2B},+    {0xD8BD, 0x7063},+    {0xD8BE, 0x779E},+    {0xD8BF, 0x842C},+    {0xD8C0, 0x8513},+    {0xD8C1, 0x883B},+    {0xD8C2, 0x8F13},+    {0xD8C3, 0x9945},+    {0xD8C4, 0x9C3B},+    {0xD8C5, 0x551C},+    {0xD8C6, 0x62B9},+    {0xD8C7, 0x672B},+    {0xD8C8, 0x6CAB},+    {0xD8C9, 0x8309},+    {0xD8CA, 0x896A},+    {0xD8CB, 0x977A},+    {0xD8CC, 0x4EA1},+    {0xD8CD, 0x5984},+    {0xD8CE, 0x5FD8},+    {0xD8CF, 0x5FD9},+    {0xD8D0, 0x671B},+    {0xD8D1, 0x7DB2},+    {0xD8D2, 0x7F54},+    {0xD8D3, 0x8292},+    {0xD8D4, 0x832B},+    {0xD8D5, 0x83BD},+    {0xD8D6, 0x8F1E},+    {0xD8D7, 0x9099},+    {0xD8D8, 0x57CB},+    {0xD8D9, 0x59B9},+    {0xD8DA, 0x5A92},+    {0xD8DB, 0x5BD0},+    {0xD8DC, 0x6627},+    {0xD8DD, 0x679A},+    {0xD8DE, 0x6885},+    {0xD8DF, 0x6BCF},+    {0xD8E0, 0x7164},+    {0xD8E1, 0x7F75},+    {0xD8E2, 0x8CB7},+    {0xD8E3, 0x8CE3},+    {0xD8E4, 0x9081},+    {0xD8E5, 0x9B45},+    {0xD8E6, 0x8108},+    {0xD8E7, 0x8C8A},+    {0xD8E8, 0x964C},+    {0xD8E9, 0x9A40},+    {0xD8EA, 0x9EA5},+    {0xD8EB, 0x5B5F},+    {0xD8EC, 0x6C13},+    {0xD8ED, 0x731B},+    {0xD8EE, 0x76F2},+    {0xD8EF, 0x76DF},+    {0xD8F0, 0x840C},+    {0xD8F1, 0x51AA},+    {0xD8F2, 0x8993},+    {0xD8F3, 0x514D},+    {0xD8F4, 0x5195},+    {0xD8F5, 0x52C9},+    {0xD8F6, 0x68C9},+    {0xD8F7, 0x6C94},+    {0xD8F8, 0x7704},+    {0xD8F9, 0x7720},+    {0xD8FA, 0x7DBF},+    {0xD8FB, 0x7DEC},+    {0xD8FC, 0x9762},+    {0xD8FD, 0x9EB5},+    {0xD8FE, 0x6EC5},+    {0xD9A1, 0x8511},+    {0xD9A2, 0x51A5},+    {0xD9A3, 0x540D},+    {0xD9A4, 0x547D},+    {0xD9A5, 0x660E},+    {0xD9A6, 0x669D},+    {0xD9A7, 0x6927},+    {0xD9A8, 0x6E9F},+    {0xD9A9, 0x76BF},+    {0xD9AA, 0x7791},+    {0xD9AB, 0x8317},+    {0xD9AC, 0x84C2},+    {0xD9AD, 0x879F},+    {0xD9AE, 0x9169},+    {0xD9AF, 0x9298},+    {0xD9B0, 0x9CF4},+    {0xD9B1, 0x8882},+    {0xD9B2, 0x4FAE},+    {0xD9B3, 0x5192},+    {0xD9B4, 0x52DF},+    {0xD9B5, 0x59C6},+    {0xD9B6, 0x5E3D},+    {0xD9B7, 0x6155},+    {0xD9B8, 0x6478},+    {0xD9B9, 0x6479},+    {0xD9BA, 0x66AE},+    {0xD9BB, 0x67D0},+    {0xD9BC, 0x6A21},+    {0xD9BD, 0x6BCD},+    {0xD9BE, 0x6BDB},+    {0xD9BF, 0x725F},+    {0xD9C0, 0x7261},+    {0xD9C1, 0x7441},+    {0xD9C2, 0x7738},+    {0xD9C3, 0x77DB},+    {0xD9C4, 0x8017},+    {0xD9C5, 0x82BC},+    {0xD9C6, 0x8305},+    {0xD9C7, 0x8B00},+    {0xD9C8, 0x8B28},+    {0xD9C9, 0x8C8C},+    {0xD9CA, 0x6728},+    {0xD9CB, 0x6C90},+    {0xD9CC, 0x7267},+    {0xD9CD, 0x76EE},+    {0xD9CE, 0x7766},+    {0xD9CF, 0x7A46},+    {0xD9D0, 0x9DA9},+    {0xD9D1, 0x6B7F},+    {0xD9D2, 0x6C92},+    {0xD9D3, 0x5922},+    {0xD9D4, 0x6726},+    {0xD9D5, 0x8499},+    {0xD9D6, 0x536F},+    {0xD9D7, 0x5893},+    {0xD9D8, 0x5999},+    {0xD9D9, 0x5EDF},+    {0xD9DA, 0x63CF},+    {0xD9DB, 0x6634},+    {0xD9DC, 0x6773},+    {0xD9DD, 0x6E3A},+    {0xD9DE, 0x732B},+    {0xD9DF, 0x7AD7},+    {0xD9E0, 0x82D7},+    {0xD9E1, 0x9328},+    {0xD9E2, 0x52D9},+    {0xD9E3, 0x5DEB},+    {0xD9E4, 0x61AE},+    {0xD9E5, 0x61CB},+    {0xD9E6, 0x620A},+    {0xD9E7, 0x62C7},+    {0xD9E8, 0x64AB},+    {0xD9E9, 0x65E0},+    {0xD9EA, 0x6959},+    {0xD9EB, 0x6B66},+    {0xD9EC, 0x6BCB},+    {0xD9ED, 0x7121},+    {0xD9EE, 0x73F7},+    {0xD9EF, 0x755D},+    {0xD9F0, 0x7E46},+    {0xD9F1, 0x821E},+    {0xD9F2, 0x8302},+    {0xD9F3, 0x856A},+    {0xD9F4, 0x8AA3},+    {0xD9F5, 0x8CBF},+    {0xD9F6, 0x9727},+    {0xD9F7, 0x9D61},+    {0xD9F8, 0x58A8},+    {0xD9F9, 0x9ED8},+    {0xD9FA, 0x5011},+    {0xD9FB, 0x520E},+    {0xD9FC, 0x543B},+    {0xD9FD, 0x554F},+    {0xD9FE, 0x6587},+    {0xDAA1, 0x6C76},+    {0xDAA2, 0x7D0A},+    {0xDAA3, 0x7D0B},+    {0xDAA4, 0x805E},+    {0xDAA5, 0x868A},+    {0xDAA6, 0x9580},+    {0xDAA7, 0x96EF},+    {0xDAA8, 0x52FF},+    {0xDAA9, 0x6C95},+    {0xDAAA, 0x7269},+    {0xDAAB, 0x5473},+    {0xDAAC, 0x5A9A},+    {0xDAAD, 0x5C3E},+    {0xDAAE, 0x5D4B},+    {0xDAAF, 0x5F4C},+    {0xDAB0, 0x5FAE},+    {0xDAB1, 0x672A},+    {0xDAB2, 0x68B6},+    {0xDAB3, 0x6963},+    {0xDAB4, 0x6E3C},+    {0xDAB5, 0x6E44},+    {0xDAB6, 0x7709},+    {0xDAB7, 0x7C73},+    {0xDAB8, 0x7F8E},+    {0xDAB9, 0x8587},+    {0xDABA, 0x8B0E},+    {0xDABB, 0x8FF7},+    {0xDABC, 0x9761},+    {0xDABD, 0x9EF4},+    {0xDABE, 0x5CB7},+    {0xDABF, 0x60B6},+    {0xDAC0, 0x610D},+    {0xDAC1, 0x61AB},+    {0xDAC2, 0x654F},+    {0xDAC3, 0x65FB},+    {0xDAC4, 0x65FC},+    {0xDAC5, 0x6C11},+    {0xDAC6, 0x6CEF},+    {0xDAC7, 0x739F},+    {0xDAC8, 0x73C9},+    {0xDAC9, 0x7DE1},+    {0xDACA, 0x9594},+    {0xDACB, 0x5BC6},+    {0xDACC, 0x871C},+    {0xDACD, 0x8B10},+    {0xDACE, 0x525D},+    {0xDACF, 0x535A},+    {0xDAD0, 0x62CD},+    {0xDAD1, 0x640F},+    {0xDAD2, 0x64B2},+    {0xDAD3, 0x6734},+    {0xDAD4, 0x6A38},+    {0xDAD5, 0x6CCA},+    {0xDAD6, 0x73C0},+    {0xDAD7, 0x749E},+    {0xDAD8, 0x7B94},+    {0xDAD9, 0x7C95},+    {0xDADA, 0x7E1B},+    {0xDADB, 0x818A},+    {0xDADC, 0x8236},+    {0xDADD, 0x8584},+    {0xDADE, 0x8FEB},+    {0xDADF, 0x96F9},+    {0xDAE0, 0x99C1},+    {0xDAE1, 0x4F34},+    {0xDAE2, 0x534A},+    {0xDAE3, 0x53CD},+    {0xDAE4, 0x53DB},+    {0xDAE5, 0x62CC},+    {0xDAE6, 0x642C},+    {0xDAE7, 0x6500},+    {0xDAE8, 0x6591},+    {0xDAE9, 0x69C3},+    {0xDAEA, 0x6CEE},+    {0xDAEB, 0x6F58},+    {0xDAEC, 0x73ED},+    {0xDAED, 0x7554},+    {0xDAEE, 0x7622},+    {0xDAEF, 0x76E4},+    {0xDAF0, 0x76FC},+    {0xDAF1, 0x78D0},+    {0xDAF2, 0x78FB},+    {0xDAF3, 0x792C},+    {0xDAF4, 0x7D46},+    {0xDAF5, 0x822C},+    {0xDAF6, 0x87E0},+    {0xDAF7, 0x8FD4},+    {0xDAF8, 0x9812},+    {0xDAF9, 0x98EF},+    {0xDAFA, 0x52C3},+    {0xDAFB, 0x62D4},+    {0xDAFC, 0x64A5},+    {0xDAFD, 0x6E24},+    {0xDAFE, 0x6F51},+    {0xDBA1, 0x767C},+    {0xDBA2, 0x8DCB},+    {0xDBA3, 0x91B1},+    {0xDBA4, 0x9262},+    {0xDBA5, 0x9AEE},+    {0xDBA6, 0x9B43},+    {0xDBA7, 0x5023},+    {0xDBA8, 0x508D},+    {0xDBA9, 0x574A},+    {0xDBAA, 0x59A8},+    {0xDBAB, 0x5C28},+    {0xDBAC, 0x5E47},+    {0xDBAD, 0x5F77},+    {0xDBAE, 0x623F},+    {0xDBAF, 0x653E},+    {0xDBB0, 0x65B9},+    {0xDBB1, 0x65C1},+    {0xDBB2, 0x6609},+    {0xDBB3, 0x678B},+    {0xDBB4, 0x699C},+    {0xDBB5, 0x6EC2},+    {0xDBB6, 0x78C5},+    {0xDBB7, 0x7D21},+    {0xDBB8, 0x80AA},+    {0xDBB9, 0x8180},+    {0xDBBA, 0x822B},+    {0xDBBB, 0x82B3},+    {0xDBBC, 0x84A1},+    {0xDBBD, 0x868C},+    {0xDBBE, 0x8A2A},+    {0xDBBF, 0x8B17},+    {0xDBC0, 0x90A6},+    {0xDBC1, 0x9632},+    {0xDBC2, 0x9F90},+    {0xDBC3, 0x500D},+    {0xDBC4, 0x4FF3},+    {0xDBC5, 0xF963},+    {0xDBC6, 0x57F9},+    {0xDBC7, 0x5F98},+    {0xDBC8, 0x62DC},+    {0xDBC9, 0x6392},+    {0xDBCA, 0x676F},+    {0xDBCB, 0x6E43},+    {0xDBCC, 0x7119},+    {0xDBCD, 0x76C3},+    {0xDBCE, 0x80CC},+    {0xDBCF, 0x80DA},+    {0xDBD0, 0x88F4},+    {0xDBD1, 0x88F5},+    {0xDBD2, 0x8919},+    {0xDBD3, 0x8CE0},+    {0xDBD4, 0x8F29},+    {0xDBD5, 0x914D},+    {0xDBD6, 0x966A},+    {0xDBD7, 0x4F2F},+    {0xDBD8, 0x4F70},+    {0xDBD9, 0x5E1B},+    {0xDBDA, 0x67CF},+    {0xDBDB, 0x6822},+    {0xDBDC, 0x767D},+    {0xDBDD, 0x767E},+    {0xDBDE, 0x9B44},+    {0xDBDF, 0x5E61},+    {0xDBE0, 0x6A0A},+    {0xDBE1, 0x7169},+    {0xDBE2, 0x71D4},+    {0xDBE3, 0x756A},+    {0xDBE4, 0xF964},+    {0xDBE5, 0x7E41},+    {0xDBE6, 0x8543},+    {0xDBE7, 0x85E9},+    {0xDBE8, 0x98DC},+    {0xDBE9, 0x4F10},+    {0xDBEA, 0x7B4F},+    {0xDBEB, 0x7F70},+    {0xDBEC, 0x95A5},+    {0xDBED, 0x51E1},+    {0xDBEE, 0x5E06},+    {0xDBEF, 0x68B5},+    {0xDBF0, 0x6C3E},+    {0xDBF1, 0x6C4E},+    {0xDBF2, 0x6CDB},+    {0xDBF3, 0x72AF},+    {0xDBF4, 0x7BC4},+    {0xDBF5, 0x8303},+    {0xDBF6, 0x6CD5},+    {0xDBF7, 0x743A},+    {0xDBF8, 0x50FB},+    {0xDBF9, 0x5288},+    {0xDBFA, 0x58C1},+    {0xDBFB, 0x64D8},+    {0xDBFC, 0x6A97},+    {0xDBFD, 0x74A7},+    {0xDBFE, 0x7656},+    {0xDCA1, 0x78A7},+    {0xDCA2, 0x8617},+    {0xDCA3, 0x95E2},+    {0xDCA4, 0x9739},+    {0xDCA5, 0xF965},+    {0xDCA6, 0x535E},+    {0xDCA7, 0x5F01},+    {0xDCA8, 0x8B8A},+    {0xDCA9, 0x8FA8},+    {0xDCAA, 0x8FAF},+    {0xDCAB, 0x908A},+    {0xDCAC, 0x5225},+    {0xDCAD, 0x77A5},+    {0xDCAE, 0x9C49},+    {0xDCAF, 0x9F08},+    {0xDCB0, 0x4E19},+    {0xDCB1, 0x5002},+    {0xDCB2, 0x5175},+    {0xDCB3, 0x5C5B},+    {0xDCB4, 0x5E77},+    {0xDCB5, 0x661E},+    {0xDCB6, 0x663A},+    {0xDCB7, 0x67C4},+    {0xDCB8, 0x68C5},+    {0xDCB9, 0x70B3},+    {0xDCBA, 0x7501},+    {0xDCBB, 0x75C5},+    {0xDCBC, 0x79C9},+    {0xDCBD, 0x7ADD},+    {0xDCBE, 0x8F27},+    {0xDCBF, 0x9920},+    {0xDCC0, 0x9A08},+    {0xDCC1, 0x4FDD},+    {0xDCC2, 0x5821},+    {0xDCC3, 0x5831},+    {0xDCC4, 0x5BF6},+    {0xDCC5, 0x666E},+    {0xDCC6, 0x6B65},+    {0xDCC7, 0x6D11},+    {0xDCC8, 0x6E7A},+    {0xDCC9, 0x6F7D},+    {0xDCCA, 0x73E4},+    {0xDCCB, 0x752B},+    {0xDCCC, 0x83E9},+    {0xDCCD, 0x88DC},+    {0xDCCE, 0x8913},+    {0xDCCF, 0x8B5C},+    {0xDCD0, 0x8F14},+    {0xDCD1, 0x4F0F},+    {0xDCD2, 0x50D5},+    {0xDCD3, 0x5310},+    {0xDCD4, 0x535C},+    {0xDCD5, 0x5B93},+    {0xDCD6, 0x5FA9},+    {0xDCD7, 0x670D},+    {0xDCD8, 0x798F},+    {0xDCD9, 0x8179},+    {0xDCDA, 0x832F},+    {0xDCDB, 0x8514},+    {0xDCDC, 0x8907},+    {0xDCDD, 0x8986},+    {0xDCDE, 0x8F39},+    {0xDCDF, 0x8F3B},+    {0xDCE0, 0x99A5},+    {0xDCE1, 0x9C12},+    {0xDCE2, 0x672C},+    {0xDCE3, 0x4E76},+    {0xDCE4, 0x4FF8},+    {0xDCE5, 0x5949},+    {0xDCE6, 0x5C01},+    {0xDCE7, 0x5CEF},+    {0xDCE8, 0x5CF0},+    {0xDCE9, 0x6367},+    {0xDCEA, 0x68D2},+    {0xDCEB, 0x70FD},+    {0xDCEC, 0x71A2},+    {0xDCED, 0x742B},+    {0xDCEE, 0x7E2B},+    {0xDCEF, 0x84EC},+    {0xDCF0, 0x8702},+    {0xDCF1, 0x9022},+    {0xDCF2, 0x92D2},+    {0xDCF3, 0x9CF3},+    {0xDCF4, 0x4E0D},+    {0xDCF5, 0x4ED8},+    {0xDCF6, 0x4FEF},+    {0xDCF7, 0x5085},+    {0xDCF8, 0x5256},+    {0xDCF9, 0x526F},+    {0xDCFA, 0x5426},+    {0xDCFB, 0x5490},+    {0xDCFC, 0x57E0},+    {0xDCFD, 0x592B},+    {0xDCFE, 0x5A66},+    {0xDDA1, 0x5B5A},+    {0xDDA2, 0x5B75},+    {0xDDA3, 0x5BCC},+    {0xDDA4, 0x5E9C},+    {0xDDA5, 0xF966},+    {0xDDA6, 0x6276},+    {0xDDA7, 0x6577},+    {0xDDA8, 0x65A7},+    {0xDDA9, 0x6D6E},+    {0xDDAA, 0x6EA5},+    {0xDDAB, 0x7236},+    {0xDDAC, 0x7B26},+    {0xDDAD, 0x7C3F},+    {0xDDAE, 0x7F36},+    {0xDDAF, 0x8150},+    {0xDDB0, 0x8151},+    {0xDDB1, 0x819A},+    {0xDDB2, 0x8240},+    {0xDDB3, 0x8299},+    {0xDDB4, 0x83A9},+    {0xDDB5, 0x8A03},+    {0xDDB6, 0x8CA0},+    {0xDDB7, 0x8CE6},+    {0xDDB8, 0x8CFB},+    {0xDDB9, 0x8D74},+    {0xDDBA, 0x8DBA},+    {0xDDBB, 0x90E8},+    {0xDDBC, 0x91DC},+    {0xDDBD, 0x961C},+    {0xDDBE, 0x9644},+    {0xDDBF, 0x99D9},+    {0xDDC0, 0x9CE7},+    {0xDDC1, 0x5317},+    {0xDDC2, 0x5206},+    {0xDDC3, 0x5429},+    {0xDDC4, 0x5674},+    {0xDDC5, 0x58B3},+    {0xDDC6, 0x5954},+    {0xDDC7, 0x596E},+    {0xDDC8, 0x5FFF},+    {0xDDC9, 0x61A4},+    {0xDDCA, 0x626E},+    {0xDDCB, 0x6610},+    {0xDDCC, 0x6C7E},+    {0xDDCD, 0x711A},+    {0xDDCE, 0x76C6},+    {0xDDCF, 0x7C89},+    {0xDDD0, 0x7CDE},+    {0xDDD1, 0x7D1B},+    {0xDDD2, 0x82AC},+    {0xDDD3, 0x8CC1},+    {0xDDD4, 0x96F0},+    {0xDDD5, 0xF967},+    {0xDDD6, 0x4F5B},+    {0xDDD7, 0x5F17},+    {0xDDD8, 0x5F7F},+    {0xDDD9, 0x62C2},+    {0xDDDA, 0x5D29},+    {0xDDDB, 0x670B},+    {0xDDDC, 0x68DA},+    {0xDDDD, 0x787C},+    {0xDDDE, 0x7E43},+    {0xDDDF, 0x9D6C},+    {0xDDE0, 0x4E15},+    {0xDDE1, 0x5099},+    {0xDDE2, 0x5315},+    {0xDDE3, 0x532A},+    {0xDDE4, 0x5351},+    {0xDDE5, 0x5983},+    {0xDDE6, 0x5A62},+    {0xDDE7, 0x5E87},+    {0xDDE8, 0x60B2},+    {0xDDE9, 0x618A},+    {0xDDEA, 0x6249},+    {0xDDEB, 0x6279},+    {0xDDEC, 0x6590},+    {0xDDED, 0x6787},+    {0xDDEE, 0x69A7},+    {0xDDEF, 0x6BD4},+    {0xDDF0, 0x6BD6},+    {0xDDF1, 0x6BD7},+    {0xDDF2, 0x6BD8},+    {0xDDF3, 0x6CB8},+    {0xDDF4, 0xF968},+    {0xDDF5, 0x7435},+    {0xDDF6, 0x75FA},+    {0xDDF7, 0x7812},+    {0xDDF8, 0x7891},+    {0xDDF9, 0x79D5},+    {0xDDFA, 0x79D8},+    {0xDDFB, 0x7C83},+    {0xDDFC, 0x7DCB},+    {0xDDFD, 0x7FE1},+    {0xDDFE, 0x80A5},+    {0xDEA1, 0x813E},+    {0xDEA2, 0x81C2},+    {0xDEA3, 0x83F2},+    {0xDEA4, 0x871A},+    {0xDEA5, 0x88E8},+    {0xDEA6, 0x8AB9},+    {0xDEA7, 0x8B6C},+    {0xDEA8, 0x8CBB},+    {0xDEA9, 0x9119},+    {0xDEAA, 0x975E},+    {0xDEAB, 0x98DB},+    {0xDEAC, 0x9F3B},+    {0xDEAD, 0x56AC},+    {0xDEAE, 0x5B2A},+    {0xDEAF, 0x5F6C},+    {0xDEB0, 0x658C},+    {0xDEB1, 0x6AB3},+    {0xDEB2, 0x6BAF},+    {0xDEB3, 0x6D5C},+    {0xDEB4, 0x6FF1},+    {0xDEB5, 0x7015},+    {0xDEB6, 0x725D},+    {0xDEB7, 0x73AD},+    {0xDEB8, 0x8CA7},+    {0xDEB9, 0x8CD3},+    {0xDEBA, 0x983B},+    {0xDEBB, 0x6191},+    {0xDEBC, 0x6C37},+    {0xDEBD, 0x8058},+    {0xDEBE, 0x9A01},+    {0xDEBF, 0x4E4D},+    {0xDEC0, 0x4E8B},+    {0xDEC1, 0x4E9B},+    {0xDEC2, 0x4ED5},+    {0xDEC3, 0x4F3A},+    {0xDEC4, 0x4F3C},+    {0xDEC5, 0x4F7F},+    {0xDEC6, 0x4FDF},+    {0xDEC7, 0x50FF},+    {0xDEC8, 0x53F2},+    {0xDEC9, 0x53F8},+    {0xDECA, 0x5506},+    {0xDECB, 0x55E3},+    {0xDECC, 0x56DB},+    {0xDECD, 0x58EB},+    {0xDECE, 0x5962},+    {0xDECF, 0x5A11},+    {0xDED0, 0x5BEB},+    {0xDED1, 0x5BFA},+    {0xDED2, 0x5C04},+    {0xDED3, 0x5DF3},+    {0xDED4, 0x5E2B},+    {0xDED5, 0x5F99},+    {0xDED6, 0x601D},+    {0xDED7, 0x6368},+    {0xDED8, 0x659C},+    {0xDED9, 0x65AF},+    {0xDEDA, 0x67F6},+    {0xDEDB, 0x67FB},+    {0xDEDC, 0x68AD},+    {0xDEDD, 0x6B7B},+    {0xDEDE, 0x6C99},+    {0xDEDF, 0x6CD7},+    {0xDEE0, 0x6E23},+    {0xDEE1, 0x7009},+    {0xDEE2, 0x7345},+    {0xDEE3, 0x7802},+    {0xDEE4, 0x793E},+    {0xDEE5, 0x7940},+    {0xDEE6, 0x7960},+    {0xDEE7, 0x79C1},+    {0xDEE8, 0x7BE9},+    {0xDEE9, 0x7D17},+    {0xDEEA, 0x7D72},+    {0xDEEB, 0x8086},+    {0xDEEC, 0x820D},+    {0xDEED, 0x838E},+    {0xDEEE, 0x84D1},+    {0xDEEF, 0x86C7},+    {0xDEF0, 0x88DF},+    {0xDEF1, 0x8A50},+    {0xDEF2, 0x8A5E},+    {0xDEF3, 0x8B1D},+    {0xDEF4, 0x8CDC},+    {0xDEF5, 0x8D66},+    {0xDEF6, 0x8FAD},+    {0xDEF7, 0x90AA},+    {0xDEF8, 0x98FC},+    {0xDEF9, 0x99DF},+    {0xDEFA, 0x9E9D},+    {0xDEFB, 0x524A},+    {0xDEFC, 0xF969},+    {0xDEFD, 0x6714},+    {0xDEFE, 0xF96A},+    {0xDFA1, 0x5098},+    {0xDFA2, 0x522A},+    {0xDFA3, 0x5C71},+    {0xDFA4, 0x6563},+    {0xDFA5, 0x6C55},+    {0xDFA6, 0x73CA},+    {0xDFA7, 0x7523},+    {0xDFA8, 0x759D},+    {0xDFA9, 0x7B97},+    {0xDFAA, 0x849C},+    {0xDFAB, 0x9178},+    {0xDFAC, 0x9730},+    {0xDFAD, 0x4E77},+    {0xDFAE, 0x6492},+    {0xDFAF, 0x6BBA},+    {0xDFB0, 0x715E},+    {0xDFB1, 0x85A9},+    {0xDFB2, 0x4E09},+    {0xDFB3, 0xF96B},+    {0xDFB4, 0x6749},+    {0xDFB5, 0x68EE},+    {0xDFB6, 0x6E17},+    {0xDFB7, 0x829F},+    {0xDFB8, 0x8518},+    {0xDFB9, 0x886B},+    {0xDFBA, 0x63F7},+    {0xDFBB, 0x6F81},+    {0xDFBC, 0x9212},+    {0xDFBD, 0x98AF},+    {0xDFBE, 0x4E0A},+    {0xDFBF, 0x50B7},+    {0xDFC0, 0x50CF},+    {0xDFC1, 0x511F},+    {0xDFC2, 0x5546},+    {0xDFC3, 0x55AA},+    {0xDFC4, 0x5617},+    {0xDFC5, 0x5B40},+    {0xDFC6, 0x5C19},+    {0xDFC7, 0x5CE0},+    {0xDFC8, 0x5E38},+    {0xDFC9, 0x5E8A},+    {0xDFCA, 0x5EA0},+    {0xDFCB, 0x5EC2},+    {0xDFCC, 0x60F3},+    {0xDFCD, 0x6851},+    {0xDFCE, 0x6A61},+    {0xDFCF, 0x6E58},+    {0xDFD0, 0x723D},+    {0xDFD1, 0x7240},+    {0xDFD2, 0x72C0},+    {0xDFD3, 0x76F8},+    {0xDFD4, 0x7965},+    {0xDFD5, 0x7BB1},+    {0xDFD6, 0x7FD4},+    {0xDFD7, 0x88F3},+    {0xDFD8, 0x89F4},+    {0xDFD9, 0x8A73},+    {0xDFDA, 0x8C61},+    {0xDFDB, 0x8CDE},+    {0xDFDC, 0x971C},+    {0xDFDD, 0x585E},+    {0xDFDE, 0x74BD},+    {0xDFDF, 0x8CFD},+    {0xDFE0, 0x55C7},+    {0xDFE1, 0xF96C},+    {0xDFE2, 0x7A61},+    {0xDFE3, 0x7D22},+    {0xDFE4, 0x8272},+    {0xDFE5, 0x7272},+    {0xDFE6, 0x751F},+    {0xDFE7, 0x7525},+    {0xDFE8, 0xF96D},+    {0xDFE9, 0x7B19},+    {0xDFEA, 0x5885},+    {0xDFEB, 0x58FB},+    {0xDFEC, 0x5DBC},+    {0xDFED, 0x5E8F},+    {0xDFEE, 0x5EB6},+    {0xDFEF, 0x5F90},+    {0xDFF0, 0x6055},+    {0xDFF1, 0x6292},+    {0xDFF2, 0x637F},+    {0xDFF3, 0x654D},+    {0xDFF4, 0x6691},+    {0xDFF5, 0x66D9},+    {0xDFF6, 0x66F8},+    {0xDFF7, 0x6816},+    {0xDFF8, 0x68F2},+    {0xDFF9, 0x7280},+    {0xDFFA, 0x745E},+    {0xDFFB, 0x7B6E},+    {0xDFFC, 0x7D6E},+    {0xDFFD, 0x7DD6},+    {0xDFFE, 0x7F72},+    {0xE0A1, 0x80E5},+    {0xE0A2, 0x8212},+    {0xE0A3, 0x85AF},+    {0xE0A4, 0x897F},+    {0xE0A5, 0x8A93},+    {0xE0A6, 0x901D},+    {0xE0A7, 0x92E4},+    {0xE0A8, 0x9ECD},+    {0xE0A9, 0x9F20},+    {0xE0AA, 0x5915},+    {0xE0AB, 0x596D},+    {0xE0AC, 0x5E2D},+    {0xE0AD, 0x60DC},+    {0xE0AE, 0x6614},+    {0xE0AF, 0x6673},+    {0xE0B0, 0x6790},+    {0xE0B1, 0x6C50},+    {0xE0B2, 0x6DC5},+    {0xE0B3, 0x6F5F},+    {0xE0B4, 0x77F3},+    {0xE0B5, 0x78A9},+    {0xE0B6, 0x84C6},+    {0xE0B7, 0x91CB},+    {0xE0B8, 0x932B},+    {0xE0B9, 0x4ED9},+    {0xE0BA, 0x50CA},+    {0xE0BB, 0x5148},+    {0xE0BC, 0x5584},+    {0xE0BD, 0x5B0B},+    {0xE0BE, 0x5BA3},+    {0xE0BF, 0x6247},+    {0xE0C0, 0x657E},+    {0xE0C1, 0x65CB},+    {0xE0C2, 0x6E32},+    {0xE0C3, 0x717D},+    {0xE0C4, 0x7401},+    {0xE0C5, 0x7444},+    {0xE0C6, 0x7487},+    {0xE0C7, 0x74BF},+    {0xE0C8, 0x766C},+    {0xE0C9, 0x79AA},+    {0xE0CA, 0x7DDA},+    {0xE0CB, 0x7E55},+    {0xE0CC, 0x7FA8},+    {0xE0CD, 0x817A},+    {0xE0CE, 0x81B3},+    {0xE0CF, 0x8239},+    {0xE0D0, 0x861A},+    {0xE0D1, 0x87EC},+    {0xE0D2, 0x8A75},+    {0xE0D3, 0x8DE3},+    {0xE0D4, 0x9078},+    {0xE0D5, 0x9291},+    {0xE0D6, 0x9425},+    {0xE0D7, 0x994D},+    {0xE0D8, 0x9BAE},+    {0xE0D9, 0x5368},+    {0xE0DA, 0x5C51},+    {0xE0DB, 0x6954},+    {0xE0DC, 0x6CC4},+    {0xE0DD, 0x6D29},+    {0xE0DE, 0x6E2B},+    {0xE0DF, 0x820C},+    {0xE0E0, 0x859B},+    {0xE0E1, 0x893B},+    {0xE0E2, 0x8A2D},+    {0xE0E3, 0x8AAA},+    {0xE0E4, 0x96EA},+    {0xE0E5, 0x9F67},+    {0xE0E6, 0x5261},+    {0xE0E7, 0x66B9},+    {0xE0E8, 0x6BB2},+    {0xE0E9, 0x7E96},+    {0xE0EA, 0x87FE},+    {0xE0EB, 0x8D0D},+    {0xE0EC, 0x9583},+    {0xE0ED, 0x965D},+    {0xE0EE, 0x651D},+    {0xE0EF, 0x6D89},+    {0xE0F0, 0x71EE},+    {0xE0F1, 0xF96E},+    {0xE0F2, 0x57CE},+    {0xE0F3, 0x59D3},+    {0xE0F4, 0x5BAC},+    {0xE0F5, 0x6027},+    {0xE0F6, 0x60FA},+    {0xE0F7, 0x6210},+    {0xE0F8, 0x661F},+    {0xE0F9, 0x665F},+    {0xE0FA, 0x7329},+    {0xE0FB, 0x73F9},+    {0xE0FC, 0x76DB},+    {0xE0FD, 0x7701},+    {0xE0FE, 0x7B6C},+    {0xE1A1, 0x8056},+    {0xE1A2, 0x8072},+    {0xE1A3, 0x8165},+    {0xE1A4, 0x8AA0},+    {0xE1A5, 0x9192},+    {0xE1A6, 0x4E16},+    {0xE1A7, 0x52E2},+    {0xE1A8, 0x6B72},+    {0xE1A9, 0x6D17},+    {0xE1AA, 0x7A05},+    {0xE1AB, 0x7B39},+    {0xE1AC, 0x7D30},+    {0xE1AD, 0xF96F},+    {0xE1AE, 0x8CB0},+    {0xE1AF, 0x53EC},+    {0xE1B0, 0x562F},+    {0xE1B1, 0x5851},+    {0xE1B2, 0x5BB5},+    {0xE1B3, 0x5C0F},+    {0xE1B4, 0x5C11},+    {0xE1B5, 0x5DE2},+    {0xE1B6, 0x6240},+    {0xE1B7, 0x6383},+    {0xE1B8, 0x6414},+    {0xE1B9, 0x662D},+    {0xE1BA, 0x68B3},+    {0xE1BB, 0x6CBC},+    {0xE1BC, 0x6D88},+    {0xE1BD, 0x6EAF},+    {0xE1BE, 0x701F},+    {0xE1BF, 0x70A4},+    {0xE1C0, 0x71D2},+    {0xE1C1, 0x7526},+    {0xE1C2, 0x758F},+    {0xE1C3, 0x758E},+    {0xE1C4, 0x7619},+    {0xE1C5, 0x7B11},+    {0xE1C6, 0x7BE0},+    {0xE1C7, 0x7C2B},+    {0xE1C8, 0x7D20},+    {0xE1C9, 0x7D39},+    {0xE1CA, 0x852C},+    {0xE1CB, 0x856D},+    {0xE1CC, 0x8607},+    {0xE1CD, 0x8A34},+    {0xE1CE, 0x900D},+    {0xE1CF, 0x9061},+    {0xE1D0, 0x90B5},+    {0xE1D1, 0x92B7},+    {0xE1D2, 0x97F6},+    {0xE1D3, 0x9A37},+    {0xE1D4, 0x4FD7},+    {0xE1D5, 0x5C6C},+    {0xE1D6, 0x675F},+    {0xE1D7, 0x6D91},+    {0xE1D8, 0x7C9F},+    {0xE1D9, 0x7E8C},+    {0xE1DA, 0x8B16},+    {0xE1DB, 0x8D16},+    {0xE1DC, 0x901F},+    {0xE1DD, 0x5B6B},+    {0xE1DE, 0x5DFD},+    {0xE1DF, 0x640D},+    {0xE1E0, 0x84C0},+    {0xE1E1, 0x905C},+    {0xE1E2, 0x98E1},+    {0xE1E3, 0x7387},+    {0xE1E4, 0x5B8B},+    {0xE1E5, 0x609A},+    {0xE1E6, 0x677E},+    {0xE1E7, 0x6DDE},+    {0xE1E8, 0x8A1F},+    {0xE1E9, 0x8AA6},+    {0xE1EA, 0x9001},+    {0xE1EB, 0x980C},+    {0xE1EC, 0x5237},+    {0xE1ED, 0xF970},+    {0xE1EE, 0x7051},+    {0xE1EF, 0x788E},+    {0xE1F0, 0x9396},+    {0xE1F1, 0x8870},+    {0xE1F2, 0x91D7},+    {0xE1F3, 0x4FEE},+    {0xE1F4, 0x53D7},+    {0xE1F5, 0x55FD},+    {0xE1F6, 0x56DA},+    {0xE1F7, 0x5782},+    {0xE1F8, 0x58FD},+    {0xE1F9, 0x5AC2},+    {0xE1FA, 0x5B88},+    {0xE1FB, 0x5CAB},+    {0xE1FC, 0x5CC0},+    {0xE1FD, 0x5E25},+    {0xE1FE, 0x6101},+    {0xE2A1, 0x620D},+    {0xE2A2, 0x624B},+    {0xE2A3, 0x6388},+    {0xE2A4, 0x641C},+    {0xE2A5, 0x6536},+    {0xE2A6, 0x6578},+    {0xE2A7, 0x6A39},+    {0xE2A8, 0x6B8A},+    {0xE2A9, 0x6C34},+    {0xE2AA, 0x6D19},+    {0xE2AB, 0x6F31},+    {0xE2AC, 0x71E7},+    {0xE2AD, 0x72E9},+    {0xE2AE, 0x7378},+    {0xE2AF, 0x7407},+    {0xE2B0, 0x74B2},+    {0xE2B1, 0x7626},+    {0xE2B2, 0x7761},+    {0xE2B3, 0x79C0},+    {0xE2B4, 0x7A57},+    {0xE2B5, 0x7AEA},+    {0xE2B6, 0x7CB9},+    {0xE2B7, 0x7D8F},+    {0xE2B8, 0x7DAC},+    {0xE2B9, 0x7E61},+    {0xE2BA, 0x7F9E},+    {0xE2BB, 0x8129},+    {0xE2BC, 0x8331},+    {0xE2BD, 0x8490},+    {0xE2BE, 0x84DA},+    {0xE2BF, 0x85EA},+    {0xE2C0, 0x8896},+    {0xE2C1, 0x8AB0},+    {0xE2C2, 0x8B90},+    {0xE2C3, 0x8F38},+    {0xE2C4, 0x9042},+    {0xE2C5, 0x9083},+    {0xE2C6, 0x916C},+    {0xE2C7, 0x9296},+    {0xE2C8, 0x92B9},+    {0xE2C9, 0x968B},+    {0xE2CA, 0x96A7},+    {0xE2CB, 0x96A8},+    {0xE2CC, 0x96D6},+    {0xE2CD, 0x9700},+    {0xE2CE, 0x9808},+    {0xE2CF, 0x9996},+    {0xE2D0, 0x9AD3},+    {0xE2D1, 0x9B1A},+    {0xE2D2, 0x53D4},+    {0xE2D3, 0x587E},+    {0xE2D4, 0x5919},+    {0xE2D5, 0x5B70},+    {0xE2D6, 0x5BBF},+    {0xE2D7, 0x6DD1},+    {0xE2D8, 0x6F5A},+    {0xE2D9, 0x719F},+    {0xE2DA, 0x7421},+    {0xE2DB, 0x74B9},+    {0xE2DC, 0x8085},+    {0xE2DD, 0x83FD},+    {0xE2DE, 0x5DE1},+    {0xE2DF, 0x5F87},+    {0xE2E0, 0x5FAA},+    {0xE2E1, 0x6042},+    {0xE2E2, 0x65EC},+    {0xE2E3, 0x6812},+    {0xE2E4, 0x696F},+    {0xE2E5, 0x6A53},+    {0xE2E6, 0x6B89},+    {0xE2E7, 0x6D35},+    {0xE2E8, 0x6DF3},+    {0xE2E9, 0x73E3},+    {0xE2EA, 0x76FE},+    {0xE2EB, 0x77AC},+    {0xE2EC, 0x7B4D},+    {0xE2ED, 0x7D14},+    {0xE2EE, 0x8123},+    {0xE2EF, 0x821C},+    {0xE2F0, 0x8340},+    {0xE2F1, 0x84F4},+    {0xE2F2, 0x8563},+    {0xE2F3, 0x8A62},+    {0xE2F4, 0x8AC4},+    {0xE2F5, 0x9187},+    {0xE2F6, 0x931E},+    {0xE2F7, 0x9806},+    {0xE2F8, 0x99B4},+    {0xE2F9, 0x620C},+    {0xE2FA, 0x8853},+    {0xE2FB, 0x8FF0},+    {0xE2FC, 0x9265},+    {0xE2FD, 0x5D07},+    {0xE2FE, 0x5D27},+    {0xE3A1, 0x5D69},+    {0xE3A2, 0x745F},+    {0xE3A3, 0x819D},+    {0xE3A4, 0x8768},+    {0xE3A5, 0x6FD5},+    {0xE3A6, 0x62FE},+    {0xE3A7, 0x7FD2},+    {0xE3A8, 0x8936},+    {0xE3A9, 0x8972},+    {0xE3AA, 0x4E1E},+    {0xE3AB, 0x4E58},+    {0xE3AC, 0x50E7},+    {0xE3AD, 0x52DD},+    {0xE3AE, 0x5347},+    {0xE3AF, 0x627F},+    {0xE3B0, 0x6607},+    {0xE3B1, 0x7E69},+    {0xE3B2, 0x8805},+    {0xE3B3, 0x965E},+    {0xE3B4, 0x4F8D},+    {0xE3B5, 0x5319},+    {0xE3B6, 0x5636},+    {0xE3B7, 0x59CB},+    {0xE3B8, 0x5AA4},+    {0xE3B9, 0x5C38},+    {0xE3BA, 0x5C4E},+    {0xE3BB, 0x5C4D},+    {0xE3BC, 0x5E02},+    {0xE3BD, 0x5F11},+    {0xE3BE, 0x6043},+    {0xE3BF, 0x65BD},+    {0xE3C0, 0x662F},+    {0xE3C1, 0x6642},+    {0xE3C2, 0x67BE},+    {0xE3C3, 0x67F4},+    {0xE3C4, 0x731C},+    {0xE3C5, 0x77E2},+    {0xE3C6, 0x793A},+    {0xE3C7, 0x7FC5},+    {0xE3C8, 0x8494},+    {0xE3C9, 0x84CD},+    {0xE3CA, 0x8996},+    {0xE3CB, 0x8A66},+    {0xE3CC, 0x8A69},+    {0xE3CD, 0x8AE1},+    {0xE3CE, 0x8C55},+    {0xE3CF, 0x8C7A},+    {0xE3D0, 0x57F4},+    {0xE3D1, 0x5BD4},+    {0xE3D2, 0x5F0F},+    {0xE3D3, 0x606F},+    {0xE3D4, 0x62ED},+    {0xE3D5, 0x690D},+    {0xE3D6, 0x6B96},+    {0xE3D7, 0x6E5C},+    {0xE3D8, 0x7184},+    {0xE3D9, 0x7BD2},+    {0xE3DA, 0x8755},+    {0xE3DB, 0x8B58},+    {0xE3DC, 0x8EFE},+    {0xE3DD, 0x98DF},+    {0xE3DE, 0x98FE},+    {0xE3DF, 0x4F38},+    {0xE3E0, 0x4F81},+    {0xE3E1, 0x4FE1},+    {0xE3E2, 0x547B},+    {0xE3E3, 0x5A20},+    {0xE3E4, 0x5BB8},+    {0xE3E5, 0x613C},+    {0xE3E6, 0x65B0},+    {0xE3E7, 0x6668},+    {0xE3E8, 0x71FC},+    {0xE3E9, 0x7533},+    {0xE3EA, 0x795E},+    {0xE3EB, 0x7D33},+    {0xE3EC, 0x814E},+    {0xE3ED, 0x81E3},+    {0xE3EE, 0x8398},+    {0xE3EF, 0x85AA},+    {0xE3F0, 0x85CE},+    {0xE3F1, 0x8703},+    {0xE3F2, 0x8A0A},+    {0xE3F3, 0x8EAB},+    {0xE3F4, 0x8F9B},+    {0xE3F5, 0xF971},+    {0xE3F6, 0x8FC5},+    {0xE3F7, 0x5931},+    {0xE3F8, 0x5BA4},+    {0xE3F9, 0x5BE6},+    {0xE3FA, 0x6089},+    {0xE3FB, 0x5BE9},+    {0xE3FC, 0x5C0B},+    {0xE3FD, 0x5FC3},+    {0xE3FE, 0x6C81},+    {0xE4A1, 0xF972},+    {0xE4A2, 0x6DF1},+    {0xE4A3, 0x700B},+    {0xE4A4, 0x751A},+    {0xE4A5, 0x82AF},+    {0xE4A6, 0x8AF6},+    {0xE4A7, 0x4EC0},+    {0xE4A8, 0x5341},+    {0xE4A9, 0xF973},+    {0xE4AA, 0x96D9},+    {0xE4AB, 0x6C0F},+    {0xE4AC, 0x4E9E},+    {0xE4AD, 0x4FC4},+    {0xE4AE, 0x5152},+    {0xE4AF, 0x555E},+    {0xE4B0, 0x5A25},+    {0xE4B1, 0x5CE8},+    {0xE4B2, 0x6211},+    {0xE4B3, 0x7259},+    {0xE4B4, 0x82BD},+    {0xE4B5, 0x83AA},+    {0xE4B6, 0x86FE},+    {0xE4B7, 0x8859},+    {0xE4B8, 0x8A1D},+    {0xE4B9, 0x963F},+    {0xE4BA, 0x96C5},+    {0xE4BB, 0x9913},+    {0xE4BC, 0x9D09},+    {0xE4BD, 0x9D5D},+    {0xE4BE, 0x580A},+    {0xE4BF, 0x5CB3},+    {0xE4C0, 0x5DBD},+    {0xE4C1, 0x5E44},+    {0xE4C2, 0x60E1},+    {0xE4C3, 0x6115},+    {0xE4C4, 0x63E1},+    {0xE4C5, 0x6A02},+    {0xE4C6, 0x6E25},+    {0xE4C7, 0x9102},+    {0xE4C8, 0x9354},+    {0xE4C9, 0x984E},+    {0xE4CA, 0x9C10},+    {0xE4CB, 0x9F77},+    {0xE4CC, 0x5B89},+    {0xE4CD, 0x5CB8},+    {0xE4CE, 0x6309},+    {0xE4CF, 0x664F},+    {0xE4D0, 0x6848},+    {0xE4D1, 0x773C},+    {0xE4D2, 0x96C1},+    {0xE4D3, 0x978D},+    {0xE4D4, 0x9854},+    {0xE4D5, 0x9B9F},+    {0xE4D6, 0x65A1},+    {0xE4D7, 0x8B01},+    {0xE4D8, 0x8ECB},+    {0xE4D9, 0x95BC},+    {0xE4DA, 0x5535},+    {0xE4DB, 0x5CA9},+    {0xE4DC, 0x5DD6},+    {0xE4DD, 0x5EB5},+    {0xE4DE, 0x6697},+    {0xE4DF, 0x764C},+    {0xE4E0, 0x83F4},+    {0xE4E1, 0x95C7},+    {0xE4E2, 0x58D3},+    {0xE4E3, 0x62BC},+    {0xE4E4, 0x72CE},+    {0xE4E5, 0x9D28},+    {0xE4E6, 0x4EF0},+    {0xE4E7, 0x592E},+    {0xE4E8, 0x600F},+    {0xE4E9, 0x663B},+    {0xE4EA, 0x6B83},+    {0xE4EB, 0x79E7},+    {0xE4EC, 0x9D26},+    {0xE4ED, 0x5393},+    {0xE4EE, 0x54C0},+    {0xE4EF, 0x57C3},+    {0xE4F0, 0x5D16},+    {0xE4F1, 0x611B},+    {0xE4F2, 0x66D6},+    {0xE4F3, 0x6DAF},+    {0xE4F4, 0x788D},+    {0xE4F5, 0x827E},+    {0xE4F6, 0x9698},+    {0xE4F7, 0x9744},+    {0xE4F8, 0x5384},+    {0xE4F9, 0x627C},+    {0xE4FA, 0x6396},+    {0xE4FB, 0x6DB2},+    {0xE4FC, 0x7E0A},+    {0xE4FD, 0x814B},+    {0xE4FE, 0x984D},+    {0xE5A1, 0x6AFB},+    {0xE5A2, 0x7F4C},+    {0xE5A3, 0x9DAF},+    {0xE5A4, 0x9E1A},+    {0xE5A5, 0x4E5F},+    {0xE5A6, 0x503B},+    {0xE5A7, 0x51B6},+    {0xE5A8, 0x591C},+    {0xE5A9, 0x60F9},+    {0xE5AA, 0x63F6},+    {0xE5AB, 0x6930},+    {0xE5AC, 0x723A},+    {0xE5AD, 0x8036},+    {0xE5AE, 0xF974},+    {0xE5AF, 0x91CE},+    {0xE5B0, 0x5F31},+    {0xE5B1, 0xF975},+    {0xE5B2, 0xF976},+    {0xE5B3, 0x7D04},+    {0xE5B4, 0x82E5},+    {0xE5B5, 0x846F},+    {0xE5B6, 0x84BB},+    {0xE5B7, 0x85E5},+    {0xE5B8, 0x8E8D},+    {0xE5B9, 0xF977},+    {0xE5BA, 0x4F6F},+    {0xE5BB, 0xF978},+    {0xE5BC, 0xF979},+    {0xE5BD, 0x58E4},+    {0xE5BE, 0x5B43},+    {0xE5BF, 0x6059},+    {0xE5C0, 0x63DA},+    {0xE5C1, 0x6518},+    {0xE5C2, 0x656D},+    {0xE5C3, 0x6698},+    {0xE5C4, 0xF97A},+    {0xE5C5, 0x694A},+    {0xE5C6, 0x6A23},+    {0xE5C7, 0x6D0B},+    {0xE5C8, 0x7001},+    {0xE5C9, 0x716C},+    {0xE5CA, 0x75D2},+    {0xE5CB, 0x760D},+    {0xE5CC, 0x79B3},+    {0xE5CD, 0x7A70},+    {0xE5CE, 0xF97B},+    {0xE5CF, 0x7F8A},+    {0xE5D0, 0xF97C},+    {0xE5D1, 0x8944},+    {0xE5D2, 0xF97D},+    {0xE5D3, 0x8B93},+    {0xE5D4, 0x91C0},+    {0xE5D5, 0x967D},+    {0xE5D6, 0xF97E},+    {0xE5D7, 0x990A},+    {0xE5D8, 0x5704},+    {0xE5D9, 0x5FA1},+    {0xE5DA, 0x65BC},+    {0xE5DB, 0x6F01},+    {0xE5DC, 0x7600},+    {0xE5DD, 0x79A6},+    {0xE5DE, 0x8A9E},+    {0xE5DF, 0x99AD},+    {0xE5E0, 0x9B5A},+    {0xE5E1, 0x9F6C},+    {0xE5E2, 0x5104},+    {0xE5E3, 0x61B6},+    {0xE5E4, 0x6291},+    {0xE5E5, 0x6A8D},+    {0xE5E6, 0x81C6},+    {0xE5E7, 0x5043},+    {0xE5E8, 0x5830},+    {0xE5E9, 0x5F66},+    {0xE5EA, 0x7109},+    {0xE5EB, 0x8A00},+    {0xE5EC, 0x8AFA},+    {0xE5ED, 0x5B7C},+    {0xE5EE, 0x8616},+    {0xE5EF, 0x4FFA},+    {0xE5F0, 0x513C},+    {0xE5F1, 0x56B4},+    {0xE5F2, 0x5944},+    {0xE5F3, 0x63A9},+    {0xE5F4, 0x6DF9},+    {0xE5F5, 0x5DAA},+    {0xE5F6, 0x696D},+    {0xE5F7, 0x5186},+    {0xE5F8, 0x4E88},+    {0xE5F9, 0x4F59},+    {0xE5FA, 0xF97F},+    {0xE5FB, 0xF980},+    {0xE5FC, 0xF981},+    {0xE5FD, 0x5982},+    {0xE5FE, 0xF982},+    {0xE6A1, 0xF983},+    {0xE6A2, 0x6B5F},+    {0xE6A3, 0x6C5D},+    {0xE6A4, 0xF984},+    {0xE6A5, 0x74B5},+    {0xE6A6, 0x7916},+    {0xE6A7, 0xF985},+    {0xE6A8, 0x8207},+    {0xE6A9, 0x8245},+    {0xE6AA, 0x8339},+    {0xE6AB, 0x8F3F},+    {0xE6AC, 0x8F5D},+    {0xE6AD, 0xF986},+    {0xE6AE, 0x9918},+    {0xE6AF, 0xF987},+    {0xE6B0, 0xF988},+    {0xE6B1, 0xF989},+    {0xE6B2, 0x4EA6},+    {0xE6B3, 0xF98A},+    {0xE6B4, 0x57DF},+    {0xE6B5, 0x5F79},+    {0xE6B6, 0x6613},+    {0xE6B7, 0xF98B},+    {0xE6B8, 0xF98C},+    {0xE6B9, 0x75AB},+    {0xE6BA, 0x7E79},+    {0xE6BB, 0x8B6F},+    {0xE6BC, 0xF98D},+    {0xE6BD, 0x9006},+    {0xE6BE, 0x9A5B},+    {0xE6BF, 0x56A5},+    {0xE6C0, 0x5827},+    {0xE6C1, 0x59F8},+    {0xE6C2, 0x5A1F},+    {0xE6C3, 0x5BB4},+    {0xE6C4, 0xF98E},+    {0xE6C5, 0x5EF6},+    {0xE6C6, 0xF98F},+    {0xE6C7, 0xF990},+    {0xE6C8, 0x6350},+    {0xE6C9, 0x633B},+    {0xE6CA, 0xF991},+    {0xE6CB, 0x693D},+    {0xE6CC, 0x6C87},+    {0xE6CD, 0x6CBF},+    {0xE6CE, 0x6D8E},+    {0xE6CF, 0x6D93},+    {0xE6D0, 0x6DF5},+    {0xE6D1, 0x6F14},+    {0xE6D2, 0xF992},+    {0xE6D3, 0x70DF},+    {0xE6D4, 0x7136},+    {0xE6D5, 0x7159},+    {0xE6D6, 0xF993},+    {0xE6D7, 0x71C3},+    {0xE6D8, 0x71D5},+    {0xE6D9, 0xF994},+    {0xE6DA, 0x784F},+    {0xE6DB, 0x786F},+    {0xE6DC, 0xF995},+    {0xE6DD, 0x7B75},+    {0xE6DE, 0x7DE3},+    {0xE6DF, 0xF996},+    {0xE6E0, 0x7E2F},+    {0xE6E1, 0xF997},+    {0xE6E2, 0x884D},+    {0xE6E3, 0x8EDF},+    {0xE6E4, 0xF998},+    {0xE6E5, 0xF999},+    {0xE6E6, 0xF99A},+    {0xE6E7, 0x925B},+    {0xE6E8, 0xF99B},+    {0xE6E9, 0x9CF6},+    {0xE6EA, 0xF99C},+    {0xE6EB, 0xF99D},+    {0xE6EC, 0xF99E},+    {0xE6ED, 0x6085},+    {0xE6EE, 0x6D85},+    {0xE6EF, 0xF99F},+    {0xE6F0, 0x71B1},+    {0xE6F1, 0xF9A0},+    {0xE6F2, 0xF9A1},+    {0xE6F3, 0x95B1},+    {0xE6F4, 0x53AD},+    {0xE6F5, 0xF9A2},+    {0xE6F6, 0xF9A3},+    {0xE6F7, 0xF9A4},+    {0xE6F8, 0x67D3},+    {0xE6F9, 0xF9A5},+    {0xE6FA, 0x708E},+    {0xE6FB, 0x7130},+    {0xE6FC, 0x7430},+    {0xE6FD, 0x8276},+    {0xE6FE, 0x82D2},+    {0xE7A1, 0xF9A6},+    {0xE7A2, 0x95BB},+    {0xE7A3, 0x9AE5},+    {0xE7A4, 0x9E7D},+    {0xE7A5, 0x66C4},+    {0xE7A6, 0xF9A7},+    {0xE7A7, 0x71C1},+    {0xE7A8, 0x8449},+    {0xE7A9, 0xF9A8},+    {0xE7AA, 0xF9A9},+    {0xE7AB, 0x584B},+    {0xE7AC, 0xF9AA},+    {0xE7AD, 0xF9AB},+    {0xE7AE, 0x5DB8},+    {0xE7AF, 0x5F71},+    {0xE7B0, 0xF9AC},+    {0xE7B1, 0x6620},+    {0xE7B2, 0x668E},+    {0xE7B3, 0x6979},+    {0xE7B4, 0x69AE},+    {0xE7B5, 0x6C38},+    {0xE7B6, 0x6CF3},+    {0xE7B7, 0x6E36},+    {0xE7B8, 0x6F41},+    {0xE7B9, 0x6FDA},+    {0xE7BA, 0x701B},+    {0xE7BB, 0x702F},+    {0xE7BC, 0x7150},+    {0xE7BD, 0x71DF},+    {0xE7BE, 0x7370},+    {0xE7BF, 0xF9AD},+    {0xE7C0, 0x745B},+    {0xE7C1, 0xF9AE},+    {0xE7C2, 0x74D4},+    {0xE7C3, 0x76C8},+    {0xE7C4, 0x7A4E},+    {0xE7C5, 0x7E93},+    {0xE7C6, 0xF9AF},+    {0xE7C7, 0xF9B0},+    {0xE7C8, 0x82F1},+    {0xE7C9, 0x8A60},+    {0xE7CA, 0x8FCE},+    {0xE7CB, 0xF9B1},+    {0xE7CC, 0x9348},+    {0xE7CD, 0xF9B2},+    {0xE7CE, 0x9719},+    {0xE7CF, 0xF9B3},+    {0xE7D0, 0xF9B4},+    {0xE7D1, 0x4E42},+    {0xE7D2, 0x502A},+    {0xE7D3, 0xF9B5},+    {0xE7D4, 0x5208},+    {0xE7D5, 0x53E1},+    {0xE7D6, 0x66F3},+    {0xE7D7, 0x6C6D},+    {0xE7D8, 0x6FCA},+    {0xE7D9, 0x730A},+    {0xE7DA, 0x777F},+    {0xE7DB, 0x7A62},+    {0xE7DC, 0x82AE},+    {0xE7DD, 0x85DD},+    {0xE7DE, 0x8602},+    {0xE7DF, 0xF9B6},+    {0xE7E0, 0x88D4},+    {0xE7E1, 0x8A63},+    {0xE7E2, 0x8B7D},+    {0xE7E3, 0x8C6B},+    {0xE7E4, 0xF9B7},+    {0xE7E5, 0x92B3},+    {0xE7E6, 0xF9B8},+    {0xE7E7, 0x9713},+    {0xE7E8, 0x9810},+    {0xE7E9, 0x4E94},+    {0xE7EA, 0x4F0D},+    {0xE7EB, 0x4FC9},+    {0xE7EC, 0x50B2},+    {0xE7ED, 0x5348},+    {0xE7EE, 0x543E},+    {0xE7EF, 0x5433},+    {0xE7F0, 0x55DA},+    {0xE7F1, 0x5862},+    {0xE7F2, 0x58BA},+    {0xE7F3, 0x5967},+    {0xE7F4, 0x5A1B},+    {0xE7F5, 0x5BE4},+    {0xE7F6, 0x609F},+    {0xE7F7, 0xF9B9},+    {0xE7F8, 0x61CA},+    {0xE7F9, 0x6556},+    {0xE7FA, 0x65FF},+    {0xE7FB, 0x6664},+    {0xE7FC, 0x68A7},+    {0xE7FD, 0x6C5A},+    {0xE7FE, 0x6FB3},+    {0xE8A1, 0x70CF},+    {0xE8A2, 0x71AC},+    {0xE8A3, 0x7352},+    {0xE8A4, 0x7B7D},+    {0xE8A5, 0x8708},+    {0xE8A6, 0x8AA4},+    {0xE8A7, 0x9C32},+    {0xE8A8, 0x9F07},+    {0xE8A9, 0x5C4B},+    {0xE8AA, 0x6C83},+    {0xE8AB, 0x7344},+    {0xE8AC, 0x7389},+    {0xE8AD, 0x923A},+    {0xE8AE, 0x6EAB},+    {0xE8AF, 0x7465},+    {0xE8B0, 0x761F},+    {0xE8B1, 0x7A69},+    {0xE8B2, 0x7E15},+    {0xE8B3, 0x860A},+    {0xE8B4, 0x5140},+    {0xE8B5, 0x58C5},+    {0xE8B6, 0x64C1},+    {0xE8B7, 0x74EE},+    {0xE8B8, 0x7515},+    {0xE8B9, 0x7670},+    {0xE8BA, 0x7FC1},+    {0xE8BB, 0x9095},+    {0xE8BC, 0x96CD},+    {0xE8BD, 0x9954},+    {0xE8BE, 0x6E26},+    {0xE8BF, 0x74E6},+    {0xE8C0, 0x7AA9},+    {0xE8C1, 0x7AAA},+    {0xE8C2, 0x81E5},+    {0xE8C3, 0x86D9},+    {0xE8C4, 0x8778},+    {0xE8C5, 0x8A1B},+    {0xE8C6, 0x5A49},+    {0xE8C7, 0x5B8C},+    {0xE8C8, 0x5B9B},+    {0xE8C9, 0x68A1},+    {0xE8CA, 0x6900},+    {0xE8CB, 0x6D63},+    {0xE8CC, 0x73A9},+    {0xE8CD, 0x7413},+    {0xE8CE, 0x742C},+    {0xE8CF, 0x7897},+    {0xE8D0, 0x7DE9},+    {0xE8D1, 0x7FEB},+    {0xE8D2, 0x8118},+    {0xE8D3, 0x8155},+    {0xE8D4, 0x839E},+    {0xE8D5, 0x8C4C},+    {0xE8D6, 0x962E},+    {0xE8D7, 0x9811},+    {0xE8D8, 0x66F0},+    {0xE8D9, 0x5F80},+    {0xE8DA, 0x65FA},+    {0xE8DB, 0x6789},+    {0xE8DC, 0x6C6A},+    {0xE8DD, 0x738B},+    {0xE8DE, 0x502D},+    {0xE8DF, 0x5A03},+    {0xE8E0, 0x6B6A},+    {0xE8E1, 0x77EE},+    {0xE8E2, 0x5916},+    {0xE8E3, 0x5D6C},+    {0xE8E4, 0x5DCD},+    {0xE8E5, 0x7325},+    {0xE8E6, 0x754F},+    {0xE8E7, 0xF9BA},+    {0xE8E8, 0xF9BB},+    {0xE8E9, 0x50E5},+    {0xE8EA, 0x51F9},+    {0xE8EB, 0x582F},+    {0xE8EC, 0x592D},+    {0xE8ED, 0x5996},+    {0xE8EE, 0x59DA},+    {0xE8EF, 0x5BE5},+    {0xE8F0, 0xF9BC},+    {0xE8F1, 0xF9BD},+    {0xE8F2, 0x5DA2},+    {0xE8F3, 0x62D7},+    {0xE8F4, 0x6416},+    {0xE8F5, 0x6493},+    {0xE8F6, 0x64FE},+    {0xE8F7, 0xF9BE},+    {0xE8F8, 0x66DC},+    {0xE8F9, 0xF9BF},+    {0xE8FA, 0x6A48},+    {0xE8FB, 0xF9C0},+    {0xE8FC, 0x71FF},+    {0xE8FD, 0x7464},+    {0xE8FE, 0xF9C1},+    {0xE9A1, 0x7A88},+    {0xE9A2, 0x7AAF},+    {0xE9A3, 0x7E47},+    {0xE9A4, 0x7E5E},+    {0xE9A5, 0x8000},+    {0xE9A6, 0x8170},+    {0xE9A7, 0xF9C2},+    {0xE9A8, 0x87EF},+    {0xE9A9, 0x8981},+    {0xE9AA, 0x8B20},+    {0xE9AB, 0x9059},+    {0xE9AC, 0xF9C3},+    {0xE9AD, 0x9080},+    {0xE9AE, 0x9952},+    {0xE9AF, 0x617E},+    {0xE9B0, 0x6B32},+    {0xE9B1, 0x6D74},+    {0xE9B2, 0x7E1F},+    {0xE9B3, 0x8925},+    {0xE9B4, 0x8FB1},+    {0xE9B5, 0x4FD1},+    {0xE9B6, 0x50AD},+    {0xE9B7, 0x5197},+    {0xE9B8, 0x52C7},+    {0xE9B9, 0x57C7},+    {0xE9BA, 0x5889},+    {0xE9BB, 0x5BB9},+    {0xE9BC, 0x5EB8},+    {0xE9BD, 0x6142},+    {0xE9BE, 0x6995},+    {0xE9BF, 0x6D8C},+    {0xE9C0, 0x6E67},+    {0xE9C1, 0x6EB6},+    {0xE9C2, 0x7194},+    {0xE9C3, 0x7462},+    {0xE9C4, 0x7528},+    {0xE9C5, 0x752C},+    {0xE9C6, 0x8073},+    {0xE9C7, 0x8338},+    {0xE9C8, 0x84C9},+    {0xE9C9, 0x8E0A},+    {0xE9CA, 0x9394},+    {0xE9CB, 0x93DE},+    {0xE9CC, 0xF9C4},+    {0xE9CD, 0x4E8E},+    {0xE9CE, 0x4F51},+    {0xE9CF, 0x5076},+    {0xE9D0, 0x512A},+    {0xE9D1, 0x53C8},+    {0xE9D2, 0x53CB},+    {0xE9D3, 0x53F3},+    {0xE9D4, 0x5B87},+    {0xE9D5, 0x5BD3},+    {0xE9D6, 0x5C24},+    {0xE9D7, 0x611A},+    {0xE9D8, 0x6182},+    {0xE9D9, 0x65F4},+    {0xE9DA, 0x725B},+    {0xE9DB, 0x7397},+    {0xE9DC, 0x7440},+    {0xE9DD, 0x76C2},+    {0xE9DE, 0x7950},+    {0xE9DF, 0x7991},+    {0xE9E0, 0x79B9},+    {0xE9E1, 0x7D06},+    {0xE9E2, 0x7FBD},+    {0xE9E3, 0x828B},+    {0xE9E4, 0x85D5},+    {0xE9E5, 0x865E},+    {0xE9E6, 0x8FC2},+    {0xE9E7, 0x9047},+    {0xE9E8, 0x90F5},+    {0xE9E9, 0x91EA},+    {0xE9EA, 0x9685},+    {0xE9EB, 0x96E8},+    {0xE9EC, 0x96E9},+    {0xE9ED, 0x52D6},+    {0xE9EE, 0x5F67},+    {0xE9EF, 0x65ED},+    {0xE9F0, 0x6631},+    {0xE9F1, 0x682F},+    {0xE9F2, 0x715C},+    {0xE9F3, 0x7A36},+    {0xE9F4, 0x90C1},+    {0xE9F5, 0x980A},+    {0xE9F6, 0x4E91},+    {0xE9F7, 0xF9C5},+    {0xE9F8, 0x6A52},+    {0xE9F9, 0x6B9E},+    {0xE9FA, 0x6F90},+    {0xE9FB, 0x7189},+    {0xE9FC, 0x8018},+    {0xE9FD, 0x82B8},+    {0xE9FE, 0x8553},+    {0xEAA1, 0x904B},+    {0xEAA2, 0x9695},+    {0xEAA3, 0x96F2},+    {0xEAA4, 0x97FB},+    {0xEAA5, 0x851A},+    {0xEAA6, 0x9B31},+    {0xEAA7, 0x4E90},+    {0xEAA8, 0x718A},+    {0xEAA9, 0x96C4},+    {0xEAAA, 0x5143},+    {0xEAAB, 0x539F},+    {0xEAAC, 0x54E1},+    {0xEAAD, 0x5713},+    {0xEAAE, 0x5712},+    {0xEAAF, 0x57A3},+    {0xEAB0, 0x5A9B},+    {0xEAB1, 0x5AC4},+    {0xEAB2, 0x5BC3},+    {0xEAB3, 0x6028},+    {0xEAB4, 0x613F},+    {0xEAB5, 0x63F4},+    {0xEAB6, 0x6C85},+    {0xEAB7, 0x6D39},+    {0xEAB8, 0x6E72},+    {0xEAB9, 0x6E90},+    {0xEABA, 0x7230},+    {0xEABB, 0x733F},+    {0xEABC, 0x7457},+    {0xEABD, 0x82D1},+    {0xEABE, 0x8881},+    {0xEABF, 0x8F45},+    {0xEAC0, 0x9060},+    {0xEAC1, 0xF9C6},+    {0xEAC2, 0x9662},+    {0xEAC3, 0x9858},+    {0xEAC4, 0x9D1B},+    {0xEAC5, 0x6708},+    {0xEAC6, 0x8D8A},+    {0xEAC7, 0x925E},+    {0xEAC8, 0x4F4D},+    {0xEAC9, 0x5049},+    {0xEACA, 0x50DE},+    {0xEACB, 0x5371},+    {0xEACC, 0x570D},+    {0xEACD, 0x59D4},+    {0xEACE, 0x5A01},+    {0xEACF, 0x5C09},+    {0xEAD0, 0x6170},+    {0xEAD1, 0x6690},+    {0xEAD2, 0x6E2D},+    {0xEAD3, 0x7232},+    {0xEAD4, 0x744B},+    {0xEAD5, 0x7DEF},+    {0xEAD6, 0x80C3},+    {0xEAD7, 0x840E},+    {0xEAD8, 0x8466},+    {0xEAD9, 0x853F},+    {0xEADA, 0x875F},+    {0xEADB, 0x885B},+    {0xEADC, 0x8918},+    {0xEADD, 0x8B02},+    {0xEADE, 0x9055},+    {0xEADF, 0x97CB},+    {0xEAE0, 0x9B4F},+    {0xEAE1, 0x4E73},+    {0xEAE2, 0x4F91},+    {0xEAE3, 0x5112},+    {0xEAE4, 0x516A},+    {0xEAE5, 0xF9C7},+    {0xEAE6, 0x552F},+    {0xEAE7, 0x55A9},+    {0xEAE8, 0x5B7A},+    {0xEAE9, 0x5BA5},+    {0xEAEA, 0x5E7C},+    {0xEAEB, 0x5E7D},+    {0xEAEC, 0x5EBE},+    {0xEAED, 0x60A0},+    {0xEAEE, 0x60DF},+    {0xEAEF, 0x6108},+    {0xEAF0, 0x6109},+    {0xEAF1, 0x63C4},+    {0xEAF2, 0x6538},+    {0xEAF3, 0x6709},+    {0xEAF4, 0xF9C8},+    {0xEAF5, 0x67D4},+    {0xEAF6, 0x67DA},+    {0xEAF7, 0xF9C9},+    {0xEAF8, 0x6961},+    {0xEAF9, 0x6962},+    {0xEAFA, 0x6CB9},+    {0xEAFB, 0x6D27},+    {0xEAFC, 0xF9CA},+    {0xEAFD, 0x6E38},+    {0xEAFE, 0xF9CB},+    {0xEBA1, 0x6FE1},+    {0xEBA2, 0x7336},+    {0xEBA3, 0x7337},+    {0xEBA4, 0xF9CC},+    {0xEBA5, 0x745C},+    {0xEBA6, 0x7531},+    {0xEBA7, 0xF9CD},+    {0xEBA8, 0x7652},+    {0xEBA9, 0xF9CE},+    {0xEBAA, 0xF9CF},+    {0xEBAB, 0x7DAD},+    {0xEBAC, 0x81FE},+    {0xEBAD, 0x8438},+    {0xEBAE, 0x88D5},+    {0xEBAF, 0x8A98},+    {0xEBB0, 0x8ADB},+    {0xEBB1, 0x8AED},+    {0xEBB2, 0x8E30},+    {0xEBB3, 0x8E42},+    {0xEBB4, 0x904A},+    {0xEBB5, 0x903E},+    {0xEBB6, 0x907A},+    {0xEBB7, 0x9149},+    {0xEBB8, 0x91C9},+    {0xEBB9, 0x936E},+    {0xEBBA, 0xF9D0},+    {0xEBBB, 0xF9D1},+    {0xEBBC, 0x5809},+    {0xEBBD, 0xF9D2},+    {0xEBBE, 0x6BD3},+    {0xEBBF, 0x8089},+    {0xEBC0, 0x80B2},+    {0xEBC1, 0xF9D3},+    {0xEBC2, 0xF9D4},+    {0xEBC3, 0x5141},+    {0xEBC4, 0x596B},+    {0xEBC5, 0x5C39},+    {0xEBC6, 0xF9D5},+    {0xEBC7, 0xF9D6},+    {0xEBC8, 0x6F64},+    {0xEBC9, 0x73A7},+    {0xEBCA, 0x80E4},+    {0xEBCB, 0x8D07},+    {0xEBCC, 0xF9D7},+    {0xEBCD, 0x9217},+    {0xEBCE, 0x958F},+    {0xEBCF, 0xF9D8},+    {0xEBD0, 0xF9D9},+    {0xEBD1, 0xF9DA},+    {0xEBD2, 0xF9DB},+    {0xEBD3, 0x807F},+    {0xEBD4, 0x620E},+    {0xEBD5, 0x701C},+    {0xEBD6, 0x7D68},+    {0xEBD7, 0x878D},+    {0xEBD8, 0xF9DC},+    {0xEBD9, 0x57A0},+    {0xEBDA, 0x6069},+    {0xEBDB, 0x6147},+    {0xEBDC, 0x6BB7},+    {0xEBDD, 0x8ABE},+    {0xEBDE, 0x9280},+    {0xEBDF, 0x96B1},+    {0xEBE0, 0x4E59},+    {0xEBE1, 0x541F},+    {0xEBE2, 0x6DEB},+    {0xEBE3, 0x852D},+    {0xEBE4, 0x9670},+    {0xEBE5, 0x97F3},+    {0xEBE6, 0x98EE},+    {0xEBE7, 0x63D6},+    {0xEBE8, 0x6CE3},+    {0xEBE9, 0x9091},+    {0xEBEA, 0x51DD},+    {0xEBEB, 0x61C9},+    {0xEBEC, 0x81BA},+    {0xEBED, 0x9DF9},+    {0xEBEE, 0x4F9D},+    {0xEBEF, 0x501A},+    {0xEBF0, 0x5100},+    {0xEBF1, 0x5B9C},+    {0xEBF2, 0x610F},+    {0xEBF3, 0x61FF},+    {0xEBF4, 0x64EC},+    {0xEBF5, 0x6905},+    {0xEBF6, 0x6BC5},+    {0xEBF7, 0x7591},+    {0xEBF8, 0x77E3},+    {0xEBF9, 0x7FA9},+    {0xEBFA, 0x8264},+    {0xEBFB, 0x858F},+    {0xEBFC, 0x87FB},+    {0xEBFD, 0x8863},+    {0xEBFE, 0x8ABC},+    {0xECA1, 0x8B70},+    {0xECA2, 0x91AB},+    {0xECA3, 0x4E8C},+    {0xECA4, 0x4EE5},+    {0xECA5, 0x4F0A},+    {0xECA6, 0xF9DD},+    {0xECA7, 0xF9DE},+    {0xECA8, 0x5937},+    {0xECA9, 0x59E8},+    {0xECAA, 0xF9DF},+    {0xECAB, 0x5DF2},+    {0xECAC, 0x5F1B},+    {0xECAD, 0x5F5B},+    {0xECAE, 0x6021},+    {0xECAF, 0xF9E0},+    {0xECB0, 0xF9E1},+    {0xECB1, 0xF9E2},+    {0xECB2, 0xF9E3},+    {0xECB3, 0x723E},+    {0xECB4, 0x73E5},+    {0xECB5, 0xF9E4},+    {0xECB6, 0x7570},+    {0xECB7, 0x75CD},+    {0xECB8, 0xF9E5},+    {0xECB9, 0x79FB},+    {0xECBA, 0xF9E6},+    {0xECBB, 0x800C},+    {0xECBC, 0x8033},+    {0xECBD, 0x8084},+    {0xECBE, 0x82E1},+    {0xECBF, 0x8351},+    {0xECC0, 0xF9E7},+    {0xECC1, 0xF9E8},+    {0xECC2, 0x8CBD},+    {0xECC3, 0x8CB3},+    {0xECC4, 0x9087},+    {0xECC5, 0xF9E9},+    {0xECC6, 0xF9EA},+    {0xECC7, 0x98F4},+    {0xECC8, 0x990C},+    {0xECC9, 0xF9EB},+    {0xECCA, 0xF9EC},+    {0xECCB, 0x7037},+    {0xECCC, 0x76CA},+    {0xECCD, 0x7FCA},+    {0xECCE, 0x7FCC},+    {0xECCF, 0x7FFC},+    {0xECD0, 0x8B1A},+    {0xECD1, 0x4EBA},+    {0xECD2, 0x4EC1},+    {0xECD3, 0x5203},+    {0xECD4, 0x5370},+    {0xECD5, 0xF9ED},+    {0xECD6, 0x54BD},+    {0xECD7, 0x56E0},+    {0xECD8, 0x59FB},+    {0xECD9, 0x5BC5},+    {0xECDA, 0x5F15},+    {0xECDB, 0x5FCD},+    {0xECDC, 0x6E6E},+    {0xECDD, 0xF9EE},+    {0xECDE, 0xF9EF},+    {0xECDF, 0x7D6A},+    {0xECE0, 0x8335},+    {0xECE1, 0xF9F0},+    {0xECE2, 0x8693},+    {0xECE3, 0x8A8D},+    {0xECE4, 0xF9F1},+    {0xECE5, 0x976D},+    {0xECE6, 0x9777},+    {0xECE7, 0xF9F2},+    {0xECE8, 0xF9F3},+    {0xECE9, 0x4E00},+    {0xECEA, 0x4F5A},+    {0xECEB, 0x4F7E},+    {0xECEC, 0x58F9},+    {0xECED, 0x65E5},+    {0xECEE, 0x6EA2},+    {0xECEF, 0x9038},+    {0xECF0, 0x93B0},+    {0xECF1, 0x99B9},+    {0xECF2, 0x4EFB},+    {0xECF3, 0x58EC},+    {0xECF4, 0x598A},+    {0xECF5, 0x59D9},+    {0xECF6, 0x6041},+    {0xECF7, 0xF9F4},+    {0xECF8, 0xF9F5},+    {0xECF9, 0x7A14},+    {0xECFA, 0xF9F6},+    {0xECFB, 0x834F},+    {0xECFC, 0x8CC3},+    {0xECFD, 0x5165},+    {0xECFE, 0x5344},+    {0xEDA1, 0xF9F7},+    {0xEDA2, 0xF9F8},+    {0xEDA3, 0xF9F9},+    {0xEDA4, 0x4ECD},+    {0xEDA5, 0x5269},+    {0xEDA6, 0x5B55},+    {0xEDA7, 0x82BF},+    {0xEDA8, 0x4ED4},+    {0xEDA9, 0x523A},+    {0xEDAA, 0x54A8},+    {0xEDAB, 0x59C9},+    {0xEDAC, 0x59FF},+    {0xEDAD, 0x5B50},+    {0xEDAE, 0x5B57},+    {0xEDAF, 0x5B5C},+    {0xEDB0, 0x6063},+    {0xEDB1, 0x6148},+    {0xEDB2, 0x6ECB},+    {0xEDB3, 0x7099},+    {0xEDB4, 0x716E},+    {0xEDB5, 0x7386},+    {0xEDB6, 0x74F7},+    {0xEDB7, 0x75B5},+    {0xEDB8, 0x78C1},+    {0xEDB9, 0x7D2B},+    {0xEDBA, 0x8005},+    {0xEDBB, 0x81EA},+    {0xEDBC, 0x8328},+    {0xEDBD, 0x8517},+    {0xEDBE, 0x85C9},+    {0xEDBF, 0x8AEE},+    {0xEDC0, 0x8CC7},+    {0xEDC1, 0x96CC},+    {0xEDC2, 0x4F5C},+    {0xEDC3, 0x52FA},+    {0xEDC4, 0x56BC},+    {0xEDC5, 0x65AB},+    {0xEDC6, 0x6628},+    {0xEDC7, 0x707C},+    {0xEDC8, 0x70B8},+    {0xEDC9, 0x7235},+    {0xEDCA, 0x7DBD},+    {0xEDCB, 0x828D},+    {0xEDCC, 0x914C},+    {0xEDCD, 0x96C0},+    {0xEDCE, 0x9D72},+    {0xEDCF, 0x5B71},+    {0xEDD0, 0x68E7},+    {0xEDD1, 0x6B98},+    {0xEDD2, 0x6F7A},+    {0xEDD3, 0x76DE},+    {0xEDD4, 0x5C91},+    {0xEDD5, 0x66AB},+    {0xEDD6, 0x6F5B},+    {0xEDD7, 0x7BB4},+    {0xEDD8, 0x7C2A},+    {0xEDD9, 0x8836},+    {0xEDDA, 0x96DC},+    {0xEDDB, 0x4E08},+    {0xEDDC, 0x4ED7},+    {0xEDDD, 0x5320},+    {0xEDDE, 0x5834},+    {0xEDDF, 0x58BB},+    {0xEDE0, 0x58EF},+    {0xEDE1, 0x596C},+    {0xEDE2, 0x5C07},+    {0xEDE3, 0x5E33},+    {0xEDE4, 0x5E84},+    {0xEDE5, 0x5F35},+    {0xEDE6, 0x638C},+    {0xEDE7, 0x66B2},+    {0xEDE8, 0x6756},+    {0xEDE9, 0x6A1F},+    {0xEDEA, 0x6AA3},+    {0xEDEB, 0x6B0C},+    {0xEDEC, 0x6F3F},+    {0xEDED, 0x7246},+    {0xEDEE, 0xF9FA},+    {0xEDEF, 0x7350},+    {0xEDF0, 0x748B},+    {0xEDF1, 0x7AE0},+    {0xEDF2, 0x7CA7},+    {0xEDF3, 0x8178},+    {0xEDF4, 0x81DF},+    {0xEDF5, 0x81E7},+    {0xEDF6, 0x838A},+    {0xEDF7, 0x846C},+    {0xEDF8, 0x8523},+    {0xEDF9, 0x8594},+    {0xEDFA, 0x85CF},+    {0xEDFB, 0x88DD},+    {0xEDFC, 0x8D13},+    {0xEDFD, 0x91AC},+    {0xEDFE, 0x9577},+    {0xEEA1, 0x969C},+    {0xEEA2, 0x518D},+    {0xEEA3, 0x54C9},+    {0xEEA4, 0x5728},+    {0xEEA5, 0x5BB0},+    {0xEEA6, 0x624D},+    {0xEEA7, 0x6750},+    {0xEEA8, 0x683D},+    {0xEEA9, 0x6893},+    {0xEEAA, 0x6E3D},+    {0xEEAB, 0x6ED3},+    {0xEEAC, 0x707D},+    {0xEEAD, 0x7E21},+    {0xEEAE, 0x88C1},+    {0xEEAF, 0x8CA1},+    {0xEEB0, 0x8F09},+    {0xEEB1, 0x9F4B},+    {0xEEB2, 0x9F4E},+    {0xEEB3, 0x722D},+    {0xEEB4, 0x7B8F},+    {0xEEB5, 0x8ACD},+    {0xEEB6, 0x931A},+    {0xEEB7, 0x4F47},+    {0xEEB8, 0x4F4E},+    {0xEEB9, 0x5132},+    {0xEEBA, 0x5480},+    {0xEEBB, 0x59D0},+    {0xEEBC, 0x5E95},+    {0xEEBD, 0x62B5},+    {0xEEBE, 0x6775},+    {0xEEBF, 0x696E},+    {0xEEC0, 0x6A17},+    {0xEEC1, 0x6CAE},+    {0xEEC2, 0x6E1A},+    {0xEEC3, 0x72D9},+    {0xEEC4, 0x732A},+    {0xEEC5, 0x75BD},+    {0xEEC6, 0x7BB8},+    {0xEEC7, 0x7D35},+    {0xEEC8, 0x82E7},+    {0xEEC9, 0x83F9},+    {0xEECA, 0x8457},+    {0xEECB, 0x85F7},+    {0xEECC, 0x8A5B},+    {0xEECD, 0x8CAF},+    {0xEECE, 0x8E87},+    {0xEECF, 0x9019},+    {0xEED0, 0x90B8},+    {0xEED1, 0x96CE},+    {0xEED2, 0x9F5F},+    {0xEED3, 0x52E3},+    {0xEED4, 0x540A},+    {0xEED5, 0x5AE1},+    {0xEED6, 0x5BC2},+    {0xEED7, 0x6458},+    {0xEED8, 0x6575},+    {0xEED9, 0x6EF4},+    {0xEEDA, 0x72C4},+    {0xEEDB, 0xF9FB},+    {0xEEDC, 0x7684},+    {0xEEDD, 0x7A4D},+    {0xEEDE, 0x7B1B},+    {0xEEDF, 0x7C4D},+    {0xEEE0, 0x7E3E},+    {0xEEE1, 0x7FDF},+    {0xEEE2, 0x837B},+    {0xEEE3, 0x8B2B},+    {0xEEE4, 0x8CCA},+    {0xEEE5, 0x8D64},+    {0xEEE6, 0x8DE1},+    {0xEEE7, 0x8E5F},+    {0xEEE8, 0x8FEA},+    {0xEEE9, 0x8FF9},+    {0xEEEA, 0x9069},+    {0xEEEB, 0x93D1},+    {0xEEEC, 0x4F43},+    {0xEEED, 0x4F7A},+    {0xEEEE, 0x50B3},+    {0xEEEF, 0x5168},+    {0xEEF0, 0x5178},+    {0xEEF1, 0x524D},+    {0xEEF2, 0x526A},+    {0xEEF3, 0x5861},+    {0xEEF4, 0x587C},+    {0xEEF5, 0x5960},+    {0xEEF6, 0x5C08},+    {0xEEF7, 0x5C55},+    {0xEEF8, 0x5EDB},+    {0xEEF9, 0x609B},+    {0xEEFA, 0x6230},+    {0xEEFB, 0x6813},+    {0xEEFC, 0x6BBF},+    {0xEEFD, 0x6C08},+    {0xEEFE, 0x6FB1},+    {0xEFA1, 0x714E},+    {0xEFA2, 0x7420},+    {0xEFA3, 0x7530},+    {0xEFA4, 0x7538},+    {0xEFA5, 0x7551},+    {0xEFA6, 0x7672},+    {0xEFA7, 0x7B4C},+    {0xEFA8, 0x7B8B},+    {0xEFA9, 0x7BAD},+    {0xEFAA, 0x7BC6},+    {0xEFAB, 0x7E8F},+    {0xEFAC, 0x8A6E},+    {0xEFAD, 0x8F3E},+    {0xEFAE, 0x8F49},+    {0xEFAF, 0x923F},+    {0xEFB0, 0x9293},+    {0xEFB1, 0x9322},+    {0xEFB2, 0x942B},+    {0xEFB3, 0x96FB},+    {0xEFB4, 0x985A},+    {0xEFB5, 0x986B},+    {0xEFB6, 0x991E},+    {0xEFB7, 0x5207},+    {0xEFB8, 0x622A},+    {0xEFB9, 0x6298},+    {0xEFBA, 0x6D59},+    {0xEFBB, 0x7664},+    {0xEFBC, 0x7ACA},+    {0xEFBD, 0x7BC0},+    {0xEFBE, 0x7D76},+    {0xEFBF, 0x5360},+    {0xEFC0, 0x5CBE},+    {0xEFC1, 0x5E97},+    {0xEFC2, 0x6F38},+    {0xEFC3, 0x70B9},+    {0xEFC4, 0x7C98},+    {0xEFC5, 0x9711},+    {0xEFC6, 0x9B8E},+    {0xEFC7, 0x9EDE},+    {0xEFC8, 0x63A5},+    {0xEFC9, 0x647A},+    {0xEFCA, 0x8776},+    {0xEFCB, 0x4E01},+    {0xEFCC, 0x4E95},+    {0xEFCD, 0x4EAD},+    {0xEFCE, 0x505C},+    {0xEFCF, 0x5075},+    {0xEFD0, 0x5448},+    {0xEFD1, 0x59C3},+    {0xEFD2, 0x5B9A},+    {0xEFD3, 0x5E40},+    {0xEFD4, 0x5EAD},+    {0xEFD5, 0x5EF7},+    {0xEFD6, 0x5F81},+    {0xEFD7, 0x60C5},+    {0xEFD8, 0x633A},+    {0xEFD9, 0x653F},+    {0xEFDA, 0x6574},+    {0xEFDB, 0x65CC},+    {0xEFDC, 0x6676},+    {0xEFDD, 0x6678},+    {0xEFDE, 0x67FE},+    {0xEFDF, 0x6968},+    {0xEFE0, 0x6A89},+    {0xEFE1, 0x6B63},+    {0xEFE2, 0x6C40},+    {0xEFE3, 0x6DC0},+    {0xEFE4, 0x6DE8},+    {0xEFE5, 0x6E1F},+    {0xEFE6, 0x6E5E},+    {0xEFE7, 0x701E},+    {0xEFE8, 0x70A1},+    {0xEFE9, 0x738E},+    {0xEFEA, 0x73FD},+    {0xEFEB, 0x753A},+    {0xEFEC, 0x775B},+    {0xEFED, 0x7887},+    {0xEFEE, 0x798E},+    {0xEFEF, 0x7A0B},+    {0xEFF0, 0x7A7D},+    {0xEFF1, 0x7CBE},+    {0xEFF2, 0x7D8E},+    {0xEFF3, 0x8247},+    {0xEFF4, 0x8A02},+    {0xEFF5, 0x8AEA},+    {0xEFF6, 0x8C9E},+    {0xEFF7, 0x912D},+    {0xEFF8, 0x914A},+    {0xEFF9, 0x91D8},+    {0xEFFA, 0x9266},+    {0xEFFB, 0x92CC},+    {0xEFFC, 0x9320},+    {0xEFFD, 0x9706},+    {0xEFFE, 0x9756},+    {0xF0A1, 0x975C},+    {0xF0A2, 0x9802},+    {0xF0A3, 0x9F0E},+    {0xF0A4, 0x5236},+    {0xF0A5, 0x5291},+    {0xF0A6, 0x557C},+    {0xF0A7, 0x5824},+    {0xF0A8, 0x5E1D},+    {0xF0A9, 0x5F1F},+    {0xF0AA, 0x608C},+    {0xF0AB, 0x63D0},+    {0xF0AC, 0x68AF},+    {0xF0AD, 0x6FDF},+    {0xF0AE, 0x796D},+    {0xF0AF, 0x7B2C},+    {0xF0B0, 0x81CD},+    {0xF0B1, 0x85BA},+    {0xF0B2, 0x88FD},+    {0xF0B3, 0x8AF8},+    {0xF0B4, 0x8E44},+    {0xF0B5, 0x918D},+    {0xF0B6, 0x9664},+    {0xF0B7, 0x969B},+    {0xF0B8, 0x973D},+    {0xF0B9, 0x984C},+    {0xF0BA, 0x9F4A},+    {0xF0BB, 0x4FCE},+    {0xF0BC, 0x5146},+    {0xF0BD, 0x51CB},+    {0xF0BE, 0x52A9},+    {0xF0BF, 0x5632},+    {0xF0C0, 0x5F14},+    {0xF0C1, 0x5F6B},+    {0xF0C2, 0x63AA},+    {0xF0C3, 0x64CD},+    {0xF0C4, 0x65E9},+    {0xF0C5, 0x6641},+    {0xF0C6, 0x66FA},+    {0xF0C7, 0x66F9},+    {0xF0C8, 0x671D},+    {0xF0C9, 0x689D},+    {0xF0CA, 0x68D7},+    {0xF0CB, 0x69FD},+    {0xF0CC, 0x6F15},+    {0xF0CD, 0x6F6E},+    {0xF0CE, 0x7167},+    {0xF0CF, 0x71E5},+    {0xF0D0, 0x722A},+    {0xF0D1, 0x74AA},+    {0xF0D2, 0x773A},+    {0xF0D3, 0x7956},+    {0xF0D4, 0x795A},+    {0xF0D5, 0x79DF},+    {0xF0D6, 0x7A20},+    {0xF0D7, 0x7A95},+    {0xF0D8, 0x7C97},+    {0xF0D9, 0x7CDF},+    {0xF0DA, 0x7D44},+    {0xF0DB, 0x7E70},+    {0xF0DC, 0x8087},+    {0xF0DD, 0x85FB},+    {0xF0DE, 0x86A4},+    {0xF0DF, 0x8A54},+    {0xF0E0, 0x8ABF},+    {0xF0E1, 0x8D99},+    {0xF0E2, 0x8E81},+    {0xF0E3, 0x9020},+    {0xF0E4, 0x906D},+    {0xF0E5, 0x91E3},+    {0xF0E6, 0x963B},+    {0xF0E7, 0x96D5},+    {0xF0E8, 0x9CE5},+    {0xF0E9, 0x65CF},+    {0xF0EA, 0x7C07},+    {0xF0EB, 0x8DB3},+    {0xF0EC, 0x93C3},+    {0xF0ED, 0x5B58},+    {0xF0EE, 0x5C0A},+    {0xF0EF, 0x5352},+    {0xF0F0, 0x62D9},+    {0xF0F1, 0x731D},+    {0xF0F2, 0x5027},+    {0xF0F3, 0x5B97},+    {0xF0F4, 0x5F9E},+    {0xF0F5, 0x60B0},+    {0xF0F6, 0x616B},+    {0xF0F7, 0x68D5},+    {0xF0F8, 0x6DD9},+    {0xF0F9, 0x742E},+    {0xF0FA, 0x7A2E},+    {0xF0FB, 0x7D42},+    {0xF0FC, 0x7D9C},+    {0xF0FD, 0x7E31},+    {0xF0FE, 0x816B},+    {0xF1A1, 0x8E2A},+    {0xF1A2, 0x8E35},+    {0xF1A3, 0x937E},+    {0xF1A4, 0x9418},+    {0xF1A5, 0x4F50},+    {0xF1A6, 0x5750},+    {0xF1A7, 0x5DE6},+    {0xF1A8, 0x5EA7},+    {0xF1A9, 0x632B},+    {0xF1AA, 0x7F6A},+    {0xF1AB, 0x4E3B},+    {0xF1AC, 0x4F4F},+    {0xF1AD, 0x4F8F},+    {0xF1AE, 0x505A},+    {0xF1AF, 0x59DD},+    {0xF1B0, 0x80C4},+    {0xF1B1, 0x546A},+    {0xF1B2, 0x5468},+    {0xF1B3, 0x55FE},+    {0xF1B4, 0x594F},+    {0xF1B5, 0x5B99},+    {0xF1B6, 0x5DDE},+    {0xF1B7, 0x5EDA},+    {0xF1B8, 0x665D},+    {0xF1B9, 0x6731},+    {0xF1BA, 0x67F1},+    {0xF1BB, 0x682A},+    {0xF1BC, 0x6CE8},+    {0xF1BD, 0x6D32},+    {0xF1BE, 0x6E4A},+    {0xF1BF, 0x6F8D},+    {0xF1C0, 0x70B7},+    {0xF1C1, 0x73E0},+    {0xF1C2, 0x7587},+    {0xF1C3, 0x7C4C},+    {0xF1C4, 0x7D02},+    {0xF1C5, 0x7D2C},+    {0xF1C6, 0x7DA2},+    {0xF1C7, 0x821F},+    {0xF1C8, 0x86DB},+    {0xF1C9, 0x8A3B},+    {0xF1CA, 0x8A85},+    {0xF1CB, 0x8D70},+    {0xF1CC, 0x8E8A},+    {0xF1CD, 0x8F33},+    {0xF1CE, 0x9031},+    {0xF1CF, 0x914E},+    {0xF1D0, 0x9152},+    {0xF1D1, 0x9444},+    {0xF1D2, 0x99D0},+    {0xF1D3, 0x7AF9},+    {0xF1D4, 0x7CA5},+    {0xF1D5, 0x4FCA},+    {0xF1D6, 0x5101},+    {0xF1D7, 0x51C6},+    {0xF1D8, 0x57C8},+    {0xF1D9, 0x5BEF},+    {0xF1DA, 0x5CFB},+    {0xF1DB, 0x6659},+    {0xF1DC, 0x6A3D},+    {0xF1DD, 0x6D5A},+    {0xF1DE, 0x6E96},+    {0xF1DF, 0x6FEC},+    {0xF1E0, 0x710C},+    {0xF1E1, 0x756F},+    {0xF1E2, 0x7AE3},+    {0xF1E3, 0x8822},+    {0xF1E4, 0x9021},+    {0xF1E5, 0x9075},+    {0xF1E6, 0x96CB},+    {0xF1E7, 0x99FF},+    {0xF1E8, 0x8301},+    {0xF1E9, 0x4E2D},+    {0xF1EA, 0x4EF2},+    {0xF1EB, 0x8846},+    {0xF1EC, 0x91CD},+    {0xF1ED, 0x537D},+    {0xF1EE, 0x6ADB},+    {0xF1EF, 0x696B},+    {0xF1F0, 0x6C41},+    {0xF1F1, 0x847A},+    {0xF1F2, 0x589E},+    {0xF1F3, 0x618E},+    {0xF1F4, 0x66FE},+    {0xF1F5, 0x62EF},+    {0xF1F6, 0x70DD},+    {0xF1F7, 0x7511},+    {0xF1F8, 0x75C7},+    {0xF1F9, 0x7E52},+    {0xF1FA, 0x84B8},+    {0xF1FB, 0x8B49},+    {0xF1FC, 0x8D08},+    {0xF1FD, 0x4E4B},+    {0xF1FE, 0x53EA},+    {0xF2A1, 0x54AB},+    {0xF2A2, 0x5730},+    {0xF2A3, 0x5740},+    {0xF2A4, 0x5FD7},+    {0xF2A5, 0x6301},+    {0xF2A6, 0x6307},+    {0xF2A7, 0x646F},+    {0xF2A8, 0x652F},+    {0xF2A9, 0x65E8},+    {0xF2AA, 0x667A},+    {0xF2AB, 0x679D},+    {0xF2AC, 0x67B3},+    {0xF2AD, 0x6B62},+    {0xF2AE, 0x6C60},+    {0xF2AF, 0x6C9A},+    {0xF2B0, 0x6F2C},+    {0xF2B1, 0x77E5},+    {0xF2B2, 0x7825},+    {0xF2B3, 0x7949},+    {0xF2B4, 0x7957},+    {0xF2B5, 0x7D19},+    {0xF2B6, 0x80A2},+    {0xF2B7, 0x8102},+    {0xF2B8, 0x81F3},+    {0xF2B9, 0x829D},+    {0xF2BA, 0x82B7},+    {0xF2BB, 0x8718},+    {0xF2BC, 0x8A8C},+    {0xF2BD, 0xF9FC},+    {0xF2BE, 0x8D04},+    {0xF2BF, 0x8DBE},+    {0xF2C0, 0x9072},+    {0xF2C1, 0x76F4},+    {0xF2C2, 0x7A19},+    {0xF2C3, 0x7A37},+    {0xF2C4, 0x7E54},+    {0xF2C5, 0x8077},+    {0xF2C6, 0x5507},+    {0xF2C7, 0x55D4},+    {0xF2C8, 0x5875},+    {0xF2C9, 0x632F},+    {0xF2CA, 0x6422},+    {0xF2CB, 0x6649},+    {0xF2CC, 0x664B},+    {0xF2CD, 0x686D},+    {0xF2CE, 0x699B},+    {0xF2CF, 0x6B84},+    {0xF2D0, 0x6D25},+    {0xF2D1, 0x6EB1},+    {0xF2D2, 0x73CD},+    {0xF2D3, 0x7468},+    {0xF2D4, 0x74A1},+    {0xF2D5, 0x755B},+    {0xF2D6, 0x75B9},+    {0xF2D7, 0x76E1},+    {0xF2D8, 0x771E},+    {0xF2D9, 0x778B},+    {0xF2DA, 0x79E6},+    {0xF2DB, 0x7E09},+    {0xF2DC, 0x7E1D},+    {0xF2DD, 0x81FB},+    {0xF2DE, 0x852F},+    {0xF2DF, 0x8897},+    {0xF2E0, 0x8A3A},+    {0xF2E1, 0x8CD1},+    {0xF2E2, 0x8EEB},+    {0xF2E3, 0x8FB0},+    {0xF2E4, 0x9032},+    {0xF2E5, 0x93AD},+    {0xF2E6, 0x9663},+    {0xF2E7, 0x9673},+    {0xF2E8, 0x9707},+    {0xF2E9, 0x4F84},+    {0xF2EA, 0x53F1},+    {0xF2EB, 0x59EA},+    {0xF2EC, 0x5AC9},+    {0xF2ED, 0x5E19},+    {0xF2EE, 0x684E},+    {0xF2EF, 0x74C6},+    {0xF2F0, 0x75BE},+    {0xF2F1, 0x79E9},+    {0xF2F2, 0x7A92},+    {0xF2F3, 0x81A3},+    {0xF2F4, 0x86ED},+    {0xF2F5, 0x8CEA},+    {0xF2F6, 0x8DCC},+    {0xF2F7, 0x8FED},+    {0xF2F8, 0x659F},+    {0xF2F9, 0x6715},+    {0xF2FA, 0xF9FD},+    {0xF2FB, 0x57F7},+    {0xF2FC, 0x6F57},+    {0xF2FD, 0x7DDD},+    {0xF2FE, 0x8F2F},+    {0xF3A1, 0x93F6},+    {0xF3A2, 0x96C6},+    {0xF3A3, 0x5FB5},+    {0xF3A4, 0x61F2},+    {0xF3A5, 0x6F84},+    {0xF3A6, 0x4E14},+    {0xF3A7, 0x4F98},+    {0xF3A8, 0x501F},+    {0xF3A9, 0x53C9},+    {0xF3AA, 0x55DF},+    {0xF3AB, 0x5D6F},+    {0xF3AC, 0x5DEE},+    {0xF3AD, 0x6B21},+    {0xF3AE, 0x6B64},+    {0xF3AF, 0x78CB},+    {0xF3B0, 0x7B9A},+    {0xF3B1, 0xF9FE},+    {0xF3B2, 0x8E49},+    {0xF3B3, 0x8ECA},+    {0xF3B4, 0x906E},+    {0xF3B5, 0x6349},+    {0xF3B6, 0x643E},+    {0xF3B7, 0x7740},+    {0xF3B8, 0x7A84},+    {0xF3B9, 0x932F},+    {0xF3BA, 0x947F},+    {0xF3BB, 0x9F6A},+    {0xF3BC, 0x64B0},+    {0xF3BD, 0x6FAF},+    {0xF3BE, 0x71E6},+    {0xF3BF, 0x74A8},+    {0xF3C0, 0x74DA},+    {0xF3C1, 0x7AC4},+    {0xF3C2, 0x7C12},+    {0xF3C3, 0x7E82},+    {0xF3C4, 0x7CB2},+    {0xF3C5, 0x7E98},+    {0xF3C6, 0x8B9A},+    {0xF3C7, 0x8D0A},+    {0xF3C8, 0x947D},+    {0xF3C9, 0x9910},+    {0xF3CA, 0x994C},+    {0xF3CB, 0x5239},+    {0xF3CC, 0x5BDF},+    {0xF3CD, 0x64E6},+    {0xF3CE, 0x672D},+    {0xF3CF, 0x7D2E},+    {0xF3D0, 0x50ED},+    {0xF3D1, 0x53C3},+    {0xF3D2, 0x5879},+    {0xF3D3, 0x6158},+    {0xF3D4, 0x6159},+    {0xF3D5, 0x61FA},+    {0xF3D6, 0x65AC},+    {0xF3D7, 0x7AD9},+    {0xF3D8, 0x8B92},+    {0xF3D9, 0x8B96},+    {0xF3DA, 0x5009},+    {0xF3DB, 0x5021},+    {0xF3DC, 0x5275},+    {0xF3DD, 0x5531},+    {0xF3DE, 0x5A3C},+    {0xF3DF, 0x5EE0},+    {0xF3E0, 0x5F70},+    {0xF3E1, 0x6134},+    {0xF3E2, 0x655E},+    {0xF3E3, 0x660C},+    {0xF3E4, 0x6636},+    {0xF3E5, 0x66A2},+    {0xF3E6, 0x69CD},+    {0xF3E7, 0x6EC4},+    {0xF3E8, 0x6F32},+    {0xF3E9, 0x7316},+    {0xF3EA, 0x7621},+    {0xF3EB, 0x7A93},+    {0xF3EC, 0x8139},+    {0xF3ED, 0x8259},+    {0xF3EE, 0x83D6},+    {0xF3EF, 0x84BC},+    {0xF3F0, 0x50B5},+    {0xF3F1, 0x57F0},+    {0xF3F2, 0x5BC0},+    {0xF3F3, 0x5BE8},+    {0xF3F4, 0x5F69},+    {0xF3F5, 0x63A1},+    {0xF3F6, 0x7826},+    {0xF3F7, 0x7DB5},+    {0xF3F8, 0x83DC},+    {0xF3F9, 0x8521},+    {0xF3FA, 0x91C7},+    {0xF3FB, 0x91F5},+    {0xF3FC, 0x518A},+    {0xF3FD, 0x67F5},+    {0xF3FE, 0x7B56},+    {0xF4A1, 0x8CAC},+    {0xF4A2, 0x51C4},+    {0xF4A3, 0x59BB},+    {0xF4A4, 0x60BD},+    {0xF4A5, 0x8655},+    {0xF4A6, 0x501C},+    {0xF4A7, 0xF9FF},+    {0xF4A8, 0x5254},+    {0xF4A9, 0x5C3A},+    {0xF4AA, 0x617D},+    {0xF4AB, 0x621A},+    {0xF4AC, 0x62D3},+    {0xF4AD, 0x64F2},+    {0xF4AE, 0x65A5},+    {0xF4AF, 0x6ECC},+    {0xF4B0, 0x7620},+    {0xF4B1, 0x810A},+    {0xF4B2, 0x8E60},+    {0xF4B3, 0x965F},+    {0xF4B4, 0x96BB},+    {0xF4B5, 0x4EDF},+    {0xF4B6, 0x5343},+    {0xF4B7, 0x5598},+    {0xF4B8, 0x5929},+    {0xF4B9, 0x5DDD},+    {0xF4BA, 0x64C5},+    {0xF4BB, 0x6CC9},+    {0xF4BC, 0x6DFA},+    {0xF4BD, 0x7394},+    {0xF4BE, 0x7A7F},+    {0xF4BF, 0x821B},+    {0xF4C0, 0x85A6},+    {0xF4C1, 0x8CE4},+    {0xF4C2, 0x8E10},+    {0xF4C3, 0x9077},+    {0xF4C4, 0x91E7},+    {0xF4C5, 0x95E1},+    {0xF4C6, 0x9621},+    {0xF4C7, 0x97C6},+    {0xF4C8, 0x51F8},+    {0xF4C9, 0x54F2},+    {0xF4CA, 0x5586},+    {0xF4CB, 0x5FB9},+    {0xF4CC, 0x64A4},+    {0xF4CD, 0x6F88},+    {0xF4CE, 0x7DB4},+    {0xF4CF, 0x8F1F},+    {0xF4D0, 0x8F4D},+    {0xF4D1, 0x9435},+    {0xF4D2, 0x50C9},+    {0xF4D3, 0x5C16},+    {0xF4D4, 0x6CBE},+    {0xF4D5, 0x6DFB},+    {0xF4D6, 0x751B},+    {0xF4D7, 0x77BB},+    {0xF4D8, 0x7C3D},+    {0xF4D9, 0x7C64},+    {0xF4DA, 0x8A79},+    {0xF4DB, 0x8AC2},+    {0xF4DC, 0x581E},+    {0xF4DD, 0x59BE},+    {0xF4DE, 0x5E16},+    {0xF4DF, 0x6377},+    {0xF4E0, 0x7252},+    {0xF4E1, 0x758A},+    {0xF4E2, 0x776B},+    {0xF4E3, 0x8ADC},+    {0xF4E4, 0x8CBC},+    {0xF4E5, 0x8F12},+    {0xF4E6, 0x5EF3},+    {0xF4E7, 0x6674},+    {0xF4E8, 0x6DF8},+    {0xF4E9, 0x807D},+    {0xF4EA, 0x83C1},+    {0xF4EB, 0x8ACB},+    {0xF4EC, 0x9751},+    {0xF4ED, 0x9BD6},+    {0xF4EE, 0xFA00},+    {0xF4EF, 0x5243},+    {0xF4F0, 0x66FF},+    {0xF4F1, 0x6D95},+    {0xF4F2, 0x6EEF},+    {0xF4F3, 0x7DE0},+    {0xF4F4, 0x8AE6},+    {0xF4F5, 0x902E},+    {0xF4F6, 0x905E},+    {0xF4F7, 0x9AD4},+    {0xF4F8, 0x521D},+    {0xF4F9, 0x527F},+    {0xF4FA, 0x54E8},+    {0xF4FB, 0x6194},+    {0xF4FC, 0x6284},+    {0xF4FD, 0x62DB},+    {0xF4FE, 0x68A2},+    {0xF5A1, 0x6912},+    {0xF5A2, 0x695A},+    {0xF5A3, 0x6A35},+    {0xF5A4, 0x7092},+    {0xF5A5, 0x7126},+    {0xF5A6, 0x785D},+    {0xF5A7, 0x7901},+    {0xF5A8, 0x790E},+    {0xF5A9, 0x79D2},+    {0xF5AA, 0x7A0D},+    {0xF5AB, 0x8096},+    {0xF5AC, 0x8278},+    {0xF5AD, 0x82D5},+    {0xF5AE, 0x8349},+    {0xF5AF, 0x8549},+    {0xF5B0, 0x8C82},+    {0xF5B1, 0x8D85},+    {0xF5B2, 0x9162},+    {0xF5B3, 0x918B},+    {0xF5B4, 0x91AE},+    {0xF5B5, 0x4FC3},+    {0xF5B6, 0x56D1},+    {0xF5B7, 0x71ED},+    {0xF5B8, 0x77D7},+    {0xF5B9, 0x8700},+    {0xF5BA, 0x89F8},+    {0xF5BB, 0x5BF8},+    {0xF5BC, 0x5FD6},+    {0xF5BD, 0x6751},+    {0xF5BE, 0x90A8},+    {0xF5BF, 0x53E2},+    {0xF5C0, 0x585A},+    {0xF5C1, 0x5BF5},+    {0xF5C2, 0x60A4},+    {0xF5C3, 0x6181},+    {0xF5C4, 0x6460},+    {0xF5C5, 0x7E3D},+    {0xF5C6, 0x8070},+    {0xF5C7, 0x8525},+    {0xF5C8, 0x9283},+    {0xF5C9, 0x64AE},+    {0xF5CA, 0x50AC},+    {0xF5CB, 0x5D14},+    {0xF5CC, 0x6700},+    {0xF5CD, 0x589C},+    {0xF5CE, 0x62BD},+    {0xF5CF, 0x63A8},+    {0xF5D0, 0x690E},+    {0xF5D1, 0x6978},+    {0xF5D2, 0x6A1E},+    {0xF5D3, 0x6E6B},+    {0xF5D4, 0x76BA},+    {0xF5D5, 0x79CB},+    {0xF5D6, 0x82BB},+    {0xF5D7, 0x8429},+    {0xF5D8, 0x8ACF},+    {0xF5D9, 0x8DA8},+    {0xF5DA, 0x8FFD},+    {0xF5DB, 0x9112},+    {0xF5DC, 0x914B},+    {0xF5DD, 0x919C},+    {0xF5DE, 0x9310},+    {0xF5DF, 0x9318},+    {0xF5E0, 0x939A},+    {0xF5E1, 0x96DB},+    {0xF5E2, 0x9A36},+    {0xF5E3, 0x9C0D},+    {0xF5E4, 0x4E11},+    {0xF5E5, 0x755C},+    {0xF5E6, 0x795D},+    {0xF5E7, 0x7AFA},+    {0xF5E8, 0x7B51},+    {0xF5E9, 0x7BC9},+    {0xF5EA, 0x7E2E},+    {0xF5EB, 0x84C4},+    {0xF5EC, 0x8E59},+    {0xF5ED, 0x8E74},+    {0xF5EE, 0x8EF8},+    {0xF5EF, 0x9010},+    {0xF5F0, 0x6625},+    {0xF5F1, 0x693F},+    {0xF5F2, 0x7443},+    {0xF5F3, 0x51FA},+    {0xF5F4, 0x672E},+    {0xF5F5, 0x9EDC},+    {0xF5F6, 0x5145},+    {0xF5F7, 0x5FE0},+    {0xF5F8, 0x6C96},+    {0xF5F9, 0x87F2},+    {0xF5FA, 0x885D},+    {0xF5FB, 0x8877},+    {0xF5FC, 0x60B4},+    {0xF5FD, 0x81B5},+    {0xF5FE, 0x8403},+    {0xF6A1, 0x8D05},+    {0xF6A2, 0x53D6},+    {0xF6A3, 0x5439},+    {0xF6A4, 0x5634},+    {0xF6A5, 0x5A36},+    {0xF6A6, 0x5C31},+    {0xF6A7, 0x708A},+    {0xF6A8, 0x7FE0},+    {0xF6A9, 0x805A},+    {0xF6AA, 0x8106},+    {0xF6AB, 0x81ED},+    {0xF6AC, 0x8DA3},+    {0xF6AD, 0x9189},+    {0xF6AE, 0x9A5F},+    {0xF6AF, 0x9DF2},+    {0xF6B0, 0x5074},+    {0xF6B1, 0x4EC4},+    {0xF6B2, 0x53A0},+    {0xF6B3, 0x60FB},+    {0xF6B4, 0x6E2C},+    {0xF6B5, 0x5C64},+    {0xF6B6, 0x4F88},+    {0xF6B7, 0x5024},+    {0xF6B8, 0x55E4},+    {0xF6B9, 0x5CD9},+    {0xF6BA, 0x5E5F},+    {0xF6BB, 0x6065},+    {0xF6BC, 0x6894},+    {0xF6BD, 0x6CBB},+    {0xF6BE, 0x6DC4},+    {0xF6BF, 0x71BE},+    {0xF6C0, 0x75D4},+    {0xF6C1, 0x75F4},+    {0xF6C2, 0x7661},+    {0xF6C3, 0x7A1A},+    {0xF6C4, 0x7A49},+    {0xF6C5, 0x7DC7},+    {0xF6C6, 0x7DFB},+    {0xF6C7, 0x7F6E},+    {0xF6C8, 0x81F4},+    {0xF6C9, 0x86A9},+    {0xF6CA, 0x8F1C},+    {0xF6CB, 0x96C9},+    {0xF6CC, 0x99B3},+    {0xF6CD, 0x9F52},+    {0xF6CE, 0x5247},+    {0xF6CF, 0x52C5},+    {0xF6D0, 0x98ED},+    {0xF6D1, 0x89AA},+    {0xF6D2, 0x4E03},+    {0xF6D3, 0x67D2},+    {0xF6D4, 0x6F06},+    {0xF6D5, 0x4FB5},+    {0xF6D6, 0x5BE2},+    {0xF6D7, 0x6795},+    {0xF6D8, 0x6C88},+    {0xF6D9, 0x6D78},+    {0xF6DA, 0x741B},+    {0xF6DB, 0x7827},+    {0xF6DC, 0x91DD},+    {0xF6DD, 0x937C},+    {0xF6DE, 0x87C4},+    {0xF6DF, 0x79E4},+    {0xF6E0, 0x7A31},+    {0xF6E1, 0x5FEB},+    {0xF6E2, 0x4ED6},+    {0xF6E3, 0x54A4},+    {0xF6E4, 0x553E},+    {0xF6E5, 0x58AE},+    {0xF6E6, 0x59A5},+    {0xF6E7, 0x60F0},+    {0xF6E8, 0x6253},+    {0xF6E9, 0x62D6},+    {0xF6EA, 0x6736},+    {0xF6EB, 0x6955},+    {0xF6EC, 0x8235},+    {0xF6ED, 0x9640},+    {0xF6EE, 0x99B1},+    {0xF6EF, 0x99DD},+    {0xF6F0, 0x502C},+    {0xF6F1, 0x5353},+    {0xF6F2, 0x5544},+    {0xF6F3, 0x577C},+    {0xF6F4, 0xFA01},+    {0xF6F5, 0x6258},+    {0xF6F6, 0xFA02},+    {0xF6F7, 0x64E2},+    {0xF6F8, 0x666B},+    {0xF6F9, 0x67DD},+    {0xF6FA, 0x6FC1},+    {0xF6FB, 0x6FEF},+    {0xF6FC, 0x7422},+    {0xF6FD, 0x7438},+    {0xF6FE, 0x8A17},+    {0xF7A1, 0x9438},+    {0xF7A2, 0x5451},+    {0xF7A3, 0x5606},+    {0xF7A4, 0x5766},+    {0xF7A5, 0x5F48},+    {0xF7A6, 0x619A},+    {0xF7A7, 0x6B4E},+    {0xF7A8, 0x7058},+    {0xF7A9, 0x70AD},+    {0xF7AA, 0x7DBB},+    {0xF7AB, 0x8A95},+    {0xF7AC, 0x596A},+    {0xF7AD, 0x812B},+    {0xF7AE, 0x63A2},+    {0xF7AF, 0x7708},+    {0xF7B0, 0x803D},+    {0xF7B1, 0x8CAA},+    {0xF7B2, 0x5854},+    {0xF7B3, 0x642D},+    {0xF7B4, 0x69BB},+    {0xF7B5, 0x5B95},+    {0xF7B6, 0x5E11},+    {0xF7B7, 0x6E6F},+    {0xF7B8, 0xFA03},+    {0xF7B9, 0x8569},+    {0xF7BA, 0x514C},+    {0xF7BB, 0x53F0},+    {0xF7BC, 0x592A},+    {0xF7BD, 0x6020},+    {0xF7BE, 0x614B},+    {0xF7BF, 0x6B86},+    {0xF7C0, 0x6C70},+    {0xF7C1, 0x6CF0},+    {0xF7C2, 0x7B1E},+    {0xF7C3, 0x80CE},+    {0xF7C4, 0x82D4},+    {0xF7C5, 0x8DC6},+    {0xF7C6, 0x90B0},+    {0xF7C7, 0x98B1},+    {0xF7C8, 0xFA04},+    {0xF7C9, 0x64C7},+    {0xF7CA, 0x6FA4},+    {0xF7CB, 0x6491},+    {0xF7CC, 0x6504},+    {0xF7CD, 0x514E},+    {0xF7CE, 0x5410},+    {0xF7CF, 0x571F},+    {0xF7D0, 0x8A0E},+    {0xF7D1, 0x615F},+    {0xF7D2, 0x6876},+    {0xF7D3, 0xFA05},+    {0xF7D4, 0x75DB},+    {0xF7D5, 0x7B52},+    {0xF7D6, 0x7D71},+    {0xF7D7, 0x901A},+    {0xF7D8, 0x5806},+    {0xF7D9, 0x69CC},+    {0xF7DA, 0x817F},+    {0xF7DB, 0x892A},+    {0xF7DC, 0x9000},+    {0xF7DD, 0x9839},+    {0xF7DE, 0x5078},+    {0xF7DF, 0x5957},+    {0xF7E0, 0x59AC},+    {0xF7E1, 0x6295},+    {0xF7E2, 0x900F},+    {0xF7E3, 0x9B2A},+    {0xF7E4, 0x615D},+    {0xF7E5, 0x7279},+    {0xF7E6, 0x95D6},+    {0xF7E7, 0x5761},+    {0xF7E8, 0x5A46},+    {0xF7E9, 0x5DF4},+    {0xF7EA, 0x628A},+    {0xF7EB, 0x64AD},+    {0xF7EC, 0x64FA},+    {0xF7ED, 0x6777},+    {0xF7EE, 0x6CE2},+    {0xF7EF, 0x6D3E},+    {0xF7F0, 0x722C},+    {0xF7F1, 0x7436},+    {0xF7F2, 0x7834},+    {0xF7F3, 0x7F77},+    {0xF7F4, 0x82AD},+    {0xF7F5, 0x8DDB},+    {0xF7F6, 0x9817},+    {0xF7F7, 0x5224},+    {0xF7F8, 0x5742},+    {0xF7F9, 0x677F},+    {0xF7FA, 0x7248},+    {0xF7FB, 0x74E3},+    {0xF7FC, 0x8CA9},+    {0xF7FD, 0x8FA6},+    {0xF7FE, 0x9211},+    {0xF8A1, 0x962A},+    {0xF8A2, 0x516B},+    {0xF8A3, 0x53ED},+    {0xF8A4, 0x634C},+    {0xF8A5, 0x4F69},+    {0xF8A6, 0x5504},+    {0xF8A7, 0x6096},+    {0xF8A8, 0x6557},+    {0xF8A9, 0x6C9B},+    {0xF8AA, 0x6D7F},+    {0xF8AB, 0x724C},+    {0xF8AC, 0x72FD},+    {0xF8AD, 0x7A17},+    {0xF8AE, 0x8987},+    {0xF8AF, 0x8C9D},+    {0xF8B0, 0x5F6D},+    {0xF8B1, 0x6F8E},+    {0xF8B2, 0x70F9},+    {0xF8B3, 0x81A8},+    {0xF8B4, 0x610E},+    {0xF8B5, 0x4FBF},+    {0xF8B6, 0x504F},+    {0xF8B7, 0x6241},+    {0xF8B8, 0x7247},+    {0xF8B9, 0x7BC7},+    {0xF8BA, 0x7DE8},+    {0xF8BB, 0x7FE9},+    {0xF8BC, 0x904D},+    {0xF8BD, 0x97AD},+    {0xF8BE, 0x9A19},+    {0xF8BF, 0x8CB6},+    {0xF8C0, 0x576A},+    {0xF8C1, 0x5E73},+    {0xF8C2, 0x67B0},+    {0xF8C3, 0x840D},+    {0xF8C4, 0x8A55},+    {0xF8C5, 0x5420},+    {0xF8C6, 0x5B16},+    {0xF8C7, 0x5E63},+    {0xF8C8, 0x5EE2},+    {0xF8C9, 0x5F0A},+    {0xF8CA, 0x6583},+    {0xF8CB, 0x80BA},+    {0xF8CC, 0x853D},+    {0xF8CD, 0x9589},+    {0xF8CE, 0x965B},+    {0xF8CF, 0x4F48},+    {0xF8D0, 0x5305},+    {0xF8D1, 0x530D},+    {0xF8D2, 0x530F},+    {0xF8D3, 0x5486},+    {0xF8D4, 0x54FA},+    {0xF8D5, 0x5703},+    {0xF8D6, 0x5E03},+    {0xF8D7, 0x6016},+    {0xF8D8, 0x629B},+    {0xF8D9, 0x62B1},+    {0xF8DA, 0x6355},+    {0xF8DB, 0xFA06},+    {0xF8DC, 0x6CE1},+    {0xF8DD, 0x6D66},+    {0xF8DE, 0x75B1},+    {0xF8DF, 0x7832},+    {0xF8E0, 0x80DE},+    {0xF8E1, 0x812F},+    {0xF8E2, 0x82DE},+    {0xF8E3, 0x8461},+    {0xF8E4, 0x84B2},+    {0xF8E5, 0x888D},+    {0xF8E6, 0x8912},+    {0xF8E7, 0x900B},+    {0xF8E8, 0x92EA},+    {0xF8E9, 0x98FD},+    {0xF8EA, 0x9B91},+    {0xF8EB, 0x5E45},+    {0xF8EC, 0x66B4},+    {0xF8ED, 0x66DD},+    {0xF8EE, 0x7011},+    {0xF8EF, 0x7206},+    {0xF8F0, 0xFA07},+    {0xF8F1, 0x4FF5},+    {0xF8F2, 0x527D},+    {0xF8F3, 0x5F6A},+    {0xF8F4, 0x6153},+    {0xF8F5, 0x6753},+    {0xF8F6, 0x6A19},+    {0xF8F7, 0x6F02},+    {0xF8F8, 0x74E2},+    {0xF8F9, 0x7968},+    {0xF8FA, 0x8868},+    {0xF8FB, 0x8C79},+    {0xF8FC, 0x98C7},+    {0xF8FD, 0x98C4},+    {0xF8FE, 0x9A43},+    {0xF9A1, 0x54C1},+    {0xF9A2, 0x7A1F},+    {0xF9A3, 0x6953},+    {0xF9A4, 0x8AF7},+    {0xF9A5, 0x8C4A},+    {0xF9A6, 0x98A8},+    {0xF9A7, 0x99AE},+    {0xF9A8, 0x5F7C},+    {0xF9A9, 0x62AB},+    {0xF9AA, 0x75B2},+    {0xF9AB, 0x76AE},+    {0xF9AC, 0x88AB},+    {0xF9AD, 0x907F},+    {0xF9AE, 0x9642},+    {0xF9AF, 0x5339},+    {0xF9B0, 0x5F3C},+    {0xF9B1, 0x5FC5},+    {0xF9B2, 0x6CCC},+    {0xF9B3, 0x73CC},+    {0xF9B4, 0x7562},+    {0xF9B5, 0x758B},+    {0xF9B6, 0x7B46},+    {0xF9B7, 0x82FE},+    {0xF9B8, 0x999D},+    {0xF9B9, 0x4E4F},+    {0xF9BA, 0x903C},+    {0xF9BB, 0x4E0B},+    {0xF9BC, 0x4F55},+    {0xF9BD, 0x53A6},+    {0xF9BE, 0x590F},+    {0xF9BF, 0x5EC8},+    {0xF9C0, 0x6630},+    {0xF9C1, 0x6CB3},+    {0xF9C2, 0x7455},+    {0xF9C3, 0x8377},+    {0xF9C4, 0x8766},+    {0xF9C5, 0x8CC0},+    {0xF9C6, 0x9050},+    {0xF9C7, 0x971E},+    {0xF9C8, 0x9C15},+    {0xF9C9, 0x58D1},+    {0xF9CA, 0x5B78},+    {0xF9CB, 0x8650},+    {0xF9CC, 0x8B14},+    {0xF9CD, 0x9DB4},+    {0xF9CE, 0x5BD2},+    {0xF9CF, 0x6068},+    {0xF9D0, 0x608D},+    {0xF9D1, 0x65F1},+    {0xF9D2, 0x6C57},+    {0xF9D3, 0x6F22},+    {0xF9D4, 0x6FA3},+    {0xF9D5, 0x701A},+    {0xF9D6, 0x7F55},+    {0xF9D7, 0x7FF0},+    {0xF9D8, 0x9591},+    {0xF9D9, 0x9592},+    {0xF9DA, 0x9650},+    {0xF9DB, 0x97D3},+    {0xF9DC, 0x5272},+    {0xF9DD, 0x8F44},+    {0xF9DE, 0x51FD},+    {0xF9DF, 0x542B},+    {0xF9E0, 0x54B8},+    {0xF9E1, 0x5563},+    {0xF9E2, 0x558A},+    {0xF9E3, 0x6ABB},+    {0xF9E4, 0x6DB5},+    {0xF9E5, 0x7DD8},+    {0xF9E6, 0x8266},+    {0xF9E7, 0x929C},+    {0xF9E8, 0x9677},+    {0xF9E9, 0x9E79},+    {0xF9EA, 0x5408},+    {0xF9EB, 0x54C8},+    {0xF9EC, 0x76D2},+    {0xF9ED, 0x86E4},+    {0xF9EE, 0x95A4},+    {0xF9EF, 0x95D4},+    {0xF9F0, 0x965C},+    {0xF9F1, 0x4EA2},+    {0xF9F2, 0x4F09},+    {0xF9F3, 0x59EE},+    {0xF9F4, 0x5AE6},+    {0xF9F5, 0x5DF7},+    {0xF9F6, 0x6052},+    {0xF9F7, 0x6297},+    {0xF9F8, 0x676D},+    {0xF9F9, 0x6841},+    {0xF9FA, 0x6C86},+    {0xF9FB, 0x6E2F},+    {0xF9FC, 0x7F38},+    {0xF9FD, 0x809B},+    {0xF9FE, 0x822A},+    {0xFAA1, 0xFA08},+    {0xFAA2, 0xFA09},+    {0xFAA3, 0x9805},+    {0xFAA4, 0x4EA5},+    {0xFAA5, 0x5055},+    {0xFAA6, 0x54B3},+    {0xFAA7, 0x5793},+    {0xFAA8, 0x595A},+    {0xFAA9, 0x5B69},+    {0xFAAA, 0x5BB3},+    {0xFAAB, 0x61C8},+    {0xFAAC, 0x6977},+    {0xFAAD, 0x6D77},+    {0xFAAE, 0x7023},+    {0xFAAF, 0x87F9},+    {0xFAB0, 0x89E3},+    {0xFAB1, 0x8A72},+    {0xFAB2, 0x8AE7},+    {0xFAB3, 0x9082},+    {0xFAB4, 0x99ED},+    {0xFAB5, 0x9AB8},+    {0xFAB6, 0x52BE},+    {0xFAB7, 0x6838},+    {0xFAB8, 0x5016},+    {0xFAB9, 0x5E78},+    {0xFABA, 0x674F},+    {0xFABB, 0x8347},+    {0xFABC, 0x884C},+    {0xFABD, 0x4EAB},+    {0xFABE, 0x5411},+    {0xFABF, 0x56AE},+    {0xFAC0, 0x73E6},+    {0xFAC1, 0x9115},+    {0xFAC2, 0x97FF},+    {0xFAC3, 0x9909},+    {0xFAC4, 0x9957},+    {0xFAC5, 0x9999},+    {0xFAC6, 0x5653},+    {0xFAC7, 0x589F},+    {0xFAC8, 0x865B},+    {0xFAC9, 0x8A31},+    {0xFACA, 0x61B2},+    {0xFACB, 0x6AF6},+    {0xFACC, 0x737B},+    {0xFACD, 0x8ED2},+    {0xFACE, 0x6B47},+    {0xFACF, 0x96AA},+    {0xFAD0, 0x9A57},+    {0xFAD1, 0x5955},+    {0xFAD2, 0x7200},+    {0xFAD3, 0x8D6B},+    {0xFAD4, 0x9769},+    {0xFAD5, 0x4FD4},+    {0xFAD6, 0x5CF4},+    {0xFAD7, 0x5F26},+    {0xFAD8, 0x61F8},+    {0xFAD9, 0x665B},+    {0xFADA, 0x6CEB},+    {0xFADB, 0x70AB},+    {0xFADC, 0x7384},+    {0xFADD, 0x73B9},+    {0xFADE, 0x73FE},+    {0xFADF, 0x7729},+    {0xFAE0, 0x774D},+    {0xFAE1, 0x7D43},+    {0xFAE2, 0x7D62},+    {0xFAE3, 0x7E23},+    {0xFAE4, 0x8237},+    {0xFAE5, 0x8852},+    {0xFAE6, 0xFA0A},+    {0xFAE7, 0x8CE2},+    {0xFAE8, 0x9249},+    {0xFAE9, 0x986F},+    {0xFAEA, 0x5B51},+    {0xFAEB, 0x7A74},+    {0xFAEC, 0x8840},+    {0xFAED, 0x9801},+    {0xFAEE, 0x5ACC},+    {0xFAEF, 0x4FE0},+    {0xFAF0, 0x5354},+    {0xFAF1, 0x593E},+    {0xFAF2, 0x5CFD},+    {0xFAF3, 0x633E},+    {0xFAF4, 0x6D79},+    {0xFAF5, 0x72F9},+    {0xFAF6, 0x8105},+    {0xFAF7, 0x8107},+    {0xFAF8, 0x83A2},+    {0xFAF9, 0x92CF},+    {0xFAFA, 0x9830},+    {0xFAFB, 0x4EA8},+    {0xFAFC, 0x5144},+    {0xFAFD, 0x5211},+    {0xFAFE, 0x578B},+    {0xFBA1, 0x5F62},+    {0xFBA2, 0x6CC2},+    {0xFBA3, 0x6ECE},+    {0xFBA4, 0x7005},+    {0xFBA5, 0x7050},+    {0xFBA6, 0x70AF},+    {0xFBA7, 0x7192},+    {0xFBA8, 0x73E9},+    {0xFBA9, 0x7469},+    {0xFBAA, 0x834A},+    {0xFBAB, 0x87A2},+    {0xFBAC, 0x8861},+    {0xFBAD, 0x9008},+    {0xFBAE, 0x90A2},+    {0xFBAF, 0x93A3},+    {0xFBB0, 0x99A8},+    {0xFBB1, 0x516E},+    {0xFBB2, 0x5F57},+    {0xFBB3, 0x60E0},+    {0xFBB4, 0x6167},+    {0xFBB5, 0x66B3},+    {0xFBB6, 0x8559},+    {0xFBB7, 0x8E4A},+    {0xFBB8, 0x91AF},+    {0xFBB9, 0x978B},+    {0xFBBA, 0x4E4E},+    {0xFBBB, 0x4E92},+    {0xFBBC, 0x547C},+    {0xFBBD, 0x58D5},+    {0xFBBE, 0x58FA},+    {0xFBBF, 0x597D},+    {0xFBC0, 0x5CB5},+    {0xFBC1, 0x5F27},+    {0xFBC2, 0x6236},+    {0xFBC3, 0x6248},+    {0xFBC4, 0x660A},+    {0xFBC5, 0x6667},+    {0xFBC6, 0x6BEB},+    {0xFBC7, 0x6D69},+    {0xFBC8, 0x6DCF},+    {0xFBC9, 0x6E56},+    {0xFBCA, 0x6EF8},+    {0xFBCB, 0x6F94},+    {0xFBCC, 0x6FE0},+    {0xFBCD, 0x6FE9},+    {0xFBCE, 0x705D},+    {0xFBCF, 0x72D0},+    {0xFBD0, 0x7425},+    {0xFBD1, 0x745A},+    {0xFBD2, 0x74E0},+    {0xFBD3, 0x7693},+    {0xFBD4, 0x795C},+    {0xFBD5, 0x7CCA},+    {0xFBD6, 0x7E1E},+    {0xFBD7, 0x80E1},+    {0xFBD8, 0x82A6},+    {0xFBD9, 0x846B},+    {0xFBDA, 0x84BF},+    {0xFBDB, 0x864E},+    {0xFBDC, 0x865F},+    {0xFBDD, 0x8774},+    {0xFBDE, 0x8B77},+    {0xFBDF, 0x8C6A},+    {0xFBE0, 0x93AC},+    {0xFBE1, 0x9800},+    {0xFBE2, 0x9865},+    {0xFBE3, 0x60D1},+    {0xFBE4, 0x6216},+    {0xFBE5, 0x9177},+    {0xFBE6, 0x5A5A},+    {0xFBE7, 0x660F},+    {0xFBE8, 0x6DF7},+    {0xFBE9, 0x6E3E},+    {0xFBEA, 0x743F},+    {0xFBEB, 0x9B42},+    {0xFBEC, 0x5FFD},+    {0xFBED, 0x60DA},+    {0xFBEE, 0x7B0F},+    {0xFBEF, 0x54C4},+    {0xFBF0, 0x5F18},+    {0xFBF1, 0x6C5E},+    {0xFBF2, 0x6CD3},+    {0xFBF3, 0x6D2A},+    {0xFBF4, 0x70D8},+    {0xFBF5, 0x7D05},+    {0xFBF6, 0x8679},+    {0xFBF7, 0x8A0C},+    {0xFBF8, 0x9D3B},+    {0xFBF9, 0x5316},+    {0xFBFA, 0x548C},+    {0xFBFB, 0x5B05},+    {0xFBFC, 0x6A3A},+    {0xFBFD, 0x706B},+    {0xFBFE, 0x7575},+    {0xFCA1, 0x798D},+    {0xFCA2, 0x79BE},+    {0xFCA3, 0x82B1},+    {0xFCA4, 0x83EF},+    {0xFCA5, 0x8A71},+    {0xFCA6, 0x8B41},+    {0xFCA7, 0x8CA8},+    {0xFCA8, 0x9774},+    {0xFCA9, 0xFA0B},+    {0xFCAA, 0x64F4},+    {0xFCAB, 0x652B},+    {0xFCAC, 0x78BA},+    {0xFCAD, 0x78BB},+    {0xFCAE, 0x7A6B},+    {0xFCAF, 0x4E38},+    {0xFCB0, 0x559A},+    {0xFCB1, 0x5950},+    {0xFCB2, 0x5BA6},+    {0xFCB3, 0x5E7B},+    {0xFCB4, 0x60A3},+    {0xFCB5, 0x63DB},+    {0xFCB6, 0x6B61},+    {0xFCB7, 0x6665},+    {0xFCB8, 0x6853},+    {0xFCB9, 0x6E19},+    {0xFCBA, 0x7165},+    {0xFCBB, 0x74B0},+    {0xFCBC, 0x7D08},+    {0xFCBD, 0x9084},+    {0xFCBE, 0x9A69},+    {0xFCBF, 0x9C25},+    {0xFCC0, 0x6D3B},+    {0xFCC1, 0x6ED1},+    {0xFCC2, 0x733E},+    {0xFCC3, 0x8C41},+    {0xFCC4, 0x95CA},+    {0xFCC5, 0x51F0},+    {0xFCC6, 0x5E4C},+    {0xFCC7, 0x5FA8},+    {0xFCC8, 0x604D},+    {0xFCC9, 0x60F6},+    {0xFCCA, 0x6130},+    {0xFCCB, 0x614C},+    {0xFCCC, 0x6643},+    {0xFCCD, 0x6644},+    {0xFCCE, 0x69A5},+    {0xFCCF, 0x6CC1},+    {0xFCD0, 0x6E5F},+    {0xFCD1, 0x6EC9},+    {0xFCD2, 0x6F62},+    {0xFCD3, 0x714C},+    {0xFCD4, 0x749C},+    {0xFCD5, 0x7687},+    {0xFCD6, 0x7BC1},+    {0xFCD7, 0x7C27},+    {0xFCD8, 0x8352},+    {0xFCD9, 0x8757},+    {0xFCDA, 0x9051},+    {0xFCDB, 0x968D},+    {0xFCDC, 0x9EC3},+    {0xFCDD, 0x532F},+    {0xFCDE, 0x56DE},+    {0xFCDF, 0x5EFB},+    {0xFCE0, 0x5F8A},+    {0xFCE1, 0x6062},+    {0xFCE2, 0x6094},+    {0xFCE3, 0x61F7},+    {0xFCE4, 0x6666},+    {0xFCE5, 0x6703},+    {0xFCE6, 0x6A9C},+    {0xFCE7, 0x6DEE},+    {0xFCE8, 0x6FAE},+    {0xFCE9, 0x7070},+    {0xFCEA, 0x736A},+    {0xFCEB, 0x7E6A},+    {0xFCEC, 0x81BE},+    {0xFCED, 0x8334},+    {0xFCEE, 0x86D4},+    {0xFCEF, 0x8AA8},+    {0xFCF0, 0x8CC4},+    {0xFCF1, 0x5283},+    {0xFCF2, 0x7372},+    {0xFCF3, 0x5B96},+    {0xFCF4, 0x6A6B},+    {0xFCF5, 0x9404},+    {0xFCF6, 0x54EE},+    {0xFCF7, 0x5686},+    {0xFCF8, 0x5B5D},+    {0xFCF9, 0x6548},+    {0xFCFA, 0x6585},+    {0xFCFB, 0x66C9},+    {0xFCFC, 0x689F},+    {0xFCFD, 0x6D8D},+    {0xFCFE, 0x6DC6},+    {0xFDA1, 0x723B},+    {0xFDA2, 0x80B4},+    {0xFDA3, 0x9175},+    {0xFDA4, 0x9A4D},+    {0xFDA5, 0x4FAF},+    {0xFDA6, 0x5019},+    {0xFDA7, 0x539A},+    {0xFDA8, 0x540E},+    {0xFDA9, 0x543C},+    {0xFDAA, 0x5589},+    {0xFDAB, 0x55C5},+    {0xFDAC, 0x5E3F},+    {0xFDAD, 0x5F8C},+    {0xFDAE, 0x673D},+    {0xFDAF, 0x7166},+    {0xFDB0, 0x73DD},+    {0xFDB1, 0x9005},+    {0xFDB2, 0x52DB},+    {0xFDB3, 0x52F3},+    {0xFDB4, 0x5864},+    {0xFDB5, 0x58CE},+    {0xFDB6, 0x7104},+    {0xFDB7, 0x718F},+    {0xFDB8, 0x71FB},+    {0xFDB9, 0x85B0},+    {0xFDBA, 0x8A13},+    {0xFDBB, 0x6688},+    {0xFDBC, 0x85A8},+    {0xFDBD, 0x55A7},+    {0xFDBE, 0x6684},+    {0xFDBF, 0x714A},+    {0xFDC0, 0x8431},+    {0xFDC1, 0x5349},+    {0xFDC2, 0x5599},+    {0xFDC3, 0x6BC1},+    {0xFDC4, 0x5F59},+    {0xFDC5, 0x5FBD},+    {0xFDC6, 0x63EE},+    {0xFDC7, 0x6689},+    {0xFDC8, 0x7147},+    {0xFDC9, 0x8AF1},+    {0xFDCA, 0x8F1D},+    {0xFDCB, 0x9EBE},+    {0xFDCC, 0x4F11},+    {0xFDCD, 0x643A},+    {0xFDCE, 0x70CB},+    {0xFDCF, 0x7566},+    {0xFDD0, 0x8667},+    {0xFDD1, 0x6064},+    {0xFDD2, 0x8B4E},+    {0xFDD3, 0x9DF8},+    {0xFDD4, 0x5147},+    {0xFDD5, 0x51F6},+    {0xFDD6, 0x5308},+    {0xFDD7, 0x6D36},+    {0xFDD8, 0x80F8},+    {0xFDD9, 0x9ED1},+    {0xFDDA, 0x6615},+    {0xFDDB, 0x6B23},+    {0xFDDC, 0x7098},+    {0xFDDD, 0x75D5},+    {0xFDDE, 0x5403},+    {0xFDDF, 0x5C79},+    {0xFDE0, 0x7D07},+    {0xFDE1, 0x8A16},+    {0xFDE2, 0x6B20},+    {0xFDE3, 0x6B3D},+    {0xFDE4, 0x6B46},+    {0xFDE5, 0x5438},+    {0xFDE6, 0x6070},+    {0xFDE7, 0x6D3D},+    {0xFDE8, 0x7FD5},+    {0xFDE9, 0x8208},+    {0xFDEA, 0x50D6},+    {0xFDEB, 0x51DE},+    {0xFDEC, 0x559C},+    {0xFDED, 0x566B},+    {0xFDEE, 0x56CD},+    {0xFDEF, 0x59EC},+    {0xFDF0, 0x5B09},+    {0xFDF1, 0x5E0C},+    {0xFDF2, 0x6199},+    {0xFDF3, 0x6198},+    {0xFDF4, 0x6231},+    {0xFDF5, 0x665E},+    {0xFDF6, 0x66E6},+    {0xFDF7, 0x7199},+    {0xFDF8, 0x71B9},+    {0xFDF9, 0x71BA},+    {0xFDFA, 0x72A7},+    {0xFDFB, 0x79A7},+    {0xFDFC, 0x7A00},+    {0xFDFD, 0x7FB2},+    {0xFDFE, 0x8A70},+    {0xFEA1, 0xE05E},+    {0xFEA2, 0xE05F},+    {0xFEA3, 0xE060},+    {0xFEA4, 0xE061},+    {0xFEA5, 0xE062},+    {0xFEA6, 0xE063},+    {0xFEA7, 0xE064},+    {0xFEA8, 0xE065},+    {0xFEA9, 0xE066},+    {0xFEAA, 0xE067},+    {0xFEAB, 0xE068},+    {0xFEAC, 0xE069},+    {0xFEAD, 0xE06A},+    {0xFEAE, 0xE06B},+    {0xFEAF, 0xE06C},+    {0xFEB0, 0xE06D},+    {0xFEB1, 0xE06E},+    {0xFEB2, 0xE06F},+    {0xFEB3, 0xE070},+    {0xFEB4, 0xE071},+    {0xFEB5, 0xE072},+    {0xFEB6, 0xE073},+    {0xFEB7, 0xE074},+    {0xFEB8, 0xE075},+    {0xFEB9, 0xE076},+    {0xFEBA, 0xE077},+    {0xFEBB, 0xE078},+    {0xFEBC, 0xE079},+    {0xFEBD, 0xE07A},+    {0xFEBE, 0xE07B},+    {0xFEBF, 0xE07C},+    {0xFEC0, 0xE07D},+    {0xFEC1, 0xE07E},+    {0xFEC2, 0xE07F},+    {0xFEC3, 0xE080},+    {0xFEC4, 0xE081},+    {0xFEC5, 0xE082},+    {0xFEC6, 0xE083},+    {0xFEC7, 0xE084},+    {0xFEC8, 0xE085},+    {0xFEC9, 0xE086},+    {0xFECA, 0xE087},+    {0xFECB, 0xE088},+    {0xFECC, 0xE089},+    {0xFECD, 0xE08A},+    {0xFECE, 0xE08B},+    {0xFECF, 0xE08C},+    {0xFED0, 0xE08D},+    {0xFED1, 0xE08E},+    {0xFED2, 0xE08F},+    {0xFED3, 0xE090},+    {0xFED4, 0xE091},+    {0xFED5, 0xE092},+    {0xFED6, 0xE093},+    {0xFED7, 0xE094},+    {0xFED8, 0xE095},+    {0xFED9, 0xE096},+    {0xFEDA, 0xE097},+    {0xFEDB, 0xE098},+    {0xFEDC, 0xE099},+    {0xFEDD, 0xE09A},+    {0xFEDE, 0xE09B},+    {0xFEDF, 0xE09C},+    {0xFEE0, 0xE09D},+    {0xFEE1, 0xE09E},+    {0xFEE2, 0xE09F},+    {0xFEE3, 0xE0A0},+    {0xFEE4, 0xE0A1},+    {0xFEE5, 0xE0A2},+    {0xFEE6, 0xE0A3},+    {0xFEE7, 0xE0A4},+    {0xFEE8, 0xE0A5},+    {0xFEE9, 0xE0A6},+    {0xFEEA, 0xE0A7},+    {0xFEEB, 0xE0A8},+    {0xFEEC, 0xE0A9},+    {0xFEED, 0xE0AA},+    {0xFEEE, 0xE0AB},+    {0xFEEF, 0xE0AC},+    {0xFEF0, 0xE0AD},+    {0xFEF1, 0xE0AE},+    {0xFEF2, 0xE0AF},+    {0xFEF3, 0xE0B0},+    {0xFEF4, 0xE0B1},+    {0xFEF5, 0xE0B2},+    {0xFEF6, 0xE0B3},+    {0xFEF7, 0xE0B4},+    {0xFEF8, 0xE0B5},+    {0xFEF9, 0xE0B6},+    {0xFEFA, 0xE0B7},+    {0xFEFB, 0xE0B8},+    {0xFEFC, 0xE0B9},+    {0xFEFD, 0xE0BA},+    {0xFEFE, 0xE0BB},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_UnicodeMap_Rec KSC_EUC_UNICODE_ARRAY[] = {+    {0x20, 0x0020},+    {0x21, 0x0021},+    {0x22, 0x0022},+    {0x23, 0x0023},+    {0x24, 0x0024},+    {0x25, 0x0025},+    {0x26, 0x0026},+    {0x27, 0x0027},+    {0x28, 0x0028},+    {0x29, 0x0029},+    {0x2A, 0x002A},+    {0x2B, 0x002B},+    {0x2C, 0x002C},+    {0x2D, 0x002D},+    {0x2E, 0x002E},+    {0x2F, 0x002F},+    {0x30, 0x0030},+    {0x31, 0x0031},+    {0x32, 0x0032},+    {0x33, 0x0033},+    {0x34, 0x0034},+    {0x35, 0x0035},+    {0x36, 0x0036},+    {0x37, 0x0037},+    {0x38, 0x0038},+    {0x39, 0x0039},+    {0x3A, 0x003A},+    {0x3B, 0x003B},+    {0x3C, 0x003C},+    {0x3D, 0x003D},+    {0x3E, 0x003E},+    {0x3F, 0x003F},+    {0x40, 0x0040},+    {0x41, 0x0041},+    {0x42, 0x0042},+    {0x43, 0x0043},+    {0x44, 0x0044},+    {0x45, 0x0045},+    {0x46, 0x0046},+    {0x47, 0x0047},+    {0x48, 0x0048},+    {0x49, 0x0049},+    {0x4A, 0x004A},+    {0x4B, 0x004B},+    {0x4C, 0x004C},+    {0x4D, 0x004D},+    {0x4E, 0x004E},+    {0x4F, 0x004F},+    {0x50, 0x0050},+    {0x51, 0x0051},+    {0x52, 0x0052},+    {0x53, 0x0053},+    {0x54, 0x0054},+    {0x55, 0x0055},+    {0x56, 0x0056},+    {0x57, 0x0057},+    {0x58, 0x0058},+    {0x59, 0x0059},+    {0x5A, 0x005A},+    {0x5B, 0x005B},+    {0x5C, 0x005C},+    {0x5D, 0x005D},+    {0x5E, 0x005E},+    {0x5F, 0x005F},+    {0x60, 0x0060},+    {0x61, 0x0061},+    {0x62, 0x0062},+    {0x63, 0x0063},+    {0x64, 0x0064},+    {0x65, 0x0065},+    {0x66, 0x0066},+    {0x67, 0x0067},+    {0x68, 0x0068},+    {0x69, 0x0069},+    {0x6A, 0x006A},+    {0x6B, 0x006B},+    {0x6C, 0x006C},+    {0x6D, 0x006D},+    {0x6E, 0x006E},+    {0x6F, 0x006F},+    {0x70, 0x0070},+    {0x71, 0x0071},+    {0x72, 0x0072},+    {0x73, 0x0073},+    {0x74, 0x0074},+    {0x75, 0x0075},+    {0x76, 0x0076},+    {0x77, 0x0077},+    {0x78, 0x0078},+    {0x79, 0x0079},+    {0x7A, 0x007A},+    {0x7B, 0x007B},+    {0x7C, 0x007C},+    {0x7D, 0x007D},+    {0x7E, 0x007E},+    {0xA1A1, 0x3000},+    {0xA1A2, 0x3001},+    {0xA1A3, 0x3002},+    {0xA1A4, 0x00B7},+    {0xA1A5, 0x2025},+    {0xA1A6, 0x2026},+    {0xA1A7, 0x00A8},+    {0xA1A8, 0x3003},+    {0xA1A9, 0x00AD},+    {0xA1AA, 0x2015},+    {0xA1AB, 0x2225},+    {0xA1AC, 0xFF3C},+    {0xA1AD, 0x223C},+    {0xA1AE, 0x2018},+    {0xA1AF, 0x2019},+    {0xA1B0, 0x201C},+    {0xA1B1, 0x201D},+    {0xA1B2, 0x3014},+    {0xA1B3, 0x3015},+    {0xA1B4, 0x3008},+    {0xA1B5, 0x3009},+    {0xA1B6, 0x300A},+    {0xA1B7, 0x300B},+    {0xA1B8, 0x300C},+    {0xA1B9, 0x300D},+    {0xA1BA, 0x300E},+    {0xA1BB, 0x300F},+    {0xA1BC, 0x3010},+    {0xA1BD, 0x3011},+    {0xA1BE, 0x00B1},+    {0xA1BF, 0x00D7},+    {0xA1C0, 0x00F7},+    {0xA1C1, 0x2260},+    {0xA1C2, 0x2264},+    {0xA1C3, 0x2265},+    {0xA1C4, 0x221E},+    {0xA1C5, 0x2234},+    {0xA1C6, 0x00B0},+    {0xA1C7, 0x2032},+    {0xA1C8, 0x2033},+    {0xA1C9, 0x2103},+    {0xA1CA, 0x212B},+    {0xA1CB, 0xFFE0},+    {0xA1CC, 0xFFE1},+    {0xA1CD, 0xFFE5},+    {0xA1CE, 0x2642},+    {0xA1CF, 0x2640},+    {0xA1D0, 0x2220},+    {0xA1D1, 0x22A5},+    {0xA1D2, 0x2312},+    {0xA1D3, 0x2202},+    {0xA1D4, 0x2207},+    {0xA1D5, 0x2261},+    {0xA1D6, 0x2252},+    {0xA1D7, 0x00A7},+    {0xA1D8, 0x203B},+    {0xA1D9, 0x2606},+    {0xA1DA, 0x2605},+    {0xA1DB, 0x25CB},+    {0xA1DC, 0x25CF},+    {0xA1DD, 0x25CE},+    {0xA1DE, 0x25C7},+    {0xA1DF, 0x25C6},+    {0xA1E0, 0x25A1},+    {0xA1E1, 0x25A0},+    {0xA1E2, 0x25B3},+    {0xA1E3, 0x25B2},+    {0xA1E4, 0x25BD},+    {0xA1E5, 0x25BC},+    {0xA1E6, 0x2192},+    {0xA1E7, 0x2190},+    {0xA1E8, 0x2191},+    {0xA1E9, 0x2193},+    {0xA1EA, 0x2194},+    {0xA1EB, 0x3013},+    {0xA1EC, 0x226A},+    {0xA1ED, 0x226B},+    {0xA1EE, 0x221A},+    {0xA1EF, 0x223D},+    {0xA1F0, 0x221D},+    {0xA1F1, 0x2235},+    {0xA1F2, 0x222B},+    {0xA1F3, 0x222C},+    {0xA1F4, 0x2208},+    {0xA1F5, 0x220B},+    {0xA1F6, 0x2286},+    {0xA1F7, 0x2287},+    {0xA1F8, 0x2282},+    {0xA1F9, 0x2283},+    {0xA1FA, 0x222A},+    {0xA1FB, 0x2229},+    {0xA1FC, 0x2227},+    {0xA1FD, 0x2228},+    {0xA1FE, 0xFFE2},+    {0xA2A1, 0x21D2},+    {0xA2A2, 0x21D4},+    {0xA2A3, 0x2200},+    {0xA2A4, 0x2203},+    {0xA2A5, 0x00B4},+    {0xA2A6, 0xFF5E},+    {0xA2A7, 0x02C7},+    {0xA2A8, 0x02D8},+    {0xA2A9, 0x02DD},+    {0xA2AA, 0x02DA},+    {0xA2AB, 0x02D9},+    {0xA2AC, 0x00B8},+    {0xA2AD, 0x02DB},+    {0xA2AE, 0x00A1},+    {0xA2AF, 0x00BF},+    {0xA2B0, 0x02D0},+    {0xA2B1, 0x222E},+    {0xA2B2, 0x2211},+    {0xA2B3, 0x220F},+    {0xA2B4, 0x00A4},+    {0xA2B5, 0x2109},+    {0xA2B6, 0x2030},+    {0xA2B7, 0x25C1},+    {0xA2B8, 0x25C0},+    {0xA2B9, 0x25B7},+    {0xA2BA, 0x25B6},+    {0xA2BB, 0x2664},+    {0xA2BC, 0x2660},+    {0xA2BD, 0x2661},+    {0xA2BE, 0x2665},+    {0xA2BF, 0x2667},+    {0xA2C0, 0x2663},+    {0xA2C1, 0x2299},+    {0xA2C2, 0x25C8},+    {0xA2C3, 0x25A3},+    {0xA2C4, 0x25D0},+    {0xA2C5, 0x25D1},+    {0xA2C6, 0x2592},+    {0xA2C7, 0x25A4},+    {0xA2C8, 0x25A5},+    {0xA2C9, 0x25A8},+    {0xA2CA, 0x25A7},+    {0xA2CB, 0x25A6},+    {0xA2CC, 0x25A9},+    {0xA2CD, 0x2668},+    {0xA2CE, 0x260F},+    {0xA2CF, 0x260E},+    {0xA2D0, 0x261C},+    {0xA2D1, 0x261E},+    {0xA2D2, 0x00B6},+    {0xA2D3, 0x2020},+    {0xA2D4, 0x2021},+    {0xA2D5, 0x2195},+    {0xA2D6, 0x2197},+    {0xA2D7, 0x2199},+    {0xA2D8, 0x2196},+    {0xA2D9, 0x2198},+    {0xA2DA, 0x266D},+    {0xA2DB, 0x2669},+    {0xA2DC, 0x266A},+    {0xA2DD, 0x266C},+    {0xA2DE, 0x327F},+    {0xA2DF, 0x321C},+    {0xA2E0, 0x2116},+    {0xA2E1, 0x33C7},+    {0xA2E2, 0x2122},+    {0xA2E3, 0x33C2},+    {0xA2E4, 0x33D8},+    {0xA2E5, 0x2121},+    {0xA3A1, 0xFF01},+    {0xA3A2, 0xFF02},+    {0xA3A3, 0xFF03},+    {0xA3A4, 0xFF04},+    {0xA3A5, 0xFF05},+    {0xA3A6, 0xFF06},+    {0xA3A7, 0xFF07},+    {0xA3A8, 0xFF08},+    {0xA3A9, 0xFF09},+    {0xA3AA, 0xFF0A},+    {0xA3AB, 0xFF0B},+    {0xA3AC, 0xFF0C},+    {0xA3AD, 0xFF0D},+    {0xA3AE, 0xFF0E},+    {0xA3AF, 0xFF0F},+    {0xA3B0, 0xFF10},+    {0xA3B1, 0xFF11},+    {0xA3B2, 0xFF12},+    {0xA3B3, 0xFF13},+    {0xA3B4, 0xFF14},+    {0xA3B5, 0xFF15},+    {0xA3B6, 0xFF16},+    {0xA3B7, 0xFF17},+    {0xA3B8, 0xFF18},+    {0xA3B9, 0xFF19},+    {0xA3BA, 0xFF1A},+    {0xA3BB, 0xFF1B},+    {0xA3BC, 0xFF1C},+    {0xA3BD, 0xFF1D},+    {0xA3BE, 0xFF1E},+    {0xA3BF, 0xFF1F},+    {0xA3C0, 0xFF20},+    {0xA3C1, 0xFF21},+    {0xA3C2, 0xFF22},+    {0xA3C3, 0xFF23},+    {0xA3C4, 0xFF24},+    {0xA3C5, 0xFF25},+    {0xA3C6, 0xFF26},+    {0xA3C7, 0xFF27},+    {0xA3C8, 0xFF28},+    {0xA3C9, 0xFF29},+    {0xA3CA, 0xFF2A},+    {0xA3CB, 0xFF2B},+    {0xA3CC, 0xFF2C},+    {0xA3CD, 0xFF2D},+    {0xA3CE, 0xFF2E},+    {0xA3CF, 0xFF2F},+    {0xA3D0, 0xFF30},+    {0xA3D1, 0xFF31},+    {0xA3D2, 0xFF32},+    {0xA3D3, 0xFF33},+    {0xA3D4, 0xFF34},+    {0xA3D5, 0xFF35},+    {0xA3D6, 0xFF36},+    {0xA3D7, 0xFF37},+    {0xA3D8, 0xFF38},+    {0xA3D9, 0xFF39},+    {0xA3DA, 0xFF3A},+    {0xA3DB, 0xFF3B},+    {0xA3DC, 0xFFE6},+    {0xA3DD, 0xFF3D},+    {0xA3DE, 0xFF3E},+    {0xA3DF, 0xFF3F},+    {0xA3E0, 0xFF40},+    {0xA3E1, 0xFF41},+    {0xA3E2, 0xFF42},+    {0xA3E3, 0xFF43},+    {0xA3E4, 0xFF44},+    {0xA3E5, 0xFF45},+    {0xA3E6, 0xFF46},+    {0xA3E7, 0xFF47},+    {0xA3E8, 0xFF48},+    {0xA3E9, 0xFF49},+    {0xA3EA, 0xFF4A},+    {0xA3EB, 0xFF4B},+    {0xA3EC, 0xFF4C},+    {0xA3ED, 0xFF4D},+    {0xA3EE, 0xFF4E},+    {0xA3EF, 0xFF4F},+    {0xA3F0, 0xFF50},+    {0xA3F1, 0xFF51},+    {0xA3F2, 0xFF52},+    {0xA3F3, 0xFF53},+    {0xA3F4, 0xFF54},+    {0xA3F5, 0xFF55},+    {0xA3F6, 0xFF56},+    {0xA3F7, 0xFF57},+    {0xA3F8, 0xFF58},+    {0xA3F9, 0xFF59},+    {0xA3FA, 0xFF5A},+    {0xA3FB, 0xFF5B},+    {0xA3FC, 0xFF5C},+    {0xA3FD, 0xFF5D},+    {0xA3FE, 0xFFE3},+    {0xA4A1, 0x3131},+    {0xA4A2, 0x3132},+    {0xA4A3, 0x3133},+    {0xA4A4, 0x3134},+    {0xA4A5, 0x3135},+    {0xA4A6, 0x3136},+    {0xA4A7, 0x3137},+    {0xA4A8, 0x3138},+    {0xA4A9, 0x3139},+    {0xA4AA, 0x313A},+    {0xA4AB, 0x313B},+    {0xA4AC, 0x313C},+    {0xA4AD, 0x313D},+    {0xA4AE, 0x313E},+    {0xA4AF, 0x313F},+    {0xA4B0, 0x3140},+    {0xA4B1, 0x3141},+    {0xA4B2, 0x3142},+    {0xA4B3, 0x3143},+    {0xA4B4, 0x3144},+    {0xA4B5, 0x3145},+    {0xA4B6, 0x3146},+    {0xA4B7, 0x3147},+    {0xA4B8, 0x3148},+    {0xA4B9, 0x3149},+    {0xA4BA, 0x314A},+    {0xA4BB, 0x314B},+    {0xA4BC, 0x314C},+    {0xA4BD, 0x314D},+    {0xA4BE, 0x314E},+    {0xA4BF, 0x314F},+    {0xA4C0, 0x3150},+    {0xA4C1, 0x3151},+    {0xA4C2, 0x3152},+    {0xA4C3, 0x3153},+    {0xA4C4, 0x3154},+    {0xA4C5, 0x3155},+    {0xA4C6, 0x3156},+    {0xA4C7, 0x3157},+    {0xA4C8, 0x3158},+    {0xA4C9, 0x3159},+    {0xA4CA, 0x315A},+    {0xA4CB, 0x315B},+    {0xA4CC, 0x315C},+    {0xA4CD, 0x315D},+    {0xA4CE, 0x315E},+    {0xA4CF, 0x315F},+    {0xA4D0, 0x3160},+    {0xA4D1, 0x3161},+    {0xA4D2, 0x3162},+    {0xA4D3, 0x3163},+    {0xA4D5, 0x3165},+    {0xA4D6, 0x3166},+    {0xA4D7, 0x3167},+    {0xA4D8, 0x3168},+    {0xA4D9, 0x3169},+    {0xA4DA, 0x316A},+    {0xA4DB, 0x316B},+    {0xA4DC, 0x316C},+    {0xA4DD, 0x316D},+    {0xA4DE, 0x316E},+    {0xA4DF, 0x316F},+    {0xA4E0, 0x3170},+    {0xA4E1, 0x3171},+    {0xA4E2, 0x3172},+    {0xA4E3, 0x3173},+    {0xA4E4, 0x3174},+    {0xA4E5, 0x3175},+    {0xA4E6, 0x3176},+    {0xA4E7, 0x3177},+    {0xA4E8, 0x3178},+    {0xA4E9, 0x3179},+    {0xA4EA, 0x317A},+    {0xA4EB, 0x317B},+    {0xA4EC, 0x317C},+    {0xA4ED, 0x317D},+    {0xA4EE, 0x317E},+    {0xA4EF, 0x317F},+    {0xA4F0, 0x3180},+    {0xA4F1, 0x3181},+    {0xA4F2, 0x3182},+    {0xA4F3, 0x3183},+    {0xA4F4, 0x3184},+    {0xA4F5, 0x3185},+    {0xA4F6, 0x3186},+    {0xA4F7, 0x3187},+    {0xA4F8, 0x3188},+    {0xA4F9, 0x3189},+    {0xA4FA, 0x318A},+    {0xA4FB, 0x318B},+    {0xA4FC, 0x318C},+    {0xA4FD, 0x318D},+    {0xA4FE, 0x318E},+    {0xA5A1, 0x2170},+    {0xA5A2, 0x2171},+    {0xA5A3, 0x2172},+    {0xA5A4, 0x2173},+    {0xA5A5, 0x2174},+    {0xA5A6, 0x2175},+    {0xA5A7, 0x2176},+    {0xA5A8, 0x2177},+    {0xA5A9, 0x2178},+    {0xA5AA, 0x2179},+    {0xA5B0, 0x2160},+    {0xA5B1, 0x2161},+    {0xA5B2, 0x2162},+    {0xA5B3, 0x2163},+    {0xA5B4, 0x2164},+    {0xA5B5, 0x2165},+    {0xA5B6, 0x2166},+    {0xA5B7, 0x2167},+    {0xA5B8, 0x2168},+    {0xA5B9, 0x2169},+    {0xA5C1, 0x0391},+    {0xA5C2, 0x0392},+    {0xA5C3, 0x0393},+    {0xA5C4, 0x0394},+    {0xA5C5, 0x0395},+    {0xA5C6, 0x0396},+    {0xA5C7, 0x0397},+    {0xA5C8, 0x0398},+    {0xA5C9, 0x0399},+    {0xA5CA, 0x039A},+    {0xA5CB, 0x039B},+    {0xA5CC, 0x039C},+    {0xA5CD, 0x039D},+    {0xA5CE, 0x039E},+    {0xA5CF, 0x039F},+    {0xA5D0, 0x03A0},+    {0xA5D1, 0x03A1},+    {0xA5D2, 0x03A3},+    {0xA5D3, 0x03A4},+    {0xA5D4, 0x03A5},+    {0xA5D5, 0x03A6},+    {0xA5D6, 0x03A7},+    {0xA5D7, 0x03A8},+    {0xA5D8, 0x03A9},+    {0xA5E1, 0x03B1},+    {0xA5E2, 0x03B2},+    {0xA5E3, 0x03B3},+    {0xA5E4, 0x03B4},+    {0xA5E5, 0x03B5},+    {0xA5E6, 0x03B6},+    {0xA5E7, 0x03B7},+    {0xA5E8, 0x03B8},+    {0xA5E9, 0x03B9},+    {0xA5EA, 0x03BA},+    {0xA5EB, 0x03BB},+    {0xA5EC, 0x03BC},+    {0xA5ED, 0x03BD},+    {0xA5EE, 0x03BE},+    {0xA5EF, 0x03BF},+    {0xA5F0, 0x03C0},+    {0xA5F1, 0x03C1},+    {0xA5F2, 0x03C3},+    {0xA5F3, 0x03C4},+    {0xA5F4, 0x03C5},+    {0xA5F5, 0x03C6},+    {0xA5F6, 0x03C7},+    {0xA5F7, 0x03C8},+    {0xA5F8, 0x03C9},+    {0xA6A1, 0x2500},+    {0xA6A2, 0x2502},+    {0xA6A3, 0x250C},+    {0xA6A4, 0x2510},+    {0xA6A5, 0x2518},+    {0xA6A6, 0x2514},+    {0xA6A7, 0x251C},+    {0xA6A8, 0x252C},+    {0xA6A9, 0x2524},+    {0xA6AA, 0x2534},+    {0xA6AB, 0x253C},+    {0xA6AC, 0x2501},+    {0xA6AD, 0x2503},+    {0xA6AE, 0x250F},+    {0xA6AF, 0x2513},+    {0xA6B0, 0x251B},+    {0xA6B1, 0x2517},+    {0xA6B2, 0x2523},+    {0xA6B3, 0x2533},+    {0xA6B4, 0x252B},+    {0xA6B5, 0x253B},+    {0xA6B6, 0x254B},+    {0xA6B7, 0x2520},+    {0xA6B8, 0x252F},+    {0xA6B9, 0x2528},+    {0xA6BA, 0x2537},+    {0xA6BB, 0x253F},+    {0xA6BC, 0x251D},+    {0xA6BD, 0x2530},+    {0xA6BE, 0x2525},+    {0xA6BF, 0x2538},+    {0xA6C0, 0x2542},+    {0xA6C1, 0x2512},+    {0xA6C2, 0x2511},+    {0xA6C3, 0x251A},+    {0xA6C4, 0x2519},+    {0xA6C5, 0x2516},+    {0xA6C6, 0x2515},+    {0xA6C7, 0x250E},+    {0xA6C8, 0x250D},+    {0xA6C9, 0x251E},+    {0xA6CA, 0x251F},+    {0xA6CB, 0x2521},+    {0xA6CC, 0x2522},+    {0xA6CD, 0x2526},+    {0xA6CE, 0x2527},+    {0xA6CF, 0x2529},+    {0xA6D0, 0x252A},+    {0xA6D1, 0x252D},+    {0xA6D2, 0x252E},+    {0xA6D3, 0x2531},+    {0xA6D4, 0x2532},+    {0xA6D5, 0x2535},+    {0xA6D6, 0x2536},+    {0xA6D7, 0x2539},+    {0xA6D8, 0x253A},+    {0xA6D9, 0x253D},+    {0xA6DA, 0x253E},+    {0xA6DB, 0x2540},+    {0xA6DC, 0x2541},+    {0xA6DD, 0x2543},+    {0xA6DE, 0x2544},+    {0xA6DF, 0x2545},+    {0xA6E0, 0x2546},+    {0xA6E1, 0x2547},+    {0xA6E2, 0x2548},+    {0xA6E3, 0x2549},+    {0xA6E4, 0x254A},+    {0xA7A1, 0x3395},+    {0xA7A2, 0x3396},+    {0xA7A3, 0x3397},+    {0xA7A4, 0x2113},+    {0xA7A5, 0x3398},+    {0xA7A6, 0x33C4},+    {0xA7A7, 0x33A3},+    {0xA7A8, 0x33A4},+    {0xA7A9, 0x33A5},+    {0xA7AA, 0x33A6},+    {0xA7AB, 0x3399},+    {0xA7AC, 0x339A},+    {0xA7AD, 0x339B},+    {0xA7AE, 0x339C},+    {0xA7AF, 0x339D},+    {0xA7B0, 0x339E},+    {0xA7B1, 0x339F},+    {0xA7B2, 0x33A0},+    {0xA7B3, 0x33A1},+    {0xA7B4, 0x33A2},+    {0xA7B5, 0x33CA},+    {0xA7B6, 0x338D},+    {0xA7B7, 0x338E},+    {0xA7B8, 0x338F},+    {0xA7B9, 0x33CF},+    {0xA7BA, 0x3388},+    {0xA7BB, 0x3389},+    {0xA7BC, 0x33C8},+    {0xA7BD, 0x33A7},+    {0xA7BE, 0x33A8},+    {0xA7BF, 0x33B0},+    {0xA7C0, 0x33B1},+    {0xA7C1, 0x33B2},+    {0xA7C2, 0x33B3},+    {0xA7C3, 0x33B4},+    {0xA7C4, 0x33B5},+    {0xA7C5, 0x33B6},+    {0xA7C6, 0x33B7},+    {0xA7C7, 0x33B8},+    {0xA7C8, 0x33B9},+    {0xA7C9, 0x3380},+    {0xA7CA, 0x3381},+    {0xA7CB, 0x3382},+    {0xA7CC, 0x3383},+    {0xA7CD, 0x3384},+    {0xA7CE, 0x33BA},+    {0xA7CF, 0x33BB},+    {0xA7D0, 0x33BC},+    {0xA7D1, 0x33BD},+    {0xA7D2, 0x33BE},+    {0xA7D3, 0x33BF},+    {0xA7D4, 0x3390},+    {0xA7D5, 0x3391},+    {0xA7D6, 0x3392},+    {0xA7D7, 0x3393},+    {0xA7D8, 0x3394},+    {0xA7D9, 0x2126},+    {0xA7DA, 0x33C0},+    {0xA7DB, 0x33C1},+    {0xA7DC, 0x338A},+    {0xA7DD, 0x338B},+    {0xA7DE, 0x338C},+    {0xA7DF, 0x33D6},+    {0xA7E0, 0x33C5},+    {0xA7E1, 0x33AD},+    {0xA7E2, 0x33AE},+    {0xA7E3, 0x33AF},+    {0xA7E4, 0x33DB},+    {0xA7E5, 0x33A9},+    {0xA7E6, 0x33AA},+    {0xA7E7, 0x33AB},+    {0xA7E8, 0x33AC},+    {0xA7E9, 0x33DD},+    {0xA7EA, 0x33D0},+    {0xA7EB, 0x33D3},+    {0xA7EC, 0x33C3},+    {0xA7ED, 0x33C9},+    {0xA7EE, 0x33DC},+    {0xA7EF, 0x33C6},+    {0xA8A1, 0x00C6},+    {0xA8A2, 0x00D0},+    {0xA8A3, 0x00AA},+    {0xA8A4, 0x0126},+    {0xA8A6, 0x0132},+    {0xA8A8, 0x013F},+    {0xA8A9, 0x0141},+    {0xA8AA, 0x00D8},+    {0xA8AB, 0x0152},+    {0xA8AC, 0x00BA},+    {0xA8AD, 0x00DE},+    {0xA8AE, 0x0166},+    {0xA8AF, 0x014A},+    {0xA8B1, 0x3260},+    {0xA8B2, 0x3261},+    {0xA8B3, 0x3262},+    {0xA8B4, 0x3263},+    {0xA8B5, 0x3264},+    {0xA8B6, 0x3265},+    {0xA8B7, 0x3266},+    {0xA8B8, 0x3267},+    {0xA8B9, 0x3268},+    {0xA8BA, 0x3269},+    {0xA8BB, 0x326A},+    {0xA8BC, 0x326B},+    {0xA8BD, 0x326C},+    {0xA8BE, 0x326D},+    {0xA8BF, 0x326E},+    {0xA8C0, 0x326F},+    {0xA8C1, 0x3270},+    {0xA8C2, 0x3271},+    {0xA8C3, 0x3272},+    {0xA8C4, 0x3273},+    {0xA8C5, 0x3274},+    {0xA8C6, 0x3275},+    {0xA8C7, 0x3276},+    {0xA8C8, 0x3277},+    {0xA8C9, 0x3278},+    {0xA8CA, 0x3279},+    {0xA8CB, 0x327A},+    {0xA8CC, 0x327B},+    {0xA8CD, 0x24D0},+    {0xA8CE, 0x24D1},+    {0xA8CF, 0x24D2},+    {0xA8D0, 0x24D3},+    {0xA8D1, 0x24D4},+    {0xA8D2, 0x24D5},+    {0xA8D3, 0x24D6},+    {0xA8D4, 0x24D7},+    {0xA8D5, 0x24D8},+    {0xA8D6, 0x24D9},+    {0xA8D7, 0x24DA},+    {0xA8D8, 0x24DB},+    {0xA8D9, 0x24DC},+    {0xA8DA, 0x24DD},+    {0xA8DB, 0x24DE},+    {0xA8DC, 0x24DF},+    {0xA8DD, 0x24E0},+    {0xA8DE, 0x24E1},+    {0xA8DF, 0x24E2},+    {0xA8E0, 0x24E3},+    {0xA8E1, 0x24E4},+    {0xA8E2, 0x24E5},+    {0xA8E3, 0x24E6},+    {0xA8E4, 0x24E7},+    {0xA8E5, 0x24E8},+    {0xA8E6, 0x24E9},+    {0xA8E7, 0x2460},+    {0xA8E8, 0x2461},+    {0xA8E9, 0x2462},+    {0xA8EA, 0x2463},+    {0xA8EB, 0x2464},+    {0xA8EC, 0x2465},+    {0xA8ED, 0x2466},+    {0xA8EE, 0x2467},+    {0xA8EF, 0x2468},+    {0xA8F0, 0x2469},+    {0xA8F1, 0x246A},+    {0xA8F2, 0x246B},+    {0xA8F3, 0x246C},+    {0xA8F4, 0x246D},+    {0xA8F5, 0x246E},+    {0xA8F6, 0x00BD},+    {0xA8F7, 0x2153},+    {0xA8F8, 0x2154},+    {0xA8F9, 0x00BC},+    {0xA8FA, 0x00BE},+    {0xA8FB, 0x215B},+    {0xA8FC, 0x215C},+    {0xA8FD, 0x215D},+    {0xA8FE, 0x215E},+    {0xA9A1, 0x00E6},+    {0xA9A2, 0x0111},+    {0xA9A3, 0x00F0},+    {0xA9A4, 0x0127},+    {0xA9A5, 0x0131},+    {0xA9A6, 0x0133},+    {0xA9A7, 0x0138},+    {0xA9A8, 0x0140},+    {0xA9A9, 0x0142},+    {0xA9AA, 0x00F8},+    {0xA9AB, 0x0153},+    {0xA9AC, 0x00DF},+    {0xA9AD, 0x00FE},+    {0xA9AE, 0x0167},+    {0xA9AF, 0x014B},+    {0xA9B0, 0x0149},+    {0xA9B1, 0x3200},+    {0xA9B2, 0x3201},+    {0xA9B3, 0x3202},+    {0xA9B4, 0x3203},+    {0xA9B5, 0x3204},+    {0xA9B6, 0x3205},+    {0xA9B7, 0x3206},+    {0xA9B8, 0x3207},+    {0xA9B9, 0x3208},+    {0xA9BA, 0x3209},+    {0xA9BB, 0x320A},+    {0xA9BC, 0x320B},+    {0xA9BD, 0x320C},+    {0xA9BE, 0x320D},+    {0xA9BF, 0x320E},+    {0xA9C0, 0x320F},+    {0xA9C1, 0x3210},+    {0xA9C2, 0x3211},+    {0xA9C3, 0x3212},+    {0xA9C4, 0x3213},+    {0xA9C5, 0x3214},+    {0xA9C6, 0x3215},+    {0xA9C7, 0x3216},+    {0xA9C8, 0x3217},+    {0xA9C9, 0x3218},+    {0xA9CA, 0x3219},+    {0xA9CB, 0x321A},+    {0xA9CC, 0x321B},+    {0xA9CD, 0x249C},+    {0xA9CE, 0x249D},+    {0xA9CF, 0x249E},+    {0xA9D0, 0x249F},+    {0xA9D1, 0x24A0},+    {0xA9D2, 0x24A1},+    {0xA9D3, 0x24A2},+    {0xA9D4, 0x24A3},+    {0xA9D5, 0x24A4},+    {0xA9D6, 0x24A5},+    {0xA9D7, 0x24A6},+    {0xA9D8, 0x24A7},+    {0xA9D9, 0x24A8},+    {0xA9DA, 0x24A9},+    {0xA9DB, 0x24AA},+    {0xA9DC, 0x24AB},+    {0xA9DD, 0x24AC},+    {0xA9DE, 0x24AD},+    {0xA9DF, 0x24AE},+    {0xA9E0, 0x24AF},+    {0xA9E1, 0x24B0},+    {0xA9E2, 0x24B1},+    {0xA9E3, 0x24B2},+    {0xA9E4, 0x24B3},+    {0xA9E5, 0x24B4},+    {0xA9E6, 0x24B5},+    {0xA9E7, 0x2474},+    {0xA9E8, 0x2475},+    {0xA9E9, 0x2476},+    {0xA9EA, 0x2477},+    {0xA9EB, 0x2478},+    {0xA9EC, 0x2479},+    {0xA9ED, 0x247A},+    {0xA9EE, 0x247B},+    {0xA9EF, 0x247C},+    {0xA9F0, 0x247D},+    {0xA9F1, 0x247E},+    {0xA9F2, 0x247F},+    {0xA9F3, 0x2480},+    {0xA9F4, 0x2481},+    {0xA9F5, 0x2482},+    {0xA9F6, 0x00B9},+    {0xA9F7, 0x00B2},+    {0xA9F8, 0x00B3},+    {0xA9F9, 0x2074},+    {0xA9FA, 0x207F},+    {0xA9FB, 0x2081},+    {0xA9FC, 0x2082},+    {0xA9FD, 0x2083},+    {0xA9FE, 0x2084},+    {0xAAA1, 0x3041},+    {0xAAA2, 0x3042},+    {0xAAA3, 0x3043},+    {0xAAA4, 0x3044},+    {0xAAA5, 0x3045},+    {0xAAA6, 0x3046},+    {0xAAA7, 0x3047},+    {0xAAA8, 0x3048},+    {0xAAA9, 0x3049},+    {0xAAAA, 0x304A},+    {0xAAAB, 0x304B},+    {0xAAAC, 0x304C},+    {0xAAAD, 0x304D},+    {0xAAAE, 0x304E},+    {0xAAAF, 0x304F},+    {0xAAB0, 0x3050},+    {0xAAB1, 0x3051},+    {0xAAB2, 0x3052},+    {0xAAB3, 0x3053},+    {0xAAB4, 0x3054},+    {0xAAB5, 0x3055},+    {0xAAB6, 0x3056},+    {0xAAB7, 0x3057},+    {0xAAB8, 0x3058},+    {0xAAB9, 0x3059},+    {0xAABA, 0x305A},+    {0xAABB, 0x305B},+    {0xAABC, 0x305C},+    {0xAABD, 0x305D},+    {0xAABE, 0x305E},+    {0xAABF, 0x305F},+    {0xAAC0, 0x3060},+    {0xAAC1, 0x3061},+    {0xAAC2, 0x3062},+    {0xAAC3, 0x3063},+    {0xAAC4, 0x3064},+    {0xAAC5, 0x3065},+    {0xAAC6, 0x3066},+    {0xAAC7, 0x3067},+    {0xAAC8, 0x3068},+    {0xAAC9, 0x3069},+    {0xAACA, 0x306A},+    {0xAACB, 0x306B},+    {0xAACC, 0x306C},+    {0xAACD, 0x306D},+    {0xAACE, 0x306E},+    {0xAACF, 0x306F},+    {0xAAD0, 0x3070},+    {0xAAD1, 0x3071},+    {0xAAD2, 0x3072},+    {0xAAD3, 0x3073},+    {0xAAD4, 0x3074},+    {0xAAD5, 0x3075},+    {0xAAD6, 0x3076},+    {0xAAD7, 0x3077},+    {0xAAD8, 0x3078},+    {0xAAD9, 0x3079},+    {0xAADA, 0x307A},+    {0xAADB, 0x307B},+    {0xAADC, 0x307C},+    {0xAADD, 0x307D},+    {0xAADE, 0x307E},+    {0xAADF, 0x307F},+    {0xAAE0, 0x3080},+    {0xAAE1, 0x3081},+    {0xAAE2, 0x3082},+    {0xAAE3, 0x3083},+    {0xAAE4, 0x3084},+    {0xAAE5, 0x3085},+    {0xAAE6, 0x3086},+    {0xAAE7, 0x3087},+    {0xAAE8, 0x3088},+    {0xAAE9, 0x3089},+    {0xAAEA, 0x308A},+    {0xAAEB, 0x308B},+    {0xAAEC, 0x308C},+    {0xAAED, 0x308D},+    {0xAAEE, 0x308E},+    {0xAAEF, 0x308F},+    {0xAAF0, 0x3090},+    {0xAAF1, 0x3091},+    {0xAAF2, 0x3092},+    {0xAAF3, 0x3093},+    {0xABA1, 0x30A1},+    {0xABA2, 0x30A2},+    {0xABA3, 0x30A3},+    {0xABA4, 0x30A4},+    {0xABA5, 0x30A5},+    {0xABA6, 0x30A6},+    {0xABA7, 0x30A7},+    {0xABA8, 0x30A8},+    {0xABA9, 0x30A9},+    {0xABAA, 0x30AA},+    {0xABAB, 0x30AB},+    {0xABAC, 0x30AC},+    {0xABAD, 0x30AD},+    {0xABAE, 0x30AE},+    {0xABAF, 0x30AF},+    {0xABB0, 0x30B0},+    {0xABB1, 0x30B1},+    {0xABB2, 0x30B2},+    {0xABB3, 0x30B3},+    {0xABB4, 0x30B4},+    {0xABB5, 0x30B5},+    {0xABB6, 0x30B6},+    {0xABB7, 0x30B7},+    {0xABB8, 0x30B8},+    {0xABB9, 0x30B9},+    {0xABBA, 0x30BA},+    {0xABBB, 0x30BB},+    {0xABBC, 0x30BC},+    {0xABBD, 0x30BD},+    {0xABBE, 0x30BE},+    {0xABBF, 0x30BF},+    {0xABC0, 0x30C0},+    {0xABC1, 0x30C1},+    {0xABC2, 0x30C2},+    {0xABC3, 0x30C3},+    {0xABC4, 0x30C4},+    {0xABC5, 0x30C5},+    {0xABC6, 0x30C6},+    {0xABC7, 0x30C7},+    {0xABC8, 0x30C8},+    {0xABC9, 0x30C9},+    {0xABCA, 0x30CA},+    {0xABCB, 0x30CB},+    {0xABCC, 0x30CC},+    {0xABCD, 0x30CD},+    {0xABCE, 0x30CE},+    {0xABCF, 0x30CF},+    {0xABD0, 0x30D0},+    {0xABD1, 0x30D1},+    {0xABD2, 0x30D2},+    {0xABD3, 0x30D3},+    {0xABD4, 0x30D4},+    {0xABD5, 0x30D5},+    {0xABD6, 0x30D6},+    {0xABD7, 0x30D7},+    {0xABD8, 0x30D8},+    {0xABD9, 0x30D9},+    {0xABDA, 0x30DA},+    {0xABDB, 0x30DB},+    {0xABDC, 0x30DC},+    {0xABDD, 0x30DD},+    {0xABDE, 0x30DE},+    {0xABDF, 0x30DF},+    {0xABE0, 0x30E0},+    {0xABE1, 0x30E1},+    {0xABE2, 0x30E2},+    {0xABE3, 0x30E3},+    {0xABE4, 0x30E4},+    {0xABE5, 0x30E5},+    {0xABE6, 0x30E6},+    {0xABE7, 0x30E7},+    {0xABE8, 0x30E8},+    {0xABE9, 0x30E9},+    {0xABEA, 0x30EA},+    {0xABEB, 0x30EB},+    {0xABEC, 0x30EC},+    {0xABED, 0x30ED},+    {0xABEE, 0x30EE},+    {0xABEF, 0x30EF},+    {0xABF0, 0x30F0},+    {0xABF1, 0x30F1},+    {0xABF2, 0x30F2},+    {0xABF3, 0x30F3},+    {0xABF4, 0x30F4},+    {0xABF5, 0x30F5},+    {0xABF6, 0x30F6},+    {0xACA1, 0x0410},+    {0xACA2, 0x0411},+    {0xACA3, 0x0412},+    {0xACA4, 0x0413},+    {0xACA5, 0x0414},+    {0xACA6, 0x0415},+    {0xACA7, 0x0401},+    {0xACA8, 0x0416},+    {0xACA9, 0x0417},+    {0xACAA, 0x0418},+    {0xACAB, 0x0419},+    {0xACAC, 0x041A},+    {0xACAD, 0x041B},+    {0xACAE, 0x041C},+    {0xACAF, 0x041D},+    {0xACB0, 0x041E},+    {0xACB1, 0x041F},+    {0xACB2, 0x0420},+    {0xACB3, 0x0421},+    {0xACB4, 0x0422},+    {0xACB5, 0x0423},+    {0xACB6, 0x0424},+    {0xACB7, 0x0425},+    {0xACB8, 0x0426},+    {0xACB9, 0x0427},+    {0xACBA, 0x0428},+    {0xACBB, 0x0429},+    {0xACBC, 0x042A},+    {0xACBD, 0x042B},+    {0xACBE, 0x042C},+    {0xACBF, 0x042D},+    {0xACC0, 0x042E},+    {0xACC1, 0x042F},+    {0xACD1, 0x0430},+    {0xACD2, 0x0431},+    {0xACD3, 0x0432},+    {0xACD4, 0x0433},+    {0xACD5, 0x0434},+    {0xACD6, 0x0435},+    {0xACD7, 0x0451},+    {0xACD8, 0x0436},+    {0xACD9, 0x0437},+    {0xACDA, 0x0438},+    {0xACDB, 0x0439},+    {0xACDC, 0x043A},+    {0xACDD, 0x043B},+    {0xACDE, 0x043C},+    {0xACDF, 0x043D},+    {0xACE0, 0x043E},+    {0xACE1, 0x043F},+    {0xACE2, 0x0440},+    {0xACE3, 0x0441},+    {0xACE4, 0x0442},+    {0xACE5, 0x0443},+    {0xACE6, 0x0444},+    {0xACE7, 0x0445},+    {0xACE8, 0x0446},+    {0xACE9, 0x0447},+    {0xACEA, 0x0448},+    {0xACEB, 0x0449},+    {0xACEC, 0x044A},+    {0xACED, 0x044B},+    {0xACEE, 0x044C},+    {0xACEF, 0x044D},+    {0xACF0, 0x044E},+    {0xACF1, 0x044F},+    {0xB0A1, 0xAC00},+    {0xB0A2, 0xAC01},+    {0xB0A3, 0xAC04},+    {0xB0A4, 0xAC07},+    {0xB0A5, 0xAC08},+    {0xB0A6, 0xAC09},+    {0xB0A7, 0xAC0A},+    {0xB0A8, 0xAC10},+    {0xB0A9, 0xAC11},+    {0xB0AA, 0xAC12},+    {0xB0AB, 0xAC13},+    {0xB0AC, 0xAC14},+    {0xB0AD, 0xAC15},+    {0xB0AE, 0xAC16},+    {0xB0AF, 0xAC17},+    {0xB0B0, 0xAC19},+    {0xB0B1, 0xAC1A},+    {0xB0B2, 0xAC1B},+    {0xB0B3, 0xAC1C},+    {0xB0B4, 0xAC1D},+    {0xB0B5, 0xAC20},+    {0xB0B6, 0xAC24},+    {0xB0B7, 0xAC2C},+    {0xB0B8, 0xAC2D},+    {0xB0B9, 0xAC2F},+    {0xB0BA, 0xAC30},+    {0xB0BB, 0xAC31},+    {0xB0BC, 0xAC38},+    {0xB0BD, 0xAC39},+    {0xB0BE, 0xAC3C},+    {0xB0BF, 0xAC40},+    {0xB0C0, 0xAC4B},+    {0xB0C1, 0xAC4D},+    {0xB0C2, 0xAC54},+    {0xB0C3, 0xAC58},+    {0xB0C4, 0xAC5C},+    {0xB0C5, 0xAC70},+    {0xB0C6, 0xAC71},+    {0xB0C7, 0xAC74},+    {0xB0C8, 0xAC77},+    {0xB0C9, 0xAC78},+    {0xB0CA, 0xAC7A},+    {0xB0CB, 0xAC80},+    {0xB0CC, 0xAC81},+    {0xB0CD, 0xAC83},+    {0xB0CE, 0xAC84},+    {0xB0CF, 0xAC85},+    {0xB0D0, 0xAC86},+    {0xB0D1, 0xAC89},+    {0xB0D2, 0xAC8A},+    {0xB0D3, 0xAC8B},+    {0xB0D4, 0xAC8C},+    {0xB0D5, 0xAC90},+    {0xB0D6, 0xAC94},+    {0xB0D7, 0xAC9C},+    {0xB0D8, 0xAC9D},+    {0xB0D9, 0xAC9F},+    {0xB0DA, 0xACA0},+    {0xB0DB, 0xACA1},+    {0xB0DC, 0xACA8},+    {0xB0DD, 0xACA9},+    {0xB0DE, 0xACAA},+    {0xB0DF, 0xACAC},+    {0xB0E0, 0xACAF},+    {0xB0E1, 0xACB0},+    {0xB0E2, 0xACB8},+    {0xB0E3, 0xACB9},+    {0xB0E4, 0xACBB},+    {0xB0E5, 0xACBC},+    {0xB0E6, 0xACBD},+    {0xB0E7, 0xACC1},+    {0xB0E8, 0xACC4},+    {0xB0E9, 0xACC8},+    {0xB0EA, 0xACCC},+    {0xB0EB, 0xACD5},+    {0xB0EC, 0xACD7},+    {0xB0ED, 0xACE0},+    {0xB0EE, 0xACE1},+    {0xB0EF, 0xACE4},+    {0xB0F0, 0xACE7},+    {0xB0F1, 0xACE8},+    {0xB0F2, 0xACEA},+    {0xB0F3, 0xACEC},+    {0xB0F4, 0xACEF},+    {0xB0F5, 0xACF0},+    {0xB0F6, 0xACF1},+    {0xB0F7, 0xACF3},+    {0xB0F8, 0xACF5},+    {0xB0F9, 0xACF6},+    {0xB0FA, 0xACFC},+    {0xB0FB, 0xACFD},+    {0xB0FC, 0xAD00},+    {0xB0FD, 0xAD04},+    {0xB0FE, 0xAD06},+    {0xB1A1, 0xAD0C},+    {0xB1A2, 0xAD0D},+    {0xB1A3, 0xAD0F},+    {0xB1A4, 0xAD11},+    {0xB1A5, 0xAD18},+    {0xB1A6, 0xAD1C},+    {0xB1A7, 0xAD20},+    {0xB1A8, 0xAD29},+    {0xB1A9, 0xAD2C},+    {0xB1AA, 0xAD2D},+    {0xB1AB, 0xAD34},+    {0xB1AC, 0xAD35},+    {0xB1AD, 0xAD38},+    {0xB1AE, 0xAD3C},+    {0xB1AF, 0xAD44},+    {0xB1B0, 0xAD45},+    {0xB1B1, 0xAD47},+    {0xB1B2, 0xAD49},+    {0xB1B3, 0xAD50},+    {0xB1B4, 0xAD54},+    {0xB1B5, 0xAD58},+    {0xB1B6, 0xAD61},+    {0xB1B7, 0xAD63},+    {0xB1B8, 0xAD6C},+    {0xB1B9, 0xAD6D},+    {0xB1BA, 0xAD70},+    {0xB1BB, 0xAD73},+    {0xB1BC, 0xAD74},+    {0xB1BD, 0xAD75},+    {0xB1BE, 0xAD76},+    {0xB1BF, 0xAD7B},+    {0xB1C0, 0xAD7C},+    {0xB1C1, 0xAD7D},+    {0xB1C2, 0xAD7F},+    {0xB1C3, 0xAD81},+    {0xB1C4, 0xAD82},+    {0xB1C5, 0xAD88},+    {0xB1C6, 0xAD89},+    {0xB1C7, 0xAD8C},+    {0xB1C8, 0xAD90},+    {0xB1C9, 0xAD9C},+    {0xB1CA, 0xAD9D},+    {0xB1CB, 0xADA4},+    {0xB1CC, 0xADB7},+    {0xB1CD, 0xADC0},+    {0xB1CE, 0xADC1},+    {0xB1CF, 0xADC4},+    {0xB1D0, 0xADC8},+    {0xB1D1, 0xADD0},+    {0xB1D2, 0xADD1},+    {0xB1D3, 0xADD3},+    {0xB1D4, 0xADDC},+    {0xB1D5, 0xADE0},+    {0xB1D6, 0xADE4},+    {0xB1D7, 0xADF8},+    {0xB1D8, 0xADF9},+    {0xB1D9, 0xADFC},+    {0xB1DA, 0xADFF},+    {0xB1DB, 0xAE00},+    {0xB1DC, 0xAE01},+    {0xB1DD, 0xAE08},+    {0xB1DE, 0xAE09},+    {0xB1DF, 0xAE0B},+    {0xB1E0, 0xAE0D},+    {0xB1E1, 0xAE14},+    {0xB1E2, 0xAE30},+    {0xB1E3, 0xAE31},+    {0xB1E4, 0xAE34},+    {0xB1E5, 0xAE37},+    {0xB1E6, 0xAE38},+    {0xB1E7, 0xAE3A},+    {0xB1E8, 0xAE40},+    {0xB1E9, 0xAE41},+    {0xB1EA, 0xAE43},+    {0xB1EB, 0xAE45},+    {0xB1EC, 0xAE46},+    {0xB1ED, 0xAE4A},+    {0xB1EE, 0xAE4C},+    {0xB1EF, 0xAE4D},+    {0xB1F0, 0xAE4E},+    {0xB1F1, 0xAE50},+    {0xB1F2, 0xAE54},+    {0xB1F3, 0xAE56},+    {0xB1F4, 0xAE5C},+    {0xB1F5, 0xAE5D},+    {0xB1F6, 0xAE5F},+    {0xB1F7, 0xAE60},+    {0xB1F8, 0xAE61},+    {0xB1F9, 0xAE65},+    {0xB1FA, 0xAE68},+    {0xB1FB, 0xAE69},+    {0xB1FC, 0xAE6C},+    {0xB1FD, 0xAE70},+    {0xB1FE, 0xAE78},+    {0xB2A1, 0xAE79},+    {0xB2A2, 0xAE7B},+    {0xB2A3, 0xAE7C},+    {0xB2A4, 0xAE7D},+    {0xB2A5, 0xAE84},+    {0xB2A6, 0xAE85},+    {0xB2A7, 0xAE8C},+    {0xB2A8, 0xAEBC},+    {0xB2A9, 0xAEBD},+    {0xB2AA, 0xAEBE},+    {0xB2AB, 0xAEC0},+    {0xB2AC, 0xAEC4},+    {0xB2AD, 0xAECC},+    {0xB2AE, 0xAECD},+    {0xB2AF, 0xAECF},+    {0xB2B0, 0xAED0},+    {0xB2B1, 0xAED1},+    {0xB2B2, 0xAED8},+    {0xB2B3, 0xAED9},+    {0xB2B4, 0xAEDC},+    {0xB2B5, 0xAEE8},+    {0xB2B6, 0xAEEB},+    {0xB2B7, 0xAEED},+    {0xB2B8, 0xAEF4},+    {0xB2B9, 0xAEF8},+    {0xB2BA, 0xAEFC},+    {0xB2BB, 0xAF07},+    {0xB2BC, 0xAF08},+    {0xB2BD, 0xAF0D},+    {0xB2BE, 0xAF10},+    {0xB2BF, 0xAF2C},+    {0xB2C0, 0xAF2D},+    {0xB2C1, 0xAF30},+    {0xB2C2, 0xAF32},+    {0xB2C3, 0xAF34},+    {0xB2C4, 0xAF3C},+    {0xB2C5, 0xAF3D},+    {0xB2C6, 0xAF3F},+    {0xB2C7, 0xAF41},+    {0xB2C8, 0xAF42},+    {0xB2C9, 0xAF43},+    {0xB2CA, 0xAF48},+    {0xB2CB, 0xAF49},+    {0xB2CC, 0xAF50},+    {0xB2CD, 0xAF5C},+    {0xB2CE, 0xAF5D},+    {0xB2CF, 0xAF64},+    {0xB2D0, 0xAF65},+    {0xB2D1, 0xAF79},+    {0xB2D2, 0xAF80},+    {0xB2D3, 0xAF84},+    {0xB2D4, 0xAF88},+    {0xB2D5, 0xAF90},+    {0xB2D6, 0xAF91},+    {0xB2D7, 0xAF95},+    {0xB2D8, 0xAF9C},+    {0xB2D9, 0xAFB8},+    {0xB2DA, 0xAFB9},+    {0xB2DB, 0xAFBC},+    {0xB2DC, 0xAFC0},+    {0xB2DD, 0xAFC7},+    {0xB2DE, 0xAFC8},+    {0xB2DF, 0xAFC9},+    {0xB2E0, 0xAFCB},+    {0xB2E1, 0xAFCD},+    {0xB2E2, 0xAFCE},+    {0xB2E3, 0xAFD4},+    {0xB2E4, 0xAFDC},+    {0xB2E5, 0xAFE8},+    {0xB2E6, 0xAFE9},+    {0xB2E7, 0xAFF0},+    {0xB2E8, 0xAFF1},+    {0xB2E9, 0xAFF4},+    {0xB2EA, 0xAFF8},+    {0xB2EB, 0xB000},+    {0xB2EC, 0xB001},+    {0xB2ED, 0xB004},+    {0xB2EE, 0xB00C},+    {0xB2EF, 0xB010},+    {0xB2F0, 0xB014},+    {0xB2F1, 0xB01C},+    {0xB2F2, 0xB01D},+    {0xB2F3, 0xB028},+    {0xB2F4, 0xB044},+    {0xB2F5, 0xB045},+    {0xB2F6, 0xB048},+    {0xB2F7, 0xB04A},+    {0xB2F8, 0xB04C},+    {0xB2F9, 0xB04E},+    {0xB2FA, 0xB053},+    {0xB2FB, 0xB054},+    {0xB2FC, 0xB055},+    {0xB2FD, 0xB057},+    {0xB2FE, 0xB059},+    {0xB3A1, 0xB05D},+    {0xB3A2, 0xB07C},+    {0xB3A3, 0xB07D},+    {0xB3A4, 0xB080},+    {0xB3A5, 0xB084},+    {0xB3A6, 0xB08C},+    {0xB3A7, 0xB08D},+    {0xB3A8, 0xB08F},+    {0xB3A9, 0xB091},+    {0xB3AA, 0xB098},+    {0xB3AB, 0xB099},+    {0xB3AC, 0xB09A},+    {0xB3AD, 0xB09C},+    {0xB3AE, 0xB09F},+    {0xB3AF, 0xB0A0},+    {0xB3B0, 0xB0A1},+    {0xB3B1, 0xB0A2},+    {0xB3B2, 0xB0A8},+    {0xB3B3, 0xB0A9},+    {0xB3B4, 0xB0AB},+    {0xB3B5, 0xB0AC},+    {0xB3B6, 0xB0AD},+    {0xB3B7, 0xB0AE},+    {0xB3B8, 0xB0AF},+    {0xB3B9, 0xB0B1},+    {0xB3BA, 0xB0B3},+    {0xB3BB, 0xB0B4},+    {0xB3BC, 0xB0B5},+    {0xB3BD, 0xB0B8},+    {0xB3BE, 0xB0BC},+    {0xB3BF, 0xB0C4},+    {0xB3C0, 0xB0C5},+    {0xB3C1, 0xB0C7},+    {0xB3C2, 0xB0C8},+    {0xB3C3, 0xB0C9},+    {0xB3C4, 0xB0D0},+    {0xB3C5, 0xB0D1},+    {0xB3C6, 0xB0D4},+    {0xB3C7, 0xB0D8},+    {0xB3C8, 0xB0E0},+    {0xB3C9, 0xB0E5},+    {0xB3CA, 0xB108},+    {0xB3CB, 0xB109},+    {0xB3CC, 0xB10B},+    {0xB3CD, 0xB10C},+    {0xB3CE, 0xB110},+    {0xB3CF, 0xB112},+    {0xB3D0, 0xB113},+    {0xB3D1, 0xB118},+    {0xB3D2, 0xB119},+    {0xB3D3, 0xB11B},+    {0xB3D4, 0xB11C},+    {0xB3D5, 0xB11D},+    {0xB3D6, 0xB123},+    {0xB3D7, 0xB124},+    {0xB3D8, 0xB125},+    {0xB3D9, 0xB128},+    {0xB3DA, 0xB12C},+    {0xB3DB, 0xB134},+    {0xB3DC, 0xB135},+    {0xB3DD, 0xB137},+    {0xB3DE, 0xB138},+    {0xB3DF, 0xB139},+    {0xB3E0, 0xB140},+    {0xB3E1, 0xB141},+    {0xB3E2, 0xB144},+    {0xB3E3, 0xB148},+    {0xB3E4, 0xB150},+    {0xB3E5, 0xB151},+    {0xB3E6, 0xB154},+    {0xB3E7, 0xB155},+    {0xB3E8, 0xB158},+    {0xB3E9, 0xB15C},+    {0xB3EA, 0xB160},+    {0xB3EB, 0xB178},+    {0xB3EC, 0xB179},+    {0xB3ED, 0xB17C},+    {0xB3EE, 0xB180},+    {0xB3EF, 0xB182},+    {0xB3F0, 0xB188},+    {0xB3F1, 0xB189},+    {0xB3F2, 0xB18B},+    {0xB3F3, 0xB18D},+    {0xB3F4, 0xB192},+    {0xB3F5, 0xB193},+    {0xB3F6, 0xB194},+    {0xB3F7, 0xB198},+    {0xB3F8, 0xB19C},+    {0xB3F9, 0xB1A8},+    {0xB3FA, 0xB1CC},+    {0xB3FB, 0xB1D0},+    {0xB3FC, 0xB1D4},+    {0xB3FD, 0xB1DC},+    {0xB3FE, 0xB1DD},+    {0xB4A1, 0xB1DF},+    {0xB4A2, 0xB1E8},+    {0xB4A3, 0xB1E9},+    {0xB4A4, 0xB1EC},+    {0xB4A5, 0xB1F0},+    {0xB4A6, 0xB1F9},+    {0xB4A7, 0xB1FB},+    {0xB4A8, 0xB1FD},+    {0xB4A9, 0xB204},+    {0xB4AA, 0xB205},+    {0xB4AB, 0xB208},+    {0xB4AC, 0xB20B},+    {0xB4AD, 0xB20C},+    {0xB4AE, 0xB214},+    {0xB4AF, 0xB215},+    {0xB4B0, 0xB217},+    {0xB4B1, 0xB219},+    {0xB4B2, 0xB220},+    {0xB4B3, 0xB234},+    {0xB4B4, 0xB23C},+    {0xB4B5, 0xB258},+    {0xB4B6, 0xB25C},+    {0xB4B7, 0xB260},+    {0xB4B8, 0xB268},+    {0xB4B9, 0xB269},+    {0xB4BA, 0xB274},+    {0xB4BB, 0xB275},+    {0xB4BC, 0xB27C},+    {0xB4BD, 0xB284},+    {0xB4BE, 0xB285},+    {0xB4BF, 0xB289},+    {0xB4C0, 0xB290},+    {0xB4C1, 0xB291},+    {0xB4C2, 0xB294},+    {0xB4C3, 0xB298},+    {0xB4C4, 0xB299},+    {0xB4C5, 0xB29A},+    {0xB4C6, 0xB2A0},+    {0xB4C7, 0xB2A1},+    {0xB4C8, 0xB2A3},+    {0xB4C9, 0xB2A5},+    {0xB4CA, 0xB2A6},+    {0xB4CB, 0xB2AA},+    {0xB4CC, 0xB2AC},+    {0xB4CD, 0xB2B0},+    {0xB4CE, 0xB2B4},+    {0xB4CF, 0xB2C8},+    {0xB4D0, 0xB2C9},+    {0xB4D1, 0xB2CC},+    {0xB4D2, 0xB2D0},+    {0xB4D3, 0xB2D2},+    {0xB4D4, 0xB2D8},+    {0xB4D5, 0xB2D9},+    {0xB4D6, 0xB2DB},+    {0xB4D7, 0xB2DD},+    {0xB4D8, 0xB2E2},+    {0xB4D9, 0xB2E4},+    {0xB4DA, 0xB2E5},+    {0xB4DB, 0xB2E6},+    {0xB4DC, 0xB2E8},+    {0xB4DD, 0xB2EB},+    {0xB4DE, 0xB2EC},+    {0xB4DF, 0xB2ED},+    {0xB4E0, 0xB2EE},+    {0xB4E1, 0xB2EF},+    {0xB4E2, 0xB2F3},+    {0xB4E3, 0xB2F4},+    {0xB4E4, 0xB2F5},+    {0xB4E5, 0xB2F7},+    {0xB4E6, 0xB2F8},+    {0xB4E7, 0xB2F9},+    {0xB4E8, 0xB2FA},+    {0xB4E9, 0xB2FB},+    {0xB4EA, 0xB2FF},+    {0xB4EB, 0xB300},+    {0xB4EC, 0xB301},+    {0xB4ED, 0xB304},+    {0xB4EE, 0xB308},+    {0xB4EF, 0xB310},+    {0xB4F0, 0xB311},+    {0xB4F1, 0xB313},+    {0xB4F2, 0xB314},+    {0xB4F3, 0xB315},+    {0xB4F4, 0xB31C},+    {0xB4F5, 0xB354},+    {0xB4F6, 0xB355},+    {0xB4F7, 0xB356},+    {0xB4F8, 0xB358},+    {0xB4F9, 0xB35B},+    {0xB4FA, 0xB35C},+    {0xB4FB, 0xB35E},+    {0xB4FC, 0xB35F},+    {0xB4FD, 0xB364},+    {0xB4FE, 0xB365},+    {0xB5A1, 0xB367},+    {0xB5A2, 0xB369},+    {0xB5A3, 0xB36B},+    {0xB5A4, 0xB36E},+    {0xB5A5, 0xB370},+    {0xB5A6, 0xB371},+    {0xB5A7, 0xB374},+    {0xB5A8, 0xB378},+    {0xB5A9, 0xB380},+    {0xB5AA, 0xB381},+    {0xB5AB, 0xB383},+    {0xB5AC, 0xB384},+    {0xB5AD, 0xB385},+    {0xB5AE, 0xB38C},+    {0xB5AF, 0xB390},+    {0xB5B0, 0xB394},+    {0xB5B1, 0xB3A0},+    {0xB5B2, 0xB3A1},+    {0xB5B3, 0xB3A8},+    {0xB5B4, 0xB3AC},+    {0xB5B5, 0xB3C4},+    {0xB5B6, 0xB3C5},+    {0xB5B7, 0xB3C8},+    {0xB5B8, 0xB3CB},+    {0xB5B9, 0xB3CC},+    {0xB5BA, 0xB3CE},+    {0xB5BB, 0xB3D0},+    {0xB5BC, 0xB3D4},+    {0xB5BD, 0xB3D5},+    {0xB5BE, 0xB3D7},+    {0xB5BF, 0xB3D9},+    {0xB5C0, 0xB3DB},+    {0xB5C1, 0xB3DD},+    {0xB5C2, 0xB3E0},+    {0xB5C3, 0xB3E4},+    {0xB5C4, 0xB3E8},+    {0xB5C5, 0xB3FC},+    {0xB5C6, 0xB410},+    {0xB5C7, 0xB418},+    {0xB5C8, 0xB41C},+    {0xB5C9, 0xB420},+    {0xB5CA, 0xB428},+    {0xB5CB, 0xB429},+    {0xB5CC, 0xB42B},+    {0xB5CD, 0xB434},+    {0xB5CE, 0xB450},+    {0xB5CF, 0xB451},+    {0xB5D0, 0xB454},+    {0xB5D1, 0xB458},+    {0xB5D2, 0xB460},+    {0xB5D3, 0xB461},+    {0xB5D4, 0xB463},+    {0xB5D5, 0xB465},+    {0xB5D6, 0xB46C},+    {0xB5D7, 0xB480},+    {0xB5D8, 0xB488},+    {0xB5D9, 0xB49D},+    {0xB5DA, 0xB4A4},+    {0xB5DB, 0xB4A8},+    {0xB5DC, 0xB4AC},+    {0xB5DD, 0xB4B5},+    {0xB5DE, 0xB4B7},+    {0xB5DF, 0xB4B9},+    {0xB5E0, 0xB4C0},+    {0xB5E1, 0xB4C4},+    {0xB5E2, 0xB4C8},+    {0xB5E3, 0xB4D0},+    {0xB5E4, 0xB4D5},+    {0xB5E5, 0xB4DC},+    {0xB5E6, 0xB4DD},+    {0xB5E7, 0xB4E0},+    {0xB5E8, 0xB4E3},+    {0xB5E9, 0xB4E4},+    {0xB5EA, 0xB4E6},+    {0xB5EB, 0xB4EC},+    {0xB5EC, 0xB4ED},+    {0xB5ED, 0xB4EF},+    {0xB5EE, 0xB4F1},+    {0xB5EF, 0xB4F8},+    {0xB5F0, 0xB514},+    {0xB5F1, 0xB515},+    {0xB5F2, 0xB518},+    {0xB5F3, 0xB51B},+    {0xB5F4, 0xB51C},+    {0xB5F5, 0xB524},+    {0xB5F6, 0xB525},+    {0xB5F7, 0xB527},+    {0xB5F8, 0xB528},+    {0xB5F9, 0xB529},+    {0xB5FA, 0xB52A},+    {0xB5FB, 0xB530},+    {0xB5FC, 0xB531},+    {0xB5FD, 0xB534},+    {0xB5FE, 0xB538},+    {0xB6A1, 0xB540},+    {0xB6A2, 0xB541},+    {0xB6A3, 0xB543},+    {0xB6A4, 0xB544},+    {0xB6A5, 0xB545},+    {0xB6A6, 0xB54B},+    {0xB6A7, 0xB54C},+    {0xB6A8, 0xB54D},+    {0xB6A9, 0xB550},+    {0xB6AA, 0xB554},+    {0xB6AB, 0xB55C},+    {0xB6AC, 0xB55D},+    {0xB6AD, 0xB55F},+    {0xB6AE, 0xB560},+    {0xB6AF, 0xB561},+    {0xB6B0, 0xB5A0},+    {0xB6B1, 0xB5A1},+    {0xB6B2, 0xB5A4},+    {0xB6B3, 0xB5A8},+    {0xB6B4, 0xB5AA},+    {0xB6B5, 0xB5AB},+    {0xB6B6, 0xB5B0},+    {0xB6B7, 0xB5B1},+    {0xB6B8, 0xB5B3},+    {0xB6B9, 0xB5B4},+    {0xB6BA, 0xB5B5},+    {0xB6BB, 0xB5BB},+    {0xB6BC, 0xB5BC},+    {0xB6BD, 0xB5BD},+    {0xB6BE, 0xB5C0},+    {0xB6BF, 0xB5C4},+    {0xB6C0, 0xB5CC},+    {0xB6C1, 0xB5CD},+    {0xB6C2, 0xB5CF},+    {0xB6C3, 0xB5D0},+    {0xB6C4, 0xB5D1},+    {0xB6C5, 0xB5D8},+    {0xB6C6, 0xB5EC},+    {0xB6C7, 0xB610},+    {0xB6C8, 0xB611},+    {0xB6C9, 0xB614},+    {0xB6CA, 0xB618},+    {0xB6CB, 0xB625},+    {0xB6CC, 0xB62C},+    {0xB6CD, 0xB634},+    {0xB6CE, 0xB648},+    {0xB6CF, 0xB664},+    {0xB6D0, 0xB668},+    {0xB6D1, 0xB69C},+    {0xB6D2, 0xB69D},+    {0xB6D3, 0xB6A0},+    {0xB6D4, 0xB6A4},+    {0xB6D5, 0xB6AB},+    {0xB6D6, 0xB6AC},+    {0xB6D7, 0xB6B1},+    {0xB6D8, 0xB6D4},+    {0xB6D9, 0xB6F0},+    {0xB6DA, 0xB6F4},+    {0xB6DB, 0xB6F8},+    {0xB6DC, 0xB700},+    {0xB6DD, 0xB701},+    {0xB6DE, 0xB705},+    {0xB6DF, 0xB728},+    {0xB6E0, 0xB729},+    {0xB6E1, 0xB72C},+    {0xB6E2, 0xB72F},+    {0xB6E3, 0xB730},+    {0xB6E4, 0xB738},+    {0xB6E5, 0xB739},+    {0xB6E6, 0xB73B},+    {0xB6E7, 0xB744},+    {0xB6E8, 0xB748},+    {0xB6E9, 0xB74C},+    {0xB6EA, 0xB754},+    {0xB6EB, 0xB755},+    {0xB6EC, 0xB760},+    {0xB6ED, 0xB764},+    {0xB6EE, 0xB768},+    {0xB6EF, 0xB770},+    {0xB6F0, 0xB771},+    {0xB6F1, 0xB773},+    {0xB6F2, 0xB775},+    {0xB6F3, 0xB77C},+    {0xB6F4, 0xB77D},+    {0xB6F5, 0xB780},+    {0xB6F6, 0xB784},+    {0xB6F7, 0xB78C},+    {0xB6F8, 0xB78D},+    {0xB6F9, 0xB78F},+    {0xB6FA, 0xB790},+    {0xB6FB, 0xB791},+    {0xB6FC, 0xB792},+    {0xB6FD, 0xB796},+    {0xB6FE, 0xB797},+    {0xB7A1, 0xB798},+    {0xB7A2, 0xB799},+    {0xB7A3, 0xB79C},+    {0xB7A4, 0xB7A0},+    {0xB7A5, 0xB7A8},+    {0xB7A6, 0xB7A9},+    {0xB7A7, 0xB7AB},+    {0xB7A8, 0xB7AC},+    {0xB7A9, 0xB7AD},+    {0xB7AA, 0xB7B4},+    {0xB7AB, 0xB7B5},+    {0xB7AC, 0xB7B8},+    {0xB7AD, 0xB7C7},+    {0xB7AE, 0xB7C9},+    {0xB7AF, 0xB7EC},+    {0xB7B0, 0xB7ED},+    {0xB7B1, 0xB7F0},+    {0xB7B2, 0xB7F4},+    {0xB7B3, 0xB7FC},+    {0xB7B4, 0xB7FD},+    {0xB7B5, 0xB7FF},+    {0xB7B6, 0xB800},+    {0xB7B7, 0xB801},+    {0xB7B8, 0xB807},+    {0xB7B9, 0xB808},+    {0xB7BA, 0xB809},+    {0xB7BB, 0xB80C},+    {0xB7BC, 0xB810},+    {0xB7BD, 0xB818},+    {0xB7BE, 0xB819},+    {0xB7BF, 0xB81B},+    {0xB7C0, 0xB81D},+    {0xB7C1, 0xB824},+    {0xB7C2, 0xB825},+    {0xB7C3, 0xB828},+    {0xB7C4, 0xB82C},+    {0xB7C5, 0xB834},+    {0xB7C6, 0xB835},+    {0xB7C7, 0xB837},+    {0xB7C8, 0xB838},+    {0xB7C9, 0xB839},+    {0xB7CA, 0xB840},+    {0xB7CB, 0xB844},+    {0xB7CC, 0xB851},+    {0xB7CD, 0xB853},+    {0xB7CE, 0xB85C},+    {0xB7CF, 0xB85D},+    {0xB7D0, 0xB860},+    {0xB7D1, 0xB864},+    {0xB7D2, 0xB86C},+    {0xB7D3, 0xB86D},+    {0xB7D4, 0xB86F},+    {0xB7D5, 0xB871},+    {0xB7D6, 0xB878},+    {0xB7D7, 0xB87C},+    {0xB7D8, 0xB88D},+    {0xB7D9, 0xB8A8},+    {0xB7DA, 0xB8B0},+    {0xB7DB, 0xB8B4},+    {0xB7DC, 0xB8B8},+    {0xB7DD, 0xB8C0},+    {0xB7DE, 0xB8C1},+    {0xB7DF, 0xB8C3},+    {0xB7E0, 0xB8C5},+    {0xB7E1, 0xB8CC},+    {0xB7E2, 0xB8D0},+    {0xB7E3, 0xB8D4},+    {0xB7E4, 0xB8DD},+    {0xB7E5, 0xB8DF},+    {0xB7E6, 0xB8E1},+    {0xB7E7, 0xB8E8},+    {0xB7E8, 0xB8E9},+    {0xB7E9, 0xB8EC},+    {0xB7EA, 0xB8F0},+    {0xB7EB, 0xB8F8},+    {0xB7EC, 0xB8F9},+    {0xB7ED, 0xB8FB},+    {0xB7EE, 0xB8FD},+    {0xB7EF, 0xB904},+    {0xB7F0, 0xB918},+    {0xB7F1, 0xB920},+    {0xB7F2, 0xB93C},+    {0xB7F3, 0xB93D},+    {0xB7F4, 0xB940},+    {0xB7F5, 0xB944},+    {0xB7F6, 0xB94C},+    {0xB7F7, 0xB94F},+    {0xB7F8, 0xB951},+    {0xB7F9, 0xB958},+    {0xB7FA, 0xB959},+    {0xB7FB, 0xB95C},+    {0xB7FC, 0xB960},+    {0xB7FD, 0xB968},+    {0xB7FE, 0xB969},+    {0xB8A1, 0xB96B},+    {0xB8A2, 0xB96D},+    {0xB8A3, 0xB974},+    {0xB8A4, 0xB975},+    {0xB8A5, 0xB978},+    {0xB8A6, 0xB97C},+    {0xB8A7, 0xB984},+    {0xB8A8, 0xB985},+    {0xB8A9, 0xB987},+    {0xB8AA, 0xB989},+    {0xB8AB, 0xB98A},+    {0xB8AC, 0xB98D},+    {0xB8AD, 0xB98E},+    {0xB8AE, 0xB9AC},+    {0xB8AF, 0xB9AD},+    {0xB8B0, 0xB9B0},+    {0xB8B1, 0xB9B4},+    {0xB8B2, 0xB9BC},+    {0xB8B3, 0xB9BD},+    {0xB8B4, 0xB9BF},+    {0xB8B5, 0xB9C1},+    {0xB8B6, 0xB9C8},+    {0xB8B7, 0xB9C9},+    {0xB8B8, 0xB9CC},+    {0xB8B9, 0xB9CE},+    {0xB8BA, 0xB9CF},+    {0xB8BB, 0xB9D0},+    {0xB8BC, 0xB9D1},+    {0xB8BD, 0xB9D2},+    {0xB8BE, 0xB9D8},+    {0xB8BF, 0xB9D9},+    {0xB8C0, 0xB9DB},+    {0xB8C1, 0xB9DD},+    {0xB8C2, 0xB9DE},+    {0xB8C3, 0xB9E1},+    {0xB8C4, 0xB9E3},+    {0xB8C5, 0xB9E4},+    {0xB8C6, 0xB9E5},+    {0xB8C7, 0xB9E8},+    {0xB8C8, 0xB9EC},+    {0xB8C9, 0xB9F4},+    {0xB8CA, 0xB9F5},+    {0xB8CB, 0xB9F7},+    {0xB8CC, 0xB9F8},+    {0xB8CD, 0xB9F9},+    {0xB8CE, 0xB9FA},+    {0xB8CF, 0xBA00},+    {0xB8D0, 0xBA01},+    {0xB8D1, 0xBA08},+    {0xB8D2, 0xBA15},+    {0xB8D3, 0xBA38},+    {0xB8D4, 0xBA39},+    {0xB8D5, 0xBA3C},+    {0xB8D6, 0xBA40},+    {0xB8D7, 0xBA42},+    {0xB8D8, 0xBA48},+    {0xB8D9, 0xBA49},+    {0xB8DA, 0xBA4B},+    {0xB8DB, 0xBA4D},+    {0xB8DC, 0xBA4E},+    {0xB8DD, 0xBA53},+    {0xB8DE, 0xBA54},+    {0xB8DF, 0xBA55},+    {0xB8E0, 0xBA58},+    {0xB8E1, 0xBA5C},+    {0xB8E2, 0xBA64},+    {0xB8E3, 0xBA65},+    {0xB8E4, 0xBA67},+    {0xB8E5, 0xBA68},+    {0xB8E6, 0xBA69},+    {0xB8E7, 0xBA70},+    {0xB8E8, 0xBA71},+    {0xB8E9, 0xBA74},+    {0xB8EA, 0xBA78},+    {0xB8EB, 0xBA83},+    {0xB8EC, 0xBA84},+    {0xB8ED, 0xBA85},+    {0xB8EE, 0xBA87},+    {0xB8EF, 0xBA8C},+    {0xB8F0, 0xBAA8},+    {0xB8F1, 0xBAA9},+    {0xB8F2, 0xBAAB},+    {0xB8F3, 0xBAAC},+    {0xB8F4, 0xBAB0},+    {0xB8F5, 0xBAB2},+    {0xB8F6, 0xBAB8},+    {0xB8F7, 0xBAB9},+    {0xB8F8, 0xBABB},+    {0xB8F9, 0xBABD},+    {0xB8FA, 0xBAC4},+    {0xB8FB, 0xBAC8},+    {0xB8FC, 0xBAD8},+    {0xB8FD, 0xBAD9},+    {0xB8FE, 0xBAFC},+    {0xB9A1, 0xBB00},+    {0xB9A2, 0xBB04},+    {0xB9A3, 0xBB0D},+    {0xB9A4, 0xBB0F},+    {0xB9A5, 0xBB11},+    {0xB9A6, 0xBB18},+    {0xB9A7, 0xBB1C},+    {0xB9A8, 0xBB20},+    {0xB9A9, 0xBB29},+    {0xB9AA, 0xBB2B},+    {0xB9AB, 0xBB34},+    {0xB9AC, 0xBB35},+    {0xB9AD, 0xBB36},+    {0xB9AE, 0xBB38},+    {0xB9AF, 0xBB3B},+    {0xB9B0, 0xBB3C},+    {0xB9B1, 0xBB3D},+    {0xB9B2, 0xBB3E},+    {0xB9B3, 0xBB44},+    {0xB9B4, 0xBB45},+    {0xB9B5, 0xBB47},+    {0xB9B6, 0xBB49},+    {0xB9B7, 0xBB4D},+    {0xB9B8, 0xBB4F},+    {0xB9B9, 0xBB50},+    {0xB9BA, 0xBB54},+    {0xB9BB, 0xBB58},+    {0xB9BC, 0xBB61},+    {0xB9BD, 0xBB63},+    {0xB9BE, 0xBB6C},+    {0xB9BF, 0xBB88},+    {0xB9C0, 0xBB8C},+    {0xB9C1, 0xBB90},+    {0xB9C2, 0xBBA4},+    {0xB9C3, 0xBBA8},+    {0xB9C4, 0xBBAC},+    {0xB9C5, 0xBBB4},+    {0xB9C6, 0xBBB7},+    {0xB9C7, 0xBBC0},+    {0xB9C8, 0xBBC4},+    {0xB9C9, 0xBBC8},+    {0xB9CA, 0xBBD0},+    {0xB9CB, 0xBBD3},+    {0xB9CC, 0xBBF8},+    {0xB9CD, 0xBBF9},+    {0xB9CE, 0xBBFC},+    {0xB9CF, 0xBBFF},+    {0xB9D0, 0xBC00},+    {0xB9D1, 0xBC02},+    {0xB9D2, 0xBC08},+    {0xB9D3, 0xBC09},+    {0xB9D4, 0xBC0B},+    {0xB9D5, 0xBC0C},+    {0xB9D6, 0xBC0D},+    {0xB9D7, 0xBC0F},+    {0xB9D8, 0xBC11},+    {0xB9D9, 0xBC14},+    {0xB9DA, 0xBC15},+    {0xB9DB, 0xBC16},+    {0xB9DC, 0xBC17},+    {0xB9DD, 0xBC18},+    {0xB9DE, 0xBC1B},+    {0xB9DF, 0xBC1C},+    {0xB9E0, 0xBC1D},+    {0xB9E1, 0xBC1E},+    {0xB9E2, 0xBC1F},+    {0xB9E3, 0xBC24},+    {0xB9E4, 0xBC25},+    {0xB9E5, 0xBC27},+    {0xB9E6, 0xBC29},+    {0xB9E7, 0xBC2D},+    {0xB9E8, 0xBC30},+    {0xB9E9, 0xBC31},+    {0xB9EA, 0xBC34},+    {0xB9EB, 0xBC38},+    {0xB9EC, 0xBC40},+    {0xB9ED, 0xBC41},+    {0xB9EE, 0xBC43},+    {0xB9EF, 0xBC44},+    {0xB9F0, 0xBC45},+    {0xB9F1, 0xBC49},+    {0xB9F2, 0xBC4C},+    {0xB9F3, 0xBC4D},+    {0xB9F4, 0xBC50},+    {0xB9F5, 0xBC5D},+    {0xB9F6, 0xBC84},+    {0xB9F7, 0xBC85},+    {0xB9F8, 0xBC88},+    {0xB9F9, 0xBC8B},+    {0xB9FA, 0xBC8C},+    {0xB9FB, 0xBC8E},+    {0xB9FC, 0xBC94},+    {0xB9FD, 0xBC95},+    {0xB9FE, 0xBC97},+    {0xBAA1, 0xBC99},+    {0xBAA2, 0xBC9A},+    {0xBAA3, 0xBCA0},+    {0xBAA4, 0xBCA1},+    {0xBAA5, 0xBCA4},+    {0xBAA6, 0xBCA7},+    {0xBAA7, 0xBCA8},+    {0xBAA8, 0xBCB0},+    {0xBAA9, 0xBCB1},+    {0xBAAA, 0xBCB3},+    {0xBAAB, 0xBCB4},+    {0xBAAC, 0xBCB5},+    {0xBAAD, 0xBCBC},+    {0xBAAE, 0xBCBD},+    {0xBAAF, 0xBCC0},+    {0xBAB0, 0xBCC4},+    {0xBAB1, 0xBCCD},+    {0xBAB2, 0xBCCF},+    {0xBAB3, 0xBCD0},+    {0xBAB4, 0xBCD1},+    {0xBAB5, 0xBCD5},+    {0xBAB6, 0xBCD8},+    {0xBAB7, 0xBCDC},+    {0xBAB8, 0xBCF4},+    {0xBAB9, 0xBCF5},+    {0xBABA, 0xBCF6},+    {0xBABB, 0xBCF8},+    {0xBABC, 0xBCFC},+    {0xBABD, 0xBD04},+    {0xBABE, 0xBD05},+    {0xBABF, 0xBD07},+    {0xBAC0, 0xBD09},+    {0xBAC1, 0xBD10},+    {0xBAC2, 0xBD14},+    {0xBAC3, 0xBD24},+    {0xBAC4, 0xBD2C},+    {0xBAC5, 0xBD40},+    {0xBAC6, 0xBD48},+    {0xBAC7, 0xBD49},+    {0xBAC8, 0xBD4C},+    {0xBAC9, 0xBD50},+    {0xBACA, 0xBD58},+    {0xBACB, 0xBD59},+    {0xBACC, 0xBD64},+    {0xBACD, 0xBD68},+    {0xBACE, 0xBD80},+    {0xBACF, 0xBD81},+    {0xBAD0, 0xBD84},+    {0xBAD1, 0xBD87},+    {0xBAD2, 0xBD88},+    {0xBAD3, 0xBD89},+    {0xBAD4, 0xBD8A},+    {0xBAD5, 0xBD90},+    {0xBAD6, 0xBD91},+    {0xBAD7, 0xBD93},+    {0xBAD8, 0xBD95},+    {0xBAD9, 0xBD99},+    {0xBADA, 0xBD9A},+    {0xBADB, 0xBD9C},+    {0xBADC, 0xBDA4},+    {0xBADD, 0xBDB0},+    {0xBADE, 0xBDB8},+    {0xBADF, 0xBDD4},+    {0xBAE0, 0xBDD5},+    {0xBAE1, 0xBDD8},+    {0xBAE2, 0xBDDC},+    {0xBAE3, 0xBDE9},+    {0xBAE4, 0xBDF0},+    {0xBAE5, 0xBDF4},+    {0xBAE6, 0xBDF8},+    {0xBAE7, 0xBE00},+    {0xBAE8, 0xBE03},+    {0xBAE9, 0xBE05},+    {0xBAEA, 0xBE0C},+    {0xBAEB, 0xBE0D},+    {0xBAEC, 0xBE10},+    {0xBAED, 0xBE14},+    {0xBAEE, 0xBE1C},+    {0xBAEF, 0xBE1D},+    {0xBAF0, 0xBE1F},+    {0xBAF1, 0xBE44},+    {0xBAF2, 0xBE45},+    {0xBAF3, 0xBE48},+    {0xBAF4, 0xBE4C},+    {0xBAF5, 0xBE4E},+    {0xBAF6, 0xBE54},+    {0xBAF7, 0xBE55},+    {0xBAF8, 0xBE57},+    {0xBAF9, 0xBE59},+    {0xBAFA, 0xBE5A},+    {0xBAFB, 0xBE5B},+    {0xBAFC, 0xBE60},+    {0xBAFD, 0xBE61},+    {0xBAFE, 0xBE64},+    {0xBBA1, 0xBE68},+    {0xBBA2, 0xBE6A},+    {0xBBA3, 0xBE70},+    {0xBBA4, 0xBE71},+    {0xBBA5, 0xBE73},+    {0xBBA6, 0xBE74},+    {0xBBA7, 0xBE75},+    {0xBBA8, 0xBE7B},+    {0xBBA9, 0xBE7C},+    {0xBBAA, 0xBE7D},+    {0xBBAB, 0xBE80},+    {0xBBAC, 0xBE84},+    {0xBBAD, 0xBE8C},+    {0xBBAE, 0xBE8D},+    {0xBBAF, 0xBE8F},+    {0xBBB0, 0xBE90},+    {0xBBB1, 0xBE91},+    {0xBBB2, 0xBE98},+    {0xBBB3, 0xBE99},+    {0xBBB4, 0xBEA8},+    {0xBBB5, 0xBED0},+    {0xBBB6, 0xBED1},+    {0xBBB7, 0xBED4},+    {0xBBB8, 0xBED7},+    {0xBBB9, 0xBED8},+    {0xBBBA, 0xBEE0},+    {0xBBBB, 0xBEE3},+    {0xBBBC, 0xBEE4},+    {0xBBBD, 0xBEE5},+    {0xBBBE, 0xBEEC},+    {0xBBBF, 0xBF01},+    {0xBBC0, 0xBF08},+    {0xBBC1, 0xBF09},+    {0xBBC2, 0xBF18},+    {0xBBC3, 0xBF19},+    {0xBBC4, 0xBF1B},+    {0xBBC5, 0xBF1C},+    {0xBBC6, 0xBF1D},+    {0xBBC7, 0xBF40},+    {0xBBC8, 0xBF41},+    {0xBBC9, 0xBF44},+    {0xBBCA, 0xBF48},+    {0xBBCB, 0xBF50},+    {0xBBCC, 0xBF51},+    {0xBBCD, 0xBF55},+    {0xBBCE, 0xBF94},+    {0xBBCF, 0xBFB0},+    {0xBBD0, 0xBFC5},+    {0xBBD1, 0xBFCC},+    {0xBBD2, 0xBFCD},+    {0xBBD3, 0xBFD0},+    {0xBBD4, 0xBFD4},+    {0xBBD5, 0xBFDC},+    {0xBBD6, 0xBFDF},+    {0xBBD7, 0xBFE1},+    {0xBBD8, 0xC03C},+    {0xBBD9, 0xC051},+    {0xBBDA, 0xC058},+    {0xBBDB, 0xC05C},+    {0xBBDC, 0xC060},+    {0xBBDD, 0xC068},+    {0xBBDE, 0xC069},+    {0xBBDF, 0xC090},+    {0xBBE0, 0xC091},+    {0xBBE1, 0xC094},+    {0xBBE2, 0xC098},+    {0xBBE3, 0xC0A0},+    {0xBBE4, 0xC0A1},+    {0xBBE5, 0xC0A3},+    {0xBBE6, 0xC0A5},+    {0xBBE7, 0xC0AC},+    {0xBBE8, 0xC0AD},+    {0xBBE9, 0xC0AF},+    {0xBBEA, 0xC0B0},+    {0xBBEB, 0xC0B3},+    {0xBBEC, 0xC0B4},+    {0xBBED, 0xC0B5},+    {0xBBEE, 0xC0B6},+    {0xBBEF, 0xC0BC},+    {0xBBF0, 0xC0BD},+    {0xBBF1, 0xC0BF},+    {0xBBF2, 0xC0C0},+    {0xBBF3, 0xC0C1},+    {0xBBF4, 0xC0C5},+    {0xBBF5, 0xC0C8},+    {0xBBF6, 0xC0C9},+    {0xBBF7, 0xC0CC},+    {0xBBF8, 0xC0D0},+    {0xBBF9, 0xC0D8},+    {0xBBFA, 0xC0D9},+    {0xBBFB, 0xC0DB},+    {0xBBFC, 0xC0DC},+    {0xBBFD, 0xC0DD},+    {0xBBFE, 0xC0E4},+    {0xBCA1, 0xC0E5},+    {0xBCA2, 0xC0E8},+    {0xBCA3, 0xC0EC},+    {0xBCA4, 0xC0F4},+    {0xBCA5, 0xC0F5},+    {0xBCA6, 0xC0F7},+    {0xBCA7, 0xC0F9},+    {0xBCA8, 0xC100},+    {0xBCA9, 0xC104},+    {0xBCAA, 0xC108},+    {0xBCAB, 0xC110},+    {0xBCAC, 0xC115},+    {0xBCAD, 0xC11C},+    {0xBCAE, 0xC11D},+    {0xBCAF, 0xC11E},+    {0xBCB0, 0xC11F},+    {0xBCB1, 0xC120},+    {0xBCB2, 0xC123},+    {0xBCB3, 0xC124},+    {0xBCB4, 0xC126},+    {0xBCB5, 0xC127},+    {0xBCB6, 0xC12C},+    {0xBCB7, 0xC12D},+    {0xBCB8, 0xC12F},+    {0xBCB9, 0xC130},+    {0xBCBA, 0xC131},+    {0xBCBB, 0xC136},+    {0xBCBC, 0xC138},+    {0xBCBD, 0xC139},+    {0xBCBE, 0xC13C},+    {0xBCBF, 0xC140},+    {0xBCC0, 0xC148},+    {0xBCC1, 0xC149},+    {0xBCC2, 0xC14B},+    {0xBCC3, 0xC14C},+    {0xBCC4, 0xC14D},+    {0xBCC5, 0xC154},+    {0xBCC6, 0xC155},+    {0xBCC7, 0xC158},+    {0xBCC8, 0xC15C},+    {0xBCC9, 0xC164},+    {0xBCCA, 0xC165},+    {0xBCCB, 0xC167},+    {0xBCCC, 0xC168},+    {0xBCCD, 0xC169},+    {0xBCCE, 0xC170},+    {0xBCCF, 0xC174},+    {0xBCD0, 0xC178},+    {0xBCD1, 0xC185},+    {0xBCD2, 0xC18C},+    {0xBCD3, 0xC18D},+    {0xBCD4, 0xC18E},+    {0xBCD5, 0xC190},+    {0xBCD6, 0xC194},+    {0xBCD7, 0xC196},+    {0xBCD8, 0xC19C},+    {0xBCD9, 0xC19D},+    {0xBCDA, 0xC19F},+    {0xBCDB, 0xC1A1},+    {0xBCDC, 0xC1A5},+    {0xBCDD, 0xC1A8},+    {0xBCDE, 0xC1A9},+    {0xBCDF, 0xC1AC},+    {0xBCE0, 0xC1B0},+    {0xBCE1, 0xC1BD},+    {0xBCE2, 0xC1C4},+    {0xBCE3, 0xC1C8},+    {0xBCE4, 0xC1CC},+    {0xBCE5, 0xC1D4},+    {0xBCE6, 0xC1D7},+    {0xBCE7, 0xC1D8},+    {0xBCE8, 0xC1E0},+    {0xBCE9, 0xC1E4},+    {0xBCEA, 0xC1E8},+    {0xBCEB, 0xC1F0},+    {0xBCEC, 0xC1F1},+    {0xBCED, 0xC1F3},+    {0xBCEE, 0xC1FC},+    {0xBCEF, 0xC1FD},+    {0xBCF0, 0xC200},+    {0xBCF1, 0xC204},+    {0xBCF2, 0xC20C},+    {0xBCF3, 0xC20D},+    {0xBCF4, 0xC20F},+    {0xBCF5, 0xC211},+    {0xBCF6, 0xC218},+    {0xBCF7, 0xC219},+    {0xBCF8, 0xC21C},+    {0xBCF9, 0xC21F},+    {0xBCFA, 0xC220},+    {0xBCFB, 0xC228},+    {0xBCFC, 0xC229},+    {0xBCFD, 0xC22B},+    {0xBCFE, 0xC22D},+    {0xBDA1, 0xC22F},+    {0xBDA2, 0xC231},+    {0xBDA3, 0xC232},+    {0xBDA4, 0xC234},+    {0xBDA5, 0xC248},+    {0xBDA6, 0xC250},+    {0xBDA7, 0xC251},+    {0xBDA8, 0xC254},+    {0xBDA9, 0xC258},+    {0xBDAA, 0xC260},+    {0xBDAB, 0xC265},+    {0xBDAC, 0xC26C},+    {0xBDAD, 0xC26D},+    {0xBDAE, 0xC270},+    {0xBDAF, 0xC274},+    {0xBDB0, 0xC27C},+    {0xBDB1, 0xC27D},+    {0xBDB2, 0xC27F},+    {0xBDB3, 0xC281},+    {0xBDB4, 0xC288},+    {0xBDB5, 0xC289},+    {0xBDB6, 0xC290},+    {0xBDB7, 0xC298},+    {0xBDB8, 0xC29B},+    {0xBDB9, 0xC29D},+    {0xBDBA, 0xC2A4},+    {0xBDBB, 0xC2A5},+    {0xBDBC, 0xC2A8},+    {0xBDBD, 0xC2AC},+    {0xBDBE, 0xC2AD},+    {0xBDBF, 0xC2B4},+    {0xBDC0, 0xC2B5},+    {0xBDC1, 0xC2B7},+    {0xBDC2, 0xC2B9},+    {0xBDC3, 0xC2DC},+    {0xBDC4, 0xC2DD},+    {0xBDC5, 0xC2E0},+    {0xBDC6, 0xC2E3},+    {0xBDC7, 0xC2E4},+    {0xBDC8, 0xC2EB},+    {0xBDC9, 0xC2EC},+    {0xBDCA, 0xC2ED},+    {0xBDCB, 0xC2EF},+    {0xBDCC, 0xC2F1},+    {0xBDCD, 0xC2F6},+    {0xBDCE, 0xC2F8},+    {0xBDCF, 0xC2F9},+    {0xBDD0, 0xC2FB},+    {0xBDD1, 0xC2FC},+    {0xBDD2, 0xC300},+    {0xBDD3, 0xC308},+    {0xBDD4, 0xC309},+    {0xBDD5, 0xC30C},+    {0xBDD6, 0xC30D},+    {0xBDD7, 0xC313},+    {0xBDD8, 0xC314},+    {0xBDD9, 0xC315},+    {0xBDDA, 0xC318},+    {0xBDDB, 0xC31C},+    {0xBDDC, 0xC324},+    {0xBDDD, 0xC325},+    {0xBDDE, 0xC328},+    {0xBDDF, 0xC329},+    {0xBDE0, 0xC345},+    {0xBDE1, 0xC368},+    {0xBDE2, 0xC369},+    {0xBDE3, 0xC36C},+    {0xBDE4, 0xC370},+    {0xBDE5, 0xC372},+    {0xBDE6, 0xC378},+    {0xBDE7, 0xC379},+    {0xBDE8, 0xC37C},+    {0xBDE9, 0xC37D},+    {0xBDEA, 0xC384},+    {0xBDEB, 0xC388},+    {0xBDEC, 0xC38C},+    {0xBDED, 0xC3C0},+    {0xBDEE, 0xC3D8},+    {0xBDEF, 0xC3D9},+    {0xBDF0, 0xC3DC},+    {0xBDF1, 0xC3DF},+    {0xBDF2, 0xC3E0},+    {0xBDF3, 0xC3E2},+    {0xBDF4, 0xC3E8},+    {0xBDF5, 0xC3E9},+    {0xBDF6, 0xC3ED},+    {0xBDF7, 0xC3F4},+    {0xBDF8, 0xC3F5},+    {0xBDF9, 0xC3F8},+    {0xBDFA, 0xC408},+    {0xBDFB, 0xC410},+    {0xBDFC, 0xC424},+    {0xBDFD, 0xC42C},+    {0xBDFE, 0xC430},+    {0xBEA1, 0xC434},+    {0xBEA2, 0xC43C},+    {0xBEA3, 0xC43D},+    {0xBEA4, 0xC448},+    {0xBEA5, 0xC464},+    {0xBEA6, 0xC465},+    {0xBEA7, 0xC468},+    {0xBEA8, 0xC46C},+    {0xBEA9, 0xC474},+    {0xBEAA, 0xC475},+    {0xBEAB, 0xC479},+    {0xBEAC, 0xC480},+    {0xBEAD, 0xC494},+    {0xBEAE, 0xC49C},+    {0xBEAF, 0xC4B8},+    {0xBEB0, 0xC4BC},+    {0xBEB1, 0xC4E9},+    {0xBEB2, 0xC4F0},+    {0xBEB3, 0xC4F1},+    {0xBEB4, 0xC4F4},+    {0xBEB5, 0xC4F8},+    {0xBEB6, 0xC4FA},+    {0xBEB7, 0xC4FF},+    {0xBEB8, 0xC500},+    {0xBEB9, 0xC501},+    {0xBEBA, 0xC50C},+    {0xBEBB, 0xC510},+    {0xBEBC, 0xC514},+    {0xBEBD, 0xC51C},+    {0xBEBE, 0xC528},+    {0xBEBF, 0xC529},+    {0xBEC0, 0xC52C},+    {0xBEC1, 0xC530},+    {0xBEC2, 0xC538},+    {0xBEC3, 0xC539},+    {0xBEC4, 0xC53B},+    {0xBEC5, 0xC53D},+    {0xBEC6, 0xC544},+    {0xBEC7, 0xC545},+    {0xBEC8, 0xC548},+    {0xBEC9, 0xC549},+    {0xBECA, 0xC54A},+    {0xBECB, 0xC54C},+    {0xBECC, 0xC54D},+    {0xBECD, 0xC54E},+    {0xBECE, 0xC553},+    {0xBECF, 0xC554},+    {0xBED0, 0xC555},+    {0xBED1, 0xC557},+    {0xBED2, 0xC558},+    {0xBED3, 0xC559},+    {0xBED4, 0xC55D},+    {0xBED5, 0xC55E},+    {0xBED6, 0xC560},+    {0xBED7, 0xC561},+    {0xBED8, 0xC564},+    {0xBED9, 0xC568},+    {0xBEDA, 0xC570},+    {0xBEDB, 0xC571},+    {0xBEDC, 0xC573},+    {0xBEDD, 0xC574},+    {0xBEDE, 0xC575},+    {0xBEDF, 0xC57C},+    {0xBEE0, 0xC57D},+    {0xBEE1, 0xC580},+    {0xBEE2, 0xC584},+    {0xBEE3, 0xC587},+    {0xBEE4, 0xC58C},+    {0xBEE5, 0xC58D},+    {0xBEE6, 0xC58F},+    {0xBEE7, 0xC591},+    {0xBEE8, 0xC595},+    {0xBEE9, 0xC597},+    {0xBEEA, 0xC598},+    {0xBEEB, 0xC59C},+    {0xBEEC, 0xC5A0},+    {0xBEED, 0xC5A9},+    {0xBEEE, 0xC5B4},+    {0xBEEF, 0xC5B5},+    {0xBEF0, 0xC5B8},+    {0xBEF1, 0xC5B9},+    {0xBEF2, 0xC5BB},+    {0xBEF3, 0xC5BC},+    {0xBEF4, 0xC5BD},+    {0xBEF5, 0xC5BE},+    {0xBEF6, 0xC5C4},+    {0xBEF7, 0xC5C5},+    {0xBEF8, 0xC5C6},+    {0xBEF9, 0xC5C7},+    {0xBEFA, 0xC5C8},+    {0xBEFB, 0xC5C9},+    {0xBEFC, 0xC5CA},+    {0xBEFD, 0xC5CC},+    {0xBEFE, 0xC5CE},+    {0xBFA1, 0xC5D0},+    {0xBFA2, 0xC5D1},+    {0xBFA3, 0xC5D4},+    {0xBFA4, 0xC5D8},+    {0xBFA5, 0xC5E0},+    {0xBFA6, 0xC5E1},+    {0xBFA7, 0xC5E3},+    {0xBFA8, 0xC5E5},+    {0xBFA9, 0xC5EC},+    {0xBFAA, 0xC5ED},+    {0xBFAB, 0xC5EE},+    {0xBFAC, 0xC5F0},+    {0xBFAD, 0xC5F4},+    {0xBFAE, 0xC5F6},+    {0xBFAF, 0xC5F7},+    {0xBFB0, 0xC5FC},+    {0xBFB1, 0xC5FD},+    {0xBFB2, 0xC5FE},+    {0xBFB3, 0xC5FF},+    {0xBFB4, 0xC600},+    {0xBFB5, 0xC601},+    {0xBFB6, 0xC605},+    {0xBFB7, 0xC606},+    {0xBFB8, 0xC607},+    {0xBFB9, 0xC608},+    {0xBFBA, 0xC60C},+    {0xBFBB, 0xC610},+    {0xBFBC, 0xC618},+    {0xBFBD, 0xC619},+    {0xBFBE, 0xC61B},+    {0xBFBF, 0xC61C},+    {0xBFC0, 0xC624},+    {0xBFC1, 0xC625},+    {0xBFC2, 0xC628},+    {0xBFC3, 0xC62C},+    {0xBFC4, 0xC62D},+    {0xBFC5, 0xC62E},+    {0xBFC6, 0xC630},+    {0xBFC7, 0xC633},+    {0xBFC8, 0xC634},+    {0xBFC9, 0xC635},+    {0xBFCA, 0xC637},+    {0xBFCB, 0xC639},+    {0xBFCC, 0xC63B},+    {0xBFCD, 0xC640},+    {0xBFCE, 0xC641},+    {0xBFCF, 0xC644},+    {0xBFD0, 0xC648},+    {0xBFD1, 0xC650},+    {0xBFD2, 0xC651},+    {0xBFD3, 0xC653},+    {0xBFD4, 0xC654},+    {0xBFD5, 0xC655},+    {0xBFD6, 0xC65C},+    {0xBFD7, 0xC65D},+    {0xBFD8, 0xC660},+    {0xBFD9, 0xC66C},+    {0xBFDA, 0xC66F},+    {0xBFDB, 0xC671},+    {0xBFDC, 0xC678},+    {0xBFDD, 0xC679},+    {0xBFDE, 0xC67C},+    {0xBFDF, 0xC680},+    {0xBFE0, 0xC688},+    {0xBFE1, 0xC689},+    {0xBFE2, 0xC68B},+    {0xBFE3, 0xC68D},+    {0xBFE4, 0xC694},+    {0xBFE5, 0xC695},+    {0xBFE6, 0xC698},+    {0xBFE7, 0xC69C},+    {0xBFE8, 0xC6A4},+    {0xBFE9, 0xC6A5},+    {0xBFEA, 0xC6A7},+    {0xBFEB, 0xC6A9},+    {0xBFEC, 0xC6B0},+    {0xBFED, 0xC6B1},+    {0xBFEE, 0xC6B4},+    {0xBFEF, 0xC6B8},+    {0xBFF0, 0xC6B9},+    {0xBFF1, 0xC6BA},+    {0xBFF2, 0xC6C0},+    {0xBFF3, 0xC6C1},+    {0xBFF4, 0xC6C3},+    {0xBFF5, 0xC6C5},+    {0xBFF6, 0xC6CC},+    {0xBFF7, 0xC6CD},+    {0xBFF8, 0xC6D0},+    {0xBFF9, 0xC6D4},+    {0xBFFA, 0xC6DC},+    {0xBFFB, 0xC6DD},+    {0xBFFC, 0xC6E0},+    {0xBFFD, 0xC6E1},+    {0xBFFE, 0xC6E8},+    {0xC0A1, 0xC6E9},+    {0xC0A2, 0xC6EC},+    {0xC0A3, 0xC6F0},+    {0xC0A4, 0xC6F8},+    {0xC0A5, 0xC6F9},+    {0xC0A6, 0xC6FD},+    {0xC0A7, 0xC704},+    {0xC0A8, 0xC705},+    {0xC0A9, 0xC708},+    {0xC0AA, 0xC70C},+    {0xC0AB, 0xC714},+    {0xC0AC, 0xC715},+    {0xC0AD, 0xC717},+    {0xC0AE, 0xC719},+    {0xC0AF, 0xC720},+    {0xC0B0, 0xC721},+    {0xC0B1, 0xC724},+    {0xC0B2, 0xC728},+    {0xC0B3, 0xC730},+    {0xC0B4, 0xC731},+    {0xC0B5, 0xC733},+    {0xC0B6, 0xC735},+    {0xC0B7, 0xC737},+    {0xC0B8, 0xC73C},+    {0xC0B9, 0xC73D},+    {0xC0BA, 0xC740},+    {0xC0BB, 0xC744},+    {0xC0BC, 0xC74A},+    {0xC0BD, 0xC74C},+    {0xC0BE, 0xC74D},+    {0xC0BF, 0xC74F},+    {0xC0C0, 0xC751},+    {0xC0C1, 0xC752},+    {0xC0C2, 0xC753},+    {0xC0C3, 0xC754},+    {0xC0C4, 0xC755},+    {0xC0C5, 0xC756},+    {0xC0C6, 0xC757},+    {0xC0C7, 0xC758},+    {0xC0C8, 0xC75C},+    {0xC0C9, 0xC760},+    {0xC0CA, 0xC768},+    {0xC0CB, 0xC76B},+    {0xC0CC, 0xC774},+    {0xC0CD, 0xC775},+    {0xC0CE, 0xC778},+    {0xC0CF, 0xC77C},+    {0xC0D0, 0xC77D},+    {0xC0D1, 0xC77E},+    {0xC0D2, 0xC783},+    {0xC0D3, 0xC784},+    {0xC0D4, 0xC785},+    {0xC0D5, 0xC787},+    {0xC0D6, 0xC788},+    {0xC0D7, 0xC789},+    {0xC0D8, 0xC78A},+    {0xC0D9, 0xC78E},+    {0xC0DA, 0xC790},+    {0xC0DB, 0xC791},+    {0xC0DC, 0xC794},+    {0xC0DD, 0xC796},+    {0xC0DE, 0xC797},+    {0xC0DF, 0xC798},+    {0xC0E0, 0xC79A},+    {0xC0E1, 0xC7A0},+    {0xC0E2, 0xC7A1},+    {0xC0E3, 0xC7A3},+    {0xC0E4, 0xC7A4},+    {0xC0E5, 0xC7A5},+    {0xC0E6, 0xC7A6},+    {0xC0E7, 0xC7AC},+    {0xC0E8, 0xC7AD},+    {0xC0E9, 0xC7B0},+    {0xC0EA, 0xC7B4},+    {0xC0EB, 0xC7BC},+    {0xC0EC, 0xC7BD},+    {0xC0ED, 0xC7BF},+    {0xC0EE, 0xC7C0},+    {0xC0EF, 0xC7C1},+    {0xC0F0, 0xC7C8},+    {0xC0F1, 0xC7C9},+    {0xC0F2, 0xC7CC},+    {0xC0F3, 0xC7CE},+    {0xC0F4, 0xC7D0},+    {0xC0F5, 0xC7D8},+    {0xC0F6, 0xC7DD},+    {0xC0F7, 0xC7E4},+    {0xC0F8, 0xC7E8},+    {0xC0F9, 0xC7EC},+    {0xC0FA, 0xC800},+    {0xC0FB, 0xC801},+    {0xC0FC, 0xC804},+    {0xC0FD, 0xC808},+    {0xC0FE, 0xC80A},+    {0xC1A1, 0xC810},+    {0xC1A2, 0xC811},+    {0xC1A3, 0xC813},+    {0xC1A4, 0xC815},+    {0xC1A5, 0xC816},+    {0xC1A6, 0xC81C},+    {0xC1A7, 0xC81D},+    {0xC1A8, 0xC820},+    {0xC1A9, 0xC824},+    {0xC1AA, 0xC82C},+    {0xC1AB, 0xC82D},+    {0xC1AC, 0xC82F},+    {0xC1AD, 0xC831},+    {0xC1AE, 0xC838},+    {0xC1AF, 0xC83C},+    {0xC1B0, 0xC840},+    {0xC1B1, 0xC848},+    {0xC1B2, 0xC849},+    {0xC1B3, 0xC84C},+    {0xC1B4, 0xC84D},+    {0xC1B5, 0xC854},+    {0xC1B6, 0xC870},+    {0xC1B7, 0xC871},+    {0xC1B8, 0xC874},+    {0xC1B9, 0xC878},+    {0xC1BA, 0xC87A},+    {0xC1BB, 0xC880},+    {0xC1BC, 0xC881},+    {0xC1BD, 0xC883},+    {0xC1BE, 0xC885},+    {0xC1BF, 0xC886},+    {0xC1C0, 0xC887},+    {0xC1C1, 0xC88B},+    {0xC1C2, 0xC88C},+    {0xC1C3, 0xC88D},+    {0xC1C4, 0xC894},+    {0xC1C5, 0xC89D},+    {0xC1C6, 0xC89F},+    {0xC1C7, 0xC8A1},+    {0xC1C8, 0xC8A8},+    {0xC1C9, 0xC8BC},+    {0xC1CA, 0xC8BD},+    {0xC1CB, 0xC8C4},+    {0xC1CC, 0xC8C8},+    {0xC1CD, 0xC8CC},+    {0xC1CE, 0xC8D4},+    {0xC1CF, 0xC8D5},+    {0xC1D0, 0xC8D7},+    {0xC1D1, 0xC8D9},+    {0xC1D2, 0xC8E0},+    {0xC1D3, 0xC8E1},+    {0xC1D4, 0xC8E4},+    {0xC1D5, 0xC8F5},+    {0xC1D6, 0xC8FC},+    {0xC1D7, 0xC8FD},+    {0xC1D8, 0xC900},+    {0xC1D9, 0xC904},+    {0xC1DA, 0xC905},+    {0xC1DB, 0xC906},+    {0xC1DC, 0xC90C},+    {0xC1DD, 0xC90D},+    {0xC1DE, 0xC90F},+    {0xC1DF, 0xC911},+    {0xC1E0, 0xC918},+    {0xC1E1, 0xC92C},+    {0xC1E2, 0xC934},+    {0xC1E3, 0xC950},+    {0xC1E4, 0xC951},+    {0xC1E5, 0xC954},+    {0xC1E6, 0xC958},+    {0xC1E7, 0xC960},+    {0xC1E8, 0xC961},+    {0xC1E9, 0xC963},+    {0xC1EA, 0xC96C},+    {0xC1EB, 0xC970},+    {0xC1EC, 0xC974},+    {0xC1ED, 0xC97C},+    {0xC1EE, 0xC988},+    {0xC1EF, 0xC989},+    {0xC1F0, 0xC98C},+    {0xC1F1, 0xC990},+    {0xC1F2, 0xC998},+    {0xC1F3, 0xC999},+    {0xC1F4, 0xC99B},+    {0xC1F5, 0xC99D},+    {0xC1F6, 0xC9C0},+    {0xC1F7, 0xC9C1},+    {0xC1F8, 0xC9C4},+    {0xC1F9, 0xC9C7},+    {0xC1FA, 0xC9C8},+    {0xC1FB, 0xC9CA},+    {0xC1FC, 0xC9D0},+    {0xC1FD, 0xC9D1},+    {0xC1FE, 0xC9D3},+    {0xC2A1, 0xC9D5},+    {0xC2A2, 0xC9D6},+    {0xC2A3, 0xC9D9},+    {0xC2A4, 0xC9DA},+    {0xC2A5, 0xC9DC},+    {0xC2A6, 0xC9DD},+    {0xC2A7, 0xC9E0},+    {0xC2A8, 0xC9E2},+    {0xC2A9, 0xC9E4},+    {0xC2AA, 0xC9E7},+    {0xC2AB, 0xC9EC},+    {0xC2AC, 0xC9ED},+    {0xC2AD, 0xC9EF},+    {0xC2AE, 0xC9F0},+    {0xC2AF, 0xC9F1},+    {0xC2B0, 0xC9F8},+    {0xC2B1, 0xC9F9},+    {0xC2B2, 0xC9FC},+    {0xC2B3, 0xCA00},+    {0xC2B4, 0xCA08},+    {0xC2B5, 0xCA09},+    {0xC2B6, 0xCA0B},+    {0xC2B7, 0xCA0C},+    {0xC2B8, 0xCA0D},+    {0xC2B9, 0xCA14},+    {0xC2BA, 0xCA18},+    {0xC2BB, 0xCA29},+    {0xC2BC, 0xCA4C},+    {0xC2BD, 0xCA4D},+    {0xC2BE, 0xCA50},+    {0xC2BF, 0xCA54},+    {0xC2C0, 0xCA5C},+    {0xC2C1, 0xCA5D},+    {0xC2C2, 0xCA5F},+    {0xC2C3, 0xCA60},+    {0xC2C4, 0xCA61},+    {0xC2C5, 0xCA68},+    {0xC2C6, 0xCA7D},+    {0xC2C7, 0xCA84},+    {0xC2C8, 0xCA98},+    {0xC2C9, 0xCABC},+    {0xC2CA, 0xCABD},+    {0xC2CB, 0xCAC0},+    {0xC2CC, 0xCAC4},+    {0xC2CD, 0xCACC},+    {0xC2CE, 0xCACD},+    {0xC2CF, 0xCACF},+    {0xC2D0, 0xCAD1},+    {0xC2D1, 0xCAD3},+    {0xC2D2, 0xCAD8},+    {0xC2D3, 0xCAD9},+    {0xC2D4, 0xCAE0},+    {0xC2D5, 0xCAEC},+    {0xC2D6, 0xCAF4},+    {0xC2D7, 0xCB08},+    {0xC2D8, 0xCB10},+    {0xC2D9, 0xCB14},+    {0xC2DA, 0xCB18},+    {0xC2DB, 0xCB20},+    {0xC2DC, 0xCB21},+    {0xC2DD, 0xCB41},+    {0xC2DE, 0xCB48},+    {0xC2DF, 0xCB49},+    {0xC2E0, 0xCB4C},+    {0xC2E1, 0xCB50},+    {0xC2E2, 0xCB58},+    {0xC2E3, 0xCB59},+    {0xC2E4, 0xCB5D},+    {0xC2E5, 0xCB64},+    {0xC2E6, 0xCB78},+    {0xC2E7, 0xCB79},+    {0xC2E8, 0xCB9C},+    {0xC2E9, 0xCBB8},+    {0xC2EA, 0xCBD4},+    {0xC2EB, 0xCBE4},+    {0xC2EC, 0xCBE7},+    {0xC2ED, 0xCBE9},+    {0xC2EE, 0xCC0C},+    {0xC2EF, 0xCC0D},+    {0xC2F0, 0xCC10},+    {0xC2F1, 0xCC14},+    {0xC2F2, 0xCC1C},+    {0xC2F3, 0xCC1D},+    {0xC2F4, 0xCC21},+    {0xC2F5, 0xCC22},+    {0xC2F6, 0xCC27},+    {0xC2F7, 0xCC28},+    {0xC2F8, 0xCC29},+    {0xC2F9, 0xCC2C},+    {0xC2FA, 0xCC2E},+    {0xC2FB, 0xCC30},+    {0xC2FC, 0xCC38},+    {0xC2FD, 0xCC39},+    {0xC2FE, 0xCC3B},+    {0xC3A1, 0xCC3C},+    {0xC3A2, 0xCC3D},+    {0xC3A3, 0xCC3E},+    {0xC3A4, 0xCC44},+    {0xC3A5, 0xCC45},+    {0xC3A6, 0xCC48},+    {0xC3A7, 0xCC4C},+    {0xC3A8, 0xCC54},+    {0xC3A9, 0xCC55},+    {0xC3AA, 0xCC57},+    {0xC3AB, 0xCC58},+    {0xC3AC, 0xCC59},+    {0xC3AD, 0xCC60},+    {0xC3AE, 0xCC64},+    {0xC3AF, 0xCC66},+    {0xC3B0, 0xCC68},+    {0xC3B1, 0xCC70},+    {0xC3B2, 0xCC75},+    {0xC3B3, 0xCC98},+    {0xC3B4, 0xCC99},+    {0xC3B5, 0xCC9C},+    {0xC3B6, 0xCCA0},+    {0xC3B7, 0xCCA8},+    {0xC3B8, 0xCCA9},+    {0xC3B9, 0xCCAB},+    {0xC3BA, 0xCCAC},+    {0xC3BB, 0xCCAD},+    {0xC3BC, 0xCCB4},+    {0xC3BD, 0xCCB5},+    {0xC3BE, 0xCCB8},+    {0xC3BF, 0xCCBC},+    {0xC3C0, 0xCCC4},+    {0xC3C1, 0xCCC5},+    {0xC3C2, 0xCCC7},+    {0xC3C3, 0xCCC9},+    {0xC3C4, 0xCCD0},+    {0xC3C5, 0xCCD4},+    {0xC3C6, 0xCCE4},+    {0xC3C7, 0xCCEC},+    {0xC3C8, 0xCCF0},+    {0xC3C9, 0xCD01},+    {0xC3CA, 0xCD08},+    {0xC3CB, 0xCD09},+    {0xC3CC, 0xCD0C},+    {0xC3CD, 0xCD10},+    {0xC3CE, 0xCD18},+    {0xC3CF, 0xCD19},+    {0xC3D0, 0xCD1B},+    {0xC3D1, 0xCD1D},+    {0xC3D2, 0xCD24},+    {0xC3D3, 0xCD28},+    {0xC3D4, 0xCD2C},+    {0xC3D5, 0xCD39},+    {0xC3D6, 0xCD5C},+    {0xC3D7, 0xCD60},+    {0xC3D8, 0xCD64},+    {0xC3D9, 0xCD6C},+    {0xC3DA, 0xCD6D},+    {0xC3DB, 0xCD6F},+    {0xC3DC, 0xCD71},+    {0xC3DD, 0xCD78},+    {0xC3DE, 0xCD88},+    {0xC3DF, 0xCD94},+    {0xC3E0, 0xCD95},+    {0xC3E1, 0xCD98},+    {0xC3E2, 0xCD9C},+    {0xC3E3, 0xCDA4},+    {0xC3E4, 0xCDA5},+    {0xC3E5, 0xCDA7},+    {0xC3E6, 0xCDA9},+    {0xC3E7, 0xCDB0},+    {0xC3E8, 0xCDC4},+    {0xC3E9, 0xCDCC},+    {0xC3EA, 0xCDD0},+    {0xC3EB, 0xCDE8},+    {0xC3EC, 0xCDEC},+    {0xC3ED, 0xCDF0},+    {0xC3EE, 0xCDF8},+    {0xC3EF, 0xCDF9},+    {0xC3F0, 0xCDFB},+    {0xC3F1, 0xCDFD},+    {0xC3F2, 0xCE04},+    {0xC3F3, 0xCE08},+    {0xC3F4, 0xCE0C},+    {0xC3F5, 0xCE14},+    {0xC3F6, 0xCE19},+    {0xC3F7, 0xCE20},+    {0xC3F8, 0xCE21},+    {0xC3F9, 0xCE24},+    {0xC3FA, 0xCE28},+    {0xC3FB, 0xCE30},+    {0xC3FC, 0xCE31},+    {0xC3FD, 0xCE33},+    {0xC3FE, 0xCE35},+    {0xC4A1, 0xCE58},+    {0xC4A2, 0xCE59},+    {0xC4A3, 0xCE5C},+    {0xC4A4, 0xCE5F},+    {0xC4A5, 0xCE60},+    {0xC4A6, 0xCE61},+    {0xC4A7, 0xCE68},+    {0xC4A8, 0xCE69},+    {0xC4A9, 0xCE6B},+    {0xC4AA, 0xCE6D},+    {0xC4AB, 0xCE74},+    {0xC4AC, 0xCE75},+    {0xC4AD, 0xCE78},+    {0xC4AE, 0xCE7C},+    {0xC4AF, 0xCE84},+    {0xC4B0, 0xCE85},+    {0xC4B1, 0xCE87},+    {0xC4B2, 0xCE89},+    {0xC4B3, 0xCE90},+    {0xC4B4, 0xCE91},+    {0xC4B5, 0xCE94},+    {0xC4B6, 0xCE98},+    {0xC4B7, 0xCEA0},+    {0xC4B8, 0xCEA1},+    {0xC4B9, 0xCEA3},+    {0xC4BA, 0xCEA4},+    {0xC4BB, 0xCEA5},+    {0xC4BC, 0xCEAC},+    {0xC4BD, 0xCEAD},+    {0xC4BE, 0xCEC1},+    {0xC4BF, 0xCEE4},+    {0xC4C0, 0xCEE5},+    {0xC4C1, 0xCEE8},+    {0xC4C2, 0xCEEB},+    {0xC4C3, 0xCEEC},+    {0xC4C4, 0xCEF4},+    {0xC4C5, 0xCEF5},+    {0xC4C6, 0xCEF7},+    {0xC4C7, 0xCEF8},+    {0xC4C8, 0xCEF9},+    {0xC4C9, 0xCF00},+    {0xC4CA, 0xCF01},+    {0xC4CB, 0xCF04},+    {0xC4CC, 0xCF08},+    {0xC4CD, 0xCF10},+    {0xC4CE, 0xCF11},+    {0xC4CF, 0xCF13},+    {0xC4D0, 0xCF15},+    {0xC4D1, 0xCF1C},+    {0xC4D2, 0xCF20},+    {0xC4D3, 0xCF24},+    {0xC4D4, 0xCF2C},+    {0xC4D5, 0xCF2D},+    {0xC4D6, 0xCF2F},+    {0xC4D7, 0xCF30},+    {0xC4D8, 0xCF31},+    {0xC4D9, 0xCF38},+    {0xC4DA, 0xCF54},+    {0xC4DB, 0xCF55},+    {0xC4DC, 0xCF58},+    {0xC4DD, 0xCF5C},+    {0xC4DE, 0xCF64},+    {0xC4DF, 0xCF65},+    {0xC4E0, 0xCF67},+    {0xC4E1, 0xCF69},+    {0xC4E2, 0xCF70},+    {0xC4E3, 0xCF71},+    {0xC4E4, 0xCF74},+    {0xC4E5, 0xCF78},+    {0xC4E6, 0xCF80},+    {0xC4E7, 0xCF85},+    {0xC4E8, 0xCF8C},+    {0xC4E9, 0xCFA1},+    {0xC4EA, 0xCFA8},+    {0xC4EB, 0xCFB0},+    {0xC4EC, 0xCFC4},+    {0xC4ED, 0xCFE0},+    {0xC4EE, 0xCFE1},+    {0xC4EF, 0xCFE4},+    {0xC4F0, 0xCFE8},+    {0xC4F1, 0xCFF0},+    {0xC4F2, 0xCFF1},+    {0xC4F3, 0xCFF3},+    {0xC4F4, 0xCFF5},+    {0xC4F5, 0xCFFC},+    {0xC4F6, 0xD000},+    {0xC4F7, 0xD004},+    {0xC4F8, 0xD011},+    {0xC4F9, 0xD018},+    {0xC4FA, 0xD02D},+    {0xC4FB, 0xD034},+    {0xC4FC, 0xD035},+    {0xC4FD, 0xD038},+    {0xC4FE, 0xD03C},+    {0xC5A1, 0xD044},+    {0xC5A2, 0xD045},+    {0xC5A3, 0xD047},+    {0xC5A4, 0xD049},+    {0xC5A5, 0xD050},+    {0xC5A6, 0xD054},+    {0xC5A7, 0xD058},+    {0xC5A8, 0xD060},+    {0xC5A9, 0xD06C},+    {0xC5AA, 0xD06D},+    {0xC5AB, 0xD070},+    {0xC5AC, 0xD074},+    {0xC5AD, 0xD07C},+    {0xC5AE, 0xD07D},+    {0xC5AF, 0xD081},+    {0xC5B0, 0xD0A4},+    {0xC5B1, 0xD0A5},+    {0xC5B2, 0xD0A8},+    {0xC5B3, 0xD0AC},+    {0xC5B4, 0xD0B4},+    {0xC5B5, 0xD0B5},+    {0xC5B6, 0xD0B7},+    {0xC5B7, 0xD0B9},+    {0xC5B8, 0xD0C0},+    {0xC5B9, 0xD0C1},+    {0xC5BA, 0xD0C4},+    {0xC5BB, 0xD0C8},+    {0xC5BC, 0xD0C9},+    {0xC5BD, 0xD0D0},+    {0xC5BE, 0xD0D1},+    {0xC5BF, 0xD0D3},+    {0xC5C0, 0xD0D4},+    {0xC5C1, 0xD0D5},+    {0xC5C2, 0xD0DC},+    {0xC5C3, 0xD0DD},+    {0xC5C4, 0xD0E0},+    {0xC5C5, 0xD0E4},+    {0xC5C6, 0xD0EC},+    {0xC5C7, 0xD0ED},+    {0xC5C8, 0xD0EF},+    {0xC5C9, 0xD0F0},+    {0xC5CA, 0xD0F1},+    {0xC5CB, 0xD0F8},+    {0xC5CC, 0xD10D},+    {0xC5CD, 0xD130},+    {0xC5CE, 0xD131},+    {0xC5CF, 0xD134},+    {0xC5D0, 0xD138},+    {0xC5D1, 0xD13A},+    {0xC5D2, 0xD140},+    {0xC5D3, 0xD141},+    {0xC5D4, 0xD143},+    {0xC5D5, 0xD144},+    {0xC5D6, 0xD145},+    {0xC5D7, 0xD14C},+    {0xC5D8, 0xD14D},+    {0xC5D9, 0xD150},+    {0xC5DA, 0xD154},+    {0xC5DB, 0xD15C},+    {0xC5DC, 0xD15D},+    {0xC5DD, 0xD15F},+    {0xC5DE, 0xD161},+    {0xC5DF, 0xD168},+    {0xC5E0, 0xD16C},+    {0xC5E1, 0xD17C},+    {0xC5E2, 0xD184},+    {0xC5E3, 0xD188},+    {0xC5E4, 0xD1A0},+    {0xC5E5, 0xD1A1},+    {0xC5E6, 0xD1A4},+    {0xC5E7, 0xD1A8},+    {0xC5E8, 0xD1B0},+    {0xC5E9, 0xD1B1},+    {0xC5EA, 0xD1B3},+    {0xC5EB, 0xD1B5},+    {0xC5EC, 0xD1BA},+    {0xC5ED, 0xD1BC},+    {0xC5EE, 0xD1C0},+    {0xC5EF, 0xD1D8},+    {0xC5F0, 0xD1F4},+    {0xC5F1, 0xD1F8},+    {0xC5F2, 0xD207},+    {0xC5F3, 0xD209},+    {0xC5F4, 0xD210},+    {0xC5F5, 0xD22C},+    {0xC5F6, 0xD22D},+    {0xC5F7, 0xD230},+    {0xC5F8, 0xD234},+    {0xC5F9, 0xD23C},+    {0xC5FA, 0xD23D},+    {0xC5FB, 0xD23F},+    {0xC5FC, 0xD241},+    {0xC5FD, 0xD248},+    {0xC5FE, 0xD25C},+    {0xC6A1, 0xD264},+    {0xC6A2, 0xD280},+    {0xC6A3, 0xD281},+    {0xC6A4, 0xD284},+    {0xC6A5, 0xD288},+    {0xC6A6, 0xD290},+    {0xC6A7, 0xD291},+    {0xC6A8, 0xD295},+    {0xC6A9, 0xD29C},+    {0xC6AA, 0xD2A0},+    {0xC6AB, 0xD2A4},+    {0xC6AC, 0xD2AC},+    {0xC6AD, 0xD2B1},+    {0xC6AE, 0xD2B8},+    {0xC6AF, 0xD2B9},+    {0xC6B0, 0xD2BC},+    {0xC6B1, 0xD2BF},+    {0xC6B2, 0xD2C0},+    {0xC6B3, 0xD2C2},+    {0xC6B4, 0xD2C8},+    {0xC6B5, 0xD2C9},+    {0xC6B6, 0xD2CB},+    {0xC6B7, 0xD2D4},+    {0xC6B8, 0xD2D8},+    {0xC6B9, 0xD2DC},+    {0xC6BA, 0xD2E4},+    {0xC6BB, 0xD2E5},+    {0xC6BC, 0xD2F0},+    {0xC6BD, 0xD2F1},+    {0xC6BE, 0xD2F4},+    {0xC6BF, 0xD2F8},+    {0xC6C0, 0xD300},+    {0xC6C1, 0xD301},+    {0xC6C2, 0xD303},+    {0xC6C3, 0xD305},+    {0xC6C4, 0xD30C},+    {0xC6C5, 0xD30D},+    {0xC6C6, 0xD30E},+    {0xC6C7, 0xD310},+    {0xC6C8, 0xD314},+    {0xC6C9, 0xD316},+    {0xC6CA, 0xD31C},+    {0xC6CB, 0xD31D},+    {0xC6CC, 0xD31F},+    {0xC6CD, 0xD320},+    {0xC6CE, 0xD321},+    {0xC6CF, 0xD325},+    {0xC6D0, 0xD328},+    {0xC6D1, 0xD329},+    {0xC6D2, 0xD32C},+    {0xC6D3, 0xD330},+    {0xC6D4, 0xD338},+    {0xC6D5, 0xD339},+    {0xC6D6, 0xD33B},+    {0xC6D7, 0xD33C},+    {0xC6D8, 0xD33D},+    {0xC6D9, 0xD344},+    {0xC6DA, 0xD345},+    {0xC6DB, 0xD37C},+    {0xC6DC, 0xD37D},+    {0xC6DD, 0xD380},+    {0xC6DE, 0xD384},+    {0xC6DF, 0xD38C},+    {0xC6E0, 0xD38D},+    {0xC6E1, 0xD38F},+    {0xC6E2, 0xD390},+    {0xC6E3, 0xD391},+    {0xC6E4, 0xD398},+    {0xC6E5, 0xD399},+    {0xC6E6, 0xD39C},+    {0xC6E7, 0xD3A0},+    {0xC6E8, 0xD3A8},+    {0xC6E9, 0xD3A9},+    {0xC6EA, 0xD3AB},+    {0xC6EB, 0xD3AD},+    {0xC6EC, 0xD3B4},+    {0xC6ED, 0xD3B8},+    {0xC6EE, 0xD3BC},+    {0xC6EF, 0xD3C4},+    {0xC6F0, 0xD3C5},+    {0xC6F1, 0xD3C8},+    {0xC6F2, 0xD3C9},+    {0xC6F3, 0xD3D0},+    {0xC6F4, 0xD3D8},+    {0xC6F5, 0xD3E1},+    {0xC6F6, 0xD3E3},+    {0xC6F7, 0xD3EC},+    {0xC6F8, 0xD3ED},+    {0xC6F9, 0xD3F0},+    {0xC6FA, 0xD3F4},+    {0xC6FB, 0xD3FC},+    {0xC6FC, 0xD3FD},+    {0xC6FD, 0xD3FF},+    {0xC6FE, 0xD401},+    {0xC7A1, 0xD408},+    {0xC7A2, 0xD41D},+    {0xC7A3, 0xD440},+    {0xC7A4, 0xD444},+    {0xC7A5, 0xD45C},+    {0xC7A6, 0xD460},+    {0xC7A7, 0xD464},+    {0xC7A8, 0xD46D},+    {0xC7A9, 0xD46F},+    {0xC7AA, 0xD478},+    {0xC7AB, 0xD479},+    {0xC7AC, 0xD47C},+    {0xC7AD, 0xD47F},+    {0xC7AE, 0xD480},+    {0xC7AF, 0xD482},+    {0xC7B0, 0xD488},+    {0xC7B1, 0xD489},+    {0xC7B2, 0xD48B},+    {0xC7B3, 0xD48D},+    {0xC7B4, 0xD494},+    {0xC7B5, 0xD4A9},+    {0xC7B6, 0xD4CC},+    {0xC7B7, 0xD4D0},+    {0xC7B8, 0xD4D4},+    {0xC7B9, 0xD4DC},+    {0xC7BA, 0xD4DF},+    {0xC7BB, 0xD4E8},+    {0xC7BC, 0xD4EC},+    {0xC7BD, 0xD4F0},+    {0xC7BE, 0xD4F8},+    {0xC7BF, 0xD4FB},+    {0xC7C0, 0xD4FD},+    {0xC7C1, 0xD504},+    {0xC7C2, 0xD508},+    {0xC7C3, 0xD50C},+    {0xC7C4, 0xD514},+    {0xC7C5, 0xD515},+    {0xC7C6, 0xD517},+    {0xC7C7, 0xD53C},+    {0xC7C8, 0xD53D},+    {0xC7C9, 0xD540},+    {0xC7CA, 0xD544},+    {0xC7CB, 0xD54C},+    {0xC7CC, 0xD54D},+    {0xC7CD, 0xD54F},+    {0xC7CE, 0xD551},+    {0xC7CF, 0xD558},+    {0xC7D0, 0xD559},+    {0xC7D1, 0xD55C},+    {0xC7D2, 0xD560},+    {0xC7D3, 0xD565},+    {0xC7D4, 0xD568},+    {0xC7D5, 0xD569},+    {0xC7D6, 0xD56B},+    {0xC7D7, 0xD56D},+    {0xC7D8, 0xD574},+    {0xC7D9, 0xD575},+    {0xC7DA, 0xD578},+    {0xC7DB, 0xD57C},+    {0xC7DC, 0xD584},+    {0xC7DD, 0xD585},+    {0xC7DE, 0xD587},+    {0xC7DF, 0xD588},+    {0xC7E0, 0xD589},+    {0xC7E1, 0xD590},+    {0xC7E2, 0xD5A5},+    {0xC7E3, 0xD5C8},+    {0xC7E4, 0xD5C9},+    {0xC7E5, 0xD5CC},+    {0xC7E6, 0xD5D0},+    {0xC7E7, 0xD5D2},+    {0xC7E8, 0xD5D8},+    {0xC7E9, 0xD5D9},+    {0xC7EA, 0xD5DB},+    {0xC7EB, 0xD5DD},+    {0xC7EC, 0xD5E4},+    {0xC7ED, 0xD5E5},+    {0xC7EE, 0xD5E8},+    {0xC7EF, 0xD5EC},+    {0xC7F0, 0xD5F4},+    {0xC7F1, 0xD5F5},+    {0xC7F2, 0xD5F7},+    {0xC7F3, 0xD5F9},+    {0xC7F4, 0xD600},+    {0xC7F5, 0xD601},+    {0xC7F6, 0xD604},+    {0xC7F7, 0xD608},+    {0xC7F8, 0xD610},+    {0xC7F9, 0xD611},+    {0xC7FA, 0xD613},+    {0xC7FB, 0xD614},+    {0xC7FC, 0xD615},+    {0xC7FD, 0xD61C},+    {0xC7FE, 0xD620},+    {0xC8A1, 0xD624},+    {0xC8A2, 0xD62D},+    {0xC8A3, 0xD638},+    {0xC8A4, 0xD639},+    {0xC8A5, 0xD63C},+    {0xC8A6, 0xD640},+    {0xC8A7, 0xD645},+    {0xC8A8, 0xD648},+    {0xC8A9, 0xD649},+    {0xC8AA, 0xD64B},+    {0xC8AB, 0xD64D},+    {0xC8AC, 0xD651},+    {0xC8AD, 0xD654},+    {0xC8AE, 0xD655},+    {0xC8AF, 0xD658},+    {0xC8B0, 0xD65C},+    {0xC8B1, 0xD667},+    {0xC8B2, 0xD669},+    {0xC8B3, 0xD670},+    {0xC8B4, 0xD671},+    {0xC8B5, 0xD674},+    {0xC8B6, 0xD683},+    {0xC8B7, 0xD685},+    {0xC8B8, 0xD68C},+    {0xC8B9, 0xD68D},+    {0xC8BA, 0xD690},+    {0xC8BB, 0xD694},+    {0xC8BC, 0xD69D},+    {0xC8BD, 0xD69F},+    {0xC8BE, 0xD6A1},+    {0xC8BF, 0xD6A8},+    {0xC8C0, 0xD6AC},+    {0xC8C1, 0xD6B0},+    {0xC8C2, 0xD6B9},+    {0xC8C3, 0xD6BB},+    {0xC8C4, 0xD6C4},+    {0xC8C5, 0xD6C5},+    {0xC8C6, 0xD6C8},+    {0xC8C7, 0xD6CC},+    {0xC8C8, 0xD6D1},+    {0xC8C9, 0xD6D4},+    {0xC8CA, 0xD6D7},+    {0xC8CB, 0xD6D9},+    {0xC8CC, 0xD6E0},+    {0xC8CD, 0xD6E4},+    {0xC8CE, 0xD6E8},+    {0xC8CF, 0xD6F0},+    {0xC8D0, 0xD6F5},+    {0xC8D1, 0xD6FC},+    {0xC8D2, 0xD6FD},+    {0xC8D3, 0xD700},+    {0xC8D4, 0xD704},+    {0xC8D5, 0xD711},+    {0xC8D6, 0xD718},+    {0xC8D7, 0xD719},+    {0xC8D8, 0xD71C},+    {0xC8D9, 0xD720},+    {0xC8DA, 0xD728},+    {0xC8DB, 0xD729},+    {0xC8DC, 0xD72B},+    {0xC8DD, 0xD72D},+    {0xC8DE, 0xD734},+    {0xC8DF, 0xD735},+    {0xC8E0, 0xD738},+    {0xC8E1, 0xD73C},+    {0xC8E2, 0xD744},+    {0xC8E3, 0xD747},+    {0xC8E4, 0xD749},+    {0xC8E5, 0xD750},+    {0xC8E6, 0xD751},+    {0xC8E7, 0xD754},+    {0xC8E8, 0xD756},+    {0xC8E9, 0xD757},+    {0xC8EA, 0xD758},+    {0xC8EB, 0xD759},+    {0xC8EC, 0xD760},+    {0xC8ED, 0xD761},+    {0xC8EE, 0xD763},+    {0xC8EF, 0xD765},+    {0xC8F0, 0xD769},+    {0xC8F1, 0xD76C},+    {0xC8F2, 0xD770},+    {0xC8F3, 0xD774},+    {0xC8F4, 0xD77C},+    {0xC8F5, 0xD77D},+    {0xC8F6, 0xD781},+    {0xC8F7, 0xD788},+    {0xC8F8, 0xD789},+    {0xC8F9, 0xD78C},+    {0xC8FA, 0xD790},+    {0xC8FB, 0xD798},+    {0xC8FC, 0xD799},+    {0xC8FD, 0xD79B},+    {0xC8FE, 0xD79D},+    {0xCAA1, 0x4F3D},+    {0xCAA2, 0x4F73},+    {0xCAA3, 0x5047},+    {0xCAA4, 0x50F9},+    {0xCAA5, 0x52A0},+    {0xCAA6, 0x53EF},+    {0xCAA7, 0x5475},+    {0xCAA8, 0x54E5},+    {0xCAA9, 0x5609},+    {0xCAAA, 0x5AC1},+    {0xCAAB, 0x5BB6},+    {0xCAAC, 0x6687},+    {0xCAAD, 0x67B6},+    {0xCAAE, 0x67B7},+    {0xCAAF, 0x67EF},+    {0xCAB0, 0x6B4C},+    {0xCAB1, 0x73C2},+    {0xCAB2, 0x75C2},+    {0xCAB3, 0x7A3C},+    {0xCAB4, 0x82DB},+    {0xCAB5, 0x8304},+    {0xCAB6, 0x8857},+    {0xCAB7, 0x8888},+    {0xCAB8, 0x8A36},+    {0xCAB9, 0x8CC8},+    {0xCABA, 0x8DCF},+    {0xCABB, 0x8EFB},+    {0xCABC, 0x8FE6},+    {0xCABD, 0x99D5},+    {0xCABE, 0x523B},+    {0xCABF, 0x5374},+    {0xCAC0, 0x5404},+    {0xCAC1, 0x606A},+    {0xCAC2, 0x6164},+    {0xCAC3, 0x6BBC},+    {0xCAC4, 0x73CF},+    {0xCAC5, 0x811A},+    {0xCAC6, 0x89BA},+    {0xCAC7, 0x89D2},+    {0xCAC8, 0x95A3},+    {0xCAC9, 0x4F83},+    {0xCACA, 0x520A},+    {0xCACB, 0x58BE},+    {0xCACC, 0x5978},+    {0xCACD, 0x59E6},+    {0xCACE, 0x5E72},+    {0xCACF, 0x5E79},+    {0xCAD0, 0x61C7},+    {0xCAD1, 0x63C0},+    {0xCAD2, 0x6746},+    {0xCAD3, 0x67EC},+    {0xCAD4, 0x687F},+    {0xCAD5, 0x6F97},+    {0xCAD6, 0x764E},+    {0xCAD7, 0x770B},+    {0xCAD8, 0x78F5},+    {0xCAD9, 0x7A08},+    {0xCADA, 0x7AFF},+    {0xCADB, 0x7C21},+    {0xCADC, 0x809D},+    {0xCADD, 0x826E},+    {0xCADE, 0x8271},+    {0xCADF, 0x8AEB},+    {0xCAE0, 0x9593},+    {0xCAE1, 0x4E6B},+    {0xCAE2, 0x559D},+    {0xCAE3, 0x66F7},+    {0xCAE4, 0x6E34},+    {0xCAE5, 0x78A3},+    {0xCAE6, 0x7AED},+    {0xCAE7, 0x845B},+    {0xCAE8, 0x8910},+    {0xCAE9, 0x874E},+    {0xCAEA, 0x97A8},+    {0xCAEB, 0x52D8},+    {0xCAEC, 0x574E},+    {0xCAED, 0x582A},+    {0xCAEE, 0x5D4C},+    {0xCAEF, 0x611F},+    {0xCAF0, 0x61BE},+    {0xCAF1, 0x6221},+    {0xCAF2, 0x6562},+    {0xCAF3, 0x67D1},+    {0xCAF4, 0x6A44},+    {0xCAF5, 0x6E1B},+    {0xCAF6, 0x7518},+    {0xCAF7, 0x75B3},+    {0xCAF8, 0x76E3},+    {0xCAF9, 0x77B0},+    {0xCAFA, 0x7D3A},+    {0xCAFB, 0x90AF},+    {0xCAFC, 0x9451},+    {0xCAFD, 0x9452},+    {0xCAFE, 0x9F95},+    {0xCBA1, 0x5323},+    {0xCBA2, 0x5CAC},+    {0xCBA3, 0x7532},+    {0xCBA4, 0x80DB},+    {0xCBA5, 0x9240},+    {0xCBA6, 0x9598},+    {0xCBA7, 0x525B},+    {0xCBA8, 0x5808},+    {0xCBA9, 0x59DC},+    {0xCBAA, 0x5CA1},+    {0xCBAB, 0x5D17},+    {0xCBAC, 0x5EB7},+    {0xCBAD, 0x5F3A},+    {0xCBAE, 0x5F4A},+    {0xCBAF, 0x6177},+    {0xCBB0, 0x6C5F},+    {0xCBB1, 0x757A},+    {0xCBB2, 0x7586},+    {0xCBB3, 0x7CE0},+    {0xCBB4, 0x7D73},+    {0xCBB5, 0x7DB1},+    {0xCBB6, 0x7F8C},+    {0xCBB7, 0x8154},+    {0xCBB8, 0x8221},+    {0xCBB9, 0x8591},+    {0xCBBA, 0x8941},+    {0xCBBB, 0x8B1B},+    {0xCBBC, 0x92FC},+    {0xCBBD, 0xFA09},+    {0xCBBE, 0x9C47},+    {0xCBBF, 0x4ECB},+    {0xCBC0, 0x4EF7},+    {0xCBC1, 0x500B},+    {0xCBC2, 0x51F1},+    {0xCBC3, 0x584F},+    {0xCBC4, 0x6137},+    {0xCBC5, 0x613E},+    {0xCBC6, 0x6168},+    {0xCBC7, 0x6539},+    {0xCBC8, 0x69EA},+    {0xCBC9, 0x6F11},+    {0xCBCA, 0x75A5},+    {0xCBCB, 0x7686},+    {0xCBCC, 0x76D6},+    {0xCBCD, 0x7B87},+    {0xCBCE, 0x82A5},+    {0xCBCF, 0x84CB},+    {0xCBD0, 0x8C48},+    {0xCBD1, 0x93A7},+    {0xCBD2, 0x958B},+    {0xCBD3, 0x5580},+    {0xCBD4, 0x5BA2},+    {0xCBD5, 0x5751},+    {0xCBD6, 0xF901},+    {0xCBD7, 0x7CB3},+    {0xCBD8, 0x7FB9},+    {0xCBD9, 0x91B5},+    {0xCBDA, 0x5028},+    {0xCBDB, 0x53BB},+    {0xCBDC, 0x5C45},+    {0xCBDD, 0x5DE8},+    {0xCBDE, 0x62D2},+    {0xCBDF, 0x636E},+    {0xCBE0, 0x64DA},+    {0xCBE1, 0x64E7},+    {0xCBE2, 0x6E20},+    {0xCBE3, 0x70AC},+    {0xCBE4, 0x795B},+    {0xCBE5, 0x8DDD},+    {0xCBE6, 0x8E1E},+    {0xCBE7, 0x8ECA},+    {0xCBE8, 0x907D},+    {0xCBE9, 0x9245},+    {0xCBEA, 0x92F8},+    {0xCBEB, 0x4E7E},+    {0xCBEC, 0x4EF6},+    {0xCBED, 0x5065},+    {0xCBEE, 0x5DFE},+    {0xCBEF, 0x5EFA},+    {0xCBF0, 0x6106},+    {0xCBF1, 0x6957},+    {0xCBF2, 0x8171},+    {0xCBF3, 0x8654},+    {0xCBF4, 0x8E47},+    {0xCBF5, 0x9375},+    {0xCBF6, 0x9A2B},+    {0xCBF7, 0x4E5E},+    {0xCBF8, 0x5091},+    {0xCBF9, 0x6770},+    {0xCBFA, 0x6840},+    {0xCBFB, 0x5109},+    {0xCBFC, 0x528D},+    {0xCBFD, 0x5292},+    {0xCBFE, 0x6AA2},+    {0xCCA1, 0x77BC},+    {0xCCA2, 0x9210},+    {0xCCA3, 0x9ED4},+    {0xCCA4, 0x52AB},+    {0xCCA5, 0x602F},+    {0xCCA6, 0x8FF2},+    {0xCCA7, 0x5048},+    {0xCCA8, 0x61A9},+    {0xCCA9, 0x63ED},+    {0xCCAA, 0x64CA},+    {0xCCAB, 0x683C},+    {0xCCAC, 0x6A84},+    {0xCCAD, 0x6FC0},+    {0xCCAE, 0x8188},+    {0xCCAF, 0x89A1},+    {0xCCB0, 0x9694},+    {0xCCB1, 0x5805},+    {0xCCB2, 0x727D},+    {0xCCB3, 0x72AC},+    {0xCCB4, 0x7504},+    {0xCCB5, 0x7D79},+    {0xCCB6, 0x7E6D},+    {0xCCB7, 0x80A9},+    {0xCCB8, 0x898B},+    {0xCCB9, 0x8B74},+    {0xCCBA, 0x9063},+    {0xCCBB, 0x9D51},+    {0xCCBC, 0x6289},+    {0xCCBD, 0x6C7A},+    {0xCCBE, 0x6F54},+    {0xCCBF, 0x7D50},+    {0xCCC0, 0x7F3A},+    {0xCCC1, 0x8A23},+    {0xCCC2, 0x517C},+    {0xCCC3, 0x614A},+    {0xCCC4, 0x7B9D},+    {0xCCC5, 0x8B19},+    {0xCCC6, 0x9257},+    {0xCCC7, 0x938C},+    {0xCCC8, 0x4EAC},+    {0xCCC9, 0x4FD3},+    {0xCCCA, 0x501E},+    {0xCCCB, 0x50BE},+    {0xCCCC, 0x5106},+    {0xCCCD, 0x52C1},+    {0xCCCE, 0x52CD},+    {0xCCCF, 0x537F},+    {0xCCD0, 0x5770},+    {0xCCD1, 0x5883},+    {0xCCD2, 0x5E9A},+    {0xCCD3, 0x5F91},+    {0xCCD4, 0x6176},+    {0xCCD5, 0x61AC},+    {0xCCD6, 0x64CE},+    {0xCCD7, 0x656C},+    {0xCCD8, 0x666F},+    {0xCCD9, 0x66BB},+    {0xCCDA, 0xF901},+    {0xCCDB, 0x6897},+    {0xCCDC, 0x6D87},+    {0xCCDD, 0x7085},+    {0xCCDE, 0x70F1},+    {0xCCDF, 0x749F},+    {0xCCE0, 0x74A5},+    {0xCCE1, 0x74CA},+    {0xCCE2, 0x75D9},+    {0xCCE3, 0x786C},+    {0xCCE4, 0x78EC},+    {0xCCE5, 0x7ADF},+    {0xCCE6, 0x7AF6},+    {0xCCE7, 0x7D45},+    {0xCCE8, 0x7D93},+    {0xCCE9, 0x8015},+    {0xCCEA, 0x803F},+    {0xCCEB, 0x811B},+    {0xCCEC, 0x8396},+    {0xCCED, 0x8B66},+    {0xCCEE, 0x8F15},+    {0xCCEF, 0x9015},+    {0xCCF0, 0x93E1},+    {0xCCF1, 0x9803},+    {0xCCF2, 0x9838},+    {0xCCF3, 0x9A5A},+    {0xCCF4, 0x9BE8},+    {0xCCF5, 0x4FC2},+    {0xCCF6, 0x5553},+    {0xCCF7, 0x583A},+    {0xCCF8, 0xF909},+    {0xCCF9, 0x5B63},+    {0xCCFA, 0x5C46},+    {0xCCFB, 0x60B8},+    {0xCCFC, 0x6212},+    {0xCCFD, 0x6842},+    {0xCCFE, 0x68B0},+    {0xCDA1, 0x68E8},+    {0xCDA2, 0x6EAA},+    {0xCDA3, 0x754C},+    {0xCDA4, 0x7678},+    {0xCDA5, 0x78CE},+    {0xCDA6, 0x7A3D},+    {0xCDA7, 0x7CFB},+    {0xCDA8, 0x7E6B},+    {0xCDA9, 0x7E7C},+    {0xCDAA, 0x8A08},+    {0xCDAB, 0x8AA1},+    {0xCDAC, 0x8C3F},+    {0xCDAD, 0x968E},+    {0xCDAE, 0x9DC4},+    {0xCDAF, 0x53E4},+    {0xCDB0, 0x53E9},+    {0xCDB1, 0x544A},+    {0xCDB2, 0x5471},+    {0xCDB3, 0x56FA},+    {0xCDB4, 0x59D1},+    {0xCDB5, 0x5B64},+    {0xCDB6, 0x5C3B},+    {0xCDB7, 0x5EAB},+    {0xCDB8, 0x62F7},+    {0xCDB9, 0x6537},+    {0xCDBA, 0x6545},+    {0xCDBB, 0x6572},+    {0xCDBC, 0x66A0},+    {0xCDBD, 0x67AF},+    {0xCDBE, 0x69C1},+    {0xCDBF, 0x6CBD},+    {0xCDC0, 0x75FC},+    {0xCDC1, 0x7690},+    {0xCDC2, 0x777E},+    {0xCDC3, 0x7A3F},+    {0xCDC4, 0x7F94},+    {0xCDC5, 0x8003},+    {0xCDC6, 0x80A1},+    {0xCDC7, 0x818F},+    {0xCDC8, 0x82E6},+    {0xCDC9, 0x82FD},+    {0xCDCA, 0x83F0},+    {0xCDCB, 0x85C1},+    {0xCDCC, 0x8831},+    {0xCDCD, 0x88B4},+    {0xCDCE, 0x8AA5},+    {0xCDCF, 0x8CC8},+    {0xCDD0, 0x8F9C},+    {0xCDD1, 0x932E},+    {0xCDD2, 0x96C7},+    {0xCDD3, 0x9867},+    {0xCDD4, 0x9AD8},+    {0xCDD5, 0x9F13},+    {0xCDD6, 0x54ED},+    {0xCDD7, 0x659B},+    {0xCDD8, 0x66F2},+    {0xCDD9, 0x688F},+    {0xCDDA, 0x7A40},+    {0xCDDB, 0x8C37},+    {0xCDDC, 0x9D60},+    {0xCDDD, 0x56F0},+    {0xCDDE, 0x5764},+    {0xCDDF, 0x5D11},+    {0xCDE0, 0x6606},+    {0xCDE1, 0x68B1},+    {0xCDE2, 0x68CD},+    {0xCDE3, 0x6EFE},+    {0xCDE4, 0x7428},+    {0xCDE5, 0x889E},+    {0xCDE6, 0x9BE4},+    {0xCDE7, 0x6C68},+    {0xCDE8, 0x6ED1},+    {0xCDE9, 0x9AA8},+    {0xCDEA, 0x4F9B},+    {0xCDEB, 0x516C},+    {0xCDEC, 0x5171},+    {0xCDED, 0x529F},+    {0xCDEE, 0x5B54},+    {0xCDEF, 0x5DE5},+    {0xCDF0, 0x6050},+    {0xCDF1, 0x606D},+    {0xCDF2, 0x62F1},+    {0xCDF3, 0x63A7},+    {0xCDF4, 0x653B},+    {0xCDF5, 0x73D9},+    {0xCDF6, 0x7A7A},+    {0xCDF7, 0x86A3},+    {0xCDF8, 0x8CA2},+    {0xCDF9, 0x978F},+    {0xCDFA, 0xF905},+    {0xCDFB, 0x5BE1},+    {0xCDFC, 0x6208},+    {0xCDFD, 0x679C},+    {0xCDFE, 0x74DC},+    {0xCEA1, 0x79D1},+    {0xCEA2, 0x83D3},+    {0xCEA3, 0x8A87},+    {0xCEA4, 0x8AB2},+    {0xCEA5, 0x8DE8},+    {0xCEA6, 0x904E},+    {0xCEA7, 0x934B},+    {0xCEA8, 0x9846},+    {0xCEA9, 0x5ED3},+    {0xCEAA, 0x69E8},+    {0xCEAB, 0x85FF},+    {0xCEAC, 0x90ED},+    {0xCEAD, 0xF905},+    {0xCEAE, 0x51A0},+    {0xCEAF, 0x5B98},+    {0xCEB0, 0x5BEC},+    {0xCEB1, 0x6163},+    {0xCEB2, 0x68FA},+    {0xCEB3, 0x6B3E},+    {0xCEB4, 0x704C},+    {0xCEB5, 0x742F},+    {0xCEB6, 0x74D8},+    {0xCEB7, 0x7BA1},+    {0xCEB8, 0x7F50},+    {0xCEB9, 0x83C5},+    {0xCEBA, 0x89C0},+    {0xCEBB, 0x8CAB},+    {0xCEBC, 0x95DC},+    {0xCEBD, 0x9928},+    {0xCEBE, 0x522E},+    {0xCEBF, 0x605D},+    {0xCEC0, 0x62EC},+    {0xCEC1, 0x9002},+    {0xCEC2, 0x4F8A},+    {0xCEC3, 0x5149},+    {0xCEC4, 0x5321},+    {0xCEC5, 0x58D9},+    {0xCEC6, 0x5EE3},+    {0xCEC7, 0x66E0},+    {0xCEC8, 0x6D38},+    {0xCEC9, 0x709A},+    {0xCECA, 0x72C2},+    {0xCECB, 0x73D6},+    {0xCECC, 0x7B50},+    {0xCECD, 0x80F1},+    {0xCECE, 0x945B},+    {0xCECF, 0x5366},+    {0xCED0, 0x639B},+    {0xCED1, 0x7F6B},+    {0xCED2, 0x4E56},+    {0xCED3, 0x5080},+    {0xCED4, 0x584A},+    {0xCED5, 0x58DE},+    {0xCED6, 0x602A},+    {0xCED7, 0x6127},+    {0xCED8, 0x62D0},+    {0xCED9, 0x69D0},+    {0xCEDA, 0x9B41},+    {0xCEDB, 0x5B8F},+    {0xCEDC, 0x7D18},+    {0xCEDD, 0x80B1},+    {0xCEDE, 0x8F5F},+    {0xCEDF, 0x4EA4},+    {0xCEE0, 0x50D1},+    {0xCEE1, 0x54AC},+    {0xCEE2, 0x55AC},+    {0xCEE3, 0x5B0C},+    {0xCEE4, 0x5DA0},+    {0xCEE5, 0x5DE7},+    {0xCEE6, 0x652A},+    {0xCEE7, 0x654E},+    {0xCEE8, 0x6821},+    {0xCEE9, 0x6A4B},+    {0xCEEA, 0x72E1},+    {0xCEEB, 0x768E},+    {0xCEEC, 0x77EF},+    {0xCEED, 0x7D5E},+    {0xCEEE, 0x7FF9},+    {0xCEEF, 0x81A0},+    {0xCEF0, 0x854E},+    {0xCEF1, 0x86DF},+    {0xCEF2, 0x8F03},+    {0xCEF3, 0x8F4E},+    {0xCEF4, 0x90CA},+    {0xCEF5, 0x9903},+    {0xCEF6, 0x9A55},+    {0xCEF7, 0x9BAB},+    {0xCEF8, 0x4E18},+    {0xCEF9, 0x4E45},+    {0xCEFA, 0x4E5D},+    {0xCEFB, 0x4EC7},+    {0xCEFC, 0x4FF1},+    {0xCEFD, 0x5177},+    {0xCEFE, 0x52FE},+    {0xCFA1, 0x5340},+    {0xCFA2, 0x53E3},+    {0xCFA3, 0x53E5},+    {0xCFA4, 0x548E},+    {0xCFA5, 0x5614},+    {0xCFA6, 0x5775},+    {0xCFA7, 0x57A2},+    {0xCFA8, 0x5BC7},+    {0xCFA9, 0x5D87},+    {0xCFAA, 0x5ED0},+    {0xCFAB, 0x61FC},+    {0xCFAC, 0x62D8},+    {0xCFAD, 0x6551},+    {0xCFAE, 0x67B8},+    {0xCFAF, 0x67E9},+    {0xCFB0, 0x69CB},+    {0xCFB1, 0x6B50},+    {0xCFB2, 0x6BC6},+    {0xCFB3, 0x6BEC},+    {0xCFB4, 0x6C42},+    {0xCFB5, 0x6E9D},+    {0xCFB6, 0x7078},+    {0xCFB7, 0x72D7},+    {0xCFB8, 0x7396},+    {0xCFB9, 0x7403},+    {0xCFBA, 0x77BF},+    {0xCFBB, 0x77E9},+    {0xCFBC, 0x7A76},+    {0xCFBD, 0x7D7F},+    {0xCFBE, 0x8009},+    {0xCFBF, 0x81FC},+    {0xCFC0, 0x8205},+    {0xCFC1, 0x820A},+    {0xCFC2, 0x82DF},+    {0xCFC3, 0x8862},+    {0xCFC4, 0x8B33},+    {0xCFC5, 0x8CFC},+    {0xCFC6, 0x8EC0},+    {0xCFC7, 0x9011},+    {0xCFC8, 0x90B1},+    {0xCFC9, 0x9264},+    {0xCFCA, 0x92B6},+    {0xCFCB, 0x99D2},+    {0xCFCC, 0x9A45},+    {0xCFCD, 0x9CE9},+    {0xCFCE, 0x9DD7},+    {0xCFCF, 0xF907},+    {0xCFD0, 0x570B},+    {0xCFD1, 0x5C40},+    {0xCFD2, 0x83CA},+    {0xCFD3, 0x97A0},+    {0xCFD4, 0x97AB},+    {0xCFD5, 0x9EB4},+    {0xCFD6, 0x541B},+    {0xCFD7, 0x7A98},+    {0xCFD8, 0x7FA4},+    {0xCFD9, 0x88D9},+    {0xCFDA, 0x8ECD},+    {0xCFDB, 0x90E1},+    {0xCFDC, 0x5800},+    {0xCFDD, 0x5C48},+    {0xCFDE, 0x6398},+    {0xCFDF, 0x7A9F},+    {0xCFE0, 0x5BAE},+    {0xCFE1, 0x5F13},+    {0xCFE2, 0x7A79},+    {0xCFE3, 0x7AAE},+    {0xCFE4, 0x828E},+    {0xCFE5, 0x8EAC},+    {0xCFE6, 0x5026},+    {0xCFE7, 0x5238},+    {0xCFE8, 0x52F8},+    {0xCFE9, 0x5377},+    {0xCFEA, 0x5708},+    {0xCFEB, 0x62F3},+    {0xCFEC, 0x6372},+    {0xCFED, 0x6B0A},+    {0xCFEE, 0x6DC3},+    {0xCFEF, 0x7737},+    {0xCFF0, 0x53A5},+    {0xCFF1, 0x7357},+    {0xCFF2, 0x8568},+    {0xCFF3, 0x8E76},+    {0xCFF4, 0x95D5},+    {0xCFF5, 0x673A},+    {0xCFF6, 0x6AC3},+    {0xCFF7, 0x6F70},+    {0xCFF8, 0x8A6D},+    {0xCFF9, 0x8ECC},+    {0xCFFA, 0x994B},+    {0xCFFB, 0x53E5},+    {0xCFFC, 0x6677},+    {0xCFFD, 0x6B78},+    {0xCFFE, 0x8CB4},+    {0xD0A1, 0x9B3C},+    {0xD0A2, 0xF907},+    {0xD0A3, 0x53EB},+    {0xD0A4, 0x572D},+    {0xD0A5, 0x594E},+    {0xD0A6, 0x63C6},+    {0xD0A7, 0x69FB},+    {0xD0A8, 0x73EA},+    {0xD0A9, 0x7845},+    {0xD0AA, 0x7ABA},+    {0xD0AB, 0x7AC5},+    {0xD0AC, 0x7CFE},+    {0xD0AD, 0x8475},+    {0xD0AE, 0x898F},+    {0xD0AF, 0x8D73},+    {0xD0B0, 0x9035},+    {0xD0B1, 0x95A8},+    {0xD0B2, 0x52FB},+    {0xD0B3, 0x5747},+    {0xD0B4, 0x7547},+    {0xD0B5, 0x7B60},+    {0xD0B6, 0x83CC},+    {0xD0B7, 0x921E},+    {0xD0B8, 0xF907},+    {0xD0B9, 0x6A58},+    {0xD0BA, 0x514B},+    {0xD0BB, 0x524B},+    {0xD0BC, 0x5287},+    {0xD0BD, 0x621F},+    {0xD0BE, 0x68D8},+    {0xD0BF, 0x6975},+    {0xD0C0, 0x9699},+    {0xD0C1, 0x50C5},+    {0xD0C2, 0x52A4},+    {0xD0C3, 0x52E4},+    {0xD0C4, 0x61C3},+    {0xD0C5, 0x65A4},+    {0xD0C6, 0x6839},+    {0xD0C7, 0x69FF},+    {0xD0C8, 0x747E},+    {0xD0C9, 0x7B4B},+    {0xD0CA, 0x82B9},+    {0xD0CB, 0x83EB},+    {0xD0CC, 0x89B2},+    {0xD0CD, 0x8B39},+    {0xD0CE, 0x8FD1},+    {0xD0CF, 0x9949},+    {0xD0D0, 0xF909},+    {0xD0D1, 0x4ECA},+    {0xD0D2, 0x5997},+    {0xD0D3, 0x64D2},+    {0xD0D4, 0x6611},+    {0xD0D5, 0x6A8E},+    {0xD0D6, 0x7434},+    {0xD0D7, 0x7981},+    {0xD0D8, 0x79BD},+    {0xD0D9, 0x82A9},+    {0xD0DA, 0x887E},+    {0xD0DB, 0x887F},+    {0xD0DC, 0x895F},+    {0xD0DD, 0x91D1},+    {0xD0DE, 0x9326},+    {0xD0DF, 0x4F0B},+    {0xD0E0, 0x53CA},+    {0xD0E1, 0x6025},+    {0xD0E2, 0x6271},+    {0xD0E3, 0x6C72},+    {0xD0E4, 0x7D1A},+    {0xD0E5, 0x7D66},+    {0xD0E6, 0x4E98},+    {0xD0E7, 0x5162},+    {0xD0E8, 0x77DC},+    {0xD0E9, 0x80AF},+    {0xD0EA, 0x4F01},+    {0xD0EB, 0x4F0E},+    {0xD0EC, 0x5176},+    {0xD0ED, 0x5180},+    {0xD0EE, 0x55DC},+    {0xD0EF, 0x5668},+    {0xD0F0, 0x573B},+    {0xD0F1, 0x57FA},+    {0xD0F2, 0x57FC},+    {0xD0F3, 0x5914},+    {0xD0F4, 0x5947},+    {0xD0F5, 0x5993},+    {0xD0F6, 0x5BC4},+    {0xD0F7, 0x5C90},+    {0xD0F8, 0x5D0E},+    {0xD0F9, 0x5DF1},+    {0xD0FA, 0x5E7E},+    {0xD0FB, 0x5FCC},+    {0xD0FC, 0x6280},+    {0xD0FD, 0x65D7},+    {0xD0FE, 0x65E3},+    {0xD1A1, 0x671E},+    {0xD1A2, 0x671F},+    {0xD1A3, 0x675E},+    {0xD1A4, 0x68CB},+    {0xD1A5, 0x68C4},+    {0xD1A6, 0x6A5F},+    {0xD1A7, 0x6B3A},+    {0xD1A8, 0x6C23},+    {0xD1A9, 0x6C7D},+    {0xD1AA, 0x6C82},+    {0xD1AB, 0x6DC7},+    {0xD1AC, 0x7398},+    {0xD1AD, 0x7426},+    {0xD1AE, 0x742A},+    {0xD1AF, 0x7482},+    {0xD1B0, 0x74A3},+    {0xD1B1, 0x7578},+    {0xD1B2, 0x757F},+    {0xD1B3, 0x7881},+    {0xD1B4, 0x78EF},+    {0xD1B5, 0x7941},+    {0xD1B6, 0x7947},+    {0xD1B7, 0x7948},+    {0xD1B8, 0x797A},+    {0xD1B9, 0x7B95},+    {0xD1BA, 0x7D00},+    {0xD1BB, 0x7DBA},+    {0xD1BC, 0x7F88},+    {0xD1BD, 0x8006},+    {0xD1BE, 0x802D},+    {0xD1BF, 0x808C},+    {0xD1C0, 0x8A18},+    {0xD1C1, 0x8B4F},+    {0xD1C2, 0x8C48},+    {0xD1C3, 0x8D77},+    {0xD1C4, 0x9321},+    {0xD1C5, 0x9324},+    {0xD1C6, 0x98E2},+    {0xD1C7, 0x9951},+    {0xD1C8, 0x9A0E},+    {0xD1C9, 0x9A0F},+    {0xD1CA, 0x9A65},+    {0xD1CB, 0x9E92},+    {0xD1CC, 0x7DCA},+    {0xD1CD, 0x4F76},+    {0xD1CE, 0x5409},+    {0xD1CF, 0x62EE},+    {0xD1D0, 0x6854},+    {0xD1D1, 0x91D1},+    {0xD1D2, 0x55AB},+    {0xD1D3, 0x513A},+    {0xD1D4, 0xF90B},+    {0xD1D5, 0x5948},+    {0xD1D6, 0x5A1C},+    {0xD1D7, 0x61E6},+    {0xD1D8, 0xF90D},+    {0xD1D9, 0x62CF},+    {0xD1DA, 0x62FF},+    {0xD1DB, 0xF90E},+    {0xD1DC, 0xF90F},+    {0xD1DD, 0x863F},+    {0xD1DE, 0x87BA},+    {0xD1DF, 0x88F8},+    {0xD1E0, 0x908F},+    {0xD1E1, 0x90A3},+    {0xD1E2, 0xF95C},+    {0xD1E3, 0x6D1B},+    {0xD1E4, 0x70D9},+    {0xD1E5, 0x73DE},+    {0xD1E6, 0x843D},+    {0xD1E7, 0xF95D},+    {0xD1E8, 0x916A},+    {0xD1E9, 0x99F1},+    {0xD1EA, 0x4E82},+    {0xD1EB, 0x5375},+    {0xD1EC, 0x6696},+    {0xD1ED, 0x6B04},+    {0xD1EE, 0x7156},+    {0xD1EF, 0x721B},+    {0xD1F0, 0x862D},+    {0xD1F1, 0x96E3},+    {0xD1F2, 0x9E1E},+    {0xD1F3, 0x634F},+    {0xD1F4, 0x637A},+    {0xD1F5, 0x5357},+    {0xD1F6, 0x5D50},+    {0xD1F7, 0x678F},+    {0xD1F8, 0x6960},+    {0xD1F9, 0x6E73},+    {0xD1FA, 0x6FEB},+    {0xD1FB, 0x7537},+    {0xD1FC, 0x85CD},+    {0xD1FD, 0x8964},+    {0xD1FE, 0x62C9},+    {0xD2A1, 0x7D0D},+    {0xD2A2, 0xF926},+    {0xD2A3, 0xF927},+    {0xD2A4, 0x8872},+    {0xD2A5, 0x56CA},+    {0xD2A6, 0x5A18},+    {0xD2A7, 0xF928},+    {0xD2A8, 0xF929},+    {0xD2A9, 0xF92A},+    {0xD2AA, 0xF92B},+    {0xD2AB, 0xF92C},+    {0xD2AC, 0x4E43},+    {0xD2AD, 0xF92D},+    {0xD2AE, 0x5167},+    {0xD2AF, 0x5948},+    {0xD2B0, 0x67F0},+    {0xD2B1, 0x8010},+    {0xD2B2, 0xF92E},+    {0xD2B3, 0x5973},+    {0xD2B4, 0x5E74},+    {0xD2B5, 0x649A},+    {0xD2B6, 0x79CA},+    {0xD2B7, 0x5FF5},+    {0xD2B8, 0x606C},+    {0xD2B9, 0x62C8},+    {0xD2BA, 0x637B},+    {0xD2BB, 0xF9AA},+    {0xD2BC, 0x5BD7},+    {0xD2BD, 0x52AA},+    {0xD2BE, 0xF92F},+    {0xD2BF, 0x5974},+    {0xD2C0, 0x5F29},+    {0xD2C1, 0x6012},+    {0xD2C2, 0xF930},+    {0xD2C3, 0xF931},+    {0xD2C4, 0xF932},+    {0xD2C5, 0x7459},+    {0xD2C6, 0xF933},+    {0xD2C7, 0xF934},+    {0xD2C8, 0xF935},+    {0xD2C9, 0xF936},+    {0xD2CA, 0xF937},+    {0xD2CB, 0xF938},+    {0xD2CC, 0x99D1},+    {0xD2CD, 0xF939},+    {0xD2CE, 0xF93A},+    {0xD2CF, 0xF93B},+    {0xD2D0, 0xF93C},+    {0xD2D1, 0xF93D},+    {0xD2D2, 0xF93E},+    {0xD2D3, 0xF93F},+    {0xD2D4, 0xF940},+    {0xD2D5, 0xF941},+    {0xD2D6, 0xF942},+    {0xD2D7, 0xF943},+    {0xD2D8, 0x6FC3},+    {0xD2D9, 0xF944},+    {0xD2DA, 0xF945},+    {0xD2DB, 0x81BF},+    {0xD2DC, 0x8FB2},+    {0xD2DD, 0x60F1},+    {0xD2DE, 0xF946},+    {0xD2DF, 0xF947},+    {0xD2E0, 0x8166},+    {0xD2E1, 0xF948},+    {0xD2E2, 0xF949},+    {0xD2E3, 0x5C3F},+    {0xD2E4, 0x58D8},+    {0xD2E5, 0x5C62},+    {0xD2E6, 0x6A13},+    {0xD2E7, 0x6DDA},+    {0xD2E8, 0x6F0F},+    {0xD2E9, 0x7D2F},+    {0xD2EA, 0x7E37},+    {0xD2EB, 0x964B},+    {0xD2EC, 0x5AE9},+    {0xD2ED, 0x8A25},+    {0xD2EE, 0x677B},+    {0xD2EF, 0xF9CF},+    {0xD2F0, 0x52D2},+    {0xD2F1, 0x808B},+    {0xD2F2, 0x51DC},+    {0xD2F3, 0x51CC},+    {0xD2F4, 0x7A1C},+    {0xD2F5, 0x7DBE},+    {0xD2F6, 0x80FD},+    {0xD2F7, 0x83F1},+    {0xD2F8, 0x9675},+    {0xD2F9, 0x5C3C},+    {0xD2FA, 0xF9E3},+    {0xD2FB, 0xF9EB},+    {0xD2FC, 0xF9EC},+    {0xD2FD, 0x591A},+    {0xD2FE, 0xF9FE},+    {0xD3A1, 0x4E39},+    {0xD3A2, 0x4EB6},+    {0xD3A3, 0x4F46},+    {0xD3A4, 0x55AE},+    {0xD3A5, 0x5718},+    {0xD3A6, 0x58C7},+    {0xD3A7, 0x5F56},+    {0xD3A8, 0x65B7},+    {0xD3A9, 0x65E6},+    {0xD3AA, 0x6A80},+    {0xD3AB, 0x6BB5},+    {0xD3AC, 0x6E4D},+    {0xD3AD, 0x77ED},+    {0xD3AE, 0x7AEF},+    {0xD3AF, 0x7C1E},+    {0xD3B0, 0x7DDE},+    {0xD3B1, 0x86CB},+    {0xD3B2, 0x8892},+    {0xD3B3, 0x9132},+    {0xD3B4, 0x935B},+    {0xD3B5, 0x64BB},+    {0xD3B6, 0x6FBE},+    {0xD3B7, 0x737A},+    {0xD3B8, 0x75B8},+    {0xD3B9, 0x9054},+    {0xD3BA, 0x5556},+    {0xD3BB, 0x574D},+    {0xD3BC, 0x61BA},+    {0xD3BD, 0x64D4},+    {0xD3BE, 0x66C7},+    {0xD3BF, 0x6DE1},+    {0xD3C0, 0x6E5B},+    {0xD3C1, 0x6F6D},+    {0xD3C2, 0x6FB9},+    {0xD3C3, 0x75F0},+    {0xD3C4, 0x8043},+    {0xD3C5, 0x81BD},+    {0xD3C6, 0x8541},+    {0xD3C7, 0x8983},+    {0xD3C8, 0x8AC7},+    {0xD3C9, 0x8B5A},+    {0xD3CA, 0x931F},+    {0xD3CB, 0x6C93},+    {0xD3CC, 0x7553},+    {0xD3CD, 0x7B54},+    {0xD3CE, 0x8E0F},+    {0xD3CF, 0x905D},+    {0xD3D0, 0x5510},+    {0xD3D1, 0x5802},+    {0xD3D2, 0x5858},+    {0xD3D3, 0x5E62},+    {0xD3D4, 0x6207},+    {0xD3D5, 0x649E},+    {0xD3D6, 0x68E0},+    {0xD3D7, 0x7576},+    {0xD3D8, 0xFA03},+    {0xD3D9, 0x87B3},+    {0xD3DA, 0x9EE8},+    {0xD3DB, 0x4EE3},+    {0xD3DC, 0x5788},+    {0xD3DD, 0x576E},+    {0xD3DE, 0x5927},+    {0xD3DF, 0x5C0D},+    {0xD3E0, 0x5CB1},+    {0xD3E1, 0x5E36},+    {0xD3E2, 0x5F85},+    {0xD3E3, 0x6234},+    {0xD3E4, 0x64E1},+    {0xD3E5, 0x73B3},+    {0xD3E6, 0x81FA},+    {0xD3E7, 0x888B},+    {0xD3E8, 0x8CB8},+    {0xD3E9, 0x968A},+    {0xD3EA, 0x9EDB},+    {0xD3EB, 0xFA04},+    {0xD3EC, 0x5FB7},+    {0xD3ED, 0x60B3},+    {0xD3EE, 0x5012},+    {0xD3EF, 0x5200},+    {0xD3F0, 0x5230},+    {0xD3F1, 0x5716},+    {0xD3F2, 0x5835},+    {0xD3F3, 0x5857},+    {0xD3F4, 0x5C0E},+    {0xD3F5, 0x5C60},+    {0xD3F6, 0x5CF6},+    {0xD3F7, 0x5D8B},+    {0xD3F8, 0xFA01},+    {0xD3F9, 0x5F92},+    {0xD3FA, 0x60BC},+    {0xD3FB, 0x6311},+    {0xD3FC, 0x6389},+    {0xD3FD, 0x6417},+    {0xD3FE, 0x6843},+    {0xD4A1, 0x68F9},+    {0xD4A2, 0x6AC2},+    {0xD4A3, 0x6DD8},+    {0xD4A4, 0x6E21},+    {0xD4A5, 0x6ED4},+    {0xD4A6, 0x6FE4},+    {0xD4A7, 0x71FE},+    {0xD4A8, 0x76DC},+    {0xD4A9, 0x7779},+    {0xD4AA, 0x79B1},+    {0xD4AB, 0x7A3B},+    {0xD4AC, 0x8404},+    {0xD4AD, 0x89A9},+    {0xD4AE, 0x8CED},+    {0xD4AF, 0x8DF3},+    {0xD4B0, 0x8E48},+    {0xD4B1, 0x9003},+    {0xD4B2, 0x9014},+    {0xD4B3, 0x9053},+    {0xD4B4, 0x90FD},+    {0xD4B5, 0x934D},+    {0xD4B6, 0x9676},+    {0xD4B7, 0x97DC},+    {0xD4B8, 0x6BD2},+    {0xD4B9, 0x7006},+    {0xD4BA, 0x7258},+    {0xD4BB, 0x72A2},+    {0xD4BC, 0x7368},+    {0xD4BD, 0x7763},+    {0xD4BE, 0x79BF},+    {0xD4BF, 0x7BE4},+    {0xD4C0, 0x7E9B},+    {0xD4C1, 0x8B80},+    {0xD4C2, 0x58A9},+    {0xD4C3, 0x60C7},+    {0xD4C4, 0x6566},+    {0xD4C5, 0x65FD},+    {0xD4C6, 0x66BE},+    {0xD4C7, 0x6C8C},+    {0xD4C8, 0x711E},+    {0xD4C9, 0x71C9},+    {0xD4CA, 0x8C5A},+    {0xD4CB, 0x9813},+    {0xD4CC, 0x4E6D},+    {0xD4CD, 0x7A81},+    {0xD4CE, 0x4EDD},+    {0xD4CF, 0x51AC},+    {0xD4D0, 0x51CD},+    {0xD4D1, 0x52D5},+    {0xD4D2, 0x540C},+    {0xD4D3, 0x61A7},+    {0xD4D4, 0x6771},+    {0xD4D5, 0x6850},+    {0xD4D6, 0x68DF},+    {0xD4D7, 0xFA05},+    {0xD4D8, 0x6F7C},+    {0xD4D9, 0x75BC},+    {0xD4DA, 0x77B3},+    {0xD4DB, 0x7AE5},+    {0xD4DC, 0x80F4},+    {0xD4DD, 0x8463},+    {0xD4DE, 0x9285},+    {0xD4DF, 0x515C},+    {0xD4E0, 0x6597},+    {0xD4E1, 0x675C},+    {0xD4E2, 0x6793},+    {0xD4E3, 0x75D8},+    {0xD4E4, 0x7AC7},+    {0xD4E5, 0x8373},+    {0xD4E6, 0x8B80},+    {0xD4E7, 0x8C46},+    {0xD4E8, 0x9017},+    {0xD4E9, 0x982D},+    {0xD4EA, 0x5C6F},+    {0xD4EB, 0x81C0},+    {0xD4EC, 0x829A},+    {0xD4ED, 0x9041},+    {0xD4EE, 0x906F},+    {0xD4EF, 0x920D},+    {0xD4F0, 0x5F97},+    {0xD4F1, 0x5D9D},+    {0xD4F2, 0x6A59},+    {0xD4F3, 0x71C8},+    {0xD4F4, 0x767B},+    {0xD4F5, 0x7B49},+    {0xD4F6, 0x85E4},+    {0xD4F7, 0x8B04},+    {0xD4F8, 0x9127},+    {0xD4F9, 0x9A30},+    {0xD4FA, 0xF90B},+    {0xD4FB, 0xF90D},+    {0xD4FC, 0x62CF},+    {0xD4FD, 0xF90E},+    {0xD4FE, 0xF90F},+    {0xD5A1, 0x863F},+    {0xD5A2, 0x87BA},+    {0xD5A3, 0x88F8},+    {0xD5A4, 0x908F},+    {0xD5A5, 0xF95C},+    {0xD5A6, 0x6D1B},+    {0xD5A7, 0x70D9},+    {0xD5A8, 0x73DE},+    {0xD5A9, 0x7D61},+    {0xD5AA, 0x843D},+    {0xD5AB, 0xF95D},+    {0xD5AC, 0x916A},+    {0xD5AD, 0x99F1},+    {0xD5AE, 0x4E39},+    {0xD5AF, 0x4E82},+    {0xD5B0, 0x5375},+    {0xD5B1, 0x6B04},+    {0xD5B2, 0x6B12},+    {0xD5B3, 0x703E},+    {0xD5B4, 0x721B},+    {0xD5B5, 0x862D},+    {0xD5B6, 0x9E1E},+    {0xD5B7, 0x524C},+    {0xD5B8, 0x8FA3},+    {0xD5B9, 0x5D50},+    {0xD5BA, 0x64E5},+    {0xD5BB, 0x652C},+    {0xD5BC, 0x6B16},+    {0xD5BD, 0x6FEB},+    {0xD5BE, 0x7C43},+    {0xD5BF, 0x7E9C},+    {0xD5C0, 0x85CD},+    {0xD5C1, 0x8964},+    {0xD5C2, 0x89BD},+    {0xD5C3, 0x62C9},+    {0xD5C4, 0xF926},+    {0xD5C5, 0xF927},+    {0xD5C6, 0xF928},+    {0xD5C7, 0xF929},+    {0xD5C8, 0xF92A},+    {0xD5C9, 0xF92B},+    {0xD5CA, 0x7405},+    {0xD5CB, 0x746F},+    {0xD5CC, 0x8782},+    {0xD5CD, 0xF92C},+    {0xD5CE, 0xF92D},+    {0xD5CF, 0x5D0D},+    {0xD5D0, 0x5FA0},+    {0xD5D1, 0x840A},+    {0xD5D2, 0xF92E},+    {0xD5D3, 0xF975},+    {0xD5D4, 0xF976},+    {0xD5D5, 0xF977},+    {0xD5D6, 0x5006},+    {0xD5D7, 0xF978},+    {0xD5D8, 0xF979},+    {0xD5D9, 0xF97A},+    {0xD5DA, 0x6A11},+    {0xD5DB, 0x7CAE},+    {0xD5DC, 0x7CB1},+    {0xD5DD, 0xF97B},+    {0xD5DE, 0xF97C},+    {0xD5DF, 0xF97D},+    {0xD5E0, 0x8F1B},+    {0xD5E1, 0xF97E},+    {0xD5E2, 0x4FB6},+    {0xD5E3, 0x5137},+    {0xD5E4, 0x52F5},+    {0xD5E5, 0x5442},+    {0xD5E6, 0x5EEC},+    {0xD5E7, 0x616E},+    {0xD5E8, 0x623E},+    {0xD5E9, 0xF983},+    {0xD5EA, 0x6ADA},+    {0xD5EB, 0xF984},+    {0xD5EC, 0xF985},+    {0xD5ED, 0x85DC},+    {0xD5EE, 0x8823},+    {0xD5EF, 0xF986},+    {0xD5F0, 0x9A62},+    {0xD5F1, 0xF987},+    {0xD5F2, 0xF988},+    {0xD5F3, 0xF989},+    {0xD5F4, 0xF98A},+    {0xD5F5, 0xF98B},+    {0xD5F6, 0xF98C},+    {0xD5F7, 0x701D},+    {0xD5F8, 0x792B},+    {0xD5F9, 0xF98D},+    {0xD5FA, 0x9742},+    {0xD5FB, 0xF98F},+    {0xD5FC, 0xF990},+    {0xD5FD, 0x6523},+    {0xD5FE, 0xF992},+    {0xD6A1, 0x7149},+    {0xD6A2, 0x7489},+    {0xD6A3, 0x7DF4},+    {0xD6A4, 0x806F},+    {0xD6A5, 0x84EE},+    {0xD6A6, 0x8F26},+    {0xD6A7, 0x9023},+    {0xD6A8, 0x934A},+    {0xD6A9, 0x51BD},+    {0xD6AA, 0x5217},+    {0xD6AB, 0x52A3},+    {0xD6AC, 0x6D0C},+    {0xD6AD, 0x70C8},+    {0xD6AE, 0x88C2},+    {0xD6AF, 0x5EC9},+    {0xD6B0, 0x6582},+    {0xD6B1, 0x6BAE},+    {0xD6B2, 0x6FC2},+    {0xD6B3, 0xF9A6},+    {0xD6B4, 0xF9A7},+    {0xD6B5, 0xF9A8},+    {0xD6B6, 0x4F36},+    {0xD6B7, 0xF9A9},+    {0xD6B8, 0xF9AA},+    {0xD6B9, 0x5CBA},+    {0xD6BA, 0xF9AB},+    {0xD6BB, 0xF9AC},+    {0xD6BC, 0x73B2},+    {0xD6BD, 0x7B2D},+    {0xD6BE, 0x7F9A},+    {0xD6BF, 0x7FCE},+    {0xD6C0, 0x8046},+    {0xD6C1, 0x901E},+    {0xD6C2, 0x9234},+    {0xD6C3, 0x96F6},+    {0xD6C4, 0x9748},+    {0xD6C5, 0x9818},+    {0xD6C6, 0x9F61},+    {0xD6C7, 0x4F8B},+    {0xD6C8, 0x6FA7},+    {0xD6C9, 0x79AE},+    {0xD6CA, 0x91B4},+    {0xD6CB, 0x96B7},+    {0xD6CC, 0xF92F},+    {0xD6CD, 0x6012},+    {0xD6CE, 0x6488},+    {0xD6CF, 0xF930},+    {0xD6D0, 0xF931},+    {0xD6D1, 0x6F5E},+    {0xD6D2, 0x7018},+    {0xD6D3, 0xF932},+    {0xD6D4, 0xF933},+    {0xD6D5, 0xF934},+    {0xD6D6, 0xF935},+    {0xD6D7, 0xF936},+    {0xD6D8, 0xF937},+    {0xD6D9, 0x8F05},+    {0xD6DA, 0xF938},+    {0xD6DB, 0xF939},+    {0xD6DC, 0xF93A},+    {0xD6DD, 0x9E75},+    {0xD6DE, 0xF93B},+    {0xD6DF, 0xF93C},+    {0xD6E0, 0xF93D},+    {0xD6E1, 0xF93E},+    {0xD6E2, 0xF93F},+    {0xD6E3, 0xF940},+    {0xD6E4, 0x9E93},+    {0xD6E5, 0xF941},+    {0xD6E6, 0xF942},+    {0xD6E7, 0xF943},+    {0xD6E8, 0x6727},+    {0xD6E9, 0x7027},+    {0xD6EA, 0x74CF},+    {0xD6EB, 0xF944},+    {0xD6EC, 0xF945},+    {0xD6ED, 0x5121},+    {0xD6EE, 0x7028},+    {0xD6EF, 0xF946},+    {0xD6F0, 0xF947},+    {0xD6F1, 0xF948},+    {0xD6F2, 0x8CDA},+    {0xD6F3, 0x8CF4},+    {0xD6F4, 0xF949},+    {0xD6F5, 0xF9BA},+    {0xD6F6, 0xF9BB},+    {0xD6F7, 0xF9BC},+    {0xD6F8, 0x5ED6},+    {0xD6F9, 0xF9BE},+    {0xD6FA, 0x71CE},+    {0xD6FB, 0x7642},+    {0xD6FC, 0x77AD},+    {0xD6FD, 0x804A},+    {0xD6FE, 0xF9C2},+    {0xD7A1, 0x907C},+    {0xD7A2, 0x9B27},+    {0xD7A3, 0x9F8D},+    {0xD7A4, 0x58D8},+    {0xD7A5, 0x5A41},+    {0xD7A6, 0x5C62},+    {0xD7A7, 0x6A13},+    {0xD7A8, 0x6DDA},+    {0xD7A9, 0x6F0F},+    {0xD7AA, 0x763B},+    {0xD7AB, 0x7D2F},+    {0xD7AC, 0x7E37},+    {0xD7AD, 0x851E},+    {0xD7AE, 0x8938},+    {0xD7AF, 0x93E4},+    {0xD7B0, 0x964B},+    {0xD7B1, 0x5289},+    {0xD7B2, 0x65D2},+    {0xD7B3, 0x67F3},+    {0xD7B4, 0x69B4},+    {0xD7B5, 0x6D41},+    {0xD7B6, 0x6E9C},+    {0xD7B7, 0x700F},+    {0xD7B8, 0xF9CC},+    {0xD7B9, 0x7460},+    {0xD7BA, 0xF9CD},+    {0xD7BB, 0x7624},+    {0xD7BC, 0xF9CE},+    {0xD7BD, 0x8B2C},+    {0xD7BE, 0xF9D0},+    {0xD7BF, 0xF9D1},+    {0xD7C0, 0xF9D2},+    {0xD7C1, 0x9678},+    {0xD7C2, 0x4F96},+    {0xD7C3, 0xF9D4},+    {0xD7C4, 0x5D19},+    {0xD7C5, 0x6DEA},+    {0xD7C6, 0x7DB8},+    {0xD7C7, 0x8F2A},+    {0xD7C8, 0x5F8B},+    {0xD7C9, 0x6144},+    {0xD7CA, 0x6817},+    {0xD7CB, 0xF961},+    {0xD7CC, 0x9686},+    {0xD7CD, 0x52D2},+    {0xD7CE, 0x808B},+    {0xD7CF, 0x51DC},+    {0xD7D0, 0x51CC},+    {0xD7D1, 0x695E},+    {0xD7D2, 0x7A1C},+    {0xD7D3, 0x7DBE},+    {0xD7D4, 0x83F1},+    {0xD7D5, 0x9675},+    {0xD7D6, 0x4FDA},+    {0xD7D7, 0xF9DD},+    {0xD7D8, 0x5398},+    {0xD7D9, 0xF9DE},+    {0xD7DA, 0x550E},+    {0xD7DB, 0xF9DF},+    {0xD7DC, 0x60A7},+    {0xD7DD, 0xF9E1},+    {0xD7DE, 0xF9E2},+    {0xD7DF, 0x6D6C},+    {0xD7E0, 0x7281},+    {0xD7E1, 0x72F8},+    {0xD7E2, 0xF9E4},+    {0xD7E3, 0x7483},+    {0xD7E4, 0x7570},+    {0xD7E5, 0xF9E5},+    {0xD7E6, 0x7C6C},+    {0xD7E7, 0xF9E6},+    {0xD7E8, 0x7FB8},+    {0xD7E9, 0x8389},+    {0xD7EA, 0xF9E7},+    {0xD7EB, 0xF9E8},+    {0xD7EC, 0xF9E9},+    {0xD7ED, 0x91D0},+    {0xD7EE, 0xF9EA},+    {0xD7EF, 0x9BC9},+    {0xD7F0, 0xF9ED},+    {0xD7F1, 0x6F7E},+    {0xD7F2, 0xF9EE},+    {0xD7F3, 0xF9EF},+    {0xD7F4, 0xF9F0},+    {0xD7F5, 0x8EAA},+    {0xD7F6, 0xF9F1},+    {0xD7F7, 0xF9F2},+    {0xD7F8, 0xF9F3},+    {0xD7F9, 0xF9F4},+    {0xD7FA, 0xF9F5},+    {0xD7FB, 0x7433},+    {0xD7FC, 0xF9F6},+    {0xD7FD, 0x9716},+    {0xD7FE, 0x782C},+    {0xD8A1, 0x7ACB},+    {0xD8A2, 0x7B20},+    {0xD8A3, 0x7C92},+    {0xD8A4, 0x6469},+    {0xD8A5, 0x746A},+    {0xD8A6, 0x75F2},+    {0xD8A7, 0x78BC},+    {0xD8A8, 0x78E8},+    {0xD8A9, 0x99AC},+    {0xD8AA, 0x9B54},+    {0xD8AB, 0x9EBB},+    {0xD8AC, 0x5BDE},+    {0xD8AD, 0x5E55},+    {0xD8AE, 0x6F20},+    {0xD8AF, 0x819C},+    {0xD8B0, 0x83AB},+    {0xD8B1, 0x9088},+    {0xD8B2, 0x4E07},+    {0xD8B3, 0x534D},+    {0xD8B4, 0x5A29},+    {0xD8B5, 0x5DD2},+    {0xD8B6, 0x5F4E},+    {0xD8B7, 0x6162},+    {0xD8B8, 0x633D},+    {0xD8B9, 0x6669},+    {0xD8BA, 0x66FC},+    {0xD8BB, 0x6EFF},+    {0xD8BC, 0x6F2B},+    {0xD8BD, 0x7063},+    {0xD8BE, 0x779E},+    {0xD8BF, 0x842C},+    {0xD8C0, 0x8513},+    {0xD8C1, 0x883B},+    {0xD8C2, 0x8F13},+    {0xD8C3, 0x9945},+    {0xD8C4, 0x9C3B},+    {0xD8C5, 0x551C},+    {0xD8C6, 0x62B9},+    {0xD8C7, 0x672B},+    {0xD8C8, 0x6CAB},+    {0xD8C9, 0x8309},+    {0xD8CA, 0x896A},+    {0xD8CB, 0x977A},+    {0xD8CC, 0x4EA1},+    {0xD8CD, 0x5984},+    {0xD8CE, 0x5FD8},+    {0xD8CF, 0x5FD9},+    {0xD8D0, 0x671B},+    {0xD8D1, 0x7DB2},+    {0xD8D2, 0x7F54},+    {0xD8D3, 0x8292},+    {0xD8D4, 0x832B},+    {0xD8D5, 0x83BD},+    {0xD8D6, 0x8F1E},+    {0xD8D7, 0x9099},+    {0xD8D8, 0x57CB},+    {0xD8D9, 0x59B9},+    {0xD8DA, 0x5A92},+    {0xD8DB, 0x5BD0},+    {0xD8DC, 0x6627},+    {0xD8DD, 0x679A},+    {0xD8DE, 0x6885},+    {0xD8DF, 0x6BCF},+    {0xD8E0, 0x7164},+    {0xD8E1, 0x7F75},+    {0xD8E2, 0x8CB7},+    {0xD8E3, 0x8CE3},+    {0xD8E4, 0x9081},+    {0xD8E5, 0x9B45},+    {0xD8E6, 0x8108},+    {0xD8E7, 0x8C8A},+    {0xD8E8, 0x964C},+    {0xD8E9, 0x9A40},+    {0xD8EA, 0x9EA5},+    {0xD8EB, 0x5B5F},+    {0xD8EC, 0x6C13},+    {0xD8ED, 0x731B},+    {0xD8EE, 0x76F2},+    {0xD8EF, 0x76DF},+    {0xD8F0, 0x840C},+    {0xD8F1, 0x51AA},+    {0xD8F2, 0x8993},+    {0xD8F3, 0x514D},+    {0xD8F4, 0x5195},+    {0xD8F5, 0x52C9},+    {0xD8F6, 0x68C9},+    {0xD8F7, 0x6C94},+    {0xD8F8, 0x7704},+    {0xD8F9, 0x7720},+    {0xD8FA, 0x7DBF},+    {0xD8FB, 0x7DEC},+    {0xD8FC, 0x9762},+    {0xD8FD, 0x9EB5},+    {0xD8FE, 0x6EC5},+    {0xD9A1, 0x8511},+    {0xD9A2, 0x51A5},+    {0xD9A3, 0x540D},+    {0xD9A4, 0x547D},+    {0xD9A5, 0x660E},+    {0xD9A6, 0x669D},+    {0xD9A7, 0x6927},+    {0xD9A8, 0x6E9F},+    {0xD9A9, 0x76BF},+    {0xD9AA, 0x7791},+    {0xD9AB, 0x8317},+    {0xD9AC, 0x84C2},+    {0xD9AD, 0x879F},+    {0xD9AE, 0x9169},+    {0xD9AF, 0x9298},+    {0xD9B0, 0x9CF4},+    {0xD9B1, 0x8882},+    {0xD9B2, 0x4FAE},+    {0xD9B3, 0x5192},+    {0xD9B4, 0x52DF},+    {0xD9B5, 0x59C6},+    {0xD9B6, 0x5E3D},+    {0xD9B7, 0x6155},+    {0xD9B8, 0x6478},+    {0xD9B9, 0x6479},+    {0xD9BA, 0x66AE},+    {0xD9BB, 0x67D0},+    {0xD9BC, 0x6A21},+    {0xD9BD, 0x6BCD},+    {0xD9BE, 0x6BDB},+    {0xD9BF, 0x725F},+    {0xD9C0, 0x7261},+    {0xD9C1, 0x7441},+    {0xD9C2, 0x7738},+    {0xD9C3, 0x77DB},+    {0xD9C4, 0x8017},+    {0xD9C5, 0x82BC},+    {0xD9C6, 0x8305},+    {0xD9C7, 0x8B00},+    {0xD9C8, 0x8B28},+    {0xD9C9, 0x8C8C},+    {0xD9CA, 0x6728},+    {0xD9CB, 0x6C90},+    {0xD9CC, 0x7267},+    {0xD9CD, 0x76EE},+    {0xD9CE, 0x7766},+    {0xD9CF, 0x7A46},+    {0xD9D0, 0x9DA9},+    {0xD9D1, 0x6B7F},+    {0xD9D2, 0x6C92},+    {0xD9D3, 0x5922},+    {0xD9D4, 0x6726},+    {0xD9D5, 0x8499},+    {0xD9D6, 0x536F},+    {0xD9D7, 0x5893},+    {0xD9D8, 0x5999},+    {0xD9D9, 0x5EDF},+    {0xD9DA, 0x63CF},+    {0xD9DB, 0x6634},+    {0xD9DC, 0x6773},+    {0xD9DD, 0x6E3A},+    {0xD9DE, 0x732B},+    {0xD9DF, 0x7AD7},+    {0xD9E0, 0x82D7},+    {0xD9E1, 0x9328},+    {0xD9E2, 0x52D9},+    {0xD9E3, 0x5DEB},+    {0xD9E4, 0x61AE},+    {0xD9E5, 0x61CB},+    {0xD9E6, 0x620A},+    {0xD9E7, 0x62C7},+    {0xD9E8, 0x64AB},+    {0xD9E9, 0x65E0},+    {0xD9EA, 0x6959},+    {0xD9EB, 0x6B66},+    {0xD9EC, 0x6BCB},+    {0xD9ED, 0x7121},+    {0xD9EE, 0x73F7},+    {0xD9EF, 0x755D},+    {0xD9F0, 0x7E46},+    {0xD9F1, 0x821E},+    {0xD9F2, 0x8302},+    {0xD9F3, 0x856A},+    {0xD9F4, 0x8AA3},+    {0xD9F5, 0x8CBF},+    {0xD9F6, 0x9727},+    {0xD9F7, 0x9D61},+    {0xD9F8, 0x58A8},+    {0xD9F9, 0x9ED8},+    {0xD9FA, 0x5011},+    {0xD9FB, 0x520E},+    {0xD9FC, 0x543B},+    {0xD9FD, 0x554F},+    {0xD9FE, 0x6587},+    {0xDAA1, 0x6C76},+    {0xDAA2, 0x7D0A},+    {0xDAA3, 0x7D0B},+    {0xDAA4, 0x805E},+    {0xDAA5, 0x868A},+    {0xDAA6, 0x9580},+    {0xDAA7, 0x96EF},+    {0xDAA8, 0x52FF},+    {0xDAA9, 0x6C95},+    {0xDAAA, 0x7269},+    {0xDAAB, 0x5473},+    {0xDAAC, 0x5A9A},+    {0xDAAD, 0x5C3E},+    {0xDAAE, 0x5D4B},+    {0xDAAF, 0x5F4C},+    {0xDAB0, 0x5FAE},+    {0xDAB1, 0x672A},+    {0xDAB2, 0x68B6},+    {0xDAB3, 0x6963},+    {0xDAB4, 0x6E3C},+    {0xDAB5, 0x6E44},+    {0xDAB6, 0x7709},+    {0xDAB7, 0x7C73},+    {0xDAB8, 0x7F8E},+    {0xDAB9, 0x8587},+    {0xDABA, 0x8B0E},+    {0xDABB, 0x8FF7},+    {0xDABC, 0x9761},+    {0xDABD, 0x9EF4},+    {0xDABE, 0x5CB7},+    {0xDABF, 0x60B6},+    {0xDAC0, 0x610D},+    {0xDAC1, 0x61AB},+    {0xDAC2, 0x654F},+    {0xDAC3, 0x65FB},+    {0xDAC4, 0x65FC},+    {0xDAC5, 0x6C11},+    {0xDAC6, 0x6CEF},+    {0xDAC7, 0x739F},+    {0xDAC8, 0x73C9},+    {0xDAC9, 0x7DE1},+    {0xDACA, 0x9594},+    {0xDACB, 0x5BC6},+    {0xDACC, 0x871C},+    {0xDACD, 0x8B10},+    {0xDACE, 0x525D},+    {0xDACF, 0x535A},+    {0xDAD0, 0x62CD},+    {0xDAD1, 0x640F},+    {0xDAD2, 0x64B2},+    {0xDAD3, 0x6734},+    {0xDAD4, 0x6A38},+    {0xDAD5, 0x6CCA},+    {0xDAD6, 0x73C0},+    {0xDAD7, 0x749E},+    {0xDAD8, 0x7B94},+    {0xDAD9, 0x7C95},+    {0xDADA, 0x7E1B},+    {0xDADB, 0x818A},+    {0xDADC, 0x8236},+    {0xDADD, 0x8584},+    {0xDADE, 0x8FEB},+    {0xDADF, 0x96F9},+    {0xDAE0, 0x99C1},+    {0xDAE1, 0x4F34},+    {0xDAE2, 0x534A},+    {0xDAE3, 0x53CD},+    {0xDAE4, 0x53DB},+    {0xDAE5, 0x62CC},+    {0xDAE6, 0x642C},+    {0xDAE7, 0x6500},+    {0xDAE8, 0x6591},+    {0xDAE9, 0x69C3},+    {0xDAEA, 0x6CEE},+    {0xDAEB, 0x6F58},+    {0xDAEC, 0x73ED},+    {0xDAED, 0x7554},+    {0xDAEE, 0x7622},+    {0xDAEF, 0x76E4},+    {0xDAF0, 0x76FC},+    {0xDAF1, 0x78D0},+    {0xDAF2, 0xF964},+    {0xDAF3, 0x792C},+    {0xDAF4, 0x7D46},+    {0xDAF5, 0x822C},+    {0xDAF6, 0x87E0},+    {0xDAF7, 0x8FD4},+    {0xDAF8, 0x9812},+    {0xDAF9, 0x98EF},+    {0xDAFA, 0x52C3},+    {0xDAFB, 0x62D4},+    {0xDAFC, 0x64A5},+    {0xDAFD, 0x6E24},+    {0xDAFE, 0x6F51},+    {0xDBA1, 0x767C},+    {0xDBA2, 0x8DCB},+    {0xDBA3, 0x91B1},+    {0xDBA4, 0x9262},+    {0xDBA5, 0x9AEE},+    {0xDBA6, 0x9B43},+    {0xDBA7, 0x5023},+    {0xDBA8, 0x508D},+    {0xDBA9, 0x574A},+    {0xDBAA, 0x59A8},+    {0xDBAB, 0x5C28},+    {0xDBAC, 0x5E47},+    {0xDBAD, 0x5F77},+    {0xDBAE, 0x623F},+    {0xDBAF, 0x653E},+    {0xDBB0, 0x65B9},+    {0xDBB1, 0x65C1},+    {0xDBB2, 0x6609},+    {0xDBB3, 0x678B},+    {0xDBB4, 0x699C},+    {0xDBB5, 0x6EC2},+    {0xDBB6, 0x78C5},+    {0xDBB7, 0x7D21},+    {0xDBB8, 0x80AA},+    {0xDBB9, 0x8180},+    {0xDBBA, 0x822B},+    {0xDBBB, 0x82B3},+    {0xDBBC, 0x84A1},+    {0xDBBD, 0x868C},+    {0xDBBE, 0x8A2A},+    {0xDBBF, 0x8B17},+    {0xDBC0, 0x90A6},+    {0xDBC1, 0x9632},+    {0xDBC2, 0x9F90},+    {0xDBC3, 0x500D},+    {0xDBC4, 0x4FF3},+    {0xDBC5, 0x5317},+    {0xDBC6, 0x57F9},+    {0xDBC7, 0x5F98},+    {0xDBC8, 0x62DC},+    {0xDBC9, 0x6392},+    {0xDBCA, 0x676F},+    {0xDBCB, 0x6E43},+    {0xDBCC, 0x7119},+    {0xDBCD, 0x76C3},+    {0xDBCE, 0x80CC},+    {0xDBCF, 0x80DA},+    {0xDBD0, 0x88F4},+    {0xDBD1, 0x88F5},+    {0xDBD2, 0x8919},+    {0xDBD3, 0x8CE0},+    {0xDBD4, 0x8F29},+    {0xDBD5, 0x914D},+    {0xDBD6, 0x966A},+    {0xDBD7, 0x4F2F},+    {0xDBD8, 0x4F70},+    {0xDBD9, 0x5E1B},+    {0xDBDA, 0x67CF},+    {0xDBDB, 0x6822},+    {0xDBDC, 0x767D},+    {0xDBDD, 0x767E},+    {0xDBDE, 0x9B44},+    {0xDBDF, 0x5E61},+    {0xDBE0, 0x6A0A},+    {0xDBE1, 0x7169},+    {0xDBE2, 0x71D4},+    {0xDBE3, 0x756A},+    {0xDBE4, 0xF964},+    {0xDBE5, 0x7E41},+    {0xDBE6, 0x8543},+    {0xDBE7, 0x85E9},+    {0xDBE8, 0x98DC},+    {0xDBE9, 0x4F10},+    {0xDBEA, 0x7B4F},+    {0xDBEB, 0x7F70},+    {0xDBEC, 0x95A5},+    {0xDBED, 0x51E1},+    {0xDBEE, 0x5E06},+    {0xDBEF, 0x68B5},+    {0xDBF0, 0x6C3E},+    {0xDBF1, 0x6C4E},+    {0xDBF2, 0x6CDB},+    {0xDBF3, 0x72AF},+    {0xDBF4, 0x7BC4},+    {0xDBF5, 0x8303},+    {0xDBF6, 0x6CD5},+    {0xDBF7, 0x743A},+    {0xDBF8, 0x50FB},+    {0xDBF9, 0x5288},+    {0xDBFA, 0x58C1},+    {0xDBFB, 0x64D8},+    {0xDBFC, 0x6A97},+    {0xDBFD, 0x74A7},+    {0xDBFE, 0x7656},+    {0xDCA1, 0x78A7},+    {0xDCA2, 0x8617},+    {0xDCA3, 0x95E2},+    {0xDCA4, 0x9739},+    {0xDCA5, 0xF965},+    {0xDCA6, 0x535E},+    {0xDCA7, 0x5F01},+    {0xDCA8, 0x8B8A},+    {0xDCA9, 0x8FA8},+    {0xDCAA, 0x8FAF},+    {0xDCAB, 0x908A},+    {0xDCAC, 0x5225},+    {0xDCAD, 0x77A5},+    {0xDCAE, 0x9C49},+    {0xDCAF, 0x9F08},+    {0xDCB0, 0x4E19},+    {0xDCB1, 0x5002},+    {0xDCB2, 0x5175},+    {0xDCB3, 0x5C5B},+    {0xDCB4, 0x5E77},+    {0xDCB5, 0x661E},+    {0xDCB6, 0x663A},+    {0xDCB7, 0x67C4},+    {0xDCB8, 0x68C5},+    {0xDCB9, 0x70B3},+    {0xDCBA, 0x7501},+    {0xDCBB, 0x75C5},+    {0xDCBC, 0x79C9},+    {0xDCBD, 0x7ADD},+    {0xDCBE, 0x8F27},+    {0xDCBF, 0x9920},+    {0xDCC0, 0x9A08},+    {0xDCC1, 0x4FDD},+    {0xDCC2, 0x5821},+    {0xDCC3, 0x5831},+    {0xDCC4, 0x5BF6},+    {0xDCC5, 0x666E},+    {0xDCC6, 0x6B65},+    {0xDCC7, 0x6D11},+    {0xDCC8, 0x6E7A},+    {0xDCC9, 0x6F7D},+    {0xDCCA, 0x73E4},+    {0xDCCB, 0x752B},+    {0xDCCC, 0x83E9},+    {0xDCCD, 0x88DC},+    {0xDCCE, 0x8913},+    {0xDCCF, 0x8B5C},+    {0xDCD0, 0x8F14},+    {0xDCD1, 0x4F0F},+    {0xDCD2, 0x50D5},+    {0xDCD3, 0x5310},+    {0xDCD4, 0x535C},+    {0xDCD5, 0x5B93},+    {0xDCD6, 0xF966},+    {0xDCD7, 0x670D},+    {0xDCD8, 0x798F},+    {0xDCD9, 0x8179},+    {0xDCDA, 0x832F},+    {0xDCDB, 0x8514},+    {0xDCDC, 0x8907},+    {0xDCDD, 0x8986},+    {0xDCDE, 0x8F39},+    {0xDCDF, 0x8F3B},+    {0xDCE0, 0x99A5},+    {0xDCE1, 0x9C12},+    {0xDCE2, 0x672C},+    {0xDCE3, 0x4E76},+    {0xDCE4, 0x4FF8},+    {0xDCE5, 0x5949},+    {0xDCE6, 0x5C01},+    {0xDCE7, 0x5CEF},+    {0xDCE8, 0x5CF0},+    {0xDCE9, 0x6367},+    {0xDCEA, 0x68D2},+    {0xDCEB, 0x70FD},+    {0xDCEC, 0x71A2},+    {0xDCED, 0x742B},+    {0xDCEE, 0x7E2B},+    {0xDCEF, 0x84EC},+    {0xDCF0, 0x8702},+    {0xDCF1, 0x9022},+    {0xDCF2, 0x92D2},+    {0xDCF3, 0x9CF3},+    {0xDCF4, 0xF967},+    {0xDCF5, 0x4ED8},+    {0xDCF6, 0x4FEF},+    {0xDCF7, 0x5085},+    {0xDCF8, 0x5256},+    {0xDCF9, 0x526F},+    {0xDCFA, 0x5426},+    {0xDCFB, 0x5490},+    {0xDCFC, 0x57E0},+    {0xDCFD, 0x592B},+    {0xDCFE, 0x5A66},+    {0xDDA1, 0x5B5A},+    {0xDDA2, 0x5B75},+    {0xDDA3, 0x5BCC},+    {0xDDA4, 0x5E9C},+    {0xDDA5, 0xF966},+    {0xDDA6, 0x6276},+    {0xDDA7, 0x6577},+    {0xDDA8, 0x65A7},+    {0xDDA9, 0x6D6E},+    {0xDDAA, 0x6EA5},+    {0xDDAB, 0x7236},+    {0xDDAC, 0x7B26},+    {0xDDAD, 0x7C3F},+    {0xDDAE, 0x7F36},+    {0xDDAF, 0x8150},+    {0xDDB0, 0x8151},+    {0xDDB1, 0x819A},+    {0xDDB2, 0x8240},+    {0xDDB3, 0x8299},+    {0xDDB4, 0x83A9},+    {0xDDB5, 0x8A03},+    {0xDDB6, 0x8CA0},+    {0xDDB7, 0x8CE6},+    {0xDDB8, 0x8CFB},+    {0xDDB9, 0x8D74},+    {0xDDBA, 0x8DBA},+    {0xDDBB, 0x90E8},+    {0xDDBC, 0x91DC},+    {0xDDBD, 0x961C},+    {0xDDBE, 0x9644},+    {0xDDBF, 0x99D9},+    {0xDDC0, 0x9CE7},+    {0xDDC1, 0x5317},+    {0xDDC2, 0x5206},+    {0xDDC3, 0x5429},+    {0xDDC4, 0x5674},+    {0xDDC5, 0x58B3},+    {0xDDC6, 0x5954},+    {0xDDC7, 0x596E},+    {0xDDC8, 0x5FFF},+    {0xDDC9, 0x61A4},+    {0xDDCA, 0x626E},+    {0xDDCB, 0x6610},+    {0xDDCC, 0x6C7E},+    {0xDDCD, 0x711A},+    {0xDDCE, 0x76C6},+    {0xDDCF, 0x7C89},+    {0xDDD0, 0x7CDE},+    {0xDDD1, 0x7D1B},+    {0xDDD2, 0x82AC},+    {0xDDD3, 0x8CC1},+    {0xDDD4, 0x96F0},+    {0xDDD5, 0xF967},+    {0xDDD6, 0x4F5B},+    {0xDDD7, 0x5F17},+    {0xDDD8, 0x5F7F},+    {0xDDD9, 0x62C2},+    {0xDDDA, 0x5D29},+    {0xDDDB, 0x670B},+    {0xDDDC, 0x68DA},+    {0xDDDD, 0x787C},+    {0xDDDE, 0x7E43},+    {0xDDDF, 0x9D6C},+    {0xDDE0, 0x4E15},+    {0xDDE1, 0x5099},+    {0xDDE2, 0x5315},+    {0xDDE3, 0x532A},+    {0xDDE4, 0x5351},+    {0xDDE5, 0x5983},+    {0xDDE6, 0x5A62},+    {0xDDE7, 0x5E87},+    {0xDDE8, 0x60B2},+    {0xDDE9, 0x618A},+    {0xDDEA, 0x6249},+    {0xDDEB, 0x6279},+    {0xDDEC, 0x6590},+    {0xDDED, 0x6787},+    {0xDDEE, 0x69A7},+    {0xDDEF, 0x6BD4},+    {0xDDF0, 0x6BD6},+    {0xDDF1, 0x6BD7},+    {0xDDF2, 0x6BD8},+    {0xDDF3, 0x6CB8},+    {0xDDF4, 0x6CCC},+    {0xDDF5, 0x7435},+    {0xDDF6, 0x75FA},+    {0xDDF7, 0x7812},+    {0xDDF8, 0x7891},+    {0xDDF9, 0x79D5},+    {0xDDFA, 0x79D8},+    {0xDDFB, 0x7C83},+    {0xDDFC, 0x7DCB},+    {0xDDFD, 0x7FE1},+    {0xDDFE, 0x80A5},+    {0xDEA1, 0x813E},+    {0xDEA2, 0x81C2},+    {0xDEA3, 0x83F2},+    {0xDEA4, 0x871A},+    {0xDEA5, 0x88E8},+    {0xDEA6, 0x8AB9},+    {0xDEA7, 0x8B6C},+    {0xDEA8, 0x8CBB},+    {0xDEA9, 0x9119},+    {0xDEAA, 0x975E},+    {0xDEAB, 0x98DB},+    {0xDEAC, 0x9F3B},+    {0xDEAD, 0x56AC},+    {0xDEAE, 0x5B2A},+    {0xDEAF, 0x5F6C},+    {0xDEB0, 0x658C},+    {0xDEB1, 0x6AB3},+    {0xDEB2, 0x6BAF},+    {0xDEB3, 0x6D5C},+    {0xDEB4, 0x6FF1},+    {0xDEB5, 0x7015},+    {0xDEB6, 0x725D},+    {0xDEB7, 0x73AD},+    {0xDEB8, 0x8CA7},+    {0xDEB9, 0x8CD3},+    {0xDEBA, 0x983B},+    {0xDEBB, 0x6191},+    {0xDEBC, 0x6C37},+    {0xDEBD, 0x8058},+    {0xDEBE, 0x9A01},+    {0xDEBF, 0x4E4D},+    {0xDEC0, 0x4E8B},+    {0xDEC1, 0x4E9B},+    {0xDEC2, 0x4ED5},+    {0xDEC3, 0x4F3A},+    {0xDEC4, 0x4F3C},+    {0xDEC5, 0x4F7F},+    {0xDEC6, 0x4FDF},+    {0xDEC7, 0x50FF},+    {0xDEC8, 0x53F2},+    {0xDEC9, 0x53F8},+    {0xDECA, 0x5506},+    {0xDECB, 0x55E3},+    {0xDECC, 0x56DB},+    {0xDECD, 0x58EB},+    {0xDECE, 0x5962},+    {0xDECF, 0x5A11},+    {0xDED0, 0x5BEB},+    {0xDED1, 0x5BFA},+    {0xDED2, 0x5C04},+    {0xDED3, 0x5DF3},+    {0xDED4, 0x5E2B},+    {0xDED5, 0x5F99},+    {0xDED6, 0x601D},+    {0xDED7, 0x6368},+    {0xDED8, 0x659C},+    {0xDED9, 0x65AF},+    {0xDEDA, 0x67F6},+    {0xDEDB, 0x67FB},+    {0xDEDC, 0x68AD},+    {0xDEDD, 0x6B7B},+    {0xDEDE, 0x6C99},+    {0xDEDF, 0x6CD7},+    {0xDEE0, 0x6E23},+    {0xDEE1, 0x7009},+    {0xDEE2, 0x7345},+    {0xDEE3, 0x7802},+    {0xDEE4, 0x793E},+    {0xDEE5, 0x7940},+    {0xDEE6, 0x7960},+    {0xDEE7, 0x79C1},+    {0xDEE8, 0x7BE9},+    {0xDEE9, 0x7D17},+    {0xDEEA, 0x7D72},+    {0xDEEB, 0x8086},+    {0xDEEC, 0x820D},+    {0xDEED, 0x838E},+    {0xDEEE, 0x84D1},+    {0xDEEF, 0x86C7},+    {0xDEF0, 0x88DF},+    {0xDEF1, 0x8A50},+    {0xDEF2, 0x8A5E},+    {0xDEF3, 0x8B1D},+    {0xDEF4, 0x8CDC},+    {0xDEF5, 0x8D66},+    {0xDEF6, 0x8FAD},+    {0xDEF7, 0x90AA},+    {0xDEF8, 0x98FC},+    {0xDEF9, 0x99DF},+    {0xDEFA, 0x9E9D},+    {0xDEFB, 0x524A},+    {0xDEFC, 0x6578},+    {0xDEFD, 0x6714},+    {0xDEFE, 0x7D22},+    {0xDFA1, 0x5098},+    {0xDFA2, 0x522A},+    {0xDFA3, 0x5C71},+    {0xDFA4, 0x6563},+    {0xDFA5, 0x6C55},+    {0xDFA6, 0x73CA},+    {0xDFA7, 0x7523},+    {0xDFA8, 0x759D},+    {0xDFA9, 0x7B97},+    {0xDFAA, 0x849C},+    {0xDFAB, 0x9178},+    {0xDFAC, 0x9730},+    {0xDFAD, 0x4E77},+    {0xDFAE, 0x6492},+    {0xDFAF, 0x6BBA},+    {0xDFB0, 0x715E},+    {0xDFB1, 0x85A9},+    {0xDFB2, 0x4E09},+    {0xDFB3, 0xF96B},+    {0xDFB4, 0x6749},+    {0xDFB5, 0x68EE},+    {0xDFB6, 0x6E17},+    {0xDFB7, 0x829F},+    {0xDFB8, 0x8518},+    {0xDFB9, 0x886B},+    {0xDFBA, 0x63F7},+    {0xDFBB, 0x6F81},+    {0xDFBC, 0x9212},+    {0xDFBD, 0x98AF},+    {0xDFBE, 0x4E0A},+    {0xDFBF, 0x50B7},+    {0xDFC0, 0x50CF},+    {0xDFC1, 0x511F},+    {0xDFC2, 0x5546},+    {0xDFC3, 0x55AA},+    {0xDFC4, 0x5617},+    {0xDFC5, 0x5B40},+    {0xDFC6, 0x5C19},+    {0xDFC7, 0x5CE0},+    {0xDFC8, 0x5E38},+    {0xDFC9, 0x5E8A},+    {0xDFCA, 0x5EA0},+    {0xDFCB, 0x5EC2},+    {0xDFCC, 0x60F3},+    {0xDFCD, 0x6851},+    {0xDFCE, 0x6A61},+    {0xDFCF, 0x6E58},+    {0xDFD0, 0x723D},+    {0xDFD1, 0x7240},+    {0xDFD2, 0x72C0},+    {0xDFD3, 0x76F8},+    {0xDFD4, 0x7965},+    {0xDFD5, 0x7BB1},+    {0xDFD6, 0x7FD4},+    {0xDFD7, 0x88F3},+    {0xDFD8, 0x89F4},+    {0xDFD9, 0x8A73},+    {0xDFDA, 0x8C61},+    {0xDFDB, 0x8CDE},+    {0xDFDC, 0x971C},+    {0xDFDD, 0x585E},+    {0xDFDE, 0x74BD},+    {0xDFDF, 0x8CFD},+    {0xDFE0, 0x55C7},+    {0xDFE1, 0x585E},+    {0xDFE2, 0x7A61},+    {0xDFE3, 0x7D22},+    {0xDFE4, 0x8272},+    {0xDFE5, 0x7272},+    {0xDFE6, 0x751F},+    {0xDFE7, 0x7525},+    {0xDFE8, 0xF96D},+    {0xDFE9, 0x7B19},+    {0xDFEA, 0x5885},+    {0xDFEB, 0x58FB},+    {0xDFEC, 0x5DBC},+    {0xDFED, 0x5E8F},+    {0xDFEE, 0x5EB6},+    {0xDFEF, 0x5F90},+    {0xDFF0, 0x6055},+    {0xDFF1, 0x6292},+    {0xDFF2, 0x637F},+    {0xDFF3, 0x654D},+    {0xDFF4, 0x6691},+    {0xDFF5, 0x66D9},+    {0xDFF6, 0x66F8},+    {0xDFF7, 0x6816},+    {0xDFF8, 0x68F2},+    {0xDFF9, 0x7280},+    {0xDFFA, 0x745E},+    {0xDFFB, 0x7B6E},+    {0xDFFC, 0x7D6E},+    {0xDFFD, 0x7DD6},+    {0xDFFE, 0x7F72},+    {0xE0A1, 0x80E5},+    {0xE0A2, 0x8212},+    {0xE0A3, 0x85AF},+    {0xE0A4, 0x897F},+    {0xE0A5, 0x8A93},+    {0xE0A6, 0x901D},+    {0xE0A7, 0x92E4},+    {0xE0A8, 0x9ECD},+    {0xE0A9, 0x9F20},+    {0xE0AA, 0x5915},+    {0xE0AB, 0x596D},+    {0xE0AC, 0x5E2D},+    {0xE0AD, 0x60DC},+    {0xE0AE, 0x6614},+    {0xE0AF, 0x6673},+    {0xE0B0, 0x6790},+    {0xE0B1, 0x6C50},+    {0xE0B2, 0x6DC5},+    {0xE0B3, 0x6F5F},+    {0xE0B4, 0x77F3},+    {0xE0B5, 0x78A9},+    {0xE0B6, 0x84C6},+    {0xE0B7, 0x91CB},+    {0xE0B8, 0x932B},+    {0xE0B9, 0x4ED9},+    {0xE0BA, 0x50CA},+    {0xE0BB, 0x5148},+    {0xE0BC, 0x5584},+    {0xE0BD, 0x5B0B},+    {0xE0BE, 0x5BA3},+    {0xE0BF, 0x6247},+    {0xE0C0, 0x657E},+    {0xE0C1, 0x65CB},+    {0xE0C2, 0x6E32},+    {0xE0C3, 0x717D},+    {0xE0C4, 0x7401},+    {0xE0C5, 0x7444},+    {0xE0C6, 0x7487},+    {0xE0C7, 0x74BF},+    {0xE0C8, 0x766C},+    {0xE0C9, 0x79AA},+    {0xE0CA, 0x7DDA},+    {0xE0CB, 0x7E55},+    {0xE0CC, 0x7FA8},+    {0xE0CD, 0x817A},+    {0xE0CE, 0x81B3},+    {0xE0CF, 0x8239},+    {0xE0D0, 0x861A},+    {0xE0D1, 0x87EC},+    {0xE0D2, 0x8A75},+    {0xE0D3, 0x8DE3},+    {0xE0D4, 0x9078},+    {0xE0D5, 0x9291},+    {0xE0D6, 0x9425},+    {0xE0D7, 0x994D},+    {0xE0D8, 0x9BAE},+    {0xE0D9, 0x5368},+    {0xE0DA, 0x5C51},+    {0xE0DB, 0x6954},+    {0xE0DC, 0x6CC4},+    {0xE0DD, 0x6D29},+    {0xE0DE, 0x6E2B},+    {0xE0DF, 0x820C},+    {0xE0E0, 0x859B},+    {0xE0E1, 0x893B},+    {0xE0E2, 0x8A2D},+    {0xE0E3, 0xF96F},+    {0xE0E4, 0x96EA},+    {0xE0E5, 0x9F67},+    {0xE0E6, 0x5261},+    {0xE0E7, 0x66B9},+    {0xE0E8, 0x6BB2},+    {0xE0E9, 0x7E96},+    {0xE0EA, 0x87FE},+    {0xE0EB, 0x8D0D},+    {0xE0EC, 0x9583},+    {0xE0ED, 0x965D},+    {0xE0EE, 0x651D},+    {0xE0EF, 0x6D89},+    {0xE0F0, 0x71EE},+    {0xE0F1, 0x8449},+    {0xE0F2, 0x57CE},+    {0xE0F3, 0x59D3},+    {0xE0F4, 0x5BAC},+    {0xE0F5, 0x6027},+    {0xE0F6, 0x60FA},+    {0xE0F7, 0x6210},+    {0xE0F8, 0x661F},+    {0xE0F9, 0x665F},+    {0xE0FA, 0x7329},+    {0xE0FB, 0x73F9},+    {0xE0FC, 0x76DB},+    {0xE0FD, 0xF96D},+    {0xE0FE, 0x7B6C},+    {0xE1A1, 0x8056},+    {0xE1A2, 0x8072},+    {0xE1A3, 0x8165},+    {0xE1A4, 0x8AA0},+    {0xE1A5, 0x9192},+    {0xE1A6, 0x4E16},+    {0xE1A7, 0x52E2},+    {0xE1A8, 0x6B72},+    {0xE1A9, 0x6D17},+    {0xE1AA, 0x7A05},+    {0xE1AB, 0x7B39},+    {0xE1AC, 0x7D30},+    {0xE1AD, 0xF96F},+    {0xE1AE, 0x8CB0},+    {0xE1AF, 0x53EC},+    {0xE1B0, 0x562F},+    {0xE1B1, 0x5851},+    {0xE1B2, 0x5BB5},+    {0xE1B3, 0x5C0F},+    {0xE1B4, 0x5C11},+    {0xE1B5, 0x5DE2},+    {0xE1B6, 0x6240},+    {0xE1B7, 0x6383},+    {0xE1B8, 0x6414},+    {0xE1B9, 0x662D},+    {0xE1BA, 0x68B3},+    {0xE1BB, 0x6CBC},+    {0xE1BC, 0x6D88},+    {0xE1BD, 0x6EAF},+    {0xE1BE, 0x701F},+    {0xE1BF, 0x70A4},+    {0xE1C0, 0x71D2},+    {0xE1C1, 0x7526},+    {0xE1C2, 0x758F},+    {0xE1C3, 0x758E},+    {0xE1C4, 0x7619},+    {0xE1C5, 0x7B11},+    {0xE1C6, 0x7BE0},+    {0xE1C7, 0x7C2B},+    {0xE1C8, 0x7D20},+    {0xE1C9, 0x7D39},+    {0xE1CA, 0x852C},+    {0xE1CB, 0x856D},+    {0xE1CC, 0x8607},+    {0xE1CD, 0x8A34},+    {0xE1CE, 0x900D},+    {0xE1CF, 0x9061},+    {0xE1D0, 0x90B5},+    {0xE1D1, 0x92B7},+    {0xE1D2, 0x97F6},+    {0xE1D3, 0x9A37},+    {0xE1D4, 0x4FD7},+    {0xE1D5, 0x5C6C},+    {0xE1D6, 0x675F},+    {0xE1D7, 0x6D91},+    {0xE1D8, 0x7C9F},+    {0xE1D9, 0x7E8C},+    {0xE1DA, 0x8B16},+    {0xE1DB, 0x8D16},+    {0xE1DC, 0x901F},+    {0xE1DD, 0x5B6B},+    {0xE1DE, 0x5DFD},+    {0xE1DF, 0x640D},+    {0xE1E0, 0x84C0},+    {0xE1E1, 0x905C},+    {0xE1E2, 0x98E1},+    {0xE1E3, 0xF961},+    {0xE1E4, 0x5B8B},+    {0xE1E5, 0x609A},+    {0xE1E6, 0x677E},+    {0xE1E7, 0x6DDE},+    {0xE1E8, 0x8A1F},+    {0xE1E9, 0x8AA6},+    {0xE1EA, 0x9001},+    {0xE1EB, 0x980C},+    {0xE1EC, 0x5237},+    {0xE1ED, 0x6BBA},+    {0xE1EE, 0x7051},+    {0xE1EF, 0x788E},+    {0xE1F0, 0x9396},+    {0xE1F1, 0x8870},+    {0xE1F2, 0x91D7},+    {0xE1F3, 0x4FEE},+    {0xE1F4, 0x53D7},+    {0xE1F5, 0x55FD},+    {0xE1F6, 0x56DA},+    {0xE1F7, 0x5782},+    {0xE1F8, 0x58FD},+    {0xE1F9, 0x5AC2},+    {0xE1FA, 0x5B88},+    {0xE1FB, 0x5CAB},+    {0xE1FC, 0x5CC0},+    {0xE1FD, 0x5E25},+    {0xE1FE, 0x6101},+    {0xE2A1, 0x620D},+    {0xE2A2, 0x624B},+    {0xE2A3, 0x6388},+    {0xE2A4, 0x641C},+    {0xE2A5, 0x6536},+    {0xE2A6, 0x6578},+    {0xE2A7, 0x6A39},+    {0xE2A8, 0x6B8A},+    {0xE2A9, 0x6C34},+    {0xE2AA, 0x6D19},+    {0xE2AB, 0x6F31},+    {0xE2AC, 0x71E7},+    {0xE2AD, 0x72E9},+    {0xE2AE, 0x7378},+    {0xE2AF, 0x7407},+    {0xE2B0, 0x74B2},+    {0xE2B1, 0x7626},+    {0xE2B2, 0x7761},+    {0xE2B3, 0x79C0},+    {0xE2B4, 0x7A57},+    {0xE2B5, 0x7AEA},+    {0xE2B6, 0x7CB9},+    {0xE2B7, 0x7D8F},+    {0xE2B8, 0x7DAC},+    {0xE2B9, 0x7E61},+    {0xE2BA, 0x7F9E},+    {0xE2BB, 0x8129},+    {0xE2BC, 0x8331},+    {0xE2BD, 0x8490},+    {0xE2BE, 0x84DA},+    {0xE2BF, 0x85EA},+    {0xE2C0, 0x8896},+    {0xE2C1, 0x8AB0},+    {0xE2C2, 0x8B90},+    {0xE2C3, 0x8F38},+    {0xE2C4, 0x9042},+    {0xE2C5, 0x9083},+    {0xE2C6, 0x916C},+    {0xE2C7, 0x9296},+    {0xE2C8, 0x92B9},+    {0xE2C9, 0x968B},+    {0xE2CA, 0x96A7},+    {0xE2CB, 0x96A8},+    {0xE2CC, 0x96D6},+    {0xE2CD, 0x9700},+    {0xE2CE, 0x9808},+    {0xE2CF, 0x9996},+    {0xE2D0, 0x9AD3},+    {0xE2D1, 0x9B1A},+    {0xE2D2, 0x53D4},+    {0xE2D3, 0x587E},+    {0xE2D4, 0x5919},+    {0xE2D5, 0x5B70},+    {0xE2D6, 0x5BBF},+    {0xE2D7, 0x6DD1},+    {0xE2D8, 0x6F5A},+    {0xE2D9, 0x719F},+    {0xE2DA, 0x7421},+    {0xE2DB, 0x74B9},+    {0xE2DC, 0x8085},+    {0xE2DD, 0x83FD},+    {0xE2DE, 0x5DE1},+    {0xE2DF, 0x5F87},+    {0xE2E0, 0x5FAA},+    {0xE2E1, 0x6042},+    {0xE2E2, 0x65EC},+    {0xE2E3, 0x6812},+    {0xE2E4, 0x696F},+    {0xE2E5, 0x6A53},+    {0xE2E6, 0x6B89},+    {0xE2E7, 0x6D35},+    {0xE2E8, 0x6DF3},+    {0xE2E9, 0x73E3},+    {0xE2EA, 0x76FE},+    {0xE2EB, 0x77AC},+    {0xE2EC, 0x7B4D},+    {0xE2ED, 0x7D14},+    {0xE2EE, 0x8123},+    {0xE2EF, 0x821C},+    {0xE2F0, 0x8340},+    {0xE2F1, 0x84F4},+    {0xE2F2, 0x8563},+    {0xE2F3, 0x8A62},+    {0xE2F4, 0x8AC4},+    {0xE2F5, 0x9187},+    {0xE2F6, 0x931E},+    {0xE2F7, 0x9806},+    {0xE2F8, 0x99B4},+    {0xE2F9, 0x620C},+    {0xE2FA, 0x8853},+    {0xE2FB, 0x8FF0},+    {0xE2FC, 0x9265},+    {0xE2FD, 0x5D07},+    {0xE2FE, 0x5D27},+    {0xE3A1, 0x5D69},+    {0xE3A2, 0x745F},+    {0xE3A3, 0x819D},+    {0xE3A4, 0x8768},+    {0xE3A5, 0x6FD5},+    {0xE3A6, 0x62FE},+    {0xE3A7, 0x7FD2},+    {0xE3A8, 0x8936},+    {0xE3A9, 0x8972},+    {0xE3AA, 0x4E1E},+    {0xE3AB, 0x4E58},+    {0xE3AC, 0x50E7},+    {0xE3AD, 0x52DD},+    {0xE3AE, 0x5347},+    {0xE3AF, 0x627F},+    {0xE3B0, 0x6607},+    {0xE3B1, 0x7E69},+    {0xE3B2, 0x8805},+    {0xE3B3, 0x965E},+    {0xE3B4, 0x4F8D},+    {0xE3B5, 0x5319},+    {0xE3B6, 0x5636},+    {0xE3B7, 0x59CB},+    {0xE3B8, 0x5AA4},+    {0xE3B9, 0x5C38},+    {0xE3BA, 0x5C4E},+    {0xE3BB, 0x5C4D},+    {0xE3BC, 0x5E02},+    {0xE3BD, 0x5F11},+    {0xE3BE, 0x6043},+    {0xE3BF, 0x65BD},+    {0xE3C0, 0x662F},+    {0xE3C1, 0x6642},+    {0xE3C2, 0x67BE},+    {0xE3C3, 0x67F4},+    {0xE3C4, 0x731C},+    {0xE3C5, 0x77E2},+    {0xE3C6, 0x793A},+    {0xE3C7, 0x7FC5},+    {0xE3C8, 0x8494},+    {0xE3C9, 0x84CD},+    {0xE3CA, 0x8996},+    {0xE3CB, 0x8A66},+    {0xE3CC, 0x8A69},+    {0xE3CD, 0x8AE1},+    {0xE3CE, 0x8C55},+    {0xE3CF, 0x8C7A},+    {0xE3D0, 0x57F4},+    {0xE3D1, 0x5BD4},+    {0xE3D2, 0x5F0F},+    {0xE3D3, 0x606F},+    {0xE3D4, 0x62ED},+    {0xE3D5, 0x690D},+    {0xE3D6, 0x6B96},+    {0xE3D7, 0x6E5C},+    {0xE3D8, 0x7184},+    {0xE3D9, 0x7BD2},+    {0xE3DA, 0x8755},+    {0xE3DB, 0xF9FC},+    {0xE3DC, 0x8EFE},+    {0xE3DD, 0x98DF},+    {0xE3DE, 0x98FE},+    {0xE3DF, 0x4F38},+    {0xE3E0, 0x4F81},+    {0xE3E1, 0x4FE1},+    {0xE3E2, 0x547B},+    {0xE3E3, 0x5A20},+    {0xE3E4, 0x5BB8},+    {0xE3E5, 0x613C},+    {0xE3E6, 0x65B0},+    {0xE3E7, 0x6668},+    {0xE3E8, 0x71FC},+    {0xE3E9, 0x7533},+    {0xE3EA, 0x795E},+    {0xE3EB, 0x7D33},+    {0xE3EC, 0x814E},+    {0xE3ED, 0x81E3},+    {0xE3EE, 0x8398},+    {0xE3EF, 0x85AA},+    {0xE3F0, 0x85CE},+    {0xE3F1, 0x8703},+    {0xE3F2, 0x8A0A},+    {0xE3F3, 0x8EAB},+    {0xE3F4, 0x8F9B},+    {0xE3F5, 0x8FB0},+    {0xE3F6, 0x8FC5},+    {0xE3F7, 0x5931},+    {0xE3F8, 0x5BA4},+    {0xE3F9, 0x5BE6},+    {0xE3FA, 0x6089},+    {0xE3FB, 0x5BE9},+    {0xE3FC, 0x5C0B},+    {0xE3FD, 0x5FC3},+    {0xE3FE, 0x6C81},+    {0xE4A1, 0xF972},+    {0xE4A2, 0x6DF1},+    {0xE4A3, 0x700B},+    {0xE4A4, 0x751A},+    {0xE4A5, 0x82AF},+    {0xE4A6, 0x8AF6},+    {0xE4A7, 0x4EC0},+    {0xE4A8, 0x5341},+    {0xE4A9, 0x62FE},+    {0xE4AA, 0x96D9},+    {0xE4AB, 0x6C0F},+    {0xE4AC, 0x4E9E},+    {0xE4AD, 0x4FC4},+    {0xE4AE, 0x5152},+    {0xE4AF, 0x555E},+    {0xE4B0, 0x5A25},+    {0xE4B1, 0x5CE8},+    {0xE4B2, 0x6211},+    {0xE4B3, 0x7259},+    {0xE4B4, 0x82BD},+    {0xE4B5, 0x83AA},+    {0xE4B6, 0x86FE},+    {0xE4B7, 0x8859},+    {0xE4B8, 0x8A1D},+    {0xE4B9, 0x963F},+    {0xE4BA, 0x96C5},+    {0xE4BB, 0x9913},+    {0xE4BC, 0x9D09},+    {0xE4BD, 0x9D5D},+    {0xE4BE, 0x580A},+    {0xE4BF, 0x5CB3},+    {0xE4C0, 0x5DBD},+    {0xE4C1, 0x5E44},+    {0xE4C2, 0x60E1},+    {0xE4C3, 0x6115},+    {0xE4C4, 0x63E1},+    {0xE4C5, 0xF95C},+    {0xE4C6, 0x6E25},+    {0xE4C7, 0x9102},+    {0xE4C8, 0x9354},+    {0xE4C9, 0x984E},+    {0xE4CA, 0x9C10},+    {0xE4CB, 0x9F77},+    {0xE4CC, 0x5B89},+    {0xE4CD, 0x5CB8},+    {0xE4CE, 0x6309},+    {0xE4CF, 0x664F},+    {0xE4D0, 0x6848},+    {0xE4D1, 0x773C},+    {0xE4D2, 0x96C1},+    {0xE4D3, 0x978D},+    {0xE4D4, 0x9854},+    {0xE4D5, 0x9B9F},+    {0xE4D6, 0x65A1},+    {0xE4D7, 0x8B01},+    {0xE4D8, 0x8ECB},+    {0xE4D9, 0x95BC},+    {0xE4DA, 0x5535},+    {0xE4DB, 0x5CA9},+    {0xE4DC, 0x5DD6},+    {0xE4DD, 0x5EB5},+    {0xE4DE, 0x6697},+    {0xE4DF, 0x764C},+    {0xE4E0, 0x83F4},+    {0xE4E1, 0x95C7},+    {0xE4E2, 0x58D3},+    {0xE4E3, 0x62BC},+    {0xE4E4, 0x72CE},+    {0xE4E5, 0x9D28},+    {0xE4E6, 0x4EF0},+    {0xE4E7, 0x592E},+    {0xE4E8, 0x600F},+    {0xE4E9, 0x663B},+    {0xE4EA, 0x6B83},+    {0xE4EB, 0x79E7},+    {0xE4EC, 0x9D26},+    {0xE4ED, 0x5393},+    {0xE4EE, 0x54C0},+    {0xE4EF, 0x57C3},+    {0xE4F0, 0x5D16},+    {0xE4F1, 0x611B},+    {0xE4F2, 0x66D6},+    {0xE4F3, 0x6DAF},+    {0xE4F4, 0x788D},+    {0xE4F5, 0x827E},+    {0xE4F6, 0x9698},+    {0xE4F7, 0x9744},+    {0xE4F8, 0x5384},+    {0xE4F9, 0x627C},+    {0xE4FA, 0x6396},+    {0xE4FB, 0x6DB2},+    {0xE4FC, 0x7E0A},+    {0xE4FD, 0x814B},+    {0xE4FE, 0x984D},+    {0xE5A1, 0x6AFB},+    {0xE5A2, 0x7F4C},+    {0xE5A3, 0x9DAF},+    {0xE5A4, 0x9E1A},+    {0xE5A5, 0x4E5F},+    {0xE5A6, 0x503B},+    {0xE5A7, 0x51B6},+    {0xE5A8, 0x591C},+    {0xE5A9, 0x60F9},+    {0xE5AA, 0x63F6},+    {0xE5AB, 0x6930},+    {0xE5AC, 0x723A},+    {0xE5AD, 0x8036},+    {0xE5AE, 0xF974},+    {0xE5AF, 0x91CE},+    {0xE5B0, 0x5F31},+    {0xE5B1, 0xF975},+    {0xE5B2, 0xF976},+    {0xE5B3, 0x7D04},+    {0xE5B4, 0xF974},+    {0xE5B5, 0x846F},+    {0xE5B6, 0x84BB},+    {0xE5B7, 0x85E5},+    {0xE5B8, 0x8E8D},+    {0xE5B9, 0xF977},+    {0xE5BA, 0x4F6F},+    {0xE5BB, 0xF978},+    {0xE5BC, 0xF979},+    {0xE5BD, 0x58E4},+    {0xE5BE, 0x5B43},+    {0xE5BF, 0x6059},+    {0xE5C0, 0x63DA},+    {0xE5C1, 0x6518},+    {0xE5C2, 0x656D},+    {0xE5C3, 0x6698},+    {0xE5C4, 0xF97A},+    {0xE5C5, 0x694A},+    {0xE5C6, 0x6A23},+    {0xE5C7, 0x6D0B},+    {0xE5C8, 0x7001},+    {0xE5C9, 0x716C},+    {0xE5CA, 0x75D2},+    {0xE5CB, 0x760D},+    {0xE5CC, 0x79B3},+    {0xE5CD, 0x7A70},+    {0xE5CE, 0xF97B},+    {0xE5CF, 0x7F8A},+    {0xE5D0, 0xF97C},+    {0xE5D1, 0x8944},+    {0xE5D2, 0xF97D},+    {0xE5D3, 0x8B93},+    {0xE5D4, 0x91C0},+    {0xE5D5, 0x967D},+    {0xE5D6, 0xF97E},+    {0xE5D7, 0x990A},+    {0xE5D8, 0x5704},+    {0xE5D9, 0x5FA1},+    {0xE5DA, 0x65BC},+    {0xE5DB, 0x6F01},+    {0xE5DC, 0x7600},+    {0xE5DD, 0x79A6},+    {0xE5DE, 0x8A9E},+    {0xE5DF, 0x99AD},+    {0xE5E0, 0x9B5A},+    {0xE5E1, 0x9F6C},+    {0xE5E2, 0x5104},+    {0xE5E3, 0x61B6},+    {0xE5E4, 0x6291},+    {0xE5E5, 0x6A8D},+    {0xE5E6, 0x81C6},+    {0xE5E7, 0x5043},+    {0xE5E8, 0x5830},+    {0xE5E9, 0x5F66},+    {0xE5EA, 0x7109},+    {0xE5EB, 0x8A00},+    {0xE5EC, 0x8AFA},+    {0xE5ED, 0x5B7C},+    {0xE5EE, 0x8616},+    {0xE5EF, 0x4FFA},+    {0xE5F0, 0x513C},+    {0xE5F1, 0x56B4},+    {0xE5F2, 0x5944},+    {0xE5F3, 0x63A9},+    {0xE5F4, 0x6DF9},+    {0xE5F5, 0x5DAA},+    {0xE5F6, 0x696D},+    {0xE5F7, 0x5186},+    {0xE5F8, 0x4E88},+    {0xE5F9, 0x4F59},+    {0xE5FA, 0x52F5},+    {0xE5FB, 0x5442},+    {0xE5FC, 0x5973},+    {0xE5FD, 0x5982},+    {0xE5FE, 0x5EEC},+    {0xE6A1, 0xF983},+    {0xE6A2, 0x6B5F},+    {0xE6A3, 0x6C5D},+    {0xE6A4, 0xF984},+    {0xE6A5, 0x74B5},+    {0xE6A6, 0x7916},+    {0xE6A7, 0xF985},+    {0xE6A8, 0x8207},+    {0xE6A9, 0x8245},+    {0xE6AA, 0x8339},+    {0xE6AB, 0x8F3F},+    {0xE6AC, 0x8F5D},+    {0xE6AD, 0xF986},+    {0xE6AE, 0x9918},+    {0xE6AF, 0xF987},+    {0xE6B0, 0xF988},+    {0xE6B1, 0xF989},+    {0xE6B2, 0x4EA6},+    {0xE6B3, 0xF98A},+    {0xE6B4, 0x57DF},+    {0xE6B5, 0x5F79},+    {0xE6B6, 0xF9E0},+    {0xE6B7, 0xF98B},+    {0xE6B8, 0xF98C},+    {0xE6B9, 0x75AB},+    {0xE6BA, 0x7E79},+    {0xE6BB, 0x8B6F},+    {0xE6BC, 0xF98D},+    {0xE6BD, 0x9006},+    {0xE6BE, 0x9A5B},+    {0xE6BF, 0x56A5},+    {0xE6C0, 0x5827},+    {0xE6C1, 0x59F8},+    {0xE6C2, 0x5A1F},+    {0xE6C3, 0x5BB4},+    {0xE6C4, 0x5E74},+    {0xE6C5, 0x5EF6},+    {0xE6C6, 0xF98F},+    {0xE6C7, 0xF990},+    {0xE6C8, 0x6350},+    {0xE6C9, 0x633B},+    {0xE6CA, 0x649A},+    {0xE6CB, 0x693D},+    {0xE6CC, 0x6C87},+    {0xE6CD, 0x6CBF},+    {0xE6CE, 0x6D8E},+    {0xE6CF, 0x6D93},+    {0xE6D0, 0x6DF5},+    {0xE6D1, 0x6F14},+    {0xE6D2, 0xF992},+    {0xE6D3, 0x70DF},+    {0xE6D4, 0x7136},+    {0xE6D5, 0x7159},+    {0xE6D6, 0x7149},+    {0xE6D7, 0x71C3},+    {0xE6D8, 0x71D5},+    {0xE6D9, 0x7489},+    {0xE6DA, 0x784F},+    {0xE6DB, 0x786F},+    {0xE6DC, 0x79CA},+    {0xE6DD, 0x7B75},+    {0xE6DE, 0x7DE3},+    {0xE6DF, 0x7DF4},+    {0xE6E0, 0x7E2F},+    {0xE6E1, 0x806F},+    {0xE6E2, 0x884D},+    {0xE6E3, 0x8EDF},+    {0xE6E4, 0x8F26},+    {0xE6E5, 0x84EE},+    {0xE6E6, 0x9023},+    {0xE6E7, 0x925B},+    {0xE6E8, 0x934A},+    {0xE6E9, 0x9CF6},+    {0xE6EA, 0x5217},+    {0xE6EB, 0x52A3},+    {0xE6EC, 0x54BD},+    {0xE6ED, 0x6085},+    {0xE6EE, 0x6D85},+    {0xE6EF, 0x70C8},+    {0xE6F0, 0x71B1},+    {0xE6F1, 0x88C2},+    {0xE6F2, 0xF96F},+    {0xE6F3, 0x95B1},+    {0xE6F4, 0x53AD},+    {0xE6F5, 0x5EC9},+    {0xE6F6, 0x5FF5},+    {0xE6F7, 0x637B},+    {0xE6F8, 0x67D3},+    {0xE6F9, 0x6BAE},+    {0xE6FA, 0x708E},+    {0xE6FB, 0x7130},+    {0xE6FC, 0x7430},+    {0xE6FD, 0x8276},+    {0xE6FE, 0x82D2},+    {0xE7A1, 0xF9A6},+    {0xE7A2, 0x95BB},+    {0xE7A3, 0x9AE5},+    {0xE7A4, 0x9E7D},+    {0xE7A5, 0x66C4},+    {0xE7A6, 0xF9A7},+    {0xE7A7, 0x71C1},+    {0xE7A8, 0x8449},+    {0xE7A9, 0xF9A8},+    {0xE7AA, 0xF9A9},+    {0xE7AB, 0x584B},+    {0xE7AC, 0xF9AA},+    {0xE7AD, 0xF9AB},+    {0xE7AE, 0x5DB8},+    {0xE7AF, 0x5F71},+    {0xE7B0, 0xF9AC},+    {0xE7B1, 0x6620},+    {0xE7B2, 0x668E},+    {0xE7B3, 0x6979},+    {0xE7B4, 0x69AE},+    {0xE7B5, 0x6C38},+    {0xE7B6, 0x6CF3},+    {0xE7B7, 0x6E36},+    {0xE7B8, 0x6F41},+    {0xE7B9, 0x6FDA},+    {0xE7BA, 0x701B},+    {0xE7BB, 0x702F},+    {0xE7BC, 0x7150},+    {0xE7BD, 0x71DF},+    {0xE7BE, 0x7370},+    {0xE7BF, 0x73B2},+    {0xE7C0, 0x745B},+    {0xE7C1, 0x7469},+    {0xE7C2, 0x74D4},+    {0xE7C3, 0x76C8},+    {0xE7C4, 0x7A4E},+    {0xE7C5, 0x7E93},+    {0xE7C6, 0x7F9A},+    {0xE7C7, 0x8046},+    {0xE7C8, 0x82F1},+    {0xE7C9, 0x8A60},+    {0xE7CA, 0x8FCE},+    {0xE7CB, 0x9234},+    {0xE7CC, 0x9348},+    {0xE7CD, 0x96F6},+    {0xE7CE, 0x9719},+    {0xE7CF, 0x9748},+    {0xE7D0, 0x9818},+    {0xE7D1, 0x4E42},+    {0xE7D2, 0x502A},+    {0xE7D3, 0x4F8B},+    {0xE7D4, 0x5208},+    {0xE7D5, 0x53E1},+    {0xE7D6, 0x66F3},+    {0xE7D7, 0x6C6D},+    {0xE7D8, 0x6FCA},+    {0xE7D9, 0x730A},+    {0xE7DA, 0x777F},+    {0xE7DB, 0x7A62},+    {0xE7DC, 0x82AE},+    {0xE7DD, 0x85DD},+    {0xE7DE, 0x8602},+    {0xE7DF, 0x79AE},+    {0xE7E0, 0x88D4},+    {0xE7E1, 0x8A63},+    {0xE7E2, 0x8B7D},+    {0xE7E3, 0x8C6B},+    {0xE7E4, 0x91B4},+    {0xE7E5, 0x92B3},+    {0xE7E6, 0x96B7},+    {0xE7E7, 0x9713},+    {0xE7E8, 0x9810},+    {0xE7E9, 0x4E94},+    {0xE7EA, 0x4F0D},+    {0xE7EB, 0x4FC9},+    {0xE7EC, 0x50B2},+    {0xE7ED, 0x5348},+    {0xE7EE, 0x543E},+    {0xE7EF, 0x5433},+    {0xE7F0, 0x55DA},+    {0xE7F1, 0x5862},+    {0xE7F2, 0x58BA},+    {0xE7F3, 0x5967},+    {0xE7F4, 0x5A1B},+    {0xE7F5, 0x5BE4},+    {0xE7F6, 0x609F},+    {0xE7F7, 0x60E1},+    {0xE7F8, 0x61CA},+    {0xE7F9, 0x6556},+    {0xE7FA, 0x65FF},+    {0xE7FB, 0x6664},+    {0xE7FC, 0x68A7},+    {0xE7FD, 0x6C5A},+    {0xE7FE, 0x6FB3},+    {0xE8A1, 0x70CF},+    {0xE8A2, 0x71AC},+    {0xE8A3, 0x7352},+    {0xE8A4, 0x7B7D},+    {0xE8A5, 0x8708},+    {0xE8A6, 0x8AA4},+    {0xE8A7, 0x9C32},+    {0xE8A8, 0x9F07},+    {0xE8A9, 0x5C4B},+    {0xE8AA, 0x6C83},+    {0xE8AB, 0x7344},+    {0xE8AC, 0x7389},+    {0xE8AD, 0x923A},+    {0xE8AE, 0x6EAB},+    {0xE8AF, 0x7465},+    {0xE8B0, 0x761F},+    {0xE8B1, 0x7A69},+    {0xE8B2, 0x7E15},+    {0xE8B3, 0x860A},+    {0xE8B4, 0x5140},+    {0xE8B5, 0x58C5},+    {0xE8B6, 0x64C1},+    {0xE8B7, 0x74EE},+    {0xE8B8, 0x7515},+    {0xE8B9, 0x7670},+    {0xE8BA, 0x7FC1},+    {0xE8BB, 0x9095},+    {0xE8BC, 0x96CD},+    {0xE8BD, 0x9954},+    {0xE8BE, 0x6E26},+    {0xE8BF, 0x74E6},+    {0xE8C0, 0x7AA9},+    {0xE8C1, 0x7AAA},+    {0xE8C2, 0x81E5},+    {0xE8C3, 0x86D9},+    {0xE8C4, 0x8778},+    {0xE8C5, 0x8A1B},+    {0xE8C6, 0x5A49},+    {0xE8C7, 0x5B8C},+    {0xE8C8, 0x5B9B},+    {0xE8C9, 0x68A1},+    {0xE8CA, 0x6900},+    {0xE8CB, 0x6D63},+    {0xE8CC, 0x73A9},+    {0xE8CD, 0x7413},+    {0xE8CE, 0x742C},+    {0xE8CF, 0x7897},+    {0xE8D0, 0x7DE9},+    {0xE8D1, 0x7FEB},+    {0xE8D2, 0x8118},+    {0xE8D3, 0x8155},+    {0xE8D4, 0x839E},+    {0xE8D5, 0x8C4C},+    {0xE8D6, 0xF9C6},+    {0xE8D7, 0x9811},+    {0xE8D8, 0x66F0},+    {0xE8D9, 0x5F80},+    {0xE8DA, 0x65FA},+    {0xE8DB, 0x6789},+    {0xE8DC, 0x6C6A},+    {0xE8DD, 0x738B},+    {0xE8DE, 0x502D},+    {0xE8DF, 0x5A03},+    {0xE8E0, 0x6B6A},+    {0xE8E1, 0x77EE},+    {0xE8E2, 0x5916},+    {0xE8E3, 0x5D6C},+    {0xE8E4, 0x5DCD},+    {0xE8E5, 0x7325},+    {0xE8E6, 0x754F},+    {0xE8E7, 0xF9BA},+    {0xE8E8, 0xF9BB},+    {0xE8E9, 0x50E5},+    {0xE8EA, 0x51F9},+    {0xE8EB, 0x582F},+    {0xE8EC, 0x592D},+    {0xE8ED, 0x5996},+    {0xE8EE, 0x59DA},+    {0xE8EF, 0x5BE5},+    {0xE8F0, 0xF9BC},+    {0xE8F1, 0x5C3F},+    {0xE8F2, 0x5DA2},+    {0xE8F3, 0x62D7},+    {0xE8F4, 0x6416},+    {0xE8F5, 0x6493},+    {0xE8F6, 0x64FE},+    {0xE8F7, 0xF9BE},+    {0xE8F8, 0x66DC},+    {0xE8F9, 0xF95C},+    {0xE8FA, 0x6A48},+    {0xE8FB, 0x71CE},+    {0xE8FC, 0x71FF},+    {0xE8FD, 0x7464},+    {0xE8FE, 0x7642},+    {0xE9A1, 0x7A88},+    {0xE9A2, 0x7AAF},+    {0xE9A3, 0x7E47},+    {0xE9A4, 0x7E5E},+    {0xE9A5, 0x8000},+    {0xE9A6, 0x8170},+    {0xE9A7, 0xF9C2},+    {0xE9A8, 0x87EF},+    {0xE9A9, 0x8981},+    {0xE9AA, 0x8B20},+    {0xE9AB, 0x9059},+    {0xE9AC, 0x907C},+    {0xE9AD, 0x9080},+    {0xE9AE, 0x9952},+    {0xE9AF, 0x617E},+    {0xE9B0, 0x6B32},+    {0xE9B1, 0x6D74},+    {0xE9B2, 0x7E1F},+    {0xE9B3, 0x8925},+    {0xE9B4, 0x8FB1},+    {0xE9B5, 0x4FD1},+    {0xE9B6, 0x50AD},+    {0xE9B7, 0x5197},+    {0xE9B8, 0x52C7},+    {0xE9B9, 0x57C7},+    {0xE9BA, 0x5889},+    {0xE9BB, 0x5BB9},+    {0xE9BC, 0x5EB8},+    {0xE9BD, 0x6142},+    {0xE9BE, 0x6995},+    {0xE9BF, 0x6D8C},+    {0xE9C0, 0x6E67},+    {0xE9C1, 0x6EB6},+    {0xE9C2, 0x7194},+    {0xE9C3, 0x7462},+    {0xE9C4, 0x7528},+    {0xE9C5, 0x752C},+    {0xE9C6, 0x8073},+    {0xE9C7, 0x8338},+    {0xE9C8, 0x84C9},+    {0xE9C9, 0x8E0A},+    {0xE9CA, 0x9394},+    {0xE9CB, 0x93DE},+    {0xE9CC, 0x9F8D},+    {0xE9CD, 0x4E8E},+    {0xE9CE, 0x4F51},+    {0xE9CF, 0x5076},+    {0xE9D0, 0x512A},+    {0xE9D1, 0x53C8},+    {0xE9D2, 0x53CB},+    {0xE9D3, 0x53F3},+    {0xE9D4, 0x5B87},+    {0xE9D5, 0x5BD3},+    {0xE9D6, 0x5C24},+    {0xE9D7, 0x611A},+    {0xE9D8, 0x6182},+    {0xE9D9, 0x65F4},+    {0xE9DA, 0x725B},+    {0xE9DB, 0x7397},+    {0xE9DC, 0x7440},+    {0xE9DD, 0x76C2},+    {0xE9DE, 0x7950},+    {0xE9DF, 0x7991},+    {0xE9E0, 0x79B9},+    {0xE9E1, 0x7D06},+    {0xE9E2, 0x7FBD},+    {0xE9E3, 0x828B},+    {0xE9E4, 0x85D5},+    {0xE9E5, 0x865E},+    {0xE9E6, 0x8FC2},+    {0xE9E7, 0x9047},+    {0xE9E8, 0x90F5},+    {0xE9E9, 0x91EA},+    {0xE9EA, 0x9685},+    {0xE9EB, 0x96E8},+    {0xE9EC, 0x96E9},+    {0xE9ED, 0x52D6},+    {0xE9EE, 0x5F67},+    {0xE9EF, 0x65ED},+    {0xE9F0, 0x6631},+    {0xE9F1, 0x682F},+    {0xE9F2, 0x715C},+    {0xE9F3, 0x7A36},+    {0xE9F4, 0x90C1},+    {0xE9F5, 0x980A},+    {0xE9F6, 0x4E91},+    {0xE9F7, 0x6688},+    {0xE9F8, 0x6A52},+    {0xE9F9, 0x6B9E},+    {0xE9FA, 0x6F90},+    {0xE9FB, 0x7189},+    {0xE9FC, 0x8018},+    {0xE9FD, 0x82B8},+    {0xE9FE, 0x8553},+    {0xEAA1, 0x904B},+    {0xEAA2, 0x9695},+    {0xEAA3, 0x96F2},+    {0xEAA4, 0x97FB},+    {0xEAA5, 0x851A},+    {0xEAA6, 0x9B31},+    {0xEAA7, 0x4E90},+    {0xEAA8, 0x718A},+    {0xEAA9, 0x96C4},+    {0xEAAA, 0x5143},+    {0xEAAB, 0x539F},+    {0xEAAC, 0x54E1},+    {0xEAAD, 0x5713},+    {0xEAAE, 0x5712},+    {0xEAAF, 0x57A3},+    {0xEAB0, 0x5A9B},+    {0xEAB1, 0x5AC4},+    {0xEAB2, 0x5BC3},+    {0xEAB3, 0x6028},+    {0xEAB4, 0x613F},+    {0xEAB5, 0x63F4},+    {0xEAB6, 0x6C85},+    {0xEAB7, 0x6D39},+    {0xEAB8, 0x6E72},+    {0xEAB9, 0x6E90},+    {0xEABA, 0x7230},+    {0xEABB, 0x733F},+    {0xEABC, 0x7457},+    {0xEABD, 0x82D1},+    {0xEABE, 0x8881},+    {0xEABF, 0x8F45},+    {0xEAC0, 0x9060},+    {0xEAC1, 0xF9C6},+    {0xEAC2, 0x9662},+    {0xEAC3, 0x9858},+    {0xEAC4, 0x9D1B},+    {0xEAC5, 0x6708},+    {0xEAC6, 0x8D8A},+    {0xEAC7, 0x925E},+    {0xEAC8, 0x4F4D},+    {0xEAC9, 0x5049},+    {0xEACA, 0x50DE},+    {0xEACB, 0x5371},+    {0xEACC, 0x570D},+    {0xEACD, 0x59D4},+    {0xEACE, 0x5A01},+    {0xEACF, 0x5C09},+    {0xEAD0, 0x6170},+    {0xEAD1, 0x6690},+    {0xEAD2, 0x6E2D},+    {0xEAD3, 0x7232},+    {0xEAD4, 0x744B},+    {0xEAD5, 0x7DEF},+    {0xEAD6, 0x80C3},+    {0xEAD7, 0x840E},+    {0xEAD8, 0x8466},+    {0xEAD9, 0x853F},+    {0xEADA, 0x875F},+    {0xEADB, 0x885B},+    {0xEADC, 0x8918},+    {0xEADD, 0x8B02},+    {0xEADE, 0x9055},+    {0xEADF, 0x97CB},+    {0xEAE0, 0x9B4F},+    {0xEAE1, 0x4E73},+    {0xEAE2, 0x4F91},+    {0xEAE3, 0x5112},+    {0xEAE4, 0x516A},+    {0xEAE5, 0x5289},+    {0xEAE6, 0x552F},+    {0xEAE7, 0x55A9},+    {0xEAE8, 0x5B7A},+    {0xEAE9, 0x5BA5},+    {0xEAEA, 0x5E7C},+    {0xEAEB, 0x5E7D},+    {0xEAEC, 0x5EBE},+    {0xEAED, 0x60A0},+    {0xEAEE, 0x60DF},+    {0xEAEF, 0x6108},+    {0xEAF0, 0x6109},+    {0xEAF1, 0x63C4},+    {0xEAF2, 0x6538},+    {0xEAF3, 0x6709},+    {0xEAF4, 0x677B},+    {0xEAF5, 0x67D4},+    {0xEAF6, 0x67DA},+    {0xEAF7, 0x67F3},+    {0xEAF8, 0x6961},+    {0xEAF9, 0x6962},+    {0xEAFA, 0x6CB9},+    {0xEAFB, 0x6D27},+    {0xEAFC, 0x6D41},+    {0xEAFD, 0x6E38},+    {0xEAFE, 0x6E9C},+    {0xEBA1, 0x6FE1},+    {0xEBA2, 0x7336},+    {0xEBA3, 0x7337},+    {0xEBA4, 0xF9CC},+    {0xEBA5, 0x745C},+    {0xEBA6, 0x7531},+    {0xEBA7, 0xF9CD},+    {0xEBA8, 0x7652},+    {0xEBA9, 0xF9CE},+    {0xEBAA, 0xF9CF},+    {0xEBAB, 0x7DAD},+    {0xEBAC, 0x81FE},+    {0xEBAD, 0x8438},+    {0xEBAE, 0x88D5},+    {0xEBAF, 0x8A98},+    {0xEBB0, 0x8ADB},+    {0xEBB1, 0x8AED},+    {0xEBB2, 0x8E30},+    {0xEBB3, 0x8E42},+    {0xEBB4, 0x904A},+    {0xEBB5, 0x903E},+    {0xEBB6, 0x907A},+    {0xEBB7, 0x9149},+    {0xEBB8, 0x91C9},+    {0xEBB9, 0x936E},+    {0xEBBA, 0xF9D0},+    {0xEBBB, 0xF9D1},+    {0xEBBC, 0x5809},+    {0xEBBD, 0xF9D2},+    {0xEBBE, 0x6BD3},+    {0xEBBF, 0x8089},+    {0xEBC0, 0x80B2},+    {0xEBC1, 0x9678},+    {0xEBC2, 0xF9D4},+    {0xEBC3, 0x5141},+    {0xEBC4, 0x596B},+    {0xEBC5, 0x5C39},+    {0xEBC6, 0x5D19},+    {0xEBC7, 0x6DEA},+    {0xEBC8, 0x6F64},+    {0xEBC9, 0x73A7},+    {0xEBCA, 0x80E4},+    {0xEBCB, 0x8D07},+    {0xEBCC, 0x8F2A},+    {0xEBCD, 0x9217},+    {0xEBCE, 0x958F},+    {0xEBCF, 0x5F8B},+    {0xEBD0, 0x6144},+    {0xEBD1, 0x6817},+    {0xEBD2, 0xF961},+    {0xEBD3, 0x807F},+    {0xEBD4, 0x620E},+    {0xEBD5, 0x701C},+    {0xEBD6, 0x7D68},+    {0xEBD7, 0x878D},+    {0xEBD8, 0x9686},+    {0xEBD9, 0x57A0},+    {0xEBDA, 0x6069},+    {0xEBDB, 0x6147},+    {0xEBDC, 0x6BB7},+    {0xEBDD, 0x8ABE},+    {0xEBDE, 0x9280},+    {0xEBDF, 0x96B1},+    {0xEBE0, 0x4E59},+    {0xEBE1, 0x541F},+    {0xEBE2, 0x6DEB},+    {0xEBE3, 0x852D},+    {0xEBE4, 0x9670},+    {0xEBE5, 0x97F3},+    {0xEBE6, 0x98EE},+    {0xEBE7, 0x63D6},+    {0xEBE8, 0x6CE3},+    {0xEBE9, 0x9091},+    {0xEBEA, 0x51DD},+    {0xEBEB, 0x61C9},+    {0xEBEC, 0x81BA},+    {0xEBED, 0x9DF9},+    {0xEBEE, 0x4F9D},+    {0xEBEF, 0x501A},+    {0xEBF0, 0x5100},+    {0xEBF1, 0x5B9C},+    {0xEBF2, 0x610F},+    {0xEBF3, 0x61FF},+    {0xEBF4, 0x64EC},+    {0xEBF5, 0x6905},+    {0xEBF6, 0x6BC5},+    {0xEBF7, 0x7591},+    {0xEBF8, 0x77E3},+    {0xEBF9, 0x7FA9},+    {0xEBFA, 0x8264},+    {0xEBFB, 0x858F},+    {0xEBFC, 0x87FB},+    {0xEBFD, 0x8863},+    {0xEBFE, 0x8ABC},+    {0xECA1, 0x8B70},+    {0xECA2, 0x91AB},+    {0xECA3, 0x4E8C},+    {0xECA4, 0x4EE5},+    {0xECA5, 0x4F0A},+    {0xECA6, 0xF9DD},+    {0xECA7, 0xF9DE},+    {0xECA8, 0x5937},+    {0xECA9, 0x59E8},+    {0xECAA, 0xF9DF},+    {0xECAB, 0x5DF2},+    {0xECAC, 0x5F1B},+    {0xECAD, 0x5F5B},+    {0xECAE, 0x6021},+    {0xECAF, 0xF9E0},+    {0xECB0, 0xF9E1},+    {0xECB1, 0xF9E2},+    {0xECB2, 0xF9E3},+    {0xECB3, 0x723E},+    {0xECB4, 0x73E5},+    {0xECB5, 0xF9E4},+    {0xECB6, 0x7570},+    {0xECB7, 0x75CD},+    {0xECB8, 0xF9E5},+    {0xECB9, 0x79FB},+    {0xECBA, 0xF9E6},+    {0xECBB, 0x800C},+    {0xECBC, 0x8033},+    {0xECBD, 0x8084},+    {0xECBE, 0x82E1},+    {0xECBF, 0x8351},+    {0xECC0, 0xF9E7},+    {0xECC1, 0xF9E8},+    {0xECC2, 0x8CBD},+    {0xECC3, 0x8CB3},+    {0xECC4, 0x9087},+    {0xECC5, 0xF9E9},+    {0xECC6, 0xF9EA},+    {0xECC7, 0x98F4},+    {0xECC8, 0x990C},+    {0xECC9, 0xF9EB},+    {0xECCA, 0xF9EC},+    {0xECCB, 0x7037},+    {0xECCC, 0x76CA},+    {0xECCD, 0x7FCA},+    {0xECCE, 0x7FCC},+    {0xECCF, 0x7FFC},+    {0xECD0, 0x8B1A},+    {0xECD1, 0x4EBA},+    {0xECD2, 0x4EC1},+    {0xECD3, 0x5203},+    {0xECD4, 0x5370},+    {0xECD5, 0xF9ED},+    {0xECD6, 0x54BD},+    {0xECD7, 0x56E0},+    {0xECD8, 0x59FB},+    {0xECD9, 0x5BC5},+    {0xECDA, 0x5F15},+    {0xECDB, 0x5FCD},+    {0xECDC, 0x6E6E},+    {0xECDD, 0xF9EE},+    {0xECDE, 0xF9EF},+    {0xECDF, 0x7D6A},+    {0xECE0, 0x8335},+    {0xECE1, 0xF9F0},+    {0xECE2, 0x8693},+    {0xECE3, 0x8A8D},+    {0xECE4, 0xF9F1},+    {0xECE5, 0x976D},+    {0xECE6, 0x9777},+    {0xECE7, 0xF9F2},+    {0xECE8, 0xF9F3},+    {0xECE9, 0x4E00},+    {0xECEA, 0x4F5A},+    {0xECEB, 0x4F7E},+    {0xECEC, 0x58F9},+    {0xECED, 0x65E5},+    {0xECEE, 0x6EA2},+    {0xECEF, 0x9038},+    {0xECF0, 0x93B0},+    {0xECF1, 0x99B9},+    {0xECF2, 0x4EFB},+    {0xECF3, 0x58EC},+    {0xECF4, 0x598A},+    {0xECF5, 0x59D9},+    {0xECF6, 0x6041},+    {0xECF7, 0xF9F4},+    {0xECF8, 0xF9F5},+    {0xECF9, 0x7A14},+    {0xECFA, 0xF9F6},+    {0xECFB, 0x834F},+    {0xECFC, 0x8CC3},+    {0xECFD, 0x5165},+    {0xECFE, 0x5344},+    {0xEDA1, 0x7ACB},+    {0xEDA2, 0x7B20},+    {0xEDA3, 0x7C92},+    {0xEDA4, 0x4ECD},+    {0xEDA5, 0x5269},+    {0xEDA6, 0x5B55},+    {0xEDA7, 0x82BF},+    {0xEDA8, 0x4ED4},+    {0xEDA9, 0xF9FF},+    {0xEDAA, 0x54A8},+    {0xEDAB, 0x59C9},+    {0xEDAC, 0x59FF},+    {0xEDAD, 0x5B50},+    {0xEDAE, 0x5B57},+    {0xEDAF, 0x5B5C},+    {0xEDB0, 0x6063},+    {0xEDB1, 0x6148},+    {0xEDB2, 0x6ECB},+    {0xEDB3, 0x7099},+    {0xEDB4, 0x716E},+    {0xEDB5, 0x7386},+    {0xEDB6, 0x74F7},+    {0xEDB7, 0x75B5},+    {0xEDB8, 0x78C1},+    {0xEDB9, 0x7D2B},+    {0xEDBA, 0x8005},+    {0xEDBB, 0x81EA},+    {0xEDBC, 0x8328},+    {0xEDBD, 0x8517},+    {0xEDBE, 0x85C9},+    {0xEDBF, 0x8AEE},+    {0xEDC0, 0x8CC7},+    {0xEDC1, 0x96CC},+    {0xEDC2, 0x4F5C},+    {0xEDC3, 0x52FA},+    {0xEDC4, 0x56BC},+    {0xEDC5, 0x65AB},+    {0xEDC6, 0x6628},+    {0xEDC7, 0x707C},+    {0xEDC8, 0x70B8},+    {0xEDC9, 0x7235},+    {0xEDCA, 0x7DBD},+    {0xEDCB, 0x828D},+    {0xEDCC, 0x914C},+    {0xEDCD, 0x96C0},+    {0xEDCE, 0x9D72},+    {0xEDCF, 0x5B71},+    {0xEDD0, 0x68E7},+    {0xEDD1, 0x6B98},+    {0xEDD2, 0x6F7A},+    {0xEDD3, 0x76DE},+    {0xEDD4, 0x5C91},+    {0xEDD5, 0x66AB},+    {0xEDD6, 0x6F5B},+    {0xEDD7, 0x7BB4},+    {0xEDD8, 0x7C2A},+    {0xEDD9, 0x8836},+    {0xEDDA, 0x96DC},+    {0xEDDB, 0x4E08},+    {0xEDDC, 0x4ED7},+    {0xEDDD, 0x5320},+    {0xEDDE, 0x5834},+    {0xEDDF, 0x58BB},+    {0xEDE0, 0x58EF},+    {0xEDE1, 0x596C},+    {0xEDE2, 0x5C07},+    {0xEDE3, 0x5E33},+    {0xEDE4, 0x5E84},+    {0xEDE5, 0x5F35},+    {0xEDE6, 0x638C},+    {0xEDE7, 0x66B2},+    {0xEDE8, 0x6756},+    {0xEDE9, 0x6A1F},+    {0xEDEA, 0x6AA3},+    {0xEDEB, 0x6B0C},+    {0xEDEC, 0x6F3F},+    {0xEDED, 0x7246},+    {0xEDEE, 0x72C0},+    {0xEDEF, 0x7350},+    {0xEDF0, 0x748B},+    {0xEDF1, 0x7AE0},+    {0xEDF2, 0x7CA7},+    {0xEDF3, 0x8178},+    {0xEDF4, 0x81DF},+    {0xEDF5, 0x81E7},+    {0xEDF6, 0x838A},+    {0xEDF7, 0x846C},+    {0xEDF8, 0x8523},+    {0xEDF9, 0x8594},+    {0xEDFA, 0x85CF},+    {0xEDFB, 0x88DD},+    {0xEDFC, 0x8D13},+    {0xEDFD, 0x91AC},+    {0xEDFE, 0x9577},+    {0xEEA1, 0x969C},+    {0xEEA2, 0x518D},+    {0xEEA3, 0x54C9},+    {0xEEA4, 0x5728},+    {0xEEA5, 0x5BB0},+    {0xEEA6, 0x624D},+    {0xEEA7, 0x6750},+    {0xEEA8, 0x683D},+    {0xEEA9, 0x6893},+    {0xEEAA, 0x6E3D},+    {0xEEAB, 0x6ED3},+    {0xEEAC, 0x707D},+    {0xEEAD, 0x7E21},+    {0xEEAE, 0x88C1},+    {0xEEAF, 0x8CA1},+    {0xEEB0, 0x8F09},+    {0xEEB1, 0x9F4B},+    {0xEEB2, 0x9F4E},+    {0xEEB3, 0x722D},+    {0xEEB4, 0x7B8F},+    {0xEEB5, 0x8ACD},+    {0xEEB6, 0x931A},+    {0xEEB7, 0x4F47},+    {0xEEB8, 0x4F4E},+    {0xEEB9, 0x5132},+    {0xEEBA, 0x5480},+    {0xEEBB, 0x59D0},+    {0xEEBC, 0x5E95},+    {0xEEBD, 0x62B5},+    {0xEEBE, 0x6775},+    {0xEEBF, 0x696E},+    {0xEEC0, 0x6A17},+    {0xEEC1, 0x6CAE},+    {0xEEC2, 0x6E1A},+    {0xEEC3, 0x72D9},+    {0xEEC4, 0x732A},+    {0xEEC5, 0x75BD},+    {0xEEC6, 0x7BB8},+    {0xEEC7, 0x7D35},+    {0xEEC8, 0x82E7},+    {0xEEC9, 0x83F9},+    {0xEECA, 0x8457},+    {0xEECB, 0x85F7},+    {0xEECC, 0x8A5B},+    {0xEECD, 0x8CAF},+    {0xEECE, 0x8E87},+    {0xEECF, 0x9019},+    {0xEED0, 0x90B8},+    {0xEED1, 0x96CE},+    {0xEED2, 0x9F5F},+    {0xEED3, 0x52E3},+    {0xEED4, 0x540A},+    {0xEED5, 0x5AE1},+    {0xEED6, 0x5BC2},+    {0xEED7, 0x6458},+    {0xEED8, 0x6575},+    {0xEED9, 0x6EF4},+    {0xEEDA, 0x72C4},+    {0xEEDB, 0x7099},+    {0xEEDC, 0x7684},+    {0xEEDD, 0x7A4D},+    {0xEEDE, 0x7B1B},+    {0xEEDF, 0x7C4D},+    {0xEEE0, 0x7E3E},+    {0xEEE1, 0x7FDF},+    {0xEEE2, 0x837B},+    {0xEEE3, 0x8B2B},+    {0xEEE4, 0x8CCA},+    {0xEEE5, 0x8D64},+    {0xEEE6, 0x8DE1},+    {0xEEE7, 0x8E5F},+    {0xEEE8, 0x8FEA},+    {0xEEE9, 0x8FF9},+    {0xEEEA, 0x9069},+    {0xEEEB, 0x93D1},+    {0xEEEC, 0x4F43},+    {0xEEED, 0x4F7A},+    {0xEEEE, 0x50B3},+    {0xEEEF, 0x5168},+    {0xEEF0, 0x5178},+    {0xEEF1, 0x524D},+    {0xEEF2, 0x526A},+    {0xEEF3, 0x5861},+    {0xEEF4, 0x587C},+    {0xEEF5, 0x5960},+    {0xEEF6, 0x5C08},+    {0xEEF7, 0x5C55},+    {0xEEF8, 0x5EDB},+    {0xEEF9, 0x609B},+    {0xEEFA, 0x6230},+    {0xEEFB, 0x6813},+    {0xEEFC, 0x6BBF},+    {0xEEFD, 0x6C08},+    {0xEEFE, 0x6FB1},+    {0xEFA1, 0x714E},+    {0xEFA2, 0x7420},+    {0xEFA3, 0x7530},+    {0xEFA4, 0x7538},+    {0xEFA5, 0x7551},+    {0xEFA6, 0x7672},+    {0xEFA7, 0x7B4C},+    {0xEFA8, 0x7B8B},+    {0xEFA9, 0x7BAD},+    {0xEFAA, 0x7BC6},+    {0xEFAB, 0x7E8F},+    {0xEFAC, 0x8A6E},+    {0xEFAD, 0x8F3E},+    {0xEFAE, 0x8F49},+    {0xEFAF, 0x923F},+    {0xEFB0, 0x9293},+    {0xEFB1, 0x9322},+    {0xEFB2, 0x942B},+    {0xEFB3, 0x96FB},+    {0xEFB4, 0x985A},+    {0xEFB5, 0x986B},+    {0xEFB6, 0x991E},+    {0xEFB7, 0x5207},+    {0xEFB8, 0x622A},+    {0xEFB9, 0x6298},+    {0xEFBA, 0x6D59},+    {0xEFBB, 0x7664},+    {0xEFBC, 0x7ACA},+    {0xEFBD, 0x7BC0},+    {0xEFBE, 0x7D76},+    {0xEFBF, 0x5360},+    {0xEFC0, 0x5CBE},+    {0xEFC1, 0x5E97},+    {0xEFC2, 0x6F38},+    {0xEFC3, 0x70B9},+    {0xEFC4, 0x7C98},+    {0xEFC5, 0x9711},+    {0xEFC6, 0x9B8E},+    {0xEFC7, 0x9EDE},+    {0xEFC8, 0x63A5},+    {0xEFC9, 0x647A},+    {0xEFCA, 0x8776},+    {0xEFCB, 0x4E01},+    {0xEFCC, 0x4E95},+    {0xEFCD, 0x4EAD},+    {0xEFCE, 0x505C},+    {0xEFCF, 0x5075},+    {0xEFD0, 0x5448},+    {0xEFD1, 0x59C3},+    {0xEFD2, 0x5B9A},+    {0xEFD3, 0x5E40},+    {0xEFD4, 0x5EAD},+    {0xEFD5, 0x5EF7},+    {0xEFD6, 0x5F81},+    {0xEFD7, 0x60C5},+    {0xEFD8, 0x633A},+    {0xEFD9, 0x653F},+    {0xEFDA, 0x6574},+    {0xEFDB, 0x65CC},+    {0xEFDC, 0x6676},+    {0xEFDD, 0x6678},+    {0xEFDE, 0x67FE},+    {0xEFDF, 0x6968},+    {0xEFE0, 0x6A89},+    {0xEFE1, 0x6B63},+    {0xEFE2, 0x6C40},+    {0xEFE3, 0x6DC0},+    {0xEFE4, 0x6DE8},+    {0xEFE5, 0x6E1F},+    {0xEFE6, 0x6E5E},+    {0xEFE7, 0x701E},+    {0xEFE8, 0x70A1},+    {0xEFE9, 0x738E},+    {0xEFEA, 0x73FD},+    {0xEFEB, 0x753A},+    {0xEFEC, 0x775B},+    {0xEFED, 0x7887},+    {0xEFEE, 0x798E},+    {0xEFEF, 0x7A0B},+    {0xEFF0, 0x7A7D},+    {0xEFF1, 0x7CBE},+    {0xEFF2, 0x7D8E},+    {0xEFF3, 0x8247},+    {0xEFF4, 0x8A02},+    {0xEFF5, 0x8AEA},+    {0xEFF6, 0x8C9E},+    {0xEFF7, 0x912D},+    {0xEFF8, 0x914A},+    {0xEFF9, 0x91D8},+    {0xEFFA, 0x9266},+    {0xEFFB, 0x92CC},+    {0xEFFC, 0x9320},+    {0xEFFD, 0x9706},+    {0xEFFE, 0x9756},+    {0xF0A1, 0x975C},+    {0xF0A2, 0x9802},+    {0xF0A3, 0x9F0E},+    {0xF0A4, 0x5236},+    {0xF0A5, 0x5291},+    {0xF0A6, 0x557C},+    {0xF0A7, 0x5824},+    {0xF0A8, 0x5E1D},+    {0xF0A9, 0x5F1F},+    {0xF0AA, 0x608C},+    {0xF0AB, 0x63D0},+    {0xF0AC, 0x68AF},+    {0xF0AD, 0x6FDF},+    {0xF0AE, 0x796D},+    {0xF0AF, 0x7B2C},+    {0xF0B0, 0x81CD},+    {0xF0B1, 0x85BA},+    {0xF0B2, 0x88FD},+    {0xF0B3, 0x8AF8},+    {0xF0B4, 0x8E44},+    {0xF0B5, 0x918D},+    {0xF0B6, 0x9664},+    {0xF0B7, 0x969B},+    {0xF0B8, 0x973D},+    {0xF0B9, 0x984C},+    {0xF0BA, 0x9F4A},+    {0xF0BB, 0x4FCE},+    {0xF0BC, 0x5146},+    {0xF0BD, 0x51CB},+    {0xF0BE, 0x52A9},+    {0xF0BF, 0x5632},+    {0xF0C0, 0x5F14},+    {0xF0C1, 0x5F6B},+    {0xF0C2, 0x63AA},+    {0xF0C3, 0x64CD},+    {0xF0C4, 0x65E9},+    {0xF0C5, 0x6641},+    {0xF0C6, 0x66FA},+    {0xF0C7, 0x66F9},+    {0xF0C8, 0x671D},+    {0xF0C9, 0x689D},+    {0xF0CA, 0x68D7},+    {0xF0CB, 0x69FD},+    {0xF0CC, 0x6F15},+    {0xF0CD, 0x6F6E},+    {0xF0CE, 0x7167},+    {0xF0CF, 0x71E5},+    {0xF0D0, 0x722A},+    {0xF0D1, 0x74AA},+    {0xF0D2, 0x773A},+    {0xF0D3, 0x7956},+    {0xF0D4, 0x795A},+    {0xF0D5, 0x79DF},+    {0xF0D6, 0x7A20},+    {0xF0D7, 0x7A95},+    {0xF0D8, 0x7C97},+    {0xF0D9, 0x7CDF},+    {0xF0DA, 0x7D44},+    {0xF0DB, 0x7E70},+    {0xF0DC, 0x8087},+    {0xF0DD, 0x85FB},+    {0xF0DE, 0x86A4},+    {0xF0DF, 0x8A54},+    {0xF0E0, 0x8ABF},+    {0xF0E1, 0x8D99},+    {0xF0E2, 0x8E81},+    {0xF0E3, 0x9020},+    {0xF0E4, 0x906D},+    {0xF0E5, 0x91E3},+    {0xF0E6, 0x963B},+    {0xF0E7, 0x96D5},+    {0xF0E8, 0x9CE5},+    {0xF0E9, 0x65CF},+    {0xF0EA, 0x7C07},+    {0xF0EB, 0x8DB3},+    {0xF0EC, 0x93C3},+    {0xF0ED, 0x5B58},+    {0xF0EE, 0x5C0A},+    {0xF0EF, 0x5352},+    {0xF0F0, 0x62D9},+    {0xF0F1, 0x731D},+    {0xF0F2, 0x5027},+    {0xF0F3, 0x5B97},+    {0xF0F4, 0x5F9E},+    {0xF0F5, 0x60B0},+    {0xF0F6, 0x616B},+    {0xF0F7, 0x68D5},+    {0xF0F8, 0x6DD9},+    {0xF0F9, 0x742E},+    {0xF0FA, 0x7A2E},+    {0xF0FB, 0x7D42},+    {0xF0FC, 0x7D9C},+    {0xF0FD, 0x7E31},+    {0xF0FE, 0x816B},+    {0xF1A1, 0x8E2A},+    {0xF1A2, 0x8E35},+    {0xF1A3, 0x937E},+    {0xF1A4, 0x9418},+    {0xF1A5, 0x4F50},+    {0xF1A6, 0x5750},+    {0xF1A7, 0x5DE6},+    {0xF1A8, 0x5EA7},+    {0xF1A9, 0x632B},+    {0xF1AA, 0x7F6A},+    {0xF1AB, 0x4E3B},+    {0xF1AC, 0x4F4F},+    {0xF1AD, 0x4F8F},+    {0xF1AE, 0x505A},+    {0xF1AF, 0x59DD},+    {0xF1B0, 0x80C4},+    {0xF1B1, 0x546A},+    {0xF1B2, 0x5468},+    {0xF1B3, 0x55FE},+    {0xF1B4, 0x594F},+    {0xF1B5, 0x5B99},+    {0xF1B6, 0x5DDE},+    {0xF1B7, 0x5EDA},+    {0xF1B8, 0x665D},+    {0xF1B9, 0x6731},+    {0xF1BA, 0x67F1},+    {0xF1BB, 0x682A},+    {0xF1BC, 0x6CE8},+    {0xF1BD, 0x6D32},+    {0xF1BE, 0x6E4A},+    {0xF1BF, 0x6F8D},+    {0xF1C0, 0x70B7},+    {0xF1C1, 0x73E0},+    {0xF1C2, 0x7587},+    {0xF1C3, 0x7C4C},+    {0xF1C4, 0x7D02},+    {0xF1C5, 0x7D2C},+    {0xF1C6, 0x7DA2},+    {0xF1C7, 0x821F},+    {0xF1C8, 0x86DB},+    {0xF1C9, 0x8A3B},+    {0xF1CA, 0x8A85},+    {0xF1CB, 0x8D70},+    {0xF1CC, 0x8E8A},+    {0xF1CD, 0x8F33},+    {0xF1CE, 0x9031},+    {0xF1CF, 0x914E},+    {0xF1D0, 0x9152},+    {0xF1D1, 0x9444},+    {0xF1D2, 0x99D0},+    {0xF1D3, 0x7AF9},+    {0xF1D4, 0x7CA5},+    {0xF1D5, 0x4FCA},+    {0xF1D6, 0x5101},+    {0xF1D7, 0x51C6},+    {0xF1D8, 0x57C8},+    {0xF1D9, 0x5BEF},+    {0xF1DA, 0x5CFB},+    {0xF1DB, 0x6659},+    {0xF1DC, 0x6A3D},+    {0xF1DD, 0x6D5A},+    {0xF1DE, 0x6E96},+    {0xF1DF, 0x6FEC},+    {0xF1E0, 0x710C},+    {0xF1E1, 0x756F},+    {0xF1E2, 0x7AE3},+    {0xF1E3, 0x8822},+    {0xF1E4, 0x9021},+    {0xF1E5, 0x9075},+    {0xF1E6, 0x96CB},+    {0xF1E7, 0x99FF},+    {0xF1E8, 0x8301},+    {0xF1E9, 0x4E2D},+    {0xF1EA, 0x4EF2},+    {0xF1EB, 0x8846},+    {0xF1EC, 0x91CD},+    {0xF1ED, 0x537D},+    {0xF1EE, 0x6ADB},+    {0xF1EF, 0x696B},+    {0xF1F0, 0x6C41},+    {0xF1F1, 0x847A},+    {0xF1F2, 0x589E},+    {0xF1F3, 0x618E},+    {0xF1F4, 0x66FE},+    {0xF1F5, 0x62EF},+    {0xF1F6, 0x70DD},+    {0xF1F7, 0x7511},+    {0xF1F8, 0x75C7},+    {0xF1F9, 0x7E52},+    {0xF1FA, 0x84B8},+    {0xF1FB, 0x8B49},+    {0xF1FC, 0x8D08},+    {0xF1FD, 0x4E4B},+    {0xF1FE, 0x53EA},+    {0xF2A1, 0x54AB},+    {0xF2A2, 0x5730},+    {0xF2A3, 0x5740},+    {0xF2A4, 0x5FD7},+    {0xF2A5, 0x6301},+    {0xF2A6, 0x6307},+    {0xF2A7, 0x646F},+    {0xF2A8, 0x652F},+    {0xF2A9, 0x65E8},+    {0xF2AA, 0x667A},+    {0xF2AB, 0x679D},+    {0xF2AC, 0x67B3},+    {0xF2AD, 0x6B62},+    {0xF2AE, 0x6C60},+    {0xF2AF, 0x6C9A},+    {0xF2B0, 0x6F2C},+    {0xF2B1, 0x77E5},+    {0xF2B2, 0x7825},+    {0xF2B3, 0x7949},+    {0xF2B4, 0x7957},+    {0xF2B5, 0x7D19},+    {0xF2B6, 0x80A2},+    {0xF2B7, 0x8102},+    {0xF2B8, 0x81F3},+    {0xF2B9, 0x829D},+    {0xF2BA, 0x82B7},+    {0xF2BB, 0x8718},+    {0xF2BC, 0x8A8C},+    {0xF2BD, 0xF9FC},+    {0xF2BE, 0x8D04},+    {0xF2BF, 0x8DBE},+    {0xF2C0, 0x9072},+    {0xF2C1, 0x76F4},+    {0xF2C2, 0x7A19},+    {0xF2C3, 0x7A37},+    {0xF2C4, 0x7E54},+    {0xF2C5, 0x8077},+    {0xF2C6, 0x5507},+    {0xF2C7, 0x55D4},+    {0xF2C8, 0x5875},+    {0xF2C9, 0x632F},+    {0xF2CA, 0x6422},+    {0xF2CB, 0x6649},+    {0xF2CC, 0x664B},+    {0xF2CD, 0x686D},+    {0xF2CE, 0x699B},+    {0xF2CF, 0x6B84},+    {0xF2D0, 0x6D25},+    {0xF2D1, 0x6EB1},+    {0xF2D2, 0x73CD},+    {0xF2D3, 0x7468},+    {0xF2D4, 0x74A1},+    {0xF2D5, 0x755B},+    {0xF2D6, 0x75B9},+    {0xF2D7, 0x76E1},+    {0xF2D8, 0x771E},+    {0xF2D9, 0x778B},+    {0xF2DA, 0x79E6},+    {0xF2DB, 0x7E09},+    {0xF2DC, 0x7E1D},+    {0xF2DD, 0x81FB},+    {0xF2DE, 0x852F},+    {0xF2DF, 0x8897},+    {0xF2E0, 0x8A3A},+    {0xF2E1, 0x8CD1},+    {0xF2E2, 0x8EEB},+    {0xF2E3, 0x8FB0},+    {0xF2E4, 0x9032},+    {0xF2E5, 0x93AD},+    {0xF2E6, 0x9663},+    {0xF2E7, 0x9673},+    {0xF2E8, 0x9707},+    {0xF2E9, 0x4F84},+    {0xF2EA, 0x53F1},+    {0xF2EB, 0x59EA},+    {0xF2EC, 0x5AC9},+    {0xF2ED, 0x5E19},+    {0xF2EE, 0x684E},+    {0xF2EF, 0x74C6},+    {0xF2F0, 0x75BE},+    {0xF2F1, 0x79E9},+    {0xF2F2, 0x7A92},+    {0xF2F3, 0x81A3},+    {0xF2F4, 0x86ED},+    {0xF2F5, 0x8CEA},+    {0xF2F6, 0x8DCC},+    {0xF2F7, 0x8FED},+    {0xF2F8, 0x659F},+    {0xF2F9, 0x6715},+    {0xF2FA, 0x4EC0},+    {0xF2FB, 0x57F7},+    {0xF2FC, 0x6F57},+    {0xF2FD, 0x7DDD},+    {0xF2FE, 0x8F2F},+    {0xF3A1, 0x93F6},+    {0xF3A2, 0x96C6},+    {0xF3A3, 0x5FB5},+    {0xF3A4, 0x61F2},+    {0xF3A5, 0x6F84},+    {0xF3A6, 0x4E14},+    {0xF3A7, 0x4F98},+    {0xF3A8, 0x501F},+    {0xF3A9, 0x53C9},+    {0xF3AA, 0x55DF},+    {0xF3AB, 0x5D6F},+    {0xF3AC, 0x5DEE},+    {0xF3AD, 0x6B21},+    {0xF3AE, 0x6B64},+    {0xF3AF, 0x78CB},+    {0xF3B0, 0x7B9A},+    {0xF3B1, 0xF9FE},+    {0xF3B2, 0x8E49},+    {0xF3B3, 0x8ECA},+    {0xF3B4, 0x906E},+    {0xF3B5, 0x6349},+    {0xF3B6, 0x643E},+    {0xF3B7, 0x7740},+    {0xF3B8, 0x7A84},+    {0xF3B9, 0x932F},+    {0xF3BA, 0x947F},+    {0xF3BB, 0x9F6A},+    {0xF3BC, 0x64B0},+    {0xF3BD, 0x6FAF},+    {0xF3BE, 0x71E6},+    {0xF3BF, 0x74A8},+    {0xF3C0, 0x74DA},+    {0xF3C1, 0x7AC4},+    {0xF3C2, 0x7C12},+    {0xF3C3, 0x7E82},+    {0xF3C4, 0x7CB2},+    {0xF3C5, 0x7E98},+    {0xF3C6, 0x8B9A},+    {0xF3C7, 0x8D0A},+    {0xF3C8, 0x947D},+    {0xF3C9, 0x9910},+    {0xF3CA, 0x994C},+    {0xF3CB, 0x5239},+    {0xF3CC, 0x5BDF},+    {0xF3CD, 0x64E6},+    {0xF3CE, 0x672D},+    {0xF3CF, 0x7D2E},+    {0xF3D0, 0x50ED},+    {0xF3D1, 0xF96B},+    {0xF3D2, 0x5879},+    {0xF3D3, 0x6158},+    {0xF3D4, 0x6159},+    {0xF3D5, 0x61FA},+    {0xF3D6, 0x65AC},+    {0xF3D7, 0x7AD9},+    {0xF3D8, 0x8B92},+    {0xF3D9, 0x8B96},+    {0xF3DA, 0x5009},+    {0xF3DB, 0x5021},+    {0xF3DC, 0x5275},+    {0xF3DD, 0x5531},+    {0xF3DE, 0x5A3C},+    {0xF3DF, 0x5EE0},+    {0xF3E0, 0x5F70},+    {0xF3E1, 0x6134},+    {0xF3E2, 0x655E},+    {0xF3E3, 0x660C},+    {0xF3E4, 0x6636},+    {0xF3E5, 0x66A2},+    {0xF3E6, 0x69CD},+    {0xF3E7, 0x6EC4},+    {0xF3E8, 0x6F32},+    {0xF3E9, 0x7316},+    {0xF3EA, 0x7621},+    {0xF3EB, 0x7A93},+    {0xF3EC, 0x8139},+    {0xF3ED, 0x8259},+    {0xF3EE, 0x83D6},+    {0xF3EF, 0x84BC},+    {0xF3F0, 0x50B5},+    {0xF3F1, 0x57F0},+    {0xF3F2, 0x5BC0},+    {0xF3F3, 0x5BE8},+    {0xF3F4, 0x5F69},+    {0xF3F5, 0x63A1},+    {0xF3F6, 0x7826},+    {0xF3F7, 0x7DB5},+    {0xF3F8, 0x83DC},+    {0xF3F9, 0x8521},+    {0xF3FA, 0x91C7},+    {0xF3FB, 0x91F5},+    {0xF3FC, 0x518A},+    {0xF3FD, 0x67F5},+    {0xF3FE, 0x7B56},+    {0xF4A1, 0x8CAC},+    {0xF4A2, 0x51C4},+    {0xF4A3, 0x59BB},+    {0xF4A4, 0x60BD},+    {0xF4A5, 0x8655},+    {0xF4A6, 0x501C},+    {0xF4A7, 0xF9FF},+    {0xF4A8, 0x5254},+    {0xF4A9, 0x5C3A},+    {0xF4AA, 0x617D},+    {0xF4AB, 0x621A},+    {0xF4AC, 0x62D3},+    {0xF4AD, 0x64F2},+    {0xF4AE, 0x65A5},+    {0xF4AF, 0x6ECC},+    {0xF4B0, 0x7620},+    {0xF4B1, 0x810A},+    {0xF4B2, 0x8E60},+    {0xF4B3, 0x965F},+    {0xF4B4, 0x96BB},+    {0xF4B5, 0x4EDF},+    {0xF4B6, 0x5343},+    {0xF4B7, 0x5598},+    {0xF4B8, 0x5929},+    {0xF4B9, 0x5DDD},+    {0xF4BA, 0x64C5},+    {0xF4BB, 0x6CC9},+    {0xF4BC, 0x6DFA},+    {0xF4BD, 0x7394},+    {0xF4BE, 0x7A7F},+    {0xF4BF, 0x821B},+    {0xF4C0, 0x85A6},+    {0xF4C1, 0x8CE4},+    {0xF4C2, 0x8E10},+    {0xF4C3, 0x9077},+    {0xF4C4, 0x91E7},+    {0xF4C5, 0x95E1},+    {0xF4C6, 0x9621},+    {0xF4C7, 0x97C6},+    {0xF4C8, 0x51F8},+    {0xF4C9, 0x54F2},+    {0xF4CA, 0x5586},+    {0xF4CB, 0x5FB9},+    {0xF4CC, 0x64A4},+    {0xF4CD, 0x6F88},+    {0xF4CE, 0x7DB4},+    {0xF4CF, 0x8F1F},+    {0xF4D0, 0x8F4D},+    {0xF4D1, 0x9435},+    {0xF4D2, 0x50C9},+    {0xF4D3, 0x5C16},+    {0xF4D4, 0x6CBE},+    {0xF4D5, 0x6DFB},+    {0xF4D6, 0x751B},+    {0xF4D7, 0x77BB},+    {0xF4D8, 0x7C3D},+    {0xF4D9, 0x7C64},+    {0xF4DA, 0x8A79},+    {0xF4DB, 0x8AC2},+    {0xF4DC, 0x581E},+    {0xF4DD, 0x59BE},+    {0xF4DE, 0x5E16},+    {0xF4DF, 0x6377},+    {0xF4E0, 0x7252},+    {0xF4E1, 0x758A},+    {0xF4E2, 0x776B},+    {0xF4E3, 0x8ADC},+    {0xF4E4, 0x8CBC},+    {0xF4E5, 0x8F12},+    {0xF4E6, 0x5EF3},+    {0xF4E7, 0x6674},+    {0xF4E8, 0x6DF8},+    {0xF4E9, 0x807D},+    {0xF4EA, 0x83C1},+    {0xF4EB, 0x8ACB},+    {0xF4EC, 0x9751},+    {0xF4ED, 0x9BD6},+    {0xF4EE, 0x5207},+    {0xF4EF, 0x5243},+    {0xF4F0, 0x66FF},+    {0xF4F1, 0x6D95},+    {0xF4F2, 0x6EEF},+    {0xF4F3, 0x7DE0},+    {0xF4F4, 0x8AE6},+    {0xF4F5, 0x902E},+    {0xF4F6, 0x905E},+    {0xF4F7, 0x9AD4},+    {0xF4F8, 0x521D},+    {0xF4F9, 0x527F},+    {0xF4FA, 0x54E8},+    {0xF4FB, 0x6194},+    {0xF4FC, 0x6284},+    {0xF4FD, 0x62DB},+    {0xF4FE, 0x68A2},+    {0xF5A1, 0x6912},+    {0xF5A2, 0x695A},+    {0xF5A3, 0x6A35},+    {0xF5A4, 0x7092},+    {0xF5A5, 0x7126},+    {0xF5A6, 0x785D},+    {0xF5A7, 0x7901},+    {0xF5A8, 0x790E},+    {0xF5A9, 0x79D2},+    {0xF5AA, 0x7A0D},+    {0xF5AB, 0x8096},+    {0xF5AC, 0x8278},+    {0xF5AD, 0x82D5},+    {0xF5AE, 0x8349},+    {0xF5AF, 0x8549},+    {0xF5B0, 0x8C82},+    {0xF5B1, 0x8D85},+    {0xF5B2, 0x9162},+    {0xF5B3, 0x918B},+    {0xF5B4, 0x91AE},+    {0xF5B5, 0x4FC3},+    {0xF5B6, 0x56D1},+    {0xF5B7, 0x71ED},+    {0xF5B8, 0x77D7},+    {0xF5B9, 0x8700},+    {0xF5BA, 0x89F8},+    {0xF5BB, 0x5BF8},+    {0xF5BC, 0x5FD6},+    {0xF5BD, 0x6751},+    {0xF5BE, 0x90A8},+    {0xF5BF, 0x53E2},+    {0xF5C0, 0x585A},+    {0xF5C1, 0x5BF5},+    {0xF5C2, 0x60A4},+    {0xF5C3, 0x6181},+    {0xF5C4, 0x6460},+    {0xF5C5, 0x7E3D},+    {0xF5C6, 0x8070},+    {0xF5C7, 0x8525},+    {0xF5C8, 0x9283},+    {0xF5C9, 0x64AE},+    {0xF5CA, 0x50AC},+    {0xF5CB, 0x5D14},+    {0xF5CC, 0x6700},+    {0xF5CD, 0x589C},+    {0xF5CE, 0x62BD},+    {0xF5CF, 0x63A8},+    {0xF5D0, 0x690E},+    {0xF5D1, 0x6978},+    {0xF5D2, 0x6A1E},+    {0xF5D3, 0x6E6B},+    {0xF5D4, 0x76BA},+    {0xF5D5, 0x79CB},+    {0xF5D6, 0x82BB},+    {0xF5D7, 0x8429},+    {0xF5D8, 0x8ACF},+    {0xF5D9, 0x8DA8},+    {0xF5DA, 0x8FFD},+    {0xF5DB, 0x9112},+    {0xF5DC, 0x914B},+    {0xF5DD, 0x919C},+    {0xF5DE, 0x9310},+    {0xF5DF, 0x9318},+    {0xF5E0, 0x939A},+    {0xF5E1, 0x96DB},+    {0xF5E2, 0x9A36},+    {0xF5E3, 0x9C0D},+    {0xF5E4, 0x4E11},+    {0xF5E5, 0x755C},+    {0xF5E6, 0x795D},+    {0xF5E7, 0x7AFA},+    {0xF5E8, 0x7B51},+    {0xF5E9, 0x7BC9},+    {0xF5EA, 0x7E2E},+    {0xF5EB, 0x84C4},+    {0xF5EC, 0x8E59},+    {0xF5ED, 0x8E74},+    {0xF5EE, 0x8EF8},+    {0xF5EF, 0x9010},+    {0xF5F0, 0x6625},+    {0xF5F1, 0x693F},+    {0xF5F2, 0x7443},+    {0xF5F3, 0x51FA},+    {0xF5F4, 0x672E},+    {0xF5F5, 0x9EDC},+    {0xF5F6, 0x5145},+    {0xF5F7, 0x5FE0},+    {0xF5F8, 0x6C96},+    {0xF5F9, 0x87F2},+    {0xF5FA, 0x885D},+    {0xF5FB, 0x8877},+    {0xF5FC, 0x60B4},+    {0xF5FD, 0x81B5},+    {0xF5FE, 0x8403},+    {0xF6A1, 0x8D05},+    {0xF6A2, 0x53D6},+    {0xF6A3, 0x5439},+    {0xF6A4, 0x5634},+    {0xF6A5, 0x5A36},+    {0xF6A6, 0x5C31},+    {0xF6A7, 0x708A},+    {0xF6A8, 0x7FE0},+    {0xF6A9, 0x805A},+    {0xF6AA, 0x8106},+    {0xF6AB, 0x81ED},+    {0xF6AC, 0x8DA3},+    {0xF6AD, 0x9189},+    {0xF6AE, 0x9A5F},+    {0xF6AF, 0x9DF2},+    {0xF6B0, 0x5074},+    {0xF6B1, 0x4EC4},+    {0xF6B2, 0x53A0},+    {0xF6B3, 0x60FB},+    {0xF6B4, 0x6E2C},+    {0xF6B5, 0x5C64},+    {0xF6B6, 0x4F88},+    {0xF6B7, 0x5024},+    {0xF6B8, 0x55E4},+    {0xF6B9, 0x5CD9},+    {0xF6BA, 0x5E5F},+    {0xF6BB, 0x6065},+    {0xF6BC, 0x6894},+    {0xF6BD, 0x6CBB},+    {0xF6BE, 0x6DC4},+    {0xF6BF, 0x71BE},+    {0xF6C0, 0x75D4},+    {0xF6C1, 0x75F4},+    {0xF6C2, 0x7661},+    {0xF6C3, 0x7A1A},+    {0xF6C4, 0x7A49},+    {0xF6C5, 0x7DC7},+    {0xF6C6, 0x7DFB},+    {0xF6C7, 0x7F6E},+    {0xF6C8, 0x81F4},+    {0xF6C9, 0x86A9},+    {0xF6CA, 0x8F1C},+    {0xF6CB, 0x96C9},+    {0xF6CC, 0x99B3},+    {0xF6CD, 0x9F52},+    {0xF6CE, 0x5247},+    {0xF6CF, 0x52C5},+    {0xF6D0, 0x98ED},+    {0xF6D1, 0x89AA},+    {0xF6D2, 0x4E03},+    {0xF6D3, 0x67D2},+    {0xF6D4, 0x6F06},+    {0xF6D5, 0x4FB5},+    {0xF6D6, 0x5BE2},+    {0xF6D7, 0x6795},+    {0xF6D8, 0xF972},+    {0xF6D9, 0x6D78},+    {0xF6DA, 0x741B},+    {0xF6DB, 0x7827},+    {0xF6DC, 0x91DD},+    {0xF6DD, 0x937C},+    {0xF6DE, 0x87C4},+    {0xF6DF, 0x79E4},+    {0xF6E0, 0x7A31},+    {0xF6E1, 0x5FEB},+    {0xF6E2, 0x4ED6},+    {0xF6E3, 0x54A4},+    {0xF6E4, 0x553E},+    {0xF6E5, 0x58AE},+    {0xF6E6, 0x59A5},+    {0xF6E7, 0x60F0},+    {0xF6E8, 0x6253},+    {0xF6E9, 0x62D6},+    {0xF6EA, 0x6736},+    {0xF6EB, 0x6955},+    {0xF6EC, 0x8235},+    {0xF6ED, 0x9640},+    {0xF6EE, 0x99B1},+    {0xF6EF, 0x99DD},+    {0xF6F0, 0x502C},+    {0xF6F1, 0x5353},+    {0xF6F2, 0x5544},+    {0xF6F3, 0x577C},+    {0xF6F4, 0xFA01},+    {0xF6F5, 0x6258},+    {0xF6F6, 0x62D3},+    {0xF6F7, 0x64E2},+    {0xF6F8, 0x666B},+    {0xF6F9, 0x67DD},+    {0xF6FA, 0x6FC1},+    {0xF6FB, 0x6FEF},+    {0xF6FC, 0x7422},+    {0xF6FD, 0x7438},+    {0xF6FE, 0x8A17},+    {0xF7A1, 0x9438},+    {0xF7A2, 0x5451},+    {0xF7A3, 0x5606},+    {0xF7A4, 0x5766},+    {0xF7A5, 0x5F48},+    {0xF7A6, 0x619A},+    {0xF7A7, 0x6B4E},+    {0xF7A8, 0x7058},+    {0xF7A9, 0x70AD},+    {0xF7AA, 0x7DBB},+    {0xF7AB, 0x8A95},+    {0xF7AC, 0x596A},+    {0xF7AD, 0x812B},+    {0xF7AE, 0x63A2},+    {0xF7AF, 0x7708},+    {0xF7B0, 0x803D},+    {0xF7B1, 0x8CAA},+    {0xF7B2, 0x5854},+    {0xF7B3, 0x642D},+    {0xF7B4, 0x69BB},+    {0xF7B5, 0x5B95},+    {0xF7B6, 0x5E11},+    {0xF7B7, 0x6E6F},+    {0xF7B8, 0xFA03},+    {0xF7B9, 0x8569},+    {0xF7BA, 0x514C},+    {0xF7BB, 0x53F0},+    {0xF7BC, 0x592A},+    {0xF7BD, 0x6020},+    {0xF7BE, 0x614B},+    {0xF7BF, 0x6B86},+    {0xF7C0, 0x6C70},+    {0xF7C1, 0x6CF0},+    {0xF7C2, 0x7B1E},+    {0xF7C3, 0x80CE},+    {0xF7C4, 0x82D4},+    {0xF7C5, 0x8DC6},+    {0xF7C6, 0x90B0},+    {0xF7C7, 0x98B1},+    {0xF7C8, 0xFA04},+    {0xF7C9, 0x64C7},+    {0xF7CA, 0x6FA4},+    {0xF7CB, 0x6491},+    {0xF7CC, 0x6504},+    {0xF7CD, 0x514E},+    {0xF7CE, 0x5410},+    {0xF7CF, 0x571F},+    {0xF7D0, 0x8A0E},+    {0xF7D1, 0x615F},+    {0xF7D2, 0x6876},+    {0xF7D3, 0xFA05},+    {0xF7D4, 0x75DB},+    {0xF7D5, 0x7B52},+    {0xF7D6, 0x7D71},+    {0xF7D7, 0x901A},+    {0xF7D8, 0x5806},+    {0xF7D9, 0x69CC},+    {0xF7DA, 0x817F},+    {0xF7DB, 0x892A},+    {0xF7DC, 0x9000},+    {0xF7DD, 0x9839},+    {0xF7DE, 0x5078},+    {0xF7DF, 0x5957},+    {0xF7E0, 0x59AC},+    {0xF7E1, 0x6295},+    {0xF7E2, 0x900F},+    {0xF7E3, 0x9B2A},+    {0xF7E4, 0x615D},+    {0xF7E5, 0x7279},+    {0xF7E6, 0x95D6},+    {0xF7E7, 0x5761},+    {0xF7E8, 0x5A46},+    {0xF7E9, 0x5DF4},+    {0xF7EA, 0x628A},+    {0xF7EB, 0x64AD},+    {0xF7EC, 0x64FA},+    {0xF7ED, 0x6777},+    {0xF7EE, 0x6CE2},+    {0xF7EF, 0x6D3E},+    {0xF7F0, 0x722C},+    {0xF7F1, 0x7436},+    {0xF7F2, 0x7834},+    {0xF7F3, 0x7F77},+    {0xF7F4, 0x82AD},+    {0xF7F5, 0x8DDB},+    {0xF7F6, 0x9817},+    {0xF7F7, 0x5224},+    {0xF7F8, 0x5742},+    {0xF7F9, 0x677F},+    {0xF7FA, 0x7248},+    {0xF7FB, 0x74E3},+    {0xF7FC, 0x8CA9},+    {0xF7FD, 0x8FA6},+    {0xF7FE, 0x9211},+    {0xF8A1, 0x962A},+    {0xF8A2, 0x516B},+    {0xF8A3, 0x53ED},+    {0xF8A4, 0x634C},+    {0xF8A5, 0x4F69},+    {0xF8A6, 0x5504},+    {0xF8A7, 0x6096},+    {0xF8A8, 0x6557},+    {0xF8A9, 0x6C9B},+    {0xF8AA, 0x6D7F},+    {0xF8AB, 0x724C},+    {0xF8AC, 0x72FD},+    {0xF8AD, 0x7A17},+    {0xF8AE, 0x8987},+    {0xF8AF, 0x8C9D},+    {0xF8B0, 0x5F6D},+    {0xF8B1, 0x6F8E},+    {0xF8B2, 0x70F9},+    {0xF8B3, 0x81A8},+    {0xF8B4, 0x610E},+    {0xF8B5, 0xF965},+    {0xF8B6, 0x504F},+    {0xF8B7, 0x6241},+    {0xF8B8, 0x7247},+    {0xF8B9, 0x7BC7},+    {0xF8BA, 0x7DE8},+    {0xF8BB, 0x7FE9},+    {0xF8BC, 0x904D},+    {0xF8BD, 0x97AD},+    {0xF8BE, 0x9A19},+    {0xF8BF, 0x8CB6},+    {0xF8C0, 0x576A},+    {0xF8C1, 0x5E73},+    {0xF8C2, 0x67B0},+    {0xF8C3, 0x840D},+    {0xF8C4, 0x8A55},+    {0xF8C5, 0x5420},+    {0xF8C6, 0x5B16},+    {0xF8C7, 0x5E63},+    {0xF8C8, 0x5EE2},+    {0xF8C9, 0x5F0A},+    {0xF8CA, 0x6583},+    {0xF8CB, 0x80BA},+    {0xF8CC, 0x853D},+    {0xF8CD, 0x9589},+    {0xF8CE, 0x965B},+    {0xF8CF, 0x4F48},+    {0xF8D0, 0x5305},+    {0xF8D1, 0x530D},+    {0xF8D2, 0x530F},+    {0xF8D3, 0x5486},+    {0xF8D4, 0x54FA},+    {0xF8D5, 0x5703},+    {0xF8D6, 0x5E03},+    {0xF8D7, 0x6016},+    {0xF8D8, 0x629B},+    {0xF8D9, 0x62B1},+    {0xF8DA, 0x6355},+    {0xF8DB, 0xFA06},+    {0xF8DC, 0x6CE1},+    {0xF8DD, 0x6D66},+    {0xF8DE, 0x75B1},+    {0xF8DF, 0x7832},+    {0xF8E0, 0x80DE},+    {0xF8E1, 0x812F},+    {0xF8E2, 0x82DE},+    {0xF8E3, 0x8461},+    {0xF8E4, 0x84B2},+    {0xF8E5, 0x888D},+    {0xF8E6, 0x8912},+    {0xF8E7, 0x900B},+    {0xF8E8, 0x92EA},+    {0xF8E9, 0x98FD},+    {0xF8EA, 0x9B91},+    {0xF8EB, 0x5E45},+    {0xF8EC, 0xFA06},+    {0xF8ED, 0x66DD},+    {0xF8EE, 0x7011},+    {0xF8EF, 0x7206},+    {0xF8F0, 0x8F3B},+    {0xF8F1, 0x4FF5},+    {0xF8F2, 0x527D},+    {0xF8F3, 0x5F6A},+    {0xF8F4, 0x6153},+    {0xF8F5, 0x6753},+    {0xF8F6, 0x6A19},+    {0xF8F7, 0x6F02},+    {0xF8F8, 0x74E2},+    {0xF8F9, 0x7968},+    {0xF8FA, 0x8868},+    {0xF8FB, 0x8C79},+    {0xF8FC, 0x98C7},+    {0xF8FD, 0x98C4},+    {0xF8FE, 0x9A43},+    {0xF9A1, 0x54C1},+    {0xF9A2, 0x7A1F},+    {0xF9A3, 0x6953},+    {0xF9A4, 0x8AF7},+    {0xF9A5, 0x8C4A},+    {0xF9A6, 0x98A8},+    {0xF9A7, 0x99AE},+    {0xF9A8, 0x5F7C},+    {0xF9A9, 0x62AB},+    {0xF9AA, 0x75B2},+    {0xF9AB, 0x76AE},+    {0xF9AC, 0x88AB},+    {0xF9AD, 0x907F},+    {0xF9AE, 0x9642},+    {0xF9AF, 0x5339},+    {0xF9B0, 0x5F3C},+    {0xF9B1, 0x5FC5},+    {0xF9B2, 0x6CCC},+    {0xF9B3, 0x73CC},+    {0xF9B4, 0x7562},+    {0xF9B5, 0x758B},+    {0xF9B6, 0x7B46},+    {0xF9B7, 0x82FE},+    {0xF9B8, 0x999D},+    {0xF9B9, 0x4E4F},+    {0xF9BA, 0x903C},+    {0xF9BB, 0x4E0B},+    {0xF9BC, 0x4F55},+    {0xF9BD, 0x53A6},+    {0xF9BE, 0x590F},+    {0xF9BF, 0x5EC8},+    {0xF9C0, 0x6630},+    {0xF9C1, 0x6CB3},+    {0xF9C2, 0x7455},+    {0xF9C3, 0x8377},+    {0xF9C4, 0x8766},+    {0xF9C5, 0x8CC0},+    {0xF9C6, 0x9050},+    {0xF9C7, 0x971E},+    {0xF9C8, 0x9C15},+    {0xF9C9, 0x58D1},+    {0xF9CA, 0x5B78},+    {0xF9CB, 0x8650},+    {0xF9CC, 0x8B14},+    {0xF9CD, 0x9DB4},+    {0xF9CE, 0x5BD2},+    {0xF9CF, 0x6068},+    {0xF9D0, 0x608D},+    {0xF9D1, 0x65F1},+    {0xF9D2, 0x6C57},+    {0xF9D3, 0x6F22},+    {0xF9D4, 0x6FA3},+    {0xF9D5, 0x701A},+    {0xF9D6, 0x7F55},+    {0xF9D7, 0x7FF0},+    {0xF9D8, 0x9591},+    {0xF9D9, 0x9592},+    {0xF9DA, 0x9650},+    {0xF9DB, 0x97D3},+    {0xF9DC, 0x5272},+    {0xF9DD, 0x8F44},+    {0xF9DE, 0x51FD},+    {0xF9DF, 0x542B},+    {0xF9E0, 0x54B8},+    {0xF9E1, 0x5563},+    {0xF9E2, 0x558A},+    {0xF9E3, 0x6ABB},+    {0xF9E4, 0x6DB5},+    {0xF9E5, 0x7DD8},+    {0xF9E6, 0x8266},+    {0xF9E7, 0x929C},+    {0xF9E8, 0x9677},+    {0xF9E9, 0x9E79},+    {0xF9EA, 0x5408},+    {0xF9EB, 0x54C8},+    {0xF9EC, 0x76D2},+    {0xF9ED, 0x86E4},+    {0xF9EE, 0x95A4},+    {0xF9EF, 0x95D4},+    {0xF9F0, 0x965C},+    {0xF9F1, 0x4EA2},+    {0xF9F2, 0x4F09},+    {0xF9F3, 0x59EE},+    {0xF9F4, 0x5AE6},+    {0xF9F5, 0x5DF7},+    {0xF9F6, 0x6052},+    {0xF9F7, 0x6297},+    {0xF9F8, 0x676D},+    {0xF9F9, 0x6841},+    {0xF9FA, 0x6C86},+    {0xF9FB, 0x6E2F},+    {0xF9FC, 0x7F38},+    {0xF9FD, 0x809B},+    {0xF9FE, 0x822A},+    {0xFAA1, 0xFA08},+    {0xFAA2, 0xFA09},+    {0xFAA3, 0x9805},+    {0xFAA4, 0x4EA5},+    {0xFAA5, 0x5055},+    {0xFAA6, 0x54B3},+    {0xFAA7, 0x5793},+    {0xFAA8, 0x595A},+    {0xFAA9, 0x5B69},+    {0xFAAA, 0x5BB3},+    {0xFAAB, 0x61C8},+    {0xFAAC, 0x6977},+    {0xFAAD, 0x6D77},+    {0xFAAE, 0x7023},+    {0xFAAF, 0x87F9},+    {0xFAB0, 0x89E3},+    {0xFAB1, 0x8A72},+    {0xFAB2, 0x8AE7},+    {0xFAB3, 0x9082},+    {0xFAB4, 0x99ED},+    {0xFAB5, 0x9AB8},+    {0xFAB6, 0x52BE},+    {0xFAB7, 0x6838},+    {0xFAB8, 0x5016},+    {0xFAB9, 0x5E78},+    {0xFABA, 0x674F},+    {0xFABB, 0x8347},+    {0xFABC, 0xFA08},+    {0xFABD, 0x4EAB},+    {0xFABE, 0x5411},+    {0xFABF, 0x56AE},+    {0xFAC0, 0x73E6},+    {0xFAC1, 0x9115},+    {0xFAC2, 0x97FF},+    {0xFAC3, 0x9909},+    {0xFAC4, 0x9957},+    {0xFAC5, 0x9999},+    {0xFAC6, 0x5653},+    {0xFAC7, 0x589F},+    {0xFAC8, 0x865B},+    {0xFAC9, 0x8A31},+    {0xFACA, 0x61B2},+    {0xFACB, 0x6AF6},+    {0xFACC, 0x737B},+    {0xFACD, 0x8ED2},+    {0xFACE, 0x6B47},+    {0xFACF, 0x96AA},+    {0xFAD0, 0x9A57},+    {0xFAD1, 0x5955},+    {0xFAD2, 0x7200},+    {0xFAD3, 0x8D6B},+    {0xFAD4, 0x9769},+    {0xFAD5, 0x4FD4},+    {0xFAD6, 0x5CF4},+    {0xFAD7, 0x5F26},+    {0xFAD8, 0x61F8},+    {0xFAD9, 0x665B},+    {0xFADA, 0x6CEB},+    {0xFADB, 0x70AB},+    {0xFADC, 0x7384},+    {0xFADD, 0x73B9},+    {0xFADE, 0x73FE},+    {0xFADF, 0x7729},+    {0xFAE0, 0x774D},+    {0xFAE1, 0x7D43},+    {0xFAE2, 0x7D62},+    {0xFAE3, 0x7E23},+    {0xFAE4, 0x8237},+    {0xFAE5, 0x8852},+    {0xFAE6, 0x898B},+    {0xFAE7, 0x8CE2},+    {0xFAE8, 0x9249},+    {0xFAE9, 0x986F},+    {0xFAEA, 0x5B51},+    {0xFAEB, 0x7A74},+    {0xFAEC, 0x8840},+    {0xFAED, 0x9801},+    {0xFAEE, 0x5ACC},+    {0xFAEF, 0x4FE0},+    {0xFAF0, 0x5354},+    {0xFAF1, 0x593E},+    {0xFAF2, 0x5CFD},+    {0xFAF3, 0x633E},+    {0xFAF4, 0x6D79},+    {0xFAF5, 0x72F9},+    {0xFAF6, 0x8105},+    {0xFAF7, 0x8107},+    {0xFAF8, 0x83A2},+    {0xFAF9, 0x92CF},+    {0xFAFA, 0x9830},+    {0xFAFB, 0x4EA8},+    {0xFAFC, 0x5144},+    {0xFAFD, 0x5211},+    {0xFAFE, 0x578B},+    {0xFBA1, 0x5F62},+    {0xFBA2, 0x6CC2},+    {0xFBA3, 0x6ECE},+    {0xFBA4, 0x7005},+    {0xFBA5, 0x7050},+    {0xFBA6, 0x70AF},+    {0xFBA7, 0x7192},+    {0xFBA8, 0x73E9},+    {0xFBA9, 0x7469},+    {0xFBAA, 0x834A},+    {0xFBAB, 0x87A2},+    {0xFBAC, 0x8861},+    {0xFBAD, 0x9008},+    {0xFBAE, 0x90A2},+    {0xFBAF, 0x93A3},+    {0xFBB0, 0x99A8},+    {0xFBB1, 0x516E},+    {0xFBB2, 0x5F57},+    {0xFBB3, 0x60E0},+    {0xFBB4, 0x6167},+    {0xFBB5, 0x66B3},+    {0xFBB6, 0x8559},+    {0xFBB7, 0x8E4A},+    {0xFBB8, 0x91AF},+    {0xFBB9, 0x978B},+    {0xFBBA, 0x4E4E},+    {0xFBBB, 0x4E92},+    {0xFBBC, 0x547C},+    {0xFBBD, 0x58D5},+    {0xFBBE, 0x58FA},+    {0xFBBF, 0x597D},+    {0xFBC0, 0x5CB5},+    {0xFBC1, 0x5F27},+    {0xFBC2, 0x6236},+    {0xFBC3, 0x6248},+    {0xFBC4, 0x660A},+    {0xFBC5, 0x6667},+    {0xFBC6, 0x6BEB},+    {0xFBC7, 0x6D69},+    {0xFBC8, 0x6DCF},+    {0xFBC9, 0x6E56},+    {0xFBCA, 0x6EF8},+    {0xFBCB, 0x6F94},+    {0xFBCC, 0x6FE0},+    {0xFBCD, 0x6FE9},+    {0xFBCE, 0x705D},+    {0xFBCF, 0x72D0},+    {0xFBD0, 0x7425},+    {0xFBD1, 0x745A},+    {0xFBD2, 0x74E0},+    {0xFBD3, 0x7693},+    {0xFBD4, 0x795C},+    {0xFBD5, 0x7CCA},+    {0xFBD6, 0x7E1E},+    {0xFBD7, 0x80E1},+    {0xFBD8, 0x82A6},+    {0xFBD9, 0x846B},+    {0xFBDA, 0x84BF},+    {0xFBDB, 0x864E},+    {0xFBDC, 0x865F},+    {0xFBDD, 0x8774},+    {0xFBDE, 0x8B77},+    {0xFBDF, 0x8C6A},+    {0xFBE0, 0x93AC},+    {0xFBE1, 0x9800},+    {0xFBE2, 0x9865},+    {0xFBE3, 0x60D1},+    {0xFBE4, 0x6216},+    {0xFBE5, 0x9177},+    {0xFBE6, 0x5A5A},+    {0xFBE7, 0x660F},+    {0xFBE8, 0x6DF7},+    {0xFBE9, 0x6E3E},+    {0xFBEA, 0x743F},+    {0xFBEB, 0x9B42},+    {0xFBEC, 0x5FFD},+    {0xFBED, 0x60DA},+    {0xFBEE, 0x7B0F},+    {0xFBEF, 0x54C4},+    {0xFBF0, 0x5F18},+    {0xFBF1, 0x6C5E},+    {0xFBF2, 0x6CD3},+    {0xFBF3, 0x6D2A},+    {0xFBF4, 0x70D8},+    {0xFBF5, 0x7D05},+    {0xFBF6, 0x8679},+    {0xFBF7, 0x8A0C},+    {0xFBF8, 0x9D3B},+    {0xFBF9, 0x5316},+    {0xFBFA, 0x548C},+    {0xFBFB, 0x5B05},+    {0xFBFC, 0x6A3A},+    {0xFBFD, 0x706B},+    {0xFBFE, 0x7575},+    {0xFCA1, 0x798D},+    {0xFCA2, 0x79BE},+    {0xFCA3, 0x82B1},+    {0xFCA4, 0x83EF},+    {0xFCA5, 0x8A71},+    {0xFCA6, 0x8B41},+    {0xFCA7, 0x8CA8},+    {0xFCA8, 0x9774},+    {0xFCA9, 0x5ED3},+    {0xFCAA, 0x64F4},+    {0xFCAB, 0x652B},+    {0xFCAC, 0x78BA},+    {0xFCAD, 0x78BB},+    {0xFCAE, 0x7A6B},+    {0xFCAF, 0x4E38},+    {0xFCB0, 0x559A},+    {0xFCB1, 0x5950},+    {0xFCB2, 0x5BA6},+    {0xFCB3, 0x5E7B},+    {0xFCB4, 0x60A3},+    {0xFCB5, 0x63DB},+    {0xFCB6, 0x6B61},+    {0xFCB7, 0x6665},+    {0xFCB8, 0x6853},+    {0xFCB9, 0x6E19},+    {0xFCBA, 0x7165},+    {0xFCBB, 0x74B0},+    {0xFCBC, 0x7D08},+    {0xFCBD, 0x9084},+    {0xFCBE, 0x9A69},+    {0xFCBF, 0x9C25},+    {0xFCC0, 0x6D3B},+    {0xFCC1, 0x6ED1},+    {0xFCC2, 0x733E},+    {0xFCC3, 0x8C41},+    {0xFCC4, 0x95CA},+    {0xFCC5, 0x51F0},+    {0xFCC6, 0x5E4C},+    {0xFCC7, 0x5FA8},+    {0xFCC8, 0x604D},+    {0xFCC9, 0x60F6},+    {0xFCCA, 0x6130},+    {0xFCCB, 0x614C},+    {0xFCCC, 0x6643},+    {0xFCCD, 0x6644},+    {0xFCCE, 0x69A5},+    {0xFCCF, 0x6CC1},+    {0xFCD0, 0x6E5F},+    {0xFCD1, 0x6EC9},+    {0xFCD2, 0x6F62},+    {0xFCD3, 0x714C},+    {0xFCD4, 0x749C},+    {0xFCD5, 0x7687},+    {0xFCD6, 0x7BC1},+    {0xFCD7, 0x7C27},+    {0xFCD8, 0x8352},+    {0xFCD9, 0x8757},+    {0xFCDA, 0x9051},+    {0xFCDB, 0x968D},+    {0xFCDC, 0x9EC3},+    {0xFCDD, 0x532F},+    {0xFCDE, 0x56DE},+    {0xFCDF, 0x5EFB},+    {0xFCE0, 0x5F8A},+    {0xFCE1, 0x6062},+    {0xFCE2, 0x6094},+    {0xFCE3, 0x61F7},+    {0xFCE4, 0x6666},+    {0xFCE5, 0x6703},+    {0xFCE6, 0x6A9C},+    {0xFCE7, 0x6DEE},+    {0xFCE8, 0x6FAE},+    {0xFCE9, 0x7070},+    {0xFCEA, 0x736A},+    {0xFCEB, 0x7E6A},+    {0xFCEC, 0x81BE},+    {0xFCED, 0x8334},+    {0xFCEE, 0x86D4},+    {0xFCEF, 0x8AA8},+    {0xFCF0, 0x8CC4},+    {0xFCF1, 0x5283},+    {0xFCF2, 0x7372},+    {0xFCF3, 0x5B96},+    {0xFCF4, 0x6A6B},+    {0xFCF5, 0x9404},+    {0xFCF6, 0x54EE},+    {0xFCF7, 0x5686},+    {0xFCF8, 0x5B5D},+    {0xFCF9, 0x6548},+    {0xFCFA, 0x6585},+    {0xFCFB, 0x66C9},+    {0xFCFC, 0x689F},+    {0xFCFD, 0x6D8D},+    {0xFCFE, 0x6DC6},+    {0xFDA1, 0x723B},+    {0xFDA2, 0x80B4},+    {0xFDA3, 0x9175},+    {0xFDA4, 0x9A4D},+    {0xFDA5, 0x4FAF},+    {0xFDA6, 0x5019},+    {0xFDA7, 0x539A},+    {0xFDA8, 0x540E},+    {0xFDA9, 0x543C},+    {0xFDAA, 0x5589},+    {0xFDAB, 0x55C5},+    {0xFDAC, 0x5E3F},+    {0xFDAD, 0x5F8C},+    {0xFDAE, 0x673D},+    {0xFDAF, 0x7166},+    {0xFDB0, 0x73DD},+    {0xFDB1, 0x9005},+    {0xFDB2, 0x52DB},+    {0xFDB3, 0x52F3},+    {0xFDB4, 0x5864},+    {0xFDB5, 0x58CE},+    {0xFDB6, 0x7104},+    {0xFDB7, 0x718F},+    {0xFDB8, 0x71FB},+    {0xFDB9, 0x85B0},+    {0xFDBA, 0x8A13},+    {0xFDBB, 0x6688},+    {0xFDBC, 0x85A8},+    {0xFDBD, 0x55A7},+    {0xFDBE, 0x6684},+    {0xFDBF, 0x714A},+    {0xFDC0, 0x8431},+    {0xFDC1, 0x5349},+    {0xFDC2, 0x5599},+    {0xFDC3, 0x6BC1},+    {0xFDC4, 0x5F59},+    {0xFDC5, 0x5FBD},+    {0xFDC6, 0x63EE},+    {0xFDC7, 0x6689},+    {0xFDC8, 0x7147},+    {0xFDC9, 0x8AF1},+    {0xFDCA, 0x8F1D},+    {0xFDCB, 0x9EBE},+    {0xFDCC, 0x4F11},+    {0xFDCD, 0x643A},+    {0xFDCE, 0x70CB},+    {0xFDCF, 0x7566},+    {0xFDD0, 0x8667},+    {0xFDD1, 0x6064},+    {0xFDD2, 0x8B4E},+    {0xFDD3, 0x9DF8},+    {0xFDD4, 0x5147},+    {0xFDD5, 0x51F6},+    {0xFDD6, 0x5308},+    {0xFDD7, 0x6D36},+    {0xFDD8, 0x80F8},+    {0xFDD9, 0x9ED1},+    {0xFDDA, 0x6615},+    {0xFDDB, 0x6B23},+    {0xFDDC, 0x7098},+    {0xFDDD, 0x75D5},+    {0xFDDE, 0x5403},+    {0xFDDF, 0x5C79},+    {0xFDE0, 0x7D07},+    {0xFDE1, 0x8A16},+    {0xFDE2, 0x6B20},+    {0xFDE3, 0x6B3D},+    {0xFDE4, 0x6B46},+    {0xFDE5, 0x5438},+    {0xFDE6, 0x6070},+    {0xFDE7, 0x6D3D},+    {0xFDE8, 0x7FD5},+    {0xFDE9, 0x8208},+    {0xFDEA, 0x50D6},+    {0xFDEB, 0x51DE},+    {0xFDEC, 0x559C},+    {0xFDED, 0x566B},+    {0xFDEE, 0x56CD},+    {0xFDEF, 0x59EC},+    {0xFDF0, 0x5B09},+    {0xFDF1, 0x5E0C},+    {0xFDF2, 0x6199},+    {0xFDF3, 0x6198},+    {0xFDF4, 0x6231},+    {0xFDF5, 0x665E},+    {0xFDF6, 0x66E6},+    {0xFDF7, 0x7199},+    {0xFDF8, 0x71B9},+    {0xFDF9, 0x71BA},+    {0xFDFA, 0x72A7},+    {0xFDFB, 0x79A7},+    {0xFDFC, 0x7A00},+    {0xFDFD, 0x7FB2},+    {0xFDFE, 0x8A70},+    {0xFFFF, 0xFFFF}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_KSCms_UHC_H[] = {+    {0x20, 0x7E, 1},+    {0x8141, 0x815A, 9333},+    {0x8161, 0x817A, 9359},+    {0x8181, 0x81FE, 9385},+    {0x8241, 0x825A, 9511},+    {0x8261, 0x827A, 9537},+    {0x8281, 0x82FE, 9563},+    {0x8341, 0x835A, 9689},+    {0x8361, 0x837A, 9715},+    {0x8381, 0x83FE, 9741},+    {0x8441, 0x845A, 9867},+    {0x8461, 0x847A, 9893},+    {0x8481, 0x84FE, 9919},+    {0x8541, 0x855A, 10045},+    {0x8561, 0x857A, 10071},+    {0x8581, 0x85FE, 10097},+    {0x8641, 0x865A, 10223},+    {0x8661, 0x867A, 10249},+    {0x8681, 0x86FE, 10275},+    {0x8741, 0x875A, 10401},+    {0x8761, 0x877A, 10427},+    {0x8781, 0x87FE, 10453},+    {0x8841, 0x885A, 10579},+    {0x8861, 0x887A, 10605},+    {0x8881, 0x88FE, 10631},+    {0x8941, 0x895A, 10757},+    {0x8961, 0x897A, 10783},+    {0x8981, 0x89FE, 10809},+    {0x8A41, 0x8A5A, 10935},+    {0x8A61, 0x8A7A, 10961},+    {0x8A81, 0x8AFE, 10987},+    {0x8B41, 0x8B5A, 11113},+    {0x8B61, 0x8B7A, 11139},+    {0x8B81, 0x8BFE, 11165},+    {0x8C41, 0x8C5A, 11291},+    {0x8C61, 0x8C7A, 11317},+    {0x8C81, 0x8CFE, 11343},+    {0x8D41, 0x8D5A, 11469},+    {0x8D61, 0x8D7A, 11495},+    {0x8D81, 0x8DFE, 11521},+    {0x8E41, 0x8E5A, 11647},+    {0x8E61, 0x8E7A, 11673},+    {0x8E81, 0x8EFE, 11699},+    {0x8F41, 0x8F5A, 11825},+    {0x8F61, 0x8F7A, 11851},+    {0x8F81, 0x8FFE, 11877},+    {0x9041, 0x905A, 12003},+    {0x9061, 0x907A, 12029},+    {0x9081, 0x90FE, 12055},+    {0x9141, 0x915A, 12181},+    {0x9161, 0x917A, 12207},+    {0x9181, 0x91FE, 12233},+    {0x9241, 0x925A, 12359},+    {0x9261, 0x927A, 12385},+    {0x9281, 0x92FE, 12411},+    {0x9341, 0x935A, 12537},+    {0x9361, 0x937A, 12563},+    {0x9381, 0x93FE, 12589},+    {0x9441, 0x945A, 12715},+    {0x9461, 0x947A, 12741},+    {0x9481, 0x94FE, 12767},+    {0x9541, 0x955A, 12893},+    {0x9561, 0x957A, 12919},+    {0x9581, 0x95FE, 12945},+    {0x9641, 0x965A, 13071},+    {0x9661, 0x967A, 13097},+    {0x9681, 0x96FE, 13123},+    {0x9741, 0x975A, 13249},+    {0x9761, 0x977A, 13275},+    {0x9781, 0x97FE, 13301},+    {0x9841, 0x985A, 13427},+    {0x9861, 0x987A, 13453},+    {0x9881, 0x98FE, 13479},+    {0x9941, 0x995A, 13605},+    {0x9961, 0x997A, 13631},+    {0x9981, 0x99FE, 13657},+    {0x9A41, 0x9A5A, 13783},+    {0x9A61, 0x9A7A, 13809},+    {0x9A81, 0x9AFE, 13835},+    {0x9B41, 0x9B5A, 13961},+    {0x9B61, 0x9B7A, 13987},+    {0x9B81, 0x9BFE, 14013},+    {0x9C41, 0x9C5A, 14139},+    {0x9C61, 0x9C7A, 14165},+    {0x9C81, 0x9CFE, 14191},+    {0x9D41, 0x9D5A, 14317},+    {0x9D61, 0x9D7A, 14343},+    {0x9D81, 0x9DFE, 14369},+    {0x9E41, 0x9E5A, 14495},+    {0x9E61, 0x9E7A, 14521},+    {0x9E81, 0x9EFE, 14547},+    {0x9F41, 0x9F5A, 14673},+    {0x9F61, 0x9F7A, 14699},+    {0x9F81, 0x9FFE, 14725},+    {0xA041, 0xA05A, 14851},+    {0xA061, 0xA07A, 14877},+    {0xA081, 0xA0FE, 14903},+    {0xA141, 0xA15A, 15029},+    {0xA161, 0xA17A, 15055},+    {0xA181, 0xA1A0, 15081},+    {0xA1A1, 0xA1FE, 101},+    {0xA241, 0xA25A, 15113},+    {0xA261, 0xA27A, 15139},+    {0xA281, 0xA2A0, 15165},+    {0xA2A1, 0xA2E5, 195},+    {0xA341, 0xA35A, 15197},+    {0xA361, 0xA37A, 15223},+    {0xA381, 0xA3A0, 15249},+    {0xA3A1, 0xA3FE, 264},+    {0xA441, 0xA45A, 15281},+    {0xA461, 0xA47A, 15307},+    {0xA481, 0xA4A0, 15333},+    {0xA4A1, 0xA4D3, 358},+    {0xA4D5, 0xA4FE, 409},+    {0xA541, 0xA55A, 15365},+    {0xA561, 0xA57A, 15391},+    {0xA581, 0xA5A0, 15417},+    {0xA5A1, 0xA5AA, 451},+    {0xA5B0, 0xA5B9, 461},+    {0xA5C1, 0xA5D8, 471},+    {0xA5E1, 0xA5F8, 495},+    {0xA641, 0xA65A, 15449},+    {0xA661, 0xA67A, 15475},+    {0xA681, 0xA6A0, 15501},+    {0xA6A1, 0xA6E4, 519},+    {0xA741, 0xA75A, 15533},+    {0xA761, 0xA77A, 15559},+    {0xA781, 0xA7A0, 15585},+    {0xA7A1, 0xA7EF, 587},+    {0xA841, 0xA85A, 15617},+    {0xA861, 0xA87A, 15643},+    {0xA881, 0xA8A0, 15669},+    {0xA8A1, 0xA8A4, 666},+    {0xA8A6, 0xA8A6, 670},+    {0xA8A8, 0xA8AF, 671},+    {0xA8B1, 0xA8FE, 679},+    {0xA941, 0xA95A, 15701},+    {0xA961, 0xA97A, 15727},+    {0xA981, 0xA9A0, 15753},+    {0xA9A1, 0xA9FE, 757},+    {0xAA41, 0xAA5A, 15785},+    {0xAA61, 0xAA7A, 15811},+    {0xAA81, 0xAAA0, 15837},+    {0xAAA1, 0xAAF3, 851},+    {0xAB41, 0xAB5A, 15869},+    {0xAB61, 0xAB7A, 15895},+    {0xAB81, 0xABA0, 15921},+    {0xABA1, 0xABF6, 934},+    {0xAC41, 0xAC5A, 15953},+    {0xAC61, 0xAC7A, 15979},+    {0xAC81, 0xACA0, 16005},+    {0xACA1, 0xACC1, 1020},+    {0xACD1, 0xACF1, 1053},+    {0xAD41, 0xAD5A, 16037},+    {0xAD61, 0xAD7A, 16063},+    {0xAD81, 0xADA0, 16089},+    {0xAE41, 0xAE5A, 16121},+    {0xAE61, 0xAE7A, 16147},+    {0xAE81, 0xAEA0, 16173},+    {0xAF41, 0xAF5A, 16205},+    {0xAF61, 0xAF7A, 16231},+    {0xAF81, 0xAFA0, 16257},+    {0xB041, 0xB05A, 16289},+    {0xB061, 0xB07A, 16315},+    {0xB081, 0xB0A0, 16341},+    {0xB0A1, 0xB0FE, 1086},+    {0xB141, 0xB15A, 16373},+    {0xB161, 0xB17A, 16399},+    {0xB181, 0xB1A0, 16425},+    {0xB1A1, 0xB1FE, 1180},+    {0xB241, 0xB25A, 16457},+    {0xB261, 0xB27A, 16483},+    {0xB281, 0xB2A0, 16509},+    {0xB2A1, 0xB2FE, 1274},+    {0xB341, 0xB35A, 16541},+    {0xB361, 0xB37A, 16567},+    {0xB381, 0xB3A0, 16593},+    {0xB3A1, 0xB3FE, 1368},+    {0xB441, 0xB45A, 16625},+    {0xB461, 0xB47A, 16651},+    {0xB481, 0xB4A0, 16677},+    {0xB4A1, 0xB4FE, 1462},+    {0xB541, 0xB55A, 16709},+    {0xB561, 0xB57A, 16735},+    {0xB581, 0xB5A0, 16761},+    {0xB5A1, 0xB5FE, 1556},+    {0xB641, 0xB65A, 16793},+    {0xB661, 0xB67A, 16819},+    {0xB681, 0xB6A0, 16845},+    {0xB6A1, 0xB6FE, 1650},+    {0xB741, 0xB75A, 16877},+    {0xB761, 0xB77A, 16903},+    {0xB781, 0xB7A0, 16929},+    {0xB7A1, 0xB7FE, 1744},+    {0xB841, 0xB85A, 16961},+    {0xB861, 0xB87A, 16987},+    {0xB881, 0xB8A0, 17013},+    {0xB8A1, 0xB8FE, 1838},+    {0xB941, 0xB95A, 17045},+    {0xB961, 0xB97A, 17071},+    {0xB981, 0xB9A0, 17097},+    {0xB9A1, 0xB9FE, 1932},+    {0xBA41, 0xBA5A, 17129},+    {0xBA61, 0xBA7A, 17155},+    {0xBA81, 0xBAA0, 17181},+    {0xBAA1, 0xBAFE, 2026},+    {0xBB41, 0xBB5A, 17213},+    {0xBB61, 0xBB7A, 17239},+    {0xBB81, 0xBBA0, 17265},+    {0xBBA1, 0xBBFE, 2120},+    {0xBC41, 0xBC5A, 17297},+    {0xBC61, 0xBC7A, 17323},+    {0xBC81, 0xBCA0, 17349},+    {0xBCA1, 0xBCFE, 2214},+    {0xBD41, 0xBD5A, 17381},+    {0xBD61, 0xBD7A, 17407},+    {0xBD81, 0xBDA0, 17433},+    {0xBDA1, 0xBDFE, 2308},+    {0xBE41, 0xBE5A, 17465},+    {0xBE61, 0xBE7A, 17491},+    {0xBE81, 0xBEA0, 17517},+    {0xBEA1, 0xBEFE, 2402},+    {0xBF41, 0xBF5A, 17549},+    {0xBF61, 0xBF7A, 17575},+    {0xBF81, 0xBFA0, 17601},+    {0xBFA1, 0xBFFE, 2496},+    {0xC041, 0xC05A, 17633},+    {0xC061, 0xC07A, 17659},+    {0xC081, 0xC0A0, 17685},+    {0xC0A1, 0xC0FE, 2590},+    {0xC141, 0xC15A, 17717},+    {0xC161, 0xC17A, 17743},+    {0xC181, 0xC1A0, 17769},+    {0xC1A1, 0xC1FE, 2684},+    {0xC241, 0xC25A, 17801},+    {0xC261, 0xC27A, 17827},+    {0xC281, 0xC2A0, 17853},+    {0xC2A1, 0xC2FE, 2778},+    {0xC341, 0xC35A, 17885},+    {0xC361, 0xC37A, 17911},+    {0xC381, 0xC3A0, 17937},+    {0xC3A1, 0xC3FE, 2872},+    {0xC441, 0xC45A, 17969},+    {0xC461, 0xC47A, 17995},+    {0xC481, 0xC4A0, 18021},+    {0xC4A1, 0xC4FE, 2966},+    {0xC541, 0xC55A, 18053},+    {0xC561, 0xC57A, 18079},+    {0xC581, 0xC5A0, 18105},+    {0xC5A1, 0xC5FE, 3060},+    {0xC641, 0xC652, 18137},+    {0xC6A1, 0xC6FE, 3154},+    {0xC7A1, 0xC7FE, 3248},+    {0xC8A1, 0xC8FE, 3342},+    {0xCAA1, 0xCAFE, 3436},+    {0xCBA1, 0xCBCF, 3530},+    {0xCBD0, 0xCBD0, 4116},+    {0xCBD1, 0xCBD5, 3577},+    {0xCBD6, 0xCBD6, 3678},+    {0xCBD7, 0xCBE6, 3582},+    {0xCBE7, 0xCBE7, 7053},+    {0xCBE8, 0xCBFE, 3598},+    {0xCCA1, 0xCCFE, 3621},+    {0xCDA1, 0xCDCE, 3715},+    {0xCDCF, 0xCDCF, 3460},+    {0xCDD0, 0xCDE7, 3761},+    {0xCDE8, 0xCDE8, 7900},+    {0xCDE9, 0xCDFE, 3785},+    {0xCEA1, 0xCEAC, 3807},+    {0xCEAD, 0xCEAD, 3802},+    {0xCEAE, 0xCEFE, 3819},+    {0xCFA1, 0xCFFA, 3900},+    {0xCFFB, 0xCFFB, 3902},+    {0xCFFC, 0xCFFE, 3990},+    {0xD0A1, 0xD0A1, 3993},+    {0xD0A2, 0xD0A2, 3946},+    {0xD0A3, 0xD0B7, 3994},+    {0xD0B8, 0xD0B8, 3946},+    {0xD0B9, 0xD0CF, 4015},+    {0xD0D0, 0xD0D0, 3708},+    {0xD0D1, 0xD0DC, 4038},+    {0xD0DD, 0xD0DD, 4131},+    {0xD0DE, 0xD0FE, 4050},+    {0xD1A1, 0xD1D3, 4083},+    {0xD1D4, 0xD1D4, 4374},+    {0xD1D5, 0xD1D5, 4156},+    {0xD1D6, 0xD1D7, 4134},+    {0xD1D8, 0xD1D8, 4375},+    {0xD1D9, 0xD1DA, 4136},+    {0xD1DB, 0xD1E0, 4376},+    {0xD1E1, 0xD1E1, 4138},+    {0xD1E2, 0xD1E2, 5800},+    {0xD1E3, 0xD1E5, 4382},+    {0xD1E6, 0xD1E6, 4386},+    {0xD1E7, 0xD1E7, 4139},+    {0xD1E8, 0xD1EB, 4387},+    {0xD1EC, 0xD1EC, 4140},+    {0xD1ED, 0xD1ED, 4391},+    {0xD1EE, 0xD1EE, 4141},+    {0xD1EF, 0xD1F0, 4394},+    {0xD1F1, 0xD1F1, 4142},+    {0xD1F2, 0xD1F2, 4396},+    {0xD1F3, 0xD1F5, 4143},+    {0xD1F6, 0xD1F6, 4399},+    {0xD1F7, 0xD1F9, 4146},+    {0xD1FA, 0xD1FA, 4403},+    {0xD1FB, 0xD1FB, 4149},+    {0xD1FC, 0xD1FD, 4406},+    {0xD1FE, 0xD1FE, 4409},+    {0xD2A1, 0xD2A1, 4150},+    {0xD2A2, 0xD2A3, 4410},+    {0xD2A4, 0xD2A6, 4151},+    {0xD2A7, 0xD2AA, 4412},+    {0xD2AB, 0xD2AB, 4419},+    {0xD2AC, 0xD2AC, 4154},+    {0xD2AD, 0xD2AD, 4420},+    {0xD2AE, 0xD2B1, 4155},+    {0xD2B2, 0xD2B2, 4424},+    {0xD2B3, 0xD2BD, 4159},+    {0xD2BE, 0xD2BE, 4511},+    {0xD2BF, 0xD2C1, 4170},+    {0xD2C2, 0xD2C3, 4513},+    {0xD2C4, 0xD2C4, 4517},+    {0xD2C5, 0xD2C5, 4173},+    {0xD2C6, 0xD2CA, 4518},+    {0xD2CB, 0xD2CB, 4524},+    {0xD2CC, 0xD2CC, 4174},+    {0xD2CD, 0xD2CE, 4525},+    {0xD2CF, 0xD2D4, 4528},+    {0xD2D5, 0xD2D7, 4535},+    {0xD2D8, 0xD2D8, 4175},+    {0xD2D9, 0xD2DA, 4541},+    {0xD2DB, 0xD2DD, 4176},+    {0xD2DE, 0xD2DF, 4545},+    {0xD2E0, 0xD2E0, 4179},+    {0xD2E1, 0xD2E1, 4547},+    {0xD2E2, 0xD2E2, 4550},+    {0xD2E3, 0xD2E3, 4180},+    {0xD2E4, 0xD2E4, 4564},+    {0xD2E5, 0xD2E8, 4566},+    {0xD2E9, 0xD2EA, 4571},+    {0xD2EB, 0xD2EB, 4576},+    {0xD2EC, 0xD2EF, 4181},+    {0xD2F0, 0xD2F3, 4604},+    {0xD2F4, 0xD2F5, 4609},+    {0xD2F6, 0xD2F6, 4185},+    {0xD2F7, 0xD2F8, 4611},+    {0xD2F9, 0xD2FE, 4186},+    {0xD3A1, 0xD3FE, 4192},+    {0xD4A1, 0xD4E5, 4286},+    {0xD4E6, 0xD4E6, 4318},+    {0xD4E7, 0xD4FB, 4355},+    {0xD4FC, 0xD4FC, 4136},+    {0xD4FD, 0xD4FE, 4376},+    {0xD5A1, 0xD5A4, 4378},+    {0xD5A5, 0xD5A5, 5800},+    {0xD5A6, 0xD5AA, 4382},+    {0xD5AB, 0xD5AB, 4139},+    {0xD5AC, 0xD5AD, 4387},+    {0xD5AE, 0xD5AE, 4192},+    {0xD5AF, 0xD5FE, 4389},+    {0xD6A1, 0xD6B7, 4469},+    {0xD6B8, 0xD6B8, 4167},+    {0xD6B9, 0xD6CC, 4492},+    {0xD6CD, 0xD6CD, 4172},+    {0xD6CE, 0xD6FE, 4512},+    {0xD7A1, 0xD7CA, 4561},+    {0xD7CB, 0xD7CB, 5552},+    {0xD7CC, 0xD7E3, 4603},+    {0xD7E4, 0xD7E4, 6424},+    {0xD7E5, 0xD7FE, 4627},+    {0xD8A1, 0xD8FE, 4653},+    {0xD9A1, 0xD9FE, 4747},+    {0xDAA1, 0xDAFE, 4841},+    {0xDBA1, 0xDBC4, 4935},+    {0xDBC5, 0xDBC5, 5151},+    {0xDBC6, 0xDBE3, 4971},+    {0xDBE4, 0xDBE4, 4922},+    {0xDBE5, 0xDBFE, 5001},+    {0xDCA1, 0xDCA4, 5027},+    {0xDCA5, 0xDCA5, 7518},+    {0xDCA6, 0xDCFE, 5031},+    {0xDDA1, 0xDDA4, 5120},+    {0xDDA5, 0xDDA5, 5079},+    {0xDDA6, 0xDDD4, 5124},+    {0xDDD5, 0xDDD5, 5109},+    {0xDDD6, 0xDDF3, 5171},+    {0xDDF4, 0xDDF4, 7607},+    {0xDDF5, 0xDDFE, 5201},+    {0xDEA1, 0xDEFB, 5211},+    {0xDEFC, 0xDEFC, 5584},+    {0xDEFD, 0xDEFD, 5302},+    {0xDEFE, 0xDEFE, 5367},+    {0xDFA1, 0xDFB2, 5303},+    {0xDFB3, 0xDFB3, 7083},+    {0xDFB4, 0xDFE0, 5321},+    {0xDFE1, 0xDFE1, 5362},+    {0xDFE2, 0xDFE7, 5366},+    {0xDFE8, 0xDFE8, 5485},+    {0xDFE9, 0xDFFE, 5372},+    {0xE0A1, 0xE0F0, 5394},+    {0xE0F1, 0xE0F1, 6001},+    {0xE0F2, 0xE0FE, 5474},+    {0xE1A1, 0xE1AC, 5487},+    {0xE1AD, 0xE1AD, 5460},+    {0xE1AE, 0xE1EC, 5499},+    {0xE1ED, 0xE1ED, 5317},+    {0xE1EE, 0xE1FE, 5562},+    {0xE2A1, 0xE2FE, 5579},+    {0xE3A1, 0xE3F4, 5673},+    {0xE3F5, 0xE3F5, 7009},+    {0xE3F6, 0xE3FE, 5757},+    {0xE4A1, 0xE4A1, 7370},+    {0xE4A2, 0xE4A8, 5766},+    {0xE4A9, 0xE4A9, 5678},+    {0xE4AA, 0xE4FE, 5773},+    {0xE5A1, 0xE5AD, 5858},+    {0xE5AE, 0xE5AE, 5874},+    {0xE5AF, 0xE5B0, 5871},+    {0xE5B1, 0xE5B2, 4425},+    {0xE5B3, 0xE5B8, 5873},+    {0xE5B9, 0xE5B9, 4427},+    {0xE5BA, 0xE5BA, 5879},+    {0xE5BB, 0xE5BC, 4429},+    {0xE5BD, 0xE5C3, 5880},+    {0xE5C4, 0xE5C4, 4431},+    {0xE5C5, 0xE5CD, 5887},+    {0xE5CE, 0xE5CE, 4435},+    {0xE5CF, 0xE5CF, 5896},+    {0xE5D0, 0xE5D0, 4436},+    {0xE5D1, 0xE5D1, 5897},+    {0xE5D2, 0xE5D2, 4437},+    {0xE5D3, 0xE5D5, 5898},+    {0xE5D6, 0xE5D6, 4439},+    {0xE5D7, 0xE5F9, 5901},+    {0xE5FA, 0xE5FB, 4442},+    {0xE5FC, 0xE5FC, 4159},+    {0xE5FD, 0xE5FD, 5936},+    {0xE5FE, 0xE5FE, 4444},+    {0xE6A1, 0xE6A1, 4447},+    {0xE6A2, 0xE6A3, 5937},+    {0xE6A4, 0xE6A4, 4449},+    {0xE6A5, 0xE6A6, 5939},+    {0xE6A7, 0xE6A7, 4450},+    {0xE6A8, 0xE6AC, 5941},+    {0xE6AD, 0xE6AD, 4453},+    {0xE6AE, 0xE6AE, 5946},+    {0xE6AF, 0xE6B1, 4455},+    {0xE6B2, 0xE6B2, 5947},+    {0xE6B3, 0xE6B3, 4458},+    {0xE6B4, 0xE6B6, 5948},+    {0xE6B7, 0xE6B8, 4459},+    {0xE6B9, 0xE6BB, 5951},+    {0xE6BC, 0xE6BC, 4463},+    {0xE6BD, 0xE6C3, 5954},+    {0xE6C4, 0xE6C4, 4160},+    {0xE6C5, 0xE6C5, 5961},+    {0xE6C6, 0xE6C7, 4465},+    {0xE6C8, 0xE6C9, 5962},+    {0xE6CA, 0xE6CA, 4161},+    {0xE6CB, 0xE6D1, 5964},+    {0xE6D2, 0xE6D2, 4468},+    {0xE6D3, 0xE6D5, 5971},+    {0xE6D6, 0xE6D6, 4469},+    {0xE6D7, 0xE6D8, 5974},+    {0xE6D9, 0xE6D9, 4470},+    {0xE6DA, 0xE6DB, 5976},+    {0xE6DC, 0xE6DC, 4162},+    {0xE6DD, 0xE6DE, 5978},+    {0xE6DF, 0xE6DF, 4471},+    {0xE6E0, 0xE6E0, 5980},+    {0xE6E1, 0xE6E1, 4472},+    {0xE6E2, 0xE6E3, 5981},+    {0xE6E4, 0xE6E4, 4474},+    {0xE6E5, 0xE6E5, 4473},+    {0xE6E6, 0xE6E6, 4475},+    {0xE6E7, 0xE6E7, 5983},+    {0xE6E8, 0xE6E8, 4476},+    {0xE6E9, 0xE6E9, 5984},+    {0xE6EA, 0xE6EB, 4478},+    {0xE6EC, 0xE6EC, 6447},+    {0xE6ED, 0xE6EE, 5985},+    {0xE6EF, 0xE6EF, 4481},+    {0xE6F0, 0xE6F0, 5987},+    {0xE6F1, 0xE6F1, 4482},+    {0xE6F2, 0xE6F2, 5460},+    {0xE6F3, 0xE6F4, 5988},+    {0xE6F5, 0xE6F5, 4483},+    {0xE6F6, 0xE6F6, 4163},+    {0xE6F7, 0xE6F7, 4166},+    {0xE6F8, 0xE6F8, 5990},+    {0xE6F9, 0xE6F9, 4485},+    {0xE6FA, 0xE6FE, 5991},+    {0xE7A1, 0xE7A1, 4487},+    {0xE7A2, 0xE7A5, 5996},+    {0xE7A6, 0xE7A6, 4488},+    {0xE7A7, 0xE7A8, 6000},+    {0xE7A9, 0xE7A9, 4489},+    {0xE7AA, 0xE7AA, 4491},+    {0xE7AB, 0xE7AB, 6002},+    {0xE7AC, 0xE7AC, 4167},+    {0xE7AD, 0xE7AD, 4493},+    {0xE7AE, 0xE7AF, 6003},+    {0xE7B0, 0xE7B0, 4494},+    {0xE7B1, 0xE7BE, 6005},+    {0xE7BF, 0xE7BF, 4495},+    {0xE7C0, 0xE7C0, 6019},+    {0xE7C1, 0xE7C1, 7783},+    {0xE7C2, 0xE7C5, 6020},+    {0xE7C6, 0xE7C6, 4497},+    {0xE7C7, 0xE7C7, 4499},+    {0xE7C8, 0xE7CA, 6024},+    {0xE7CB, 0xE7CB, 4501},+    {0xE7CC, 0xE7CC, 6027},+    {0xE7CD, 0xE7CD, 4502},+    {0xE7CE, 0xE7CE, 6028},+    {0xE7CF, 0xE7D0, 4503},+    {0xE7D1, 0xE7D2, 6029},+    {0xE7D3, 0xE7D3, 4506},+    {0xE7D4, 0xE7DE, 6031},+    {0xE7DF, 0xE7DF, 4508},+    {0xE7E0, 0xE7E3, 6042},+    {0xE7E4, 0xE7E4, 4509},+    {0xE7E5, 0xE7E5, 6046},+    {0xE7E6, 0xE7E6, 4510},+    {0xE7E7, 0xE7F6, 6047},+    {0xE7F7, 0xE7F7, 5797},+    {0xE7F8, 0xE7FE, 6063},+    {0xE8A1, 0xE8E6, 6070},+    {0xE8E7, 0xE8E8, 4551},+    {0xE8E9, 0xE8EF, 6140},+    {0xE8F0, 0xE8F0, 4553},+    {0xE8F1, 0xE8F1, 4180},+    {0xE8F2, 0xE8F6, 6147},+    {0xE8F7, 0xE8F7, 4555},+    {0xE8F8, 0xE8F8, 6152},+    {0xE8F9, 0xE8F9, 5800},+    {0xE8FA, 0xE8FA, 6153},+    {0xE8FB, 0xE8FB, 4556},+    {0xE8FC, 0xE8FD, 6154},+    {0xE8FE, 0xE8FE, 4557},+    {0xE9A1, 0xE9A6, 6156},+    {0xE9A7, 0xE9A7, 4560},+    {0xE9A8, 0xE9AB, 6162},+    {0xE9AC, 0xE9AC, 4561},+    {0xE9AD, 0xE9CB, 6166},+    {0xE9CC, 0xE9CC, 4563},+    {0xE9CD, 0xE9F6, 6197},+    {0xE9F7, 0xE9F7, 7988},+    {0xE9F8, 0xE9FE, 6239},+    {0xEAA1, 0xEAC0, 6246},+    {0xEAC1, 0xEAC1, 6123},+    {0xEAC2, 0xEAE4, 6278},+    {0xEAE5, 0xEAE5, 4577},+    {0xEAE6, 0xEAF3, 6313},+    {0xEAF4, 0xEAF4, 4183},+    {0xEAF5, 0xEAF6, 6327},+    {0xEAF7, 0xEAF7, 4579},+    {0xEAF8, 0xEAFB, 6329},+    {0xEAFC, 0xEAFC, 4581},+    {0xEAFD, 0xEAFD, 6333},+    {0xEAFE, 0xEAFE, 4582},+    {0xEBA1, 0xEBA3, 6334},+    {0xEBA4, 0xEBA4, 4584},+    {0xEBA5, 0xEBA6, 6337},+    {0xEBA7, 0xEBA7, 4586},+    {0xEBA8, 0xEBA8, 6339},+    {0xEBA9, 0xEBA9, 4588},+    {0xEBAA, 0xEBAA, 4184},+    {0xEBAB, 0xEBB9, 6340},+    {0xEBBA, 0xEBBB, 4590},+    {0xEBBC, 0xEBBC, 6355},+    {0xEBBD, 0xEBBD, 4592},+    {0xEBBE, 0xEBC0, 6356},+    {0xEBC1, 0xEBC1, 4593},+    {0xEBC2, 0xEBC2, 4595},+    {0xEBC3, 0xEBC5, 6359},+    {0xEBC6, 0xEBC7, 4596},+    {0xEBC8, 0xEBCB, 6362},+    {0xEBCC, 0xEBCC, 4599},+    {0xEBCD, 0xEBCE, 6366},+    {0xEBCF, 0xEBD1, 4600},+    {0xEBD2, 0xEBD2, 5552},+    {0xEBD3, 0xEBD7, 6368},+    {0xEBD8, 0xEBD8, 4603},+    {0xEBD9, 0xEBFE, 6373},+    {0xECA1, 0xECA5, 6411},+    {0xECA6, 0xECA6, 4614},+    {0xECA7, 0xECA7, 4616},+    {0xECA8, 0xECA9, 6416},+    {0xECAA, 0xECAA, 4618},+    {0xECAB, 0xECAE, 6418},+    {0xECAF, 0xECAF, 5950},+    {0xECB0, 0xECB1, 4620},+    {0xECB2, 0xECB2, 4187},+    {0xECB3, 0xECB4, 6422},+    {0xECB5, 0xECB5, 4625},+    {0xECB6, 0xECB7, 6424},+    {0xECB8, 0xECB8, 4627},+    {0xECB9, 0xECB9, 6426},+    {0xECBA, 0xECBA, 4629},+    {0xECBB, 0xECBF, 6427},+    {0xECC0, 0xECC1, 4632},+    {0xECC2, 0xECC4, 6432},+    {0xECC5, 0xECC5, 4634},+    {0xECC6, 0xECC6, 4636},+    {0xECC7, 0xECC8, 6435},+    {0xECC9, 0xECCA, 4188},+    {0xECCB, 0xECD4, 6437},+    {0xECD5, 0xECD5, 4638},+    {0xECD6, 0xECDC, 6447},+    {0xECDD, 0xECDE, 4640},+    {0xECDF, 0xECE0, 6454},+    {0xECE1, 0xECE1, 4642},+    {0xECE2, 0xECE3, 6456},+    {0xECE4, 0xECE4, 4644},+    {0xECE5, 0xECE6, 6458},+    {0xECE7, 0xECE8, 4645},+    {0xECE9, 0xECF6, 6460},+    {0xECF7, 0xECF8, 4647},+    {0xECF9, 0xECF9, 6474},+    {0xECFA, 0xECFA, 4650},+    {0xECFB, 0xECFE, 6475},+    {0xEDA1, 0xEDA3, 4653},+    {0xEDA4, 0xEDED, 6479},+    {0xEDEE, 0xEDEE, 5351},+    {0xEDEF, 0xEDFE, 6553},+    {0xEEA1, 0xEEDA, 6569},+    {0xEEDB, 0xEEDB, 6494},+    {0xEEDC, 0xEEFE, 6627},+    {0xEFA1, 0xEFFE, 6662},+    {0xF0A1, 0xF0FE, 6756},+    {0xF1A1, 0xF1FE, 6850},+    {0xF2A1, 0xF2BC, 6944},+    {0xF2BD, 0xF2BD, 5731},+    {0xF2BE, 0xF2F9, 6972},+    {0xF2FA, 0xF2FA, 5771},+    {0xF2FB, 0xF2FE, 7032},+    {0xF3A1, 0xF3B0, 7036},+    {0xF3B1, 0xF3B1, 4191},+    {0xF3B2, 0xF3FE, 7052},+    {0xF4A1, 0xF4A6, 7129},+    {0xF4A7, 0xF4A7, 6484},+    {0xF4A8, 0xF4ED, 7135},+    {0xF4EE, 0xF4EE, 6684},+    {0xF4EF, 0xF4FE, 7205},+    {0xF5A1, 0xF5FE, 7221},+    {0xF6A1, 0xF6F3, 7315},+    {0xF6F4, 0xF6F4, 4279},+    {0xF6F5, 0xF6F5, 7398},+    {0xF6F6, 0xF6F6, 7139},+    {0xF6F7, 0xF6FE, 7399},+    {0xF7A1, 0xF7B7, 7407},+    {0xF7B8, 0xF7B8, 4247},+    {0xF7B9, 0xF7C7, 7430},+    {0xF7C8, 0xF7C8, 4266},+    {0xF7C9, 0xF7D2, 7445},+    {0xF7D3, 0xF7D3, 4340},+    {0xF7D4, 0xF7FE, 7455},+    {0xF8A1, 0xF8DA, 7498},+    {0xF8DB, 0xF8DB, 7572},+    {0xF8DC, 0xF8EF, 7556},+    {0xF8F0, 0xF8F0, 5088},+    {0xF8F1, 0xF8FE, 7576},+    {0xF9A1, 0xF9FE, 7590},+    {0xFAA1, 0xFAA1, 7709},+    {0xFAA2, 0xFAA2, 3558},+    {0xFAA3, 0xFAE5, 7684},+    {0xFAE6, 0xFAE6, 3644},+    {0xFAE7, 0xFAFE, 7751},+    {0xFBA1, 0xFBFE, 7775},+    {0xFCA1, 0xFCA8, 7869},+    {0xFCA9, 0xFCA9, 3815},+    {0xFCAA, 0xFCFE, 7877},+    {0xFDA1, 0xFDFE, 7962},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_KSCms_UHC_HW_H[] = {+    {0x20, 0x7E, 8094},+    {0x8141, 0x815A, 9333},+    {0x8161, 0x817A, 9359},+    {0x8181, 0x81FE, 9385},+    {0x8241, 0x825A, 9511},+    {0x8261, 0x827A, 9537},+    {0x8281, 0x82FE, 9563},+    {0x8341, 0x835A, 9689},+    {0x8361, 0x837A, 9715},+    {0x8381, 0x83FE, 9741},+    {0x8441, 0x845A, 9867},+    {0x8461, 0x847A, 9893},+    {0x8481, 0x84FE, 9919},+    {0x8541, 0x855A, 10045},+    {0x8561, 0x857A, 10071},+    {0x8581, 0x85FE, 10097},+    {0x8641, 0x865A, 10223},+    {0x8661, 0x867A, 10249},+    {0x8681, 0x86FE, 10275},+    {0x8741, 0x875A, 10401},+    {0x8761, 0x877A, 10427},+    {0x8781, 0x87FE, 10453},+    {0x8841, 0x885A, 10579},+    {0x8861, 0x887A, 10605},+    {0x8881, 0x88FE, 10631},+    {0x8941, 0x895A, 10757},+    {0x8961, 0x897A, 10783},+    {0x8981, 0x89FE, 10809},+    {0x8A41, 0x8A5A, 10935},+    {0x8A61, 0x8A7A, 10961},+    {0x8A81, 0x8AFE, 10987},+    {0x8B41, 0x8B5A, 11113},+    {0x8B61, 0x8B7A, 11139},+    {0x8B81, 0x8BFE, 11165},+    {0x8C41, 0x8C5A, 11291},+    {0x8C61, 0x8C7A, 11317},+    {0x8C81, 0x8CFE, 11343},+    {0x8D41, 0x8D5A, 11469},+    {0x8D61, 0x8D7A, 11495},+    {0x8D81, 0x8DFE, 11521},+    {0x8E41, 0x8E5A, 11647},+    {0x8E61, 0x8E7A, 11673},+    {0x8E81, 0x8EFE, 11699},+    {0x8F41, 0x8F5A, 11825},+    {0x8F61, 0x8F7A, 11851},+    {0x8F81, 0x8FFE, 11877},+    {0x9041, 0x905A, 12003},+    {0x9061, 0x907A, 12029},+    {0x9081, 0x90FE, 12055},+    {0x9141, 0x915A, 12181},+    {0x9161, 0x917A, 12207},+    {0x9181, 0x91FE, 12233},+    {0x9241, 0x925A, 12359},+    {0x9261, 0x927A, 12385},+    {0x9281, 0x92FE, 12411},+    {0x9341, 0x935A, 12537},+    {0x9361, 0x937A, 12563},+    {0x9381, 0x93FE, 12589},+    {0x9441, 0x945A, 12715},+    {0x9461, 0x947A, 12741},+    {0x9481, 0x94FE, 12767},+    {0x9541, 0x955A, 12893},+    {0x9561, 0x957A, 12919},+    {0x9581, 0x95FE, 12945},+    {0x9641, 0x965A, 13071},+    {0x9661, 0x967A, 13097},+    {0x9681, 0x96FE, 13123},+    {0x9741, 0x975A, 13249},+    {0x9761, 0x977A, 13275},+    {0x9781, 0x97FE, 13301},+    {0x9841, 0x985A, 13427},+    {0x9861, 0x987A, 13453},+    {0x9881, 0x98FE, 13479},+    {0x9941, 0x995A, 13605},+    {0x9961, 0x997A, 13631},+    {0x9981, 0x99FE, 13657},+    {0x9A41, 0x9A5A, 13783},+    {0x9A61, 0x9A7A, 13809},+    {0x9A81, 0x9AFE, 13835},+    {0x9B41, 0x9B5A, 13961},+    {0x9B61, 0x9B7A, 13987},+    {0x9B81, 0x9BFE, 14013},+    {0x9C41, 0x9C5A, 14139},+    {0x9C61, 0x9C7A, 14165},+    {0x9C81, 0x9CFE, 14191},+    {0x9D41, 0x9D5A, 14317},+    {0x9D61, 0x9D7A, 14343},+    {0x9D81, 0x9DFE, 14369},+    {0x9E41, 0x9E5A, 14495},+    {0x9E61, 0x9E7A, 14521},+    {0x9E81, 0x9EFE, 14547},+    {0x9F41, 0x9F5A, 14673},+    {0x9F61, 0x9F7A, 14699},+    {0x9F81, 0x9FFE, 14725},+    {0xA041, 0xA05A, 14851},+    {0xA061, 0xA07A, 14877},+    {0xA081, 0xA0FE, 14903},+    {0xA141, 0xA15A, 15029},+    {0xA161, 0xA17A, 15055},+    {0xA181, 0xA1A0, 15081},+    {0xA1A1, 0xA1FE, 101},+    {0xA241, 0xA25A, 15113},+    {0xA261, 0xA27A, 15139},+    {0xA281, 0xA2A0, 15165},+    {0xA2A1, 0xA2E5, 195},+    {0xA341, 0xA35A, 15197},+    {0xA361, 0xA37A, 15223},+    {0xA381, 0xA3A0, 15249},+    {0xA3A1, 0xA3FE, 264},+    {0xA441, 0xA45A, 15281},+    {0xA461, 0xA47A, 15307},+    {0xA481, 0xA4A0, 15333},+    {0xA4A1, 0xA4D3, 358},+    {0xA4D5, 0xA4FE, 409},+    {0xA541, 0xA55A, 15365},+    {0xA561, 0xA57A, 15391},+    {0xA581, 0xA5A0, 15417},+    {0xA5A1, 0xA5AA, 451},+    {0xA5B0, 0xA5B9, 461},+    {0xA5C1, 0xA5D8, 471},+    {0xA5E1, 0xA5F8, 495},+    {0xA641, 0xA65A, 15449},+    {0xA661, 0xA67A, 15475},+    {0xA681, 0xA6A0, 15501},+    {0xA6A1, 0xA6E4, 519},+    {0xA741, 0xA75A, 15533},+    {0xA761, 0xA77A, 15559},+    {0xA781, 0xA7A0, 15585},+    {0xA7A1, 0xA7EF, 587},+    {0xA841, 0xA85A, 15617},+    {0xA861, 0xA87A, 15643},+    {0xA881, 0xA8A0, 15669},+    {0xA8A1, 0xA8A4, 666},+    {0xA8A6, 0xA8A6, 670},+    {0xA8A8, 0xA8AF, 671},+    {0xA8B1, 0xA8FE, 679},+    {0xA941, 0xA95A, 15701},+    {0xA961, 0xA97A, 15727},+    {0xA981, 0xA9A0, 15753},+    {0xA9A1, 0xA9FE, 757},+    {0xAA41, 0xAA5A, 15785},+    {0xAA61, 0xAA7A, 15811},+    {0xAA81, 0xAAA0, 15837},+    {0xAAA1, 0xAAF3, 851},+    {0xAB41, 0xAB5A, 15869},+    {0xAB61, 0xAB7A, 15895},+    {0xAB81, 0xABA0, 15921},+    {0xABA1, 0xABF6, 934},+    {0xAC41, 0xAC5A, 15953},+    {0xAC61, 0xAC7A, 15979},+    {0xAC81, 0xACA0, 16005},+    {0xACA1, 0xACC1, 1020},+    {0xACD1, 0xACF1, 1053},+    {0xAD41, 0xAD5A, 16037},+    {0xAD61, 0xAD7A, 16063},+    {0xAD81, 0xADA0, 16089},+    {0xAE41, 0xAE5A, 16121},+    {0xAE61, 0xAE7A, 16147},+    {0xAE81, 0xAEA0, 16173},+    {0xAF41, 0xAF5A, 16205},+    {0xAF61, 0xAF7A, 16231},+    {0xAF81, 0xAFA0, 16257},+    {0xB041, 0xB05A, 16289},+    {0xB061, 0xB07A, 16315},+    {0xB081, 0xB0A0, 16341},+    {0xB0A1, 0xB0FE, 1086},+    {0xB141, 0xB15A, 16373},+    {0xB161, 0xB17A, 16399},+    {0xB181, 0xB1A0, 16425},+    {0xB1A1, 0xB1FE, 1180},+    {0xB241, 0xB25A, 16457},+    {0xB261, 0xB27A, 16483},+    {0xB281, 0xB2A0, 16509},+    {0xB2A1, 0xB2FE, 1274},+    {0xB341, 0xB35A, 16541},+    {0xB361, 0xB37A, 16567},+    {0xB381, 0xB3A0, 16593},+    {0xB3A1, 0xB3FE, 1368},+    {0xB441, 0xB45A, 16625},+    {0xB461, 0xB47A, 16651},+    {0xB481, 0xB4A0, 16677},+    {0xB4A1, 0xB4FE, 1462},+    {0xB541, 0xB55A, 16709},+    {0xB561, 0xB57A, 16735},+    {0xB581, 0xB5A0, 16761},+    {0xB5A1, 0xB5FE, 1556},+    {0xB641, 0xB65A, 16793},+    {0xB661, 0xB67A, 16819},+    {0xB681, 0xB6A0, 16845},+    {0xB6A1, 0xB6FE, 1650},+    {0xB741, 0xB75A, 16877},+    {0xB761, 0xB77A, 16903},+    {0xB781, 0xB7A0, 16929},+    {0xB7A1, 0xB7FE, 1744},+    {0xB841, 0xB85A, 16961},+    {0xB861, 0xB87A, 16987},+    {0xB881, 0xB8A0, 17013},+    {0xB8A1, 0xB8FE, 1838},+    {0xB941, 0xB95A, 17045},+    {0xB961, 0xB97A, 17071},+    {0xB981, 0xB9A0, 17097},+    {0xB9A1, 0xB9FE, 1932},+    {0xBA41, 0xBA5A, 17129},+    {0xBA61, 0xBA7A, 17155},+    {0xBA81, 0xBAA0, 17181},+    {0xBAA1, 0xBAFE, 2026},+    {0xBB41, 0xBB5A, 17213},+    {0xBB61, 0xBB7A, 17239},+    {0xBB81, 0xBBA0, 17265},+    {0xBBA1, 0xBBFE, 2120},+    {0xBC41, 0xBC5A, 17297},+    {0xBC61, 0xBC7A, 17323},+    {0xBC81, 0xBCA0, 17349},+    {0xBCA1, 0xBCFE, 2214},+    {0xBD41, 0xBD5A, 17381},+    {0xBD61, 0xBD7A, 17407},+    {0xBD81, 0xBDA0, 17433},+    {0xBDA1, 0xBDFE, 2308},+    {0xBE41, 0xBE5A, 17465},+    {0xBE61, 0xBE7A, 17491},+    {0xBE81, 0xBEA0, 17517},+    {0xBEA1, 0xBEFE, 2402},+    {0xBF41, 0xBF5A, 17549},+    {0xBF61, 0xBF7A, 17575},+    {0xBF81, 0xBFA0, 17601},+    {0xBFA1, 0xBFFE, 2496},+    {0xC041, 0xC05A, 17633},+    {0xC061, 0xC07A, 17659},+    {0xC081, 0xC0A0, 17685},+    {0xC0A1, 0xC0FE, 2590},+    {0xC141, 0xC15A, 17717},+    {0xC161, 0xC17A, 17743},+    {0xC181, 0xC1A0, 17769},+    {0xC1A1, 0xC1FE, 2684},+    {0xC241, 0xC25A, 17801},+    {0xC261, 0xC27A, 17827},+    {0xC281, 0xC2A0, 17853},+    {0xC2A1, 0xC2FE, 2778},+    {0xC341, 0xC35A, 17885},+    {0xC361, 0xC37A, 17911},+    {0xC381, 0xC3A0, 17937},+    {0xC3A1, 0xC3FE, 2872},+    {0xC441, 0xC45A, 17969},+    {0xC461, 0xC47A, 17995},+    {0xC481, 0xC4A0, 18021},+    {0xC4A1, 0xC4FE, 2966},+    {0xC541, 0xC55A, 18053},+    {0xC561, 0xC57A, 18079},+    {0xC581, 0xC5A0, 18105},+    {0xC5A1, 0xC5FE, 3060},+    {0xC641, 0xC652, 18137},+    {0xC6A1, 0xC6FE, 3154},+    {0xC7A1, 0xC7FE, 3248},+    {0xC8A1, 0xC8FE, 3342},+    {0xCAA1, 0xCAFE, 3436},+    {0xCBA1, 0xCBCF, 3530},+    {0xCBD0, 0xCBD0, 4116},+    {0xCBD1, 0xCBD5, 3577},+    {0xCBD6, 0xCBD6, 3678},+    {0xCBD7, 0xCBE6, 3582},+    {0xCBE7, 0xCBE7, 7053},+    {0xCBE8, 0xCBFE, 3598},+    {0xCCA1, 0xCCFE, 3621},+    {0xCDA1, 0xCDCE, 3715},+    {0xCDCF, 0xCDCF, 3460},+    {0xCDD0, 0xCDE7, 3761},+    {0xCDE8, 0xCDE8, 7900},+    {0xCDE9, 0xCDFE, 3785},+    {0xCEA1, 0xCEAC, 3807},+    {0xCEAD, 0xCEAD, 3802},+    {0xCEAE, 0xCEFE, 3819},+    {0xCFA1, 0xCFFA, 3900},+    {0xCFFB, 0xCFFB, 3902},+    {0xCFFC, 0xCFFE, 3990},+    {0xD0A1, 0xD0A1, 3993},+    {0xD0A2, 0xD0A2, 3946},+    {0xD0A3, 0xD0B7, 3994},+    {0xD0B8, 0xD0B8, 3946},+    {0xD0B9, 0xD0CF, 4015},+    {0xD0D0, 0xD0D0, 3708},+    {0xD0D1, 0xD0DC, 4038},+    {0xD0DD, 0xD0DD, 4131},+    {0xD0DE, 0xD0FE, 4050},+    {0xD1A1, 0xD1D3, 4083},+    {0xD1D4, 0xD1D4, 4374},+    {0xD1D5, 0xD1D5, 4156},+    {0xD1D6, 0xD1D7, 4134},+    {0xD1D8, 0xD1D8, 4375},+    {0xD1D9, 0xD1DA, 4136},+    {0xD1DB, 0xD1E0, 4376},+    {0xD1E1, 0xD1E1, 4138},+    {0xD1E2, 0xD1E2, 5800},+    {0xD1E3, 0xD1E5, 4382},+    {0xD1E6, 0xD1E6, 4386},+    {0xD1E7, 0xD1E7, 4139},+    {0xD1E8, 0xD1EB, 4387},+    {0xD1EC, 0xD1EC, 4140},+    {0xD1ED, 0xD1ED, 4391},+    {0xD1EE, 0xD1EE, 4141},+    {0xD1EF, 0xD1F0, 4394},+    {0xD1F1, 0xD1F1, 4142},+    {0xD1F2, 0xD1F2, 4396},+    {0xD1F3, 0xD1F5, 4143},+    {0xD1F6, 0xD1F6, 4399},+    {0xD1F7, 0xD1F9, 4146},+    {0xD1FA, 0xD1FA, 4403},+    {0xD1FB, 0xD1FB, 4149},+    {0xD1FC, 0xD1FD, 4406},+    {0xD1FE, 0xD1FE, 4409},+    {0xD2A1, 0xD2A1, 4150},+    {0xD2A2, 0xD2A3, 4410},+    {0xD2A4, 0xD2A6, 4151},+    {0xD2A7, 0xD2AA, 4412},+    {0xD2AB, 0xD2AB, 4419},+    {0xD2AC, 0xD2AC, 4154},+    {0xD2AD, 0xD2AD, 4420},+    {0xD2AE, 0xD2B1, 4155},+    {0xD2B2, 0xD2B2, 4424},+    {0xD2B3, 0xD2BD, 4159},+    {0xD2BE, 0xD2BE, 4511},+    {0xD2BF, 0xD2C1, 4170},+    {0xD2C2, 0xD2C3, 4513},+    {0xD2C4, 0xD2C4, 4517},+    {0xD2C5, 0xD2C5, 4173},+    {0xD2C6, 0xD2CA, 4518},+    {0xD2CB, 0xD2CB, 4524},+    {0xD2CC, 0xD2CC, 4174},+    {0xD2CD, 0xD2CE, 4525},+    {0xD2CF, 0xD2D4, 4528},+    {0xD2D5, 0xD2D7, 4535},+    {0xD2D8, 0xD2D8, 4175},+    {0xD2D9, 0xD2DA, 4541},+    {0xD2DB, 0xD2DD, 4176},+    {0xD2DE, 0xD2DF, 4545},+    {0xD2E0, 0xD2E0, 4179},+    {0xD2E1, 0xD2E1, 4547},+    {0xD2E2, 0xD2E2, 4550},+    {0xD2E3, 0xD2E3, 4180},+    {0xD2E4, 0xD2E4, 4564},+    {0xD2E5, 0xD2E8, 4566},+    {0xD2E9, 0xD2EA, 4571},+    {0xD2EB, 0xD2EB, 4576},+    {0xD2EC, 0xD2EF, 4181},+    {0xD2F0, 0xD2F3, 4604},+    {0xD2F4, 0xD2F5, 4609},+    {0xD2F6, 0xD2F6, 4185},+    {0xD2F7, 0xD2F8, 4611},+    {0xD2F9, 0xD2FE, 4186},+    {0xD3A1, 0xD3FE, 4192},+    {0xD4A1, 0xD4E5, 4286},+    {0xD4E6, 0xD4E6, 4318},+    {0xD4E7, 0xD4FB, 4355},+    {0xD4FC, 0xD4FC, 4136},+    {0xD4FD, 0xD4FE, 4376},+    {0xD5A1, 0xD5A4, 4378},+    {0xD5A5, 0xD5A5, 5800},+    {0xD5A6, 0xD5AA, 4382},+    {0xD5AB, 0xD5AB, 4139},+    {0xD5AC, 0xD5AD, 4387},+    {0xD5AE, 0xD5AE, 4192},+    {0xD5AF, 0xD5FE, 4389},+    {0xD6A1, 0xD6B7, 4469},+    {0xD6B8, 0xD6B8, 4167},+    {0xD6B9, 0xD6CC, 4492},+    {0xD6CD, 0xD6CD, 4172},+    {0xD6CE, 0xD6FE, 4512},+    {0xD7A1, 0xD7CA, 4561},+    {0xD7CB, 0xD7CB, 5552},+    {0xD7CC, 0xD7E3, 4603},+    {0xD7E4, 0xD7E4, 6424},+    {0xD7E5, 0xD7FE, 4627},+    {0xD8A1, 0xD8FE, 4653},+    {0xD9A1, 0xD9FE, 4747},+    {0xDAA1, 0xDAFE, 4841},+    {0xDBA1, 0xDBC4, 4935},+    {0xDBC5, 0xDBC5, 5151},+    {0xDBC6, 0xDBE3, 4971},+    {0xDBE4, 0xDBE4, 4922},+    {0xDBE5, 0xDBFE, 5001},+    {0xDCA1, 0xDCA4, 5027},+    {0xDCA5, 0xDCA5, 7518},+    {0xDCA6, 0xDCFE, 5031},+    {0xDDA1, 0xDDA4, 5120},+    {0xDDA5, 0xDDA5, 5079},+    {0xDDA6, 0xDDD4, 5124},+    {0xDDD5, 0xDDD5, 5109},+    {0xDDD6, 0xDDF3, 5171},+    {0xDDF4, 0xDDF4, 7607},+    {0xDDF5, 0xDDFE, 5201},+    {0xDEA1, 0xDEFB, 5211},+    {0xDEFC, 0xDEFC, 5584},+    {0xDEFD, 0xDEFD, 5302},+    {0xDEFE, 0xDEFE, 5367},+    {0xDFA1, 0xDFB2, 5303},+    {0xDFB3, 0xDFB3, 7083},+    {0xDFB4, 0xDFE0, 5321},+    {0xDFE1, 0xDFE1, 5362},+    {0xDFE2, 0xDFE7, 5366},+    {0xDFE8, 0xDFE8, 5485},+    {0xDFE9, 0xDFFE, 5372},+    {0xE0A1, 0xE0F0, 5394},+    {0xE0F1, 0xE0F1, 6001},+    {0xE0F2, 0xE0FE, 5474},+    {0xE1A1, 0xE1AC, 5487},+    {0xE1AD, 0xE1AD, 5460},+    {0xE1AE, 0xE1EC, 5499},+    {0xE1ED, 0xE1ED, 5317},+    {0xE1EE, 0xE1FE, 5562},+    {0xE2A1, 0xE2FE, 5579},+    {0xE3A1, 0xE3F4, 5673},+    {0xE3F5, 0xE3F5, 7009},+    {0xE3F6, 0xE3FE, 5757},+    {0xE4A1, 0xE4A1, 7370},+    {0xE4A2, 0xE4A8, 5766},+    {0xE4A9, 0xE4A9, 5678},+    {0xE4AA, 0xE4FE, 5773},+    {0xE5A1, 0xE5AD, 5858},+    {0xE5AE, 0xE5AE, 5874},+    {0xE5AF, 0xE5B0, 5871},+    {0xE5B1, 0xE5B2, 4425},+    {0xE5B3, 0xE5B8, 5873},+    {0xE5B9, 0xE5B9, 4427},+    {0xE5BA, 0xE5BA, 5879},+    {0xE5BB, 0xE5BC, 4429},+    {0xE5BD, 0xE5C3, 5880},+    {0xE5C4, 0xE5C4, 4431},+    {0xE5C5, 0xE5CD, 5887},+    {0xE5CE, 0xE5CE, 4435},+    {0xE5CF, 0xE5CF, 5896},+    {0xE5D0, 0xE5D0, 4436},+    {0xE5D1, 0xE5D1, 5897},+    {0xE5D2, 0xE5D2, 4437},+    {0xE5D3, 0xE5D5, 5898},+    {0xE5D6, 0xE5D6, 4439},+    {0xE5D7, 0xE5F9, 5901},+    {0xE5FA, 0xE5FB, 4442},+    {0xE5FC, 0xE5FC, 4159},+    {0xE5FD, 0xE5FD, 5936},+    {0xE5FE, 0xE5FE, 4444},+    {0xE6A1, 0xE6A1, 4447},+    {0xE6A2, 0xE6A3, 5937},+    {0xE6A4, 0xE6A4, 4449},+    {0xE6A5, 0xE6A6, 5939},+    {0xE6A7, 0xE6A7, 4450},+    {0xE6A8, 0xE6AC, 5941},+    {0xE6AD, 0xE6AD, 4453},+    {0xE6AE, 0xE6AE, 5946},+    {0xE6AF, 0xE6B1, 4455},+    {0xE6B2, 0xE6B2, 5947},+    {0xE6B3, 0xE6B3, 4458},+    {0xE6B4, 0xE6B6, 5948},+    {0xE6B7, 0xE6B8, 4459},+    {0xE6B9, 0xE6BB, 5951},+    {0xE6BC, 0xE6BC, 4463},+    {0xE6BD, 0xE6C3, 5954},+    {0xE6C4, 0xE6C4, 4160},+    {0xE6C5, 0xE6C5, 5961},+    {0xE6C6, 0xE6C7, 4465},+    {0xE6C8, 0xE6C9, 5962},+    {0xE6CA, 0xE6CA, 4161},+    {0xE6CB, 0xE6D1, 5964},+    {0xE6D2, 0xE6D2, 4468},+    {0xE6D3, 0xE6D5, 5971},+    {0xE6D6, 0xE6D6, 4469},+    {0xE6D7, 0xE6D8, 5974},+    {0xE6D9, 0xE6D9, 4470},+    {0xE6DA, 0xE6DB, 5976},+    {0xE6DC, 0xE6DC, 4162},+    {0xE6DD, 0xE6DE, 5978},+    {0xE6DF, 0xE6DF, 4471},+    {0xE6E0, 0xE6E0, 5980},+    {0xE6E1, 0xE6E1, 4472},+    {0xE6E2, 0xE6E3, 5981},+    {0xE6E4, 0xE6E4, 4474},+    {0xE6E5, 0xE6E5, 4473},+    {0xE6E6, 0xE6E6, 4475},+    {0xE6E7, 0xE6E7, 5983},+    {0xE6E8, 0xE6E8, 4476},+    {0xE6E9, 0xE6E9, 5984},+    {0xE6EA, 0xE6EB, 4478},+    {0xE6EC, 0xE6EC, 6447},+    {0xE6ED, 0xE6EE, 5985},+    {0xE6EF, 0xE6EF, 4481},+    {0xE6F0, 0xE6F0, 5987},+    {0xE6F1, 0xE6F1, 4482},+    {0xE6F2, 0xE6F2, 5460},+    {0xE6F3, 0xE6F4, 5988},+    {0xE6F5, 0xE6F5, 4483},+    {0xE6F6, 0xE6F6, 4163},+    {0xE6F7, 0xE6F7, 4166},+    {0xE6F8, 0xE6F8, 5990},+    {0xE6F9, 0xE6F9, 4485},+    {0xE6FA, 0xE6FE, 5991},+    {0xE7A1, 0xE7A1, 4487},+    {0xE7A2, 0xE7A5, 5996},+    {0xE7A6, 0xE7A6, 4488},+    {0xE7A7, 0xE7A8, 6000},+    {0xE7A9, 0xE7A9, 4489},+    {0xE7AA, 0xE7AA, 4491},+    {0xE7AB, 0xE7AB, 6002},+    {0xE7AC, 0xE7AC, 4167},+    {0xE7AD, 0xE7AD, 4493},+    {0xE7AE, 0xE7AF, 6003},+    {0xE7B0, 0xE7B0, 4494},+    {0xE7B1, 0xE7BE, 6005},+    {0xE7BF, 0xE7BF, 4495},+    {0xE7C0, 0xE7C0, 6019},+    {0xE7C1, 0xE7C1, 7783},+    {0xE7C2, 0xE7C5, 6020},+    {0xE7C6, 0xE7C6, 4497},+    {0xE7C7, 0xE7C7, 4499},+    {0xE7C8, 0xE7CA, 6024},+    {0xE7CB, 0xE7CB, 4501},+    {0xE7CC, 0xE7CC, 6027},+    {0xE7CD, 0xE7CD, 4502},+    {0xE7CE, 0xE7CE, 6028},+    {0xE7CF, 0xE7D0, 4503},+    {0xE7D1, 0xE7D2, 6029},+    {0xE7D3, 0xE7D3, 4506},+    {0xE7D4, 0xE7DE, 6031},+    {0xE7DF, 0xE7DF, 4508},+    {0xE7E0, 0xE7E3, 6042},+    {0xE7E4, 0xE7E4, 4509},+    {0xE7E5, 0xE7E5, 6046},+    {0xE7E6, 0xE7E6, 4510},+    {0xE7E7, 0xE7F6, 6047},+    {0xE7F7, 0xE7F7, 5797},+    {0xE7F8, 0xE7FE, 6063},+    {0xE8A1, 0xE8E6, 6070},+    {0xE8E7, 0xE8E8, 4551},+    {0xE8E9, 0xE8EF, 6140},+    {0xE8F0, 0xE8F0, 4553},+    {0xE8F1, 0xE8F1, 4180},+    {0xE8F2, 0xE8F6, 6147},+    {0xE8F7, 0xE8F7, 4555},+    {0xE8F8, 0xE8F8, 6152},+    {0xE8F9, 0xE8F9, 5800},+    {0xE8FA, 0xE8FA, 6153},+    {0xE8FB, 0xE8FB, 4556},+    {0xE8FC, 0xE8FD, 6154},+    {0xE8FE, 0xE8FE, 4557},+    {0xE9A1, 0xE9A6, 6156},+    {0xE9A7, 0xE9A7, 4560},+    {0xE9A8, 0xE9AB, 6162},+    {0xE9AC, 0xE9AC, 4561},+    {0xE9AD, 0xE9CB, 6166},+    {0xE9CC, 0xE9CC, 4563},+    {0xE9CD, 0xE9F6, 6197},+    {0xE9F7, 0xE9F7, 7988},+    {0xE9F8, 0xE9FE, 6239},+    {0xEAA1, 0xEAC0, 6246},+    {0xEAC1, 0xEAC1, 6123},+    {0xEAC2, 0xEAE4, 6278},+    {0xEAE5, 0xEAE5, 4577},+    {0xEAE6, 0xEAF3, 6313},+    {0xEAF4, 0xEAF4, 4183},+    {0xEAF5, 0xEAF6, 6327},+    {0xEAF7, 0xEAF7, 4579},+    {0xEAF8, 0xEAFB, 6329},+    {0xEAFC, 0xEAFC, 4581},+    {0xEAFD, 0xEAFD, 6333},+    {0xEAFE, 0xEAFE, 4582},+    {0xEBA1, 0xEBA3, 6334},+    {0xEBA4, 0xEBA4, 4584},+    {0xEBA5, 0xEBA6, 6337},+    {0xEBA7, 0xEBA7, 4586},+    {0xEBA8, 0xEBA8, 6339},+    {0xEBA9, 0xEBA9, 4588},+    {0xEBAA, 0xEBAA, 4184},+    {0xEBAB, 0xEBB9, 6340},+    {0xEBBA, 0xEBBB, 4590},+    {0xEBBC, 0xEBBC, 6355},+    {0xEBBD, 0xEBBD, 4592},+    {0xEBBE, 0xEBC0, 6356},+    {0xEBC1, 0xEBC1, 4593},+    {0xEBC2, 0xEBC2, 4595},+    {0xEBC3, 0xEBC5, 6359},+    {0xEBC6, 0xEBC7, 4596},+    {0xEBC8, 0xEBCB, 6362},+    {0xEBCC, 0xEBCC, 4599},+    {0xEBCD, 0xEBCE, 6366},+    {0xEBCF, 0xEBD1, 4600},+    {0xEBD2, 0xEBD2, 5552},+    {0xEBD3, 0xEBD7, 6368},+    {0xEBD8, 0xEBD8, 4603},+    {0xEBD9, 0xEBFE, 6373},+    {0xECA1, 0xECA5, 6411},+    {0xECA6, 0xECA6, 4614},+    {0xECA7, 0xECA7, 4616},+    {0xECA8, 0xECA9, 6416},+    {0xECAA, 0xECAA, 4618},+    {0xECAB, 0xECAE, 6418},+    {0xECAF, 0xECAF, 5950},+    {0xECB0, 0xECB1, 4620},+    {0xECB2, 0xECB2, 4187},+    {0xECB3, 0xECB4, 6422},+    {0xECB5, 0xECB5, 4625},+    {0xECB6, 0xECB7, 6424},+    {0xECB8, 0xECB8, 4627},+    {0xECB9, 0xECB9, 6426},+    {0xECBA, 0xECBA, 4629},+    {0xECBB, 0xECBF, 6427},+    {0xECC0, 0xECC1, 4632},+    {0xECC2, 0xECC4, 6432},+    {0xECC5, 0xECC5, 4634},+    {0xECC6, 0xECC6, 4636},+    {0xECC7, 0xECC8, 6435},+    {0xECC9, 0xECCA, 4188},+    {0xECCB, 0xECD4, 6437},+    {0xECD5, 0xECD5, 4638},+    {0xECD6, 0xECDC, 6447},+    {0xECDD, 0xECDE, 4640},+    {0xECDF, 0xECE0, 6454},+    {0xECE1, 0xECE1, 4642},+    {0xECE2, 0xECE3, 6456},+    {0xECE4, 0xECE4, 4644},+    {0xECE5, 0xECE6, 6458},+    {0xECE7, 0xECE8, 4645},+    {0xECE9, 0xECF6, 6460},+    {0xECF7, 0xECF8, 4647},+    {0xECF9, 0xECF9, 6474},+    {0xECFA, 0xECFA, 4650},+    {0xECFB, 0xECFE, 6475},+    {0xEDA1, 0xEDA3, 4653},+    {0xEDA4, 0xEDED, 6479},+    {0xEDEE, 0xEDEE, 5351},+    {0xEDEF, 0xEDFE, 6553},+    {0xEEA1, 0xEEDA, 6569},+    {0xEEDB, 0xEEDB, 6494},+    {0xEEDC, 0xEEFE, 6627},+    {0xEFA1, 0xEFFE, 6662},+    {0xF0A1, 0xF0FE, 6756},+    {0xF1A1, 0xF1FE, 6850},+    {0xF2A1, 0xF2BC, 6944},+    {0xF2BD, 0xF2BD, 5731},+    {0xF2BE, 0xF2F9, 6972},+    {0xF2FA, 0xF2FA, 5771},+    {0xF2FB, 0xF2FE, 7032},+    {0xF3A1, 0xF3B0, 7036},+    {0xF3B1, 0xF3B1, 4191},+    {0xF3B2, 0xF3FE, 7052},+    {0xF4A1, 0xF4A6, 7129},+    {0xF4A7, 0xF4A7, 6484},+    {0xF4A8, 0xF4ED, 7135},+    {0xF4EE, 0xF4EE, 6684},+    {0xF4EF, 0xF4FE, 7205},+    {0xF5A1, 0xF5FE, 7221},+    {0xF6A1, 0xF6F3, 7315},+    {0xF6F4, 0xF6F4, 4279},+    {0xF6F5, 0xF6F5, 7398},+    {0xF6F6, 0xF6F6, 7139},+    {0xF6F7, 0xF6FE, 7399},+    {0xF7A1, 0xF7B7, 7407},+    {0xF7B8, 0xF7B8, 4247},+    {0xF7B9, 0xF7C7, 7430},+    {0xF7C8, 0xF7C8, 4266},+    {0xF7C9, 0xF7D2, 7445},+    {0xF7D3, 0xF7D3, 4340},+    {0xF7D4, 0xF7FE, 7455},+    {0xF8A1, 0xF8DA, 7498},+    {0xF8DB, 0xF8DB, 7572},+    {0xF8DC, 0xF8EF, 7556},+    {0xF8F0, 0xF8F0, 5088},+    {0xF8F1, 0xF8FE, 7576},+    {0xF9A1, 0xF9FE, 7590},+    {0xFAA1, 0xFAA1, 7709},+    {0xFAA2, 0xFAA2, 3558},+    {0xFAA3, 0xFAE5, 7684},+    {0xFAE6, 0xFAE6, 3644},+    {0xFAE7, 0xFAFE, 7751},+    {0xFBA1, 0xFBFE, 7775},+    {0xFCA1, 0xFCA8, 7869},+    {0xFCA9, 0xFCA9, 3815},+    {0xFCAA, 0xFCFE, 7877},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_KSCms_UHC_HW_V[] = {+    {0xA1A2, 0xA1A3, 8056},+    {0xA1A5, 0xA1A5, 8058},+    {0xA1A6, 0xA1A6, 8320},+    {0xA1A9, 0xA1AB, 8059},+    {0xA1AD, 0xA1AD, 8062},+    {0xA1B2, 0xA1BD, 8063},+    {0xA1EB, 0xA1EB, 8075},+    {0xA3A1, 0xA3A1, 8076},+    {0xA3A8, 0xA3A9, 8077},+    {0xA3AC, 0xA3AC, 8079},+    {0xA3AE, 0xA3AE, 8080},+    {0xA3BA, 0xA3BF, 8081},+    {0xA3DB, 0xA3DB, 8087},+    {0xA3DD, 0xA3DD, 8088},+    {0xA3DF, 0xA3DF, 8089},+    {0xA3FB, 0xA3FE, 8090},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_KSC_EUC_H[] = {+    {0x20, 0x7E, 8094},+    {0xA1A1, 0xA1FE, 101},+    {0xA2A1, 0xA2E5, 195},+    {0xA3A1, 0xA3FE, 264},+    {0xA4A1, 0xA4D3, 358},+    {0xA4D5, 0xA4FE, 409},+    {0xA5A1, 0xA5AA, 451},+    {0xA5B0, 0xA5B9, 461},+    {0xA5C1, 0xA5D8, 471},+    {0xA5E1, 0xA5F8, 495},+    {0xA6A1, 0xA6E4, 519},+    {0xA7A1, 0xA7EF, 587},+    {0xA8A1, 0xA8A4, 666},+    {0xA8A6, 0xA8A6, 670},+    {0xA8A8, 0xA8AF, 671},+    {0xA8B1, 0xA8FE, 679},+    {0xA9A1, 0xA9FE, 757},+    {0xAAA1, 0xAAF3, 851},+    {0xABA1, 0xABF6, 934},+    {0xACA1, 0xACC1, 1020},+    {0xACD1, 0xACF1, 1053},+    {0xB0A1, 0xB0FE, 1086},+    {0xB1A1, 0xB1FE, 1180},+    {0xB2A1, 0xB2FE, 1274},+    {0xB3A1, 0xB3FE, 1368},+    {0xB4A1, 0xB4FE, 1462},+    {0xB5A1, 0xB5FE, 1556},+    {0xB6A1, 0xB6FE, 1650},+    {0xB7A1, 0xB7FE, 1744},+    {0xB8A1, 0xB8FE, 1838},+    {0xB9A1, 0xB9FE, 1932},+    {0xBAA1, 0xBAFE, 2026},+    {0xBBA1, 0xBBFE, 2120},+    {0xBCA1, 0xBCFE, 2214},+    {0xBDA1, 0xBDFE, 2308},+    {0xBEA1, 0xBEFE, 2402},+    {0xBFA1, 0xBFFE, 2496},+    {0xC0A1, 0xC0FE, 2590},+    {0xC1A1, 0xC1FE, 2684},+    {0xC2A1, 0xC2FE, 2778},+    {0xC3A1, 0xC3FE, 2872},+    {0xC4A1, 0xC4FE, 2966},+    {0xC5A1, 0xC5FE, 3060},+    {0xC6A1, 0xC6FE, 3154},+    {0xC7A1, 0xC7FE, 3248},+    {0xC8A1, 0xC8FE, 3342},+    {0xCAA1, 0xCAFE, 3436},+    {0xCBA1, 0xCBCF, 3530},+    {0xCBD0, 0xCBD0, 4116},+    {0xCBD1, 0xCBD5, 3577},+    {0xCBD6, 0xCBD6, 3678},+    {0xCBD7, 0xCBE6, 3582},+    {0xCBE7, 0xCBE7, 7053},+    {0xCBE8, 0xCBFE, 3598},+    {0xCCA1, 0xCCFE, 3621},+    {0xCDA1, 0xCDCE, 3715},+    {0xCDCF, 0xCDCF, 3460},+    {0xCDD0, 0xCDE7, 3761},+    {0xCDE8, 0xCDE8, 7900},+    {0xCDE9, 0xCDFE, 3785},+    {0xCEA1, 0xCEAC, 3807},+    {0xCEAD, 0xCEAD, 3802},+    {0xCEAE, 0xCEFE, 3819},+    {0xCFA1, 0xCFFA, 3900},+    {0xCFFB, 0xCFFB, 3902},+    {0xCFFC, 0xCFFE, 3990},+    {0xD0A1, 0xD0A1, 3993},+    {0xD0A2, 0xD0A2, 3946},+    {0xD0A3, 0xD0B7, 3994},+    {0xD0B8, 0xD0B8, 3946},+    {0xD0B9, 0xD0CF, 4015},+    {0xD0D0, 0xD0D0, 3708},+    {0xD0D1, 0xD0DC, 4038},+    {0xD0DD, 0xD0DD, 4131},+    {0xD0DE, 0xD0FE, 4050},+    {0xD1A1, 0xD1D3, 4083},+    {0xD1D4, 0xD1D4, 4374},+    {0xD1D5, 0xD1D5, 4156},+    {0xD1D6, 0xD1D7, 4134},+    {0xD1D8, 0xD1D8, 4375},+    {0xD1D9, 0xD1DA, 4136},+    {0xD1DB, 0xD1E0, 4376},+    {0xD1E1, 0xD1E1, 4138},+    {0xD1E2, 0xD1E2, 5800},+    {0xD1E3, 0xD1E5, 4382},+    {0xD1E6, 0xD1E6, 4386},+    {0xD1E7, 0xD1E7, 4139},+    {0xD1E8, 0xD1EB, 4387},+    {0xD1EC, 0xD1EC, 4140},+    {0xD1ED, 0xD1ED, 4391},+    {0xD1EE, 0xD1EE, 4141},+    {0xD1EF, 0xD1F0, 4394},+    {0xD1F1, 0xD1F1, 4142},+    {0xD1F2, 0xD1F2, 4396},+    {0xD1F3, 0xD1F5, 4143},+    {0xD1F6, 0xD1F6, 4399},+    {0xD1F7, 0xD1F9, 4146},+    {0xD1FA, 0xD1FA, 4403},+    {0xD1FB, 0xD1FB, 4149},+    {0xD1FC, 0xD1FD, 4406},+    {0xD1FE, 0xD1FE, 4409},+    {0xD2A1, 0xD2A1, 4150},+    {0xD2A2, 0xD2A3, 4410},+    {0xD2A4, 0xD2A6, 4151},+    {0xD2A7, 0xD2AA, 4412},+    {0xD2AB, 0xD2AB, 4419},+    {0xD2AC, 0xD2AC, 4154},+    {0xD2AD, 0xD2AD, 4420},+    {0xD2AE, 0xD2B1, 4155},+    {0xD2B2, 0xD2B2, 4424},+    {0xD2B3, 0xD2BD, 4159},+    {0xD2BE, 0xD2BE, 4511},+    {0xD2BF, 0xD2C1, 4170},+    {0xD2C2, 0xD2C3, 4513},+    {0xD2C4, 0xD2C4, 4517},+    {0xD2C5, 0xD2C5, 4173},+    {0xD2C6, 0xD2CA, 4518},+    {0xD2CB, 0xD2CB, 4524},+    {0xD2CC, 0xD2CC, 4174},+    {0xD2CD, 0xD2CE, 4525},+    {0xD2CF, 0xD2D4, 4528},+    {0xD2D5, 0xD2D7, 4535},+    {0xD2D8, 0xD2D8, 4175},+    {0xD2D9, 0xD2DA, 4541},+    {0xD2DB, 0xD2DD, 4176},+    {0xD2DE, 0xD2DF, 4545},+    {0xD2E0, 0xD2E0, 4179},+    {0xD2E1, 0xD2E1, 4547},+    {0xD2E2, 0xD2E2, 4550},+    {0xD2E3, 0xD2E3, 4180},+    {0xD2E4, 0xD2E4, 4564},+    {0xD2E5, 0xD2E8, 4566},+    {0xD2E9, 0xD2EA, 4571},+    {0xD2EB, 0xD2EB, 4576},+    {0xD2EC, 0xD2EF, 4181},+    {0xD2F0, 0xD2F3, 4604},+    {0xD2F4, 0xD2F5, 4609},+    {0xD2F6, 0xD2F6, 4185},+    {0xD2F7, 0xD2F8, 4611},+    {0xD2F9, 0xD2FE, 4186},+    {0xD3A1, 0xD3FE, 4192},+    {0xD4A1, 0xD4E5, 4286},+    {0xD4E6, 0xD4E6, 4318},+    {0xD4E7, 0xD4FB, 4355},+    {0xD4FC, 0xD4FC, 4136},+    {0xD4FD, 0xD4FE, 4376},+    {0xD5A1, 0xD5A4, 4378},+    {0xD5A5, 0xD5A5, 5800},+    {0xD5A6, 0xD5AA, 4382},+    {0xD5AB, 0xD5AB, 4139},+    {0xD5AC, 0xD5AD, 4387},+    {0xD5AE, 0xD5AE, 4192},+    {0xD5AF, 0xD5FE, 4389},+    {0xD6A1, 0xD6B7, 4469},+    {0xD6B8, 0xD6B8, 4167},+    {0xD6B9, 0xD6CC, 4492},+    {0xD6CD, 0xD6CD, 4172},+    {0xD6CE, 0xD6FE, 4512},+    {0xD7A1, 0xD7CA, 4561},+    {0xD7CB, 0xD7CB, 5552},+    {0xD7CC, 0xD7E3, 4603},+    {0xD7E4, 0xD7E4, 6424},+    {0xD7E5, 0xD7FE, 4627},+    {0xD8A1, 0xD8FE, 4653},+    {0xD9A1, 0xD9FE, 4747},+    {0xDAA1, 0xDAFE, 4841},+    {0xDBA1, 0xDBC4, 4935},+    {0xDBC5, 0xDBC5, 5151},+    {0xDBC6, 0xDBE3, 4971},+    {0xDBE4, 0xDBE4, 4922},+    {0xDBE5, 0xDBFE, 5001},+    {0xDCA1, 0xDCA4, 5027},+    {0xDCA5, 0xDCA5, 7518},+    {0xDCA6, 0xDCFE, 5031},+    {0xDDA1, 0xDDA4, 5120},+    {0xDDA5, 0xDDA5, 5079},+    {0xDDA6, 0xDDD4, 5124},+    {0xDDD5, 0xDDD5, 5109},+    {0xDDD6, 0xDDF3, 5171},+    {0xDDF4, 0xDDF4, 7607},+    {0xDDF5, 0xDDFE, 5201},+    {0xDEA1, 0xDEFB, 5211},+    {0xDEFC, 0xDEFC, 5584},+    {0xDEFD, 0xDEFD, 5302},+    {0xDEFE, 0xDEFE, 5367},+    {0xDFA1, 0xDFB2, 5303},+    {0xDFB3, 0xDFB3, 7083},+    {0xDFB4, 0xDFE0, 5321},+    {0xDFE1, 0xDFE1, 5362},+    {0xDFE2, 0xDFE7, 5366},+    {0xDFE8, 0xDFE8, 5485},+    {0xDFE9, 0xDFFE, 5372},+    {0xE0A1, 0xE0F0, 5394},+    {0xE0F1, 0xE0F1, 6001},+    {0xE0F2, 0xE0FE, 5474},+    {0xE1A1, 0xE1AC, 5487},+    {0xE1AD, 0xE1AD, 5460},+    {0xE1AE, 0xE1EC, 5499},+    {0xE1ED, 0xE1ED, 5317},+    {0xE1EE, 0xE1FE, 5562},+    {0xE2A1, 0xE2FE, 5579},+    {0xE3A1, 0xE3F4, 5673},+    {0xE3F5, 0xE3F5, 7009},+    {0xE3F6, 0xE3FE, 5757},+    {0xE4A1, 0xE4A1, 7370},+    {0xE4A2, 0xE4A8, 5766},+    {0xE4A9, 0xE4A9, 5678},+    {0xE4AA, 0xE4FE, 5773},+    {0xE5A1, 0xE5AD, 5858},+    {0xE5AE, 0xE5AE, 5874},+    {0xE5AF, 0xE5B0, 5871},+    {0xE5B1, 0xE5B2, 4425},+    {0xE5B3, 0xE5B8, 5873},+    {0xE5B9, 0xE5B9, 4427},+    {0xE5BA, 0xE5BA, 5879},+    {0xE5BB, 0xE5BC, 4429},+    {0xE5BD, 0xE5C3, 5880},+    {0xE5C4, 0xE5C4, 4431},+    {0xE5C5, 0xE5CD, 5887},+    {0xE5CE, 0xE5CE, 4435},+    {0xE5CF, 0xE5CF, 5896},+    {0xE5D0, 0xE5D0, 4436},+    {0xE5D1, 0xE5D1, 5897},+    {0xE5D2, 0xE5D2, 4437},+    {0xE5D3, 0xE5D5, 5898},+    {0xE5D6, 0xE5D6, 4439},+    {0xE5D7, 0xE5F9, 5901},+    {0xE5FA, 0xE5FB, 4442},+    {0xE5FC, 0xE5FC, 4159},+    {0xE5FD, 0xE5FD, 5936},+    {0xE5FE, 0xE5FE, 4444},+    {0xE6A1, 0xE6A1, 4447},+    {0xE6A2, 0xE6A3, 5937},+    {0xE6A4, 0xE6A4, 4449},+    {0xE6A5, 0xE6A6, 5939},+    {0xE6A7, 0xE6A7, 4450},+    {0xE6A8, 0xE6AC, 5941},+    {0xE6AD, 0xE6AD, 4453},+    {0xE6AE, 0xE6AE, 5946},+    {0xE6AF, 0xE6B1, 4455},+    {0xE6B2, 0xE6B2, 5947},+    {0xE6B3, 0xE6B3, 4458},+    {0xE6B4, 0xE6B6, 5948},+    {0xE6B7, 0xE6B8, 4459},+    {0xE6B9, 0xE6BB, 5951},+    {0xE6BC, 0xE6BC, 4463},+    {0xE6BD, 0xE6C3, 5954},+    {0xE6C4, 0xE6C4, 4160},+    {0xE6C5, 0xE6C5, 5961},+    {0xE6C6, 0xE6C7, 4465},+    {0xE6C8, 0xE6C9, 5962},+    {0xE6CA, 0xE6CA, 4161},+    {0xE6CB, 0xE6D1, 5964},+    {0xE6D2, 0xE6D2, 4468},+    {0xE6D3, 0xE6D5, 5971},+    {0xE6D6, 0xE6D6, 4469},+    {0xE6D7, 0xE6D8, 5974},+    {0xE6D9, 0xE6D9, 4470},+    {0xE6DA, 0xE6DB, 5976},+    {0xE6DC, 0xE6DC, 4162},+    {0xE6DD, 0xE6DE, 5978},+    {0xE6DF, 0xE6DF, 4471},+    {0xE6E0, 0xE6E0, 5980},+    {0xE6E1, 0xE6E1, 4472},+    {0xE6E2, 0xE6E3, 5981},+    {0xE6E4, 0xE6E4, 4474},+    {0xE6E5, 0xE6E5, 4473},+    {0xE6E6, 0xE6E6, 4475},+    {0xE6E7, 0xE6E7, 5983},+    {0xE6E8, 0xE6E8, 4476},+    {0xE6E9, 0xE6E9, 5984},+    {0xE6EA, 0xE6EB, 4478},+    {0xE6EC, 0xE6EC, 6447},+    {0xE6ED, 0xE6EE, 5985},+    {0xE6EF, 0xE6EF, 4481},+    {0xE6F0, 0xE6F0, 5987},+    {0xE6F1, 0xE6F1, 4482},+    {0xE6F2, 0xE6F2, 5460},+    {0xE6F3, 0xE6F4, 5988},+    {0xE6F5, 0xE6F5, 4483},+    {0xE6F6, 0xE6F6, 4163},+    {0xE6F7, 0xE6F7, 4166},+    {0xE6F8, 0xE6F8, 5990},+    {0xE6F9, 0xE6F9, 4485},+    {0xE6FA, 0xE6FE, 5991},+    {0xE7A1, 0xE7A1, 4487},+    {0xE7A2, 0xE7A5, 5996},+    {0xE7A6, 0xE7A6, 4488},+    {0xE7A7, 0xE7A8, 6000},+    {0xE7A9, 0xE7A9, 4489},+    {0xE7AA, 0xE7AA, 4491},+    {0xE7AB, 0xE7AB, 6002},+    {0xE7AC, 0xE7AC, 4167},+    {0xE7AD, 0xE7AD, 4493},+    {0xE7AE, 0xE7AF, 6003},+    {0xE7B0, 0xE7B0, 4494},+    {0xE7B1, 0xE7BE, 6005},+    {0xE7BF, 0xE7BF, 4495},+    {0xE7C0, 0xE7C0, 6019},+    {0xE7C1, 0xE7C1, 7783},+    {0xE7C2, 0xE7C5, 6020},+    {0xE7C6, 0xE7C6, 4497},+    {0xE7C7, 0xE7C7, 4499},+    {0xE7C8, 0xE7CA, 6024},+    {0xE7CB, 0xE7CB, 4501},+    {0xE7CC, 0xE7CC, 6027},+    {0xE7CD, 0xE7CD, 4502},+    {0xE7CE, 0xE7CE, 6028},+    {0xE7CF, 0xE7D0, 4503},+    {0xE7D1, 0xE7D2, 6029},+    {0xE7D3, 0xE7D3, 4506},+    {0xE7D4, 0xE7DE, 6031},+    {0xE7DF, 0xE7DF, 4508},+    {0xE7E0, 0xE7E3, 6042},+    {0xE7E4, 0xE7E4, 4509},+    {0xE7E5, 0xE7E5, 6046},+    {0xE7E6, 0xE7E6, 4510},+    {0xE7E7, 0xE7F6, 6047},+    {0xE7F7, 0xE7F7, 5797},+    {0xE7F8, 0xE7FE, 6063},+    {0xE8A1, 0xE8E6, 6070},+    {0xE8E7, 0xE8E8, 4551},+    {0xE8E9, 0xE8EF, 6140},+    {0xE8F0, 0xE8F0, 4553},+    {0xE8F1, 0xE8F1, 4180},+    {0xE8F2, 0xE8F6, 6147},+    {0xE8F7, 0xE8F7, 4555},+    {0xE8F8, 0xE8F8, 6152},+    {0xE8F9, 0xE8F9, 5800},+    {0xE8FA, 0xE8FA, 6153},+    {0xE8FB, 0xE8FB, 4556},+    {0xE8FC, 0xE8FD, 6154},+    {0xE8FE, 0xE8FE, 4557},+    {0xE9A1, 0xE9A6, 6156},+    {0xE9A7, 0xE9A7, 4560},+    {0xE9A8, 0xE9AB, 6162},+    {0xE9AC, 0xE9AC, 4561},+    {0xE9AD, 0xE9CB, 6166},+    {0xE9CC, 0xE9CC, 4563},+    {0xE9CD, 0xE9F6, 6197},+    {0xE9F7, 0xE9F7, 7988},+    {0xE9F8, 0xE9FE, 6239},+    {0xEAA1, 0xEAC0, 6246},+    {0xEAC1, 0xEAC1, 6123},+    {0xEAC2, 0xEAE4, 6278},+    {0xEAE5, 0xEAE5, 4577},+    {0xEAE6, 0xEAF3, 6313},+    {0xEAF4, 0xEAF4, 4183},+    {0xEAF5, 0xEAF6, 6327},+    {0xEAF7, 0xEAF7, 4579},+    {0xEAF8, 0xEAFB, 6329},+    {0xEAFC, 0xEAFC, 4581},+    {0xEAFD, 0xEAFD, 6333},+    {0xEAFE, 0xEAFE, 4582},+    {0xEBA1, 0xEBA3, 6334},+    {0xEBA4, 0xEBA4, 4584},+    {0xEBA5, 0xEBA6, 6337},+    {0xEBA7, 0xEBA7, 4586},+    {0xEBA8, 0xEBA8, 6339},+    {0xEBA9, 0xEBA9, 4588},+    {0xEBAA, 0xEBAA, 4184},+    {0xEBAB, 0xEBB9, 6340},+    {0xEBBA, 0xEBBB, 4590},+    {0xEBBC, 0xEBBC, 6355},+    {0xEBBD, 0xEBBD, 4592},+    {0xEBBE, 0xEBC0, 6356},+    {0xEBC1, 0xEBC1, 4593},+    {0xEBC2, 0xEBC2, 4595},+    {0xEBC3, 0xEBC5, 6359},+    {0xEBC6, 0xEBC7, 4596},+    {0xEBC8, 0xEBCB, 6362},+    {0xEBCC, 0xEBCC, 4599},+    {0xEBCD, 0xEBCE, 6366},+    {0xEBCF, 0xEBD1, 4600},+    {0xEBD2, 0xEBD2, 5552},+    {0xEBD3, 0xEBD7, 6368},+    {0xEBD8, 0xEBD8, 4603},+    {0xEBD9, 0xEBFE, 6373},+    {0xECA1, 0xECA5, 6411},+    {0xECA6, 0xECA6, 4614},+    {0xECA7, 0xECA7, 4616},+    {0xECA8, 0xECA9, 6416},+    {0xECAA, 0xECAA, 4618},+    {0xECAB, 0xECAE, 6418},+    {0xECAF, 0xECAF, 5950},+    {0xECB0, 0xECB1, 4620},+    {0xECB2, 0xECB2, 4187},+    {0xECB3, 0xECB4, 6422},+    {0xECB5, 0xECB5, 4625},+    {0xECB6, 0xECB7, 6424},+    {0xECB8, 0xECB8, 4627},+    {0xECB9, 0xECB9, 6426},+    {0xECBA, 0xECBA, 4629},+    {0xECBB, 0xECBF, 6427},+    {0xECC0, 0xECC1, 4632},+    {0xECC2, 0xECC4, 6432},+    {0xECC5, 0xECC5, 4634},+    {0xECC6, 0xECC6, 4636},+    {0xECC7, 0xECC8, 6435},+    {0xECC9, 0xECCA, 4188},+    {0xECCB, 0xECD4, 6437},+    {0xECD5, 0xECD5, 4638},+    {0xECD6, 0xECDC, 6447},+    {0xECDD, 0xECDE, 4640},+    {0xECDF, 0xECE0, 6454},+    {0xECE1, 0xECE1, 4642},+    {0xECE2, 0xECE3, 6456},+    {0xECE4, 0xECE4, 4644},+    {0xECE5, 0xECE6, 6458},+    {0xECE7, 0xECE8, 4645},+    {0xECE9, 0xECF6, 6460},+    {0xECF7, 0xECF8, 4647},+    {0xECF9, 0xECF9, 6474},+    {0xECFA, 0xECFA, 4650},+    {0xECFB, 0xECFE, 6475},+    {0xEDA1, 0xEDA3, 4653},+    {0xEDA4, 0xEDED, 6479},+    {0xEDEE, 0xEDEE, 5351},+    {0xEDEF, 0xEDFE, 6553},+    {0xEEA1, 0xEEDA, 6569},+    {0xEEDB, 0xEEDB, 6494},+    {0xEEDC, 0xEEFE, 6627},+    {0xEFA1, 0xEFFE, 6662},+    {0xF0A1, 0xF0FE, 6756},+    {0xF1A1, 0xF1FE, 6850},+    {0xF2A1, 0xF2BC, 6944},+    {0xF2BD, 0xF2BD, 5731},+    {0xF2BE, 0xF2F9, 6972},+    {0xF2FA, 0xF2FA, 5771},+    {0xF2FB, 0xF2FE, 7032},+    {0xF3A1, 0xF3B0, 7036},+    {0xF3B1, 0xF3B1, 4191},+    {0xF3B2, 0xF3FE, 7052},+    {0xF4A1, 0xF4A6, 7129},+    {0xF4A7, 0xF4A7, 6484},+    {0xF4A8, 0xF4ED, 7135},+    {0xF4EE, 0xF4EE, 6684},+    {0xF4EF, 0xF4FE, 7205},+    {0xF5A1, 0xF5FE, 7221},+    {0xF6A1, 0xF6F3, 7315},+    {0xF6F4, 0xF6F4, 4279},+    {0xF6F5, 0xF6F5, 7398},+    {0xF6F6, 0xF6F6, 7139},+    {0xF6F7, 0xF6FE, 7399},+    {0xF7A1, 0xF7B7, 7407},+    {0xF7B8, 0xF7B8, 4247},+    {0xF7B9, 0xF7C7, 7430},+    {0xF7C8, 0xF7C8, 4266},+    {0xF7C9, 0xF7D2, 7445},+    {0xF7D3, 0xF7D3, 4340},+    {0xF7D4, 0xF7FE, 7455},+    {0xF8A1, 0xF8DA, 7498},+    {0xF8DB, 0xF8DB, 7572},+    {0xF8DC, 0xF8EF, 7556},+    {0xF8F0, 0xF8F0, 5088},+    {0xF8F1, 0xF8FE, 7576},+    {0xF9A1, 0xF9FE, 7590},+    {0xFAA1, 0xFAA1, 7709},+    {0xFAA2, 0xFAA2, 3558},+    {0xFAA3, 0xFAE5, 7684},+    {0xFAE6, 0xFAE6, 3644},+    {0xFAE7, 0xFAFE, 7751},+    {0xFBA1, 0xFBFE, 7775},+    {0xFCA1, 0xFCA8, 7869},+    {0xFCA9, 0xFCA9, 3815},+    {0xFCAA, 0xFCFE, 7877},+    {0xFDA1, 0xFDFE, 7962},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec CMAP_ARRAY_KSC_EUC_V[] = {+    {0xA1A2, 0xA1A3, 8056},+    {0xA1A5, 0xA1A5, 8058},+    {0xA1A6, 0xA1A6, 8320},+    {0xA1A9, 0xA1AB, 8059},+    {0xA1AD, 0xA1AD, 8062},+    {0xA1B2, 0xA1BD, 8063},+    {0xA1EB, 0xA1EB, 8075},+    {0xA3A1, 0xA3A1, 8076},+    {0xA3A8, 0xA3A9, 8077},+    {0xA3AC, 0xA3AC, 8079},+    {0xA3AE, 0xA3AE, 8080},+    {0xA3BA, 0xA3BF, 8081},+    {0xA3DB, 0xA3DB, 8087},+    {0xA3DD, 0xA3DD, 8088},+    {0xA3DF, 0xA3DF, 8089},+    {0xA3FB, 0xA3FE, 8090},+    {0xffff, 0xffff, 0}+};+++static const HPDF_CidRange_Rec KSCms_UHC_NOTDEF_RANGE = {0x00, 0x1F, 1};++static const HPDF_CidRange_Rec KSCms_UHC_HW_NOTDEF_RANGE = {0x00, 0x1F, 8094};++static const HPDF_CidRange_Rec KSC_EUC_NOTDEF_RANGE = {0x00, 0x1F, 8094};+++static HPDF_BOOL+KSCms_UHC_IsLeadByte  (HPDF_Encoder    encoder,+                       HPDF_BYTE       b);+++static HPDF_BOOL+KSCms_UHC_IsTrialByte  (HPDF_Encoder    encoder,+                        HPDF_BYTE       b);+++static HPDF_STATUS+KSCms_UHC_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+KSCms_UHC_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+KSCms_UHC_HW_V_Init  (HPDF_Encoder  encoder);+++static HPDF_BOOL+KSC_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                     HPDF_BYTE       b);+++static HPDF_BOOL+KSC_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                      HPDF_BYTE       b);+++static HPDF_STATUS+KSC_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder);+++static HPDF_STATUS+KSC_EUC_H_Init  (HPDF_Encoder  encoder);+++static HPDF_STATUS+KSC_EUC_V_Init  (HPDF_Encoder  encoder);+++/*--------------------------------------------------------------------------*/++static HPDF_BOOL+KSCms_UHC_IsLeadByte  (HPDF_Encoder    encoder,+                  HPDF_BYTE       b)+{+    return (b >= 0x81 && b <= 0xFE);+}+++static HPDF_BOOL+KSCms_UHC_IsTrialByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0x41 && b <= 0xfe);+}+++static HPDF_STATUS+KSCms_UHC_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0x8141, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+KSCms_UHC_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSCms_UHC_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = KSCms_UHC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, KSCms_UHC_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP949_UNICODE_ARRAY);++    attr->is_lead_byte_fn = KSCms_UHC_IsLeadByte;+    attr->is_trial_byte_fn = KSCms_UHC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Korea1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 1;+    attr->uid_offset = 430;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25409;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+KSCms_UHC_HW_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSCms_UHC_HW_H) !=+                HPDF_OK)+        return encoder->error->error_no;++    if ((ret = KSCms_UHC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, KSCms_UHC_HW_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP949_UNICODE_ARRAY);++    attr->is_lead_byte_fn = KSCms_UHC_IsLeadByte;+    attr->is_trial_byte_fn = KSCms_UHC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Korea1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 1;+    attr->uid_offset = -1;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25416;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+KSCms_UHC_HW_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSCms_UHC_HW_H)) !=+            HPDF_OK)+        return ret;++    if ((ret = HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSCms_UHC_HW_V)) !=+            HPDF_OK)+        return ret;++    if ((ret = KSCms_UHC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, KSCms_UHC_HW_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, CP949_UNICODE_ARRAY);++    attr->is_lead_byte_fn = KSCms_UHC_IsLeadByte;+    attr->is_trial_byte_fn = KSCms_UHC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Korea1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 1;+    attr->uid_offset = -1;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25417;++    attr->writing_mode = HPDF_WMODE_VERTICAL;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_BOOL+KSC_EUC_IsLeadByte  (HPDF_Encoder    encoder,+                   HPDF_BYTE       b)+{+    return (b >= 0xa1 && b <= 0xfe);+}+++static HPDF_BOOL+KSC_EUC_IsTrialByte  (HPDF_Encoder    encoder,+                    HPDF_BYTE       b)+{+    return (b >= 0xa0 && b <= 0xfe);+}+++static HPDF_STATUS+KSC_EUC_AddCodeSpaceRange (HPDF_Encoder    encoder)+{+    HPDF_CidRange_Rec code_space_range1 = {0x00, 0x80, 0};+    HPDF_CidRange_Rec code_space_range2 = {0xA1A1, 0xFEFE, 0};++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range1)+                    != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCodeSpaceRange (encoder, code_space_range2)+                    != HPDF_OK)+        return encoder->error->error_no;++    return HPDF_OK;+}+++static HPDF_STATUS+KSC_EUC_H_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSC_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = KSC_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, KSC_EUC_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, KSC_EUC_UNICODE_ARRAY);++    attr->is_lead_byte_fn = KSC_EUC_IsLeadByte;+    attr->is_trial_byte_fn = KSC_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Korea1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->uid_offset = 100;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25400;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++static HPDF_STATUS+KSC_EUC_V_Init  (HPDF_Encoder  encoder)+{+    HPDF_CMapEncoderAttr attr;+    HPDF_STATUS ret;++    if ((ret = HPDF_CMapEncoder_InitAttr (encoder)) != HPDF_OK)+        return ret;++    attr = (HPDF_CMapEncoderAttr)encoder->attr;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSC_EUC_H) != HPDF_OK)+        return encoder->error->error_no;++    if (HPDF_CMapEncoder_AddCMap (encoder, CMAP_ARRAY_KSC_EUC_V) != HPDF_OK)+        return encoder->error->error_no;++    if ((ret = KSC_EUC_AddCodeSpaceRange (encoder)) != HPDF_OK)+        return ret;++    if (HPDF_CMapEncoder_AddNotDefRange (encoder, KSC_EUC_NOTDEF_RANGE)+                != HPDF_OK)+        return encoder->error->error_no;++    HPDF_CMapEncoder_SetUnicodeArray (encoder, KSC_EUC_UNICODE_ARRAY);++    attr->is_lead_byte_fn = KSC_EUC_IsLeadByte;+    attr->is_trial_byte_fn = KSC_EUC_IsTrialByte;+    HPDF_StrCpy (attr->registry, "Adobe", attr->registry ++                HPDF_LIMIT_MAX_NAME_LEN);+    HPDF_StrCpy (attr->ordering, "Korea1", attr->ordering ++                HPDF_LIMIT_MAX_NAME_LEN);+    attr->suppliment = 0;+    attr->writing_mode = HPDF_WMODE_VERTICAL;+    attr->uid_offset = 310;+    attr->xuid[0] = 1;+    attr->xuid[1] = 10;+    attr->xuid[2] = 25401;++    encoder->type = HPDF_ENCODER_TYPE_DOUBLE_BYTE;++    return HPDF_OK;+}+++/*--------------------------------------------------------------------------*/++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseKREncodings   (HPDF_Doc   pdf)+{+    HPDF_Encoder encoder;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* Microsoft Code Page 949 (lfCharSet 0x81), KS X 1001:1992 character+     * set plus 8822 additional hangul, Unified Hangul Code (UHC) encoding+     * (proportional)+     */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "KSCms-UHC-H",+                KSCms_UHC_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* Microsoft Code Page 949 (lfCharSet 0x81), KS X 1001:1992 character+     * set plus 8822 additional hangul, Unified Hangul Code (UHC) encoding+     * (fixed width)+     */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "KSCms-UHC-HW-H",+                KSCms_UHC_HW_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* vertical writing virsion of KSCms-UHC-HW-H */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "KSCms-UHC-HW-V",+                KSCms_UHC_HW_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /*  KS X 1001:1992 character set, EUC-KR encoding */+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "KSC-EUC-H",+                KSC_EUC_H_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;++    /* KS X 1001:1992 character set, EUC-KR encoding (vertical writing)*/+    encoder = HPDF_CMapEncoder_New (pdf->mmgr,  "KSC-EUC-V",+                KSC_EUC_V_Init);++    if ((ret = HPDF_Doc_RegisterEncoder (pdf, encoder)) != HPDF_OK)+        return ret;+++    return HPDF_OK;+}+
+ haru/hpdf_encrypt.c view
@@ -0,0 +1,632 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encryor.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ *------------------------------------------------------------------------------+ *+ * The code implements MD5 message-digest algorithm is based on the code+ * written by Colin Plumb.+ * The copyright of it is as follows.+ *+ * This code implements the MD5 message-digest algorithm.+ * The algorithm is due to Ron Rivest.  This code was+ * written by Colin Plumb in 1993, no copyright is claimed.+ * This code is in the public domain; do with it what you wish.+ *+ * Equivalent code is available from RSA Data Security, Inc.+ * This code has been tested against that, and is equivalent,+ * except that you don't need to include two pages of legalese+ * with every copy.+ *+ * To compute the message digest of a chunk of bytes, declare an+ * MD5Context structure, pass it to MD5Init, call MD5Update as+ * needed on buffers full of bytes, and then call MD5Final, which+ * will fill a supplied 16-byte array with the digest.+ *+ *---------------------------------------------------------------------------*/++#include "hpdf_conf.h"+#include "hpdf_consts.h"+#include "hpdf_utils.h"+#include "hpdf_encrypt.h"++static const HPDF_BYTE HPDF_PADDING_STRING[] = {+    0x28, 0xBF, 0x4E, 0x5E, 0x4E, 0x75, 0x8A, 0x41,+    0x64, 0x00, 0x4E, 0x56, 0xFF, 0xFA, 0x01, 0x08,+    0x2E, 0x2E, 0x00, 0xB6, 0xD0, 0x68, 0x3E, 0x80,+    0x2F, 0x0C, 0xA9, 0xFE, 0x64, 0x53, 0x69, 0x7A+};+++/*---------------------------------------------------------------------------*/+/*------ MD5 message-digest algorithm ---------------------------------------*/++static void+MD5Transform  (HPDF_UINT32       buf[4],+               const HPDF_UINT32 in[16]);+++static void+MD5ByteReverse  (HPDF_BYTE    *buf,+                 HPDF_UINT32  longs);+++void+HPDF_MD5Init  (struct HPDF_MD5Context  *ctx)+{+    ctx->buf[0] = 0x67452301;+    ctx->buf[1] = 0xefcdab89;+    ctx->buf[2] = 0x98badcfe;+    ctx->buf[3] = 0x10325476;++    ctx->bits[0] = 0;+    ctx->bits[1] = 0;+}+++void+HPDF_MD5Update  (struct HPDF_MD5Context *ctx,+                 const HPDF_BYTE        *buf,+                 HPDF_UINT32            len)+{+    HPDF_UINT32 t;++    /* Update bitcount */++    t = ctx->bits[0];+    if ((ctx->bits[0] = t + ((HPDF_UINT32) len << 3)) < t)+        ctx->bits[1]++;     /* Carry from low to high */+    ctx->bits[1] += len >> 29;++    t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */++    /* Handle any leading odd-sized chunks */++    if (t) {+        HPDF_BYTE *p = (HPDF_BYTE *) ctx->in + t;++        t = 64 - t;+        if (len < t)+        {+            HPDF_MemCpy (p, buf, len);+            return;+        }+        HPDF_MemCpy (p, buf, t);+        MD5ByteReverse (ctx->in, 16);+        MD5Transform (ctx->buf, (HPDF_UINT32 *) ctx->in);+        buf += t;+        len -= t;+    }+    /* Process data in 64-byte chunks */++    while (len >= 64) {+        HPDF_MemCpy (ctx->in, buf, 64);+        MD5ByteReverse (ctx->in, 16);+        MD5Transform (ctx->buf, (HPDF_UINT32 *) ctx->in);+        buf += 64;+        len -= 64;+    }++    /* Handle any remaining bytes of data. */++    HPDF_MemCpy (ctx->in, buf, len);+}+++/*+ * Final wrapup - pad to 64-byte boundary with the bit pattern+ * 1 0* (64-bit count of bits processed, MSB-first)+ */+void+HPDF_MD5Final  (HPDF_BYTE              digest[16],+                struct HPDF_MD5Context *ctx)+{+    HPDF_UINT32 count;+    HPDF_BYTE *p;++    /* Compute number of bytes mod 64 */+    count = (ctx->bits[0] >> 3) & 0x3F;++    /* Set the first char of padding to 0x80.  This is safe since there is+       always at least one byte free */+    p = ctx->in + count;+    *p++ = 0x80;++    /* Bytes of padding needed to make 64 bytes */+    count = 64 - 1 - count;++    /* Pad out to 56 mod 64 */+    if (count < 8) {+        /* Two lots of padding:  Pad the first block to 64 bytes */+        HPDF_MemSet (p, 0, count);+        MD5ByteReverse (ctx->in, 16);+        MD5Transform (ctx->buf, (HPDF_UINT32 *) ctx->in);++        /* Now fill the next block with 56 bytes */+        HPDF_MemSet (ctx->in, 0, 56);+    } else {+        /* Pad block to 56 bytes */+        HPDF_MemSet (p, 0, count - 8);+    }+    MD5ByteReverse (ctx->in, 14);++    /* Append length in bits and transform */+    ((HPDF_UINT32 *) ctx->in)[14] = ctx->bits[0];+    ((HPDF_UINT32 *) ctx->in)[15] = ctx->bits[1];++    MD5Transform (ctx->buf, (HPDF_UINT32 *) ctx->in);+    MD5ByteReverse ((HPDF_BYTE *) ctx->buf, 4);+    HPDF_MemCpy ((HPDF_BYTE *)digest, (HPDF_BYTE *)ctx->buf, 16);+    HPDF_MemSet ((HPDF_BYTE *)ctx, 0, sizeof (ctx));   /* In case it's sensitive */+}++/* The four core functions - F1 is optimized somewhat */++/* #define F1(x, y, z) (x & y | ~x & z) */+#define F1(x, y, z) (z ^ (x & (y ^ z)))+#define F2(x, y, z) F1(z, x, y)+#define F3(x, y, z) (x ^ y ^ z)+#define F4(x, y, z) (y ^ (x | ~z))++/* This is the central step in the HPDF_MD5 algorithm. */+#define HPDF_MD5STEP(f, w, x, y, z, data, s) \+ ( w += f(x, y, z) + data,  w = w<<s | w>>(32-s),  w += x )+++/*+ * The core of the MD5 algorithm, this alters an existing MD5 hash to+ * reflect the addition of 16 longwords of new data.  MD5Update blocks+ * the data and converts bytes into longwords for this routine.+ */+static void+MD5Transform  (HPDF_UINT32       buf[4],+               const HPDF_UINT32 in[16])+{+    register HPDF_UINT32 a, b, c, d;++    a = buf[0];+    b = buf[1];+    c = buf[2];+    d = buf[3];++    HPDF_MD5STEP (F1, a, b, c, d, in[0] + 0xd76aa478, 7);+    HPDF_MD5STEP (F1, d, a, b, c, in[1] + 0xe8c7b756, 12);+    HPDF_MD5STEP (F1, c, d, a, b, in[2] + 0x242070db, 17);+    HPDF_MD5STEP (F1, b, c, d, a, in[3] + 0xc1bdceee, 22);+    HPDF_MD5STEP (F1, a, b, c, d, in[4] + 0xf57c0faf, 7);+    HPDF_MD5STEP (F1, d, a, b, c, in[5] + 0x4787c62a, 12);+    HPDF_MD5STEP (F1, c, d, a, b, in[6] + 0xa8304613, 17);+    HPDF_MD5STEP (F1, b, c, d, a, in[7] + 0xfd469501, 22);+    HPDF_MD5STEP (F1, a, b, c, d, in[8] + 0x698098d8, 7);+    HPDF_MD5STEP (F1, d, a, b, c, in[9] + 0x8b44f7af, 12);+    HPDF_MD5STEP (F1, c, d, a, b, in[10] + 0xffff5bb1, 17);+    HPDF_MD5STEP (F1, b, c, d, a, in[11] + 0x895cd7be, 22);+    HPDF_MD5STEP (F1, a, b, c, d, in[12] + 0x6b901122, 7);+    HPDF_MD5STEP (F1, d, a, b, c, in[13] + 0xfd987193, 12);+    HPDF_MD5STEP (F1, c, d, a, b, in[14] + 0xa679438e, 17);+    HPDF_MD5STEP (F1, b, c, d, a, in[15] + 0x49b40821, 22);++    HPDF_MD5STEP (F2, a, b, c, d, in[1] + 0xf61e2562, 5);+    HPDF_MD5STEP (F2, d, a, b, c, in[6] + 0xc040b340, 9);+    HPDF_MD5STEP (F2, c, d, a, b, in[11] + 0x265e5a51, 14);+    HPDF_MD5STEP (F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);+    HPDF_MD5STEP (F2, a, b, c, d, in[5] + 0xd62f105d, 5);+    HPDF_MD5STEP (F2, d, a, b, c, in[10] + 0x02441453, 9);+    HPDF_MD5STEP (F2, c, d, a, b, in[15] + 0xd8a1e681, 14);+    HPDF_MD5STEP (F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);+    HPDF_MD5STEP (F2, a, b, c, d, in[9] + 0x21e1cde6, 5);+    HPDF_MD5STEP (F2, d, a, b, c, in[14] + 0xc33707d6, 9);+    HPDF_MD5STEP (F2, c, d, a, b, in[3] + 0xf4d50d87, 14);+    HPDF_MD5STEP (F2, b, c, d, a, in[8] + 0x455a14ed, 20);+    HPDF_MD5STEP (F2, a, b, c, d, in[13] + 0xa9e3e905, 5);+    HPDF_MD5STEP (F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);+    HPDF_MD5STEP (F2, c, d, a, b, in[7] + 0x676f02d9, 14);+    HPDF_MD5STEP (F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);++    HPDF_MD5STEP (F3, a, b, c, d, in[5] + 0xfffa3942, 4);+    HPDF_MD5STEP (F3, d, a, b, c, in[8] + 0x8771f681, 11);+    HPDF_MD5STEP (F3, c, d, a, b, in[11] + 0x6d9d6122, 16);+    HPDF_MD5STEP (F3, b, c, d, a, in[14] + 0xfde5380c, 23);+    HPDF_MD5STEP (F3, a, b, c, d, in[1] + 0xa4beea44, 4);+    HPDF_MD5STEP (F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);+    HPDF_MD5STEP (F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);+    HPDF_MD5STEP (F3, b, c, d, a, in[10] + 0xbebfbc70, 23);+    HPDF_MD5STEP (F3, a, b, c, d, in[13] + 0x289b7ec6, 4);+    HPDF_MD5STEP (F3, d, a, b, c, in[0] + 0xeaa127fa, 11);+    HPDF_MD5STEP (F3, c, d, a, b, in[3] + 0xd4ef3085, 16);+    HPDF_MD5STEP (F3, b, c, d, a, in[6] + 0x04881d05, 23);+    HPDF_MD5STEP (F3, a, b, c, d, in[9] + 0xd9d4d039, 4);+    HPDF_MD5STEP (F3, d, a, b, c, in[12] + 0xe6db99e5, 11);+    HPDF_MD5STEP (F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);+    HPDF_MD5STEP (F3, b, c, d, a, in[2] + 0xc4ac5665, 23);++    HPDF_MD5STEP (F4, a, b, c, d, in[0] + 0xf4292244, 6);+    HPDF_MD5STEP (F4, d, a, b, c, in[7] + 0x432aff97, 10);+    HPDF_MD5STEP (F4, c, d, a, b, in[14] + 0xab9423a7, 15);+    HPDF_MD5STEP (F4, b, c, d, a, in[5] + 0xfc93a039, 21);+    HPDF_MD5STEP (F4, a, b, c, d, in[12] + 0x655b59c3, 6);+    HPDF_MD5STEP (F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);+    HPDF_MD5STEP (F4, c, d, a, b, in[10] + 0xffeff47d, 15);+    HPDF_MD5STEP (F4, b, c, d, a, in[1] + 0x85845dd1, 21);+    HPDF_MD5STEP (F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);+    HPDF_MD5STEP (F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);+    HPDF_MD5STEP (F4, c, d, a, b, in[6] + 0xa3014314, 15);+    HPDF_MD5STEP (F4, b, c, d, a, in[13] + 0x4e0811a1, 21);+    HPDF_MD5STEP (F4, a, b, c, d, in[4] + 0xf7537e82, 6);+    HPDF_MD5STEP (F4, d, a, b, c, in[11] + 0xbd3af235, 10);+    HPDF_MD5STEP (F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);+    HPDF_MD5STEP (F4, b, c, d, a, in[9] + 0xeb86d391, 21);++    buf[0] += a;+    buf[1] += b;+    buf[2] += c;+    buf[3] += d;+}+++static void+MD5ByteReverse  (HPDF_BYTE    *buf,+                 HPDF_UINT32  longs)+{+    HPDF_UINT32 t;+    do+    {+        t = (HPDF_UINT32) ((HPDF_UINT32) buf[3] << 8 | buf[2]) << 16 |+        ((HPDF_UINT32) buf[1] << 8 | buf[0]);+        *(HPDF_UINT32 *) buf = t;+        buf += 4;+    }+    while (--longs);+}++/*----- encrypt-obj ---------------------------------------------------------*/++static void+ARC4Init  (HPDF_ARC4_Ctx_Rec  *ctx,+           const HPDF_BYTE    *key,+           HPDF_UINT           key_len);+++static void+ARC4CryptBuf (HPDF_ARC4_Ctx_Rec   *ctx,+              const HPDF_BYTE     *in,+              HPDF_BYTE           *out,+              HPDF_UINT            len);+++/*---------------------------------------------------------------------------*/++void+HPDF_PadOrTrancatePasswd  (const char  *pwd,+                           HPDF_BYTE        *new_pwd)+{+    HPDF_UINT len = HPDF_StrLen (pwd, HPDF_PASSWD_LEN + 1);++    HPDF_PTRACE((" HPDF_PadOrTrancatePasswd\n"));++    HPDF_MemSet (new_pwd, 0x00, HPDF_PASSWD_LEN);++    if (len >= HPDF_PASSWD_LEN)+        HPDF_MemCpy (new_pwd, pwd, HPDF_PASSWD_LEN);+    else {+        if (len > 0)+            HPDF_MemCpy (new_pwd, pwd, len);+        HPDF_MemCpy (new_pwd + len, HPDF_PADDING_STRING,+                    HPDF_PASSWD_LEN - len);+    }+}+++void+HPDF_Encrypt_Init  (HPDF_Encrypt  attr)+{+    HPDF_MemSet (attr, 0, sizeof(HPDF_Encrypt_Rec));+    attr->mode = HPDF_ENCRYPT_R2;+    attr->key_len = 5;+    HPDF_MemCpy (attr->owner_passwd, HPDF_PADDING_STRING, HPDF_PASSWD_LEN);+    HPDF_MemCpy (attr->user_passwd, HPDF_PADDING_STRING, HPDF_PASSWD_LEN);+    attr->permission = HPDF_ENABLE_PRINT | HPDF_ENABLE_EDIT_ALL |+        HPDF_ENABLE_COPY | HPDF_ENABLE_EDIT | HPDF_PERMISSION_PAD;+}+++void+HPDF_Encrypt_CreateOwnerKey  (HPDF_Encrypt  attr)+{+    HPDF_ARC4_Ctx_Rec rc4_ctx;+    HPDF_MD5_CTX md5_ctx;+    HPDF_BYTE digest[HPDF_MD5_KEY_LEN];+    HPDF_BYTE tmppwd[HPDF_PASSWD_LEN];++    HPDF_PTRACE((" HPDF_Encrypt_CreateOwnerKey\n"));++    /* create md5-digest using the value of owner_passwd */++    /* Algorithm 3.3 step 2 */+    HPDF_MD5Init(&md5_ctx);+    HPDF_MD5Update(&md5_ctx, attr->owner_passwd, HPDF_PASSWD_LEN);++    HPDF_PTRACE(("@ Algorithm 3.3 step 2\n"));++    HPDF_MD5Final(digest, &md5_ctx);++    /* Algorithm 3.3 step 3 (Revision 3 only) */+    if (attr->mode == HPDF_ENCRYPT_R3) {+        HPDF_UINT i;++        for (i = 0; i < 50; i++) {+            HPDF_MD5Init(&md5_ctx);++            //HPDF_MD5Update (&md5_ctx, digest, HPDF_MD5_KEY_LEN);+            HPDF_MD5Update (&md5_ctx, digest, attr->key_len);+            HPDF_MD5Final(digest, &md5_ctx);++            HPDF_PTRACE(("@ Algorithm 3.3 step 3 loop %u\n", i));+        }+    }++    /* Algorithm 3.3 step 4 */+    HPDF_PTRACE(("@ Algorithm 3.3 step 7 loop 0\n"));++    ARC4Init (&rc4_ctx, digest, attr->key_len);++    HPDF_PTRACE(("@ Algorithm 3.3 step 5\n"));++    /* Algorithm 3.3 step 6 */+    HPDF_PTRACE(("@ Algorithm 3.3 step 6\n"));+    ARC4CryptBuf (&rc4_ctx, attr->user_passwd, tmppwd, HPDF_PASSWD_LEN);++    /* Algorithm 3.3 step 7 */+    HPDF_PTRACE(("@ Algorithm 3.3 step 7\n"));+    if (attr->mode == HPDF_ENCRYPT_R3) {+        HPDF_BYTE tmppwd2[HPDF_PASSWD_LEN];+        HPDF_UINT i;++        for (i = 1; i <= 19; i++) {+            HPDF_UINT j;+            HPDF_BYTE new_key[HPDF_MD5_KEY_LEN];++            for (j = 0; j < attr->key_len; j++)+                new_key[j] = digest[j] ^ i;++            HPDF_PTRACE(("@ Algorithm 3.3 step 7 loop %u\n", i));++            HPDF_MemCpy (tmppwd2, tmppwd, HPDF_PASSWD_LEN);+            ARC4Init(&rc4_ctx, new_key, attr->key_len);+            ARC4CryptBuf(&rc4_ctx, tmppwd2, tmppwd, HPDF_PASSWD_LEN);+        }+    }++    /* Algorithm 3.3 step 8 */+    HPDF_PTRACE(("@ Algorithm 3.3 step 8\n"));+    HPDF_MemCpy (attr->owner_key, tmppwd, HPDF_PASSWD_LEN);+}+++void+HPDF_Encrypt_CreateEncryptionKey  (HPDF_Encrypt  attr)+{+    HPDF_MD5_CTX md5_ctx;+    HPDF_BYTE tmp_flg[4];++    HPDF_PTRACE((" HPDF_Encrypt_CreateEncryptionKey\n"));++    /* Algorithm3.2 step2 */+    HPDF_MD5Init(&md5_ctx);+    HPDF_MD5Update(&md5_ctx, attr->user_passwd, HPDF_PASSWD_LEN);++    /* Algorithm3.2 step3 */+    HPDF_MD5Update(&md5_ctx, attr->owner_key, HPDF_PASSWD_LEN);+++    /* Algorithm3.2 step4 */+    HPDF_PTRACE(("@@@ permission =%d\n", attr->permission));+    tmp_flg[0] = attr->permission;+    tmp_flg[1] = (attr->permission >> 8);+    tmp_flg[2] = (attr->permission >> 16);+    tmp_flg[3] = (attr->permission >> 24);++    HPDF_MD5Update(&md5_ctx, tmp_flg, 4);++    /* Algorithm3.2 step5 */+    HPDF_PTRACE(("@ Algorithm 3.2 step 5\n"));++    HPDF_MD5Update(&md5_ctx, attr->encrypt_id, HPDF_ID_LEN);+    HPDF_MD5Final(attr->encryption_key, &md5_ctx);++    /* Algorithm 3.2 step6 (Revision 3 only) */+    if (attr->mode == HPDF_ENCRYPT_R3) {+        HPDF_UINT i;++        for (i = 0; i < 50; i++) {+            HPDF_PTRACE(("@ Algorithm 3.3 step 6 loop %u\n", i));+            HPDF_MD5Init(&md5_ctx);+            HPDF_MD5Update (&md5_ctx, attr->encryption_key, attr->key_len);+            HPDF_MD5Final(attr->encryption_key, &md5_ctx);+        }+    }+}+++void+HPDF_Encrypt_CreateUserKey  (HPDF_Encrypt  attr)+{+    HPDF_ARC4_Ctx_Rec ctx;++    HPDF_PTRACE((" HPDF_Encrypt_CreateUserKey\n"));++    /* Algorithm 3.4/5 step1 */++    /* Algorithm 3.4 step2 */+    ARC4Init(&ctx, attr->encryption_key, attr->key_len);+    ARC4CryptBuf(&ctx, HPDF_PADDING_STRING, attr->user_key, HPDF_PASSWD_LEN);++    if (attr->mode == HPDF_ENCRYPT_R3) {+        HPDF_MD5_CTX md5_ctx;+        HPDF_BYTE digest[HPDF_MD5_KEY_LEN];+        HPDF_BYTE digest2[HPDF_MD5_KEY_LEN];+        HPDF_UINT i;++        /* Algorithm 3.5 step2 (same as Algorithm3.2 step2) */+        HPDF_MD5Init(&md5_ctx);+        HPDF_MD5Update(&md5_ctx, HPDF_PADDING_STRING, HPDF_PASSWD_LEN);++        /* Algorithm 3.5 step3 */+        HPDF_MD5Update(&md5_ctx, attr->encrypt_id, HPDF_ID_LEN);+        HPDF_MD5Final(digest, &md5_ctx);++        HPDF_PTRACE(("@ Algorithm 3.5 step 3\n"));++        /* Algorithm 3.5 step4 */+        ARC4Init(&ctx, attr->encryption_key, attr->key_len);+        ARC4CryptBuf(&ctx, digest, digest2, HPDF_MD5_KEY_LEN);++        HPDF_PTRACE(("@ Algorithm 3.5 step 4\n"));++        /* Algorithm 3.5 step5 */+        for (i = 1; i <= 19; i++) {+            HPDF_UINT j;+            HPDF_BYTE new_key[HPDF_MD5_KEY_LEN];++            HPDF_PTRACE(("@ Algorithm 3.5 step 5 loop %u\n", i));++            for (j = 0; j < attr->key_len; j++)+                new_key[j] = attr->encryption_key[j] ^ i;++            HPDF_MemCpy (digest, digest2, HPDF_MD5_KEY_LEN);++            ARC4Init(&ctx, new_key, attr->key_len);+            ARC4CryptBuf(&ctx, digest, digest2, HPDF_MD5_KEY_LEN);+        }++        /* use the result of Algorithm 3.4 as 'arbitrary padding' */+        HPDF_MemSet (attr->user_key, 0, HPDF_PASSWD_LEN);+        HPDF_MemCpy (attr->user_key, digest2, HPDF_MD5_KEY_LEN);+    }+}+++void+ARC4Init  (HPDF_ARC4_Ctx_Rec  *ctx,+                        const HPDF_BYTE    *key,+                        HPDF_UINT          key_len)+{+    HPDF_BYTE tmp_array[HPDF_ARC4_BUF_SIZE];+    HPDF_UINT i;+    HPDF_UINT j = 0;++    HPDF_PTRACE((" ARC4Init\n"));++    for (i = 0; i < HPDF_ARC4_BUF_SIZE; i++)+        ctx->state[i] = i;++    for (i = 0; i < HPDF_ARC4_BUF_SIZE; i++)+        tmp_array[i] = key[i % key_len];++    for (i = 0; i < HPDF_ARC4_BUF_SIZE; i++) {+        HPDF_BYTE tmp;++        j = (j + ctx->state[i] + tmp_array[i]) % HPDF_ARC4_BUF_SIZE;++        tmp = ctx->state[i];+        ctx->state[i] = ctx->state[j];+        ctx->state[j] = tmp;+    }++    ctx->idx1 = 0;+    ctx->idx2 = 0;+}+++void+ARC4CryptBuf (HPDF_ARC4_Ctx_Rec  *ctx,+                           const HPDF_BYTE    *in,+                           HPDF_BYTE          *out,+                           HPDF_UINT          len)+{+    HPDF_UINT i;+    HPDF_UINT t;+    HPDF_BYTE K;++    HPDF_PTRACE((" ARC4CryptBuf\n"));++    for (i = 0; i < len; i++) {+        HPDF_BYTE tmp;++        ctx->idx1 = (ctx->idx1 + 1) % 256;+        ctx->idx2 = (ctx->idx2 +  ctx->state[ctx->idx1]) % 256;++        tmp = ctx->state[ctx->idx1];+        ctx->state[ctx->idx1] = ctx->state[ctx->idx2];+        ctx->state[ctx->idx2] = tmp;++        t = (ctx->state[ctx->idx1] + ctx->state[ctx->idx2]) % 256;+        K = ctx->state[t];++        out[i] = in[i] ^ K;+    }+}+++void+HPDF_Encrypt_InitKey  (HPDF_Encrypt  attr,+                       HPDF_UINT32       object_id,+                       HPDF_UINT16       gen_no)+{+    HPDF_MD5_CTX ctx;+    HPDF_UINT key_len;++    HPDF_PTRACE((" HPDF_Encrypt_Init\n"));++    attr->encryption_key[attr->key_len] = object_id;+    attr->encryption_key[attr->key_len + 1] = (object_id >> 8);+    attr->encryption_key[attr->key_len + 2] = (object_id >> 16);+    attr->encryption_key[attr->key_len + 3] = gen_no;+    attr->encryption_key[attr->key_len + 4] = (gen_no >> 8);++    HPDF_PTRACE(("@@@ OID=%u, gen_no=%u\n", (HPDF_INT)object_id, gen_no));++    HPDF_MD5Init(&ctx);+    HPDF_MD5Update(&ctx, attr->encryption_key, attr->key_len + 5);+    HPDF_MD5Final(attr->md5_encryption_key, &ctx);++    key_len = (attr->key_len + 5 > HPDF_ENCRYPT_KEY_MAX) ?+                    HPDF_ENCRYPT_KEY_MAX : attr->key_len + 5;++    ARC4Init(&attr->arc4ctx, attr->md5_encryption_key, key_len);+}+++void+HPDF_Encrypt_Reset  (HPDF_Encrypt  attr)+{+    HPDF_UINT key_len = (attr->key_len + 5 > HPDF_ENCRYPT_KEY_MAX) ?+                    HPDF_ENCRYPT_KEY_MAX : attr->key_len + 5;++    HPDF_PTRACE((" HPDF_Encrypt_Reset\n"));++    ARC4Init(&attr->arc4ctx, attr->md5_encryption_key, key_len);+}+++void+HPDF_Encrypt_CryptBuf  (HPDF_Encrypt  attr,+                        const HPDF_BYTE   *src,+                        HPDF_BYTE         *dst,+                        HPDF_UINT         len)+{+    ARC4CryptBuf(&attr->arc4ctx, src, dst, len);+}+++/*--------------------------------------------------------------------------*/+/*--------------------------------------------------------------------------*/+
+ haru/hpdf_encrypt.h view
@@ -0,0 +1,156 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encrypt.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ *------------------------------------------------------------------------------+ *+ * The code implements MD5 message-digest algorithm is based on the code+ * written by Colin Plumb.+ * The copyright of it is as follows.+ *+ * This code implements the MD5 message-digest algorithm.+ * The algorithm is due to Ron Rivest.  This code was+ * written by Colin Plumb in 1993, no copyright is claimed.+ * This code is in the public domain; do with it what you wish.+ *+ * Equivalent code is available from RSA Data Security, Inc.+ * This code has been tested against that, and is equivalent,+ * except that you don't need to include two pages of legalese+ * with every copy.+ *+ * To compute the message digest of a chunk of bytes, declare an+ * MD5Context structure, pass it to MD5Init, call MD5Update as+ * needed on buffers full of bytes, and then call MD5Final, which+ * will fill a supplied 16-byte array with the digest.+ *+ *---------------------------------------------------------------------------*/++#ifndef HPDF_ENCRYPT_H+#define HPDF_ENCRYPT_H++#include "hpdf_mmgr.h"++#ifdef __cplusplus+extern "C" {+#endif++/*----------------------------------------------------------------------------*/+/*----- encrypt-dict ---------------------------------------------------------*/++#define HPDF_ID_LEN              16+#define HPDF_PASSWD_LEN          32+#define HPDF_ENCRYPT_KEY_MAX     16+#define HPDF_MD5_KEY_LEN         16+#define HPDF_PERMISSION_PAD      0xFFFFFFC0+#define HPDF_ARC4_BUF_SIZE       256+++typedef struct HPDF_MD5Context+{+    HPDF_UINT32 buf[4];+    HPDF_UINT32 bits[2];+    HPDF_BYTE in[64];+} HPDF_MD5_CTX;+++typedef struct _HPDF_ARC4_Ctx_Rec {+    HPDF_BYTE    idx1;+    HPDF_BYTE    idx2;+    HPDF_BYTE    state[HPDF_ARC4_BUF_SIZE];+} HPDF_ARC4_Ctx_Rec;+++typedef struct _HPDF_Encrypt_Rec  *HPDF_Encrypt;++typedef struct _HPDF_Encrypt_Rec {+    HPDF_EncryptMode   mode;++    /* key_len must be a multiple of 8, and between 40 to 128 */+    HPDF_UINT          key_len;++    /* owner-password (not encrypted) */+    HPDF_BYTE          owner_passwd[HPDF_PASSWD_LEN];++    /* user-password (not encrypted) */+    HPDF_BYTE          user_passwd[HPDF_PASSWD_LEN];++    /* owner-password (encrypted) */+    HPDF_BYTE          owner_key[HPDF_PASSWD_LEN];++    /* user-password (encrypted) */+    HPDF_BYTE          user_key[HPDF_PASSWD_LEN];++    HPDF_INT           permission;+    HPDF_BYTE          encrypt_id[HPDF_ID_LEN];+    HPDF_BYTE          encryption_key[HPDF_MD5_KEY_LEN + 5];+    HPDF_BYTE          md5_encryption_key[HPDF_MD5_KEY_LEN];+    HPDF_ARC4_Ctx_Rec  arc4ctx;+} HPDF_Encrypt_Rec;+++void+HPDF_MD5Init  (struct HPDF_MD5Context  *ctx);+++void+HPDF_MD5Update  (struct HPDF_MD5Context *ctx,+                 const HPDF_BYTE        *buf,+                 HPDF_UINT32            len);+++void+HPDF_MD5Final  (HPDF_BYTE              digest[16],+                struct HPDF_MD5Context *ctx);++void+HPDF_PadOrTrancatePasswd  (const char  *pwd,+                           HPDF_BYTE        *new_pwd);+++void+HPDF_Encrypt_Init  (HPDF_Encrypt  attr);+++void+HPDF_Encrypt_CreateUserKey  (HPDF_Encrypt  attr);+++void+HPDF_Encrypt_CreateOwnerKey  (HPDF_Encrypt  attr);+++void+HPDF_Encrypt_CreateEncryptionKey  (HPDF_Encrypt  attr);+++void+HPDF_Encrypt_InitKey  (HPDF_Encrypt  attr,+                       HPDF_UINT32       object_id,+                       HPDF_UINT16       gen_no);+++void+HPDF_Encrypt_Reset  (HPDF_Encrypt  attr);+++void+HPDF_Encrypt_CryptBuf  (HPDF_Encrypt  attr,+                        const HPDF_BYTE   *src,+                        HPDF_BYTE         *dst,+                        HPDF_UINT         len);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_ENCRYPT_H */++
+ haru/hpdf_encryptdict.c view
@@ -0,0 +1,240 @@+/*+ * << Haru Free PDF Library 2.0.5 >> -- hpdf_encryptdict.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.09.04 modified.+ *---------------------------------------------------------------------------*/++#include <time.h>+#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"+#include "hpdf_encryptdict.h"+#include "hpdf_info.h"++/*---------------------------------------------------------------------------*/+/*------ HPDF_EncryptDict ---------------------------------------------------*/+++HPDF_EncryptDict+HPDF_EncryptDict_New  (HPDF_MMgr  mmgr,+                       HPDF_Xref  xref)+{+    HPDF_Encrypt attr;+    HPDF_EncryptDict dict;++    HPDF_PTRACE((" HPDF_EncryptDict_New\n"));++    dict = HPDF_Dict_New (mmgr);+    if (!dict)+        return NULL;++    dict->header.obj_class |= HPDF_OSUBCLASS_ENCRYPT;+    dict->free_fn = HPDF_EncryptDict_OnFree;++    attr = HPDF_GetMem (dict->mmgr, sizeof(HPDF_Encrypt_Rec));+    if (!attr) {+        HPDF_Dict_Free (dict);+        return NULL;+    }++    dict->attr = attr;+    HPDF_Encrypt_Init (attr);++    if (HPDF_Xref_Add (xref, dict) != HPDF_OK)+        return NULL;++    return dict;+}+++void+HPDF_EncryptDict_CreateID  (HPDF_EncryptDict  dict,+                            HPDF_Dict         info,+                            HPDF_Xref         xref)+{+    HPDF_MD5_CTX ctx;+    HPDF_Encrypt attr = (HPDF_Encrypt)dict->attr;++    /* use the result of 'time' function to get random value.+     * when debugging, 'time' value is ignored.+     */+#ifndef HPDF_DEBUG+    time_t t = HPDF_TIME (NULL);+#endif /* HPDF_DEBUG */++    HPDF_MD5Init (&ctx);++#ifndef HPDF_DEBUG+    HPDF_MD5Update(&ctx, (HPDF_BYTE *)&t, sizeof(t));++    /* create File Identifier from elements of Into dictionary. */+    if (info) {+        const char *s;+        HPDF_UINT len;++        /* Author */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_AUTHOR);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        /* Creator */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_CREATOR);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        /* Producer */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_PRODUCER);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        /* Title */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_TITLE);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        /* Subject */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_SUBJECT);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        /* Keywords */+        s = HPDF_Info_GetInfoAttr (info, HPDF_INFO_KEYWORDS);+        if ((len = HPDF_StrLen (s, -1)) > 0)+            HPDF_MD5Update(&ctx, (const HPDF_BYTE *)s, len);++        HPDF_MD5Update(&ctx, (const HPDF_BYTE *)&(xref->entries->count),+                sizeof(HPDF_UINT32));++    }+#endif+    HPDF_MD5Final(attr->encrypt_id, &ctx);+}+++HPDF_STATUS+HPDF_EncryptDict_Prepare  (HPDF_EncryptDict  dict,+                           HPDF_Dict         info,+                           HPDF_Xref         xref)+{+    HPDF_STATUS ret;+    HPDF_Encrypt attr = (HPDF_Encrypt)dict->attr;+    HPDF_Binary user_key;+    HPDF_Binary owner_key;++    HPDF_PTRACE((" HPDF_EncryptDict_Prepare\n"));++    HPDF_EncryptDict_CreateID (dict, info, xref);+    HPDF_Encrypt_CreateOwnerKey (attr);+    HPDF_Encrypt_CreateEncryptionKey (attr);+    HPDF_Encrypt_CreateUserKey (attr);++    owner_key = HPDF_Binary_New (dict->mmgr, attr->owner_key, HPDF_PASSWD_LEN);+    if (!owner_key)+        return HPDF_Error_GetCode (dict->error);++    if ((ret = HPDF_Dict_Add (dict, "O", owner_key)) != HPDF_OK)+        return ret;++    user_key = HPDF_Binary_New (dict->mmgr, attr->user_key, HPDF_PASSWD_LEN);+    if (!user_key)+        return HPDF_Error_GetCode (dict->error);++    if ((ret = HPDF_Dict_Add (dict, "U", user_key)) != HPDF_OK)+        return ret;++    ret += HPDF_Dict_AddName (dict, "Filter", "Standard");++    if (attr->mode == HPDF_ENCRYPT_R2) {+        ret += HPDF_Dict_AddNumber (dict, "V", 1);+        ret += HPDF_Dict_AddNumber (dict, "R", 2);+    } else if (attr->mode == HPDF_ENCRYPT_R3) {+        ret += HPDF_Dict_AddNumber (dict, "V", 2);+        ret += HPDF_Dict_AddNumber (dict, "R", 3);+        ret += HPDF_Dict_AddNumber (dict, "Length", attr->key_len * 8);+    }++    ret += HPDF_Dict_AddNumber (dict, "P", attr->permission);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (dict->error);++    return HPDF_OK;+}+++void+HPDF_EncryptDict_OnFree  (HPDF_Dict  obj)+{+    HPDF_Encrypt attr = (HPDF_Encrypt)obj->attr;++    HPDF_PTRACE((" HPDF_EncryptDict_OnFree\n"));++    if (attr)+        HPDF_FreeMem (obj->mmgr, attr);+}+++HPDF_STATUS+HPDF_EncryptDict_SetPassword  (HPDF_EncryptDict  dict,+                               const char   *owner_passwd,+                               const char   *user_passwd)+{+    HPDF_Encrypt attr = (HPDF_Encrypt)dict->attr;++    HPDF_PTRACE((" HPDF_EncryptDict_SetPassword\n"));++    if (HPDF_StrLen(owner_passwd, 2) == 0)+        return HPDF_SetError(dict->error, HPDF_ENCRYPT_INVALID_PASSWORD, 0);++    if (owner_passwd && user_passwd &&+            HPDF_StrCmp (owner_passwd, user_passwd) == 0)+        return HPDF_SetError(dict->error, HPDF_ENCRYPT_INVALID_PASSWORD, 0);++    HPDF_PadOrTrancatePasswd (owner_passwd, attr->owner_passwd);+    HPDF_PadOrTrancatePasswd (user_passwd, attr->user_passwd);++    return HPDF_OK;+}+++HPDF_BOOL+HPDF_EncryptDict_Validate  (HPDF_EncryptDict  dict)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)dict;++    HPDF_PTRACE((" HPDF_EncryptDict_Validate\n"));++    if (!dict || !dict->attr)+        return HPDF_FALSE;++    if (header->obj_class != (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_ENCRYPT))+        return HPDF_FALSE;++    return HPDF_TRUE;+}+++HPDF_Encrypt+HPDF_EncryptDict_GetAttr (HPDF_EncryptDict  dict)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)dict;++    HPDF_PTRACE((" HPDF_EncryptDict_GetAttr\n"));++    if (dict && dict->attr &&+        (header->obj_class == (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_ENCRYPT)))+        return (HPDF_Encrypt)dict->attr;++    return NULL;+}++
+ haru/hpdf_encryptdict.h view
@@ -0,0 +1,66 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_encryptdict.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_ENCRYPTDICT_H+#define _HPDF_ENCRYPTDICT_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++/*---------------------------------------------------------------------------*/+/*------ HPDF_EncryptDict ---------------------------------------------------*/++HPDF_EncryptDict+HPDF_EncryptDict_New  (HPDF_MMgr  mmgr,+                       HPDF_Xref  xref);+++void+HPDF_EncryptDict_CreateID  (HPDF_EncryptDict  dict,+                            HPDF_Dict         info,+                            HPDF_Xref         xref);+++void+HPDF_EncryptDict_OnFree  (HPDF_Dict  obj);+++HPDF_STATUS+HPDF_EncryptDict_SetPassword  (HPDF_EncryptDict  dict,+                               const char   *owner_passwd,+                               const char   *user_passwd);+++HPDF_BOOL+HPDF_EncryptDict_Validate  (HPDF_EncryptDict  dict);+++HPDF_STATUS+HPDF_EncryptDict_Prepare  (HPDF_EncryptDict  dict,+                           HPDF_Dict         info,+                           HPDF_Xref         xref);+++HPDF_Encrypt+HPDF_EncryptDict_GetAttr (HPDF_EncryptDict  dict);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_ENCRYPTDICT_H */+
+ haru/hpdf_error.c view
@@ -0,0 +1,114 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_error.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_error.h"+#include "hpdf_consts.h"++#ifndef HPDF_STDCALL+#ifdef HPDF_DLL_MAKE+#define HPDF_STDCALL __stdcall+#else+#ifdef HPDF_DLL+#define HPDF_STDCALL __stdcall+#else+#define HPDF_STDCALL+#endif+#endif+#endif++void+HPDF_CopyError  (HPDF_Error  dst,+                 HPDF_Error  src);+++void+HPDF_Error_Init  (HPDF_Error    error,+                  void         *user_data)+{+    HPDF_MemSet(error, 0, sizeof(HPDF_Error_Rec));++    error->user_data = user_data;+}++HPDF_STATUS+HPDF_Error_GetCode  (HPDF_Error  error)+{+    return error->error_no;+}++HPDF_STATUS+HPDF_Error_GetDetailCode  (HPDF_Error  error)+{+    return error->detail_no;+}++void+HPDF_CopyError  (HPDF_Error  dst,+                 HPDF_Error  src)+{+    dst->error_no = src->error_no;+    dst->detail_no = src->detail_no;+    dst->error_fn = src->error_fn;+    dst->user_data = src->user_data;+}++HPDF_STATUS+HPDF_SetError  (HPDF_Error   error,+                HPDF_STATUS  error_no,+                HPDF_STATUS  detail_no)+{+    HPDF_PTRACE((" HPDF_SetError: error_no=0x%04X "+            "detail_no=0x%04X\n", (HPDF_UINT)error_no, (HPDF_UINT)detail_no));++    error->error_no = error_no;+    error->detail_no = detail_no;++    return error_no;+}+++HPDF_STATUS+HPDF_CheckError  (HPDF_Error   error)+{+    HPDF_PTRACE((" HPDF_CheckError: error_no=0x%04X detail_no=0x%04X\n",+                (HPDF_UINT)error->error_no, (HPDF_UINT)error->detail_no));++    if (error->error_no != HPDF_OK && error->error_fn)+        error->error_fn (error->error_no, error->detail_no, error->user_data);++    return error->error_no;+}+++HPDF_STATUS+HPDF_RaiseError  (HPDF_Error   error,+                  HPDF_STATUS  error_no,+                  HPDF_STATUS  detail_no)+{+    HPDF_SetError (error, error_no, detail_no);++    return HPDF_CheckError (error);+}+++void+HPDF_Error_Reset (HPDF_Error error)+{+    error->error_no = HPDF_NOERROR;+    error->detail_no = HPDF_NOERROR;+}++
+ haru/hpdf_error.h view
@@ -0,0 +1,201 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_error.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_ERROR_H+#define _HPDF_ERROR_H++#include "hpdf_types.h"++#ifdef __cplusplus+extern "C" {+#endif++/* error-code */+#define HPDF_ARRAY_COUNT_ERR                      0x1001+#define HPDF_ARRAY_ITEM_NOT_FOUND                 0x1002+#define HPDF_ARRAY_ITEM_UNEXPECTED_TYPE           0x1003+#define HPDF_BINARY_LENGTH_ERR                    0x1004+#define HPDF_CANNOT_GET_PALLET                    0x1005+#define HPDF_DICT_COUNT_ERR                       0x1007+#define HPDF_DICT_ITEM_NOT_FOUND                  0x1008+#define HPDF_DICT_ITEM_UNEXPECTED_TYPE            0x1009+#define HPDF_DICT_STREAM_LENGTH_NOT_FOUND         0x100A+#define HPDF_DOC_ENCRYPTDICT_NOT_FOUND            0x100B+#define HPDF_DOC_INVALID_OBJECT                   0x100C+/*                                                0x100D */+#define HPDF_DUPLICATE_REGISTRATION               0x100E+#define HPDF_EXCEED_JWW_CODE_NUM_LIMIT            0x100F+/*                                                0x1010 */+#define HPDF_ENCRYPT_INVALID_PASSWORD             0x1011+/*                                                0x1012 */+#define HPDF_ERR_UNKNOWN_CLASS                    0x1013+#define HPDF_EXCEED_GSTATE_LIMIT                  0x1014+#define HPDF_FAILD_TO_ALLOC_MEM                   0x1015+#define HPDF_FILE_IO_ERROR                        0x1016+#define HPDF_FILE_OPEN_ERROR                      0x1017+/*                                                0x1018 */+#define HPDF_FONT_EXISTS                          0x1019+#define HPDF_FONT_INVALID_WIDTHS_TABLE            0x101A+#define HPDF_INVALID_AFM_HEADER                   0x101B+#define HPDF_INVALID_ANNOTATION                   0x101C+/*                                                0x101D */+#define HPDF_INVALID_BIT_PER_COMPONENT            0x101E+#define HPDF_INVALID_CHAR_MATRICS_DATA            0x101F+#define HPDF_INVALID_COLOR_SPACE                  0x1020+#define HPDF_INVALID_COMPRESSION_MODE             0x1021+#define HPDF_INVALID_DATE_TIME                    0x1022+#define HPDF_INVALID_DESTINATION                  0x1023+/*                                                0x1024 */+#define HPDF_INVALID_DOCUMENT                     0x1025+#define HPDF_INVALID_DOCUMENT_STATE               0x1026+#define HPDF_INVALID_ENCODER                      0x1027+#define HPDF_INVALID_ENCODER_TYPE                 0x1028+/*                                                0x1029 */+/*                                                0x102A */+#define HPDF_INVALID_ENCODING_NAME                0x102B+#define HPDF_INVALID_ENCRYPT_KEY_LEN              0x102C+#define HPDF_INVALID_FONTDEF_DATA                 0x102D+#define HPDF_INVALID_FONTDEF_TYPE                 0x102E+#define HPDF_INVALID_FONT_NAME                    0x102F+#define HPDF_INVALID_IMAGE                        0x1030+#define HPDF_INVALID_JPEG_DATA                    0x1031+#define HPDF_INVALID_N_DATA                       0x1032+#define HPDF_INVALID_OBJECT                       0x1033+#define HPDF_INVALID_OBJ_ID                       0x1034+#define HPDF_INVALID_OPERATION                    0x1035+#define HPDF_INVALID_OUTLINE                      0x1036+#define HPDF_INVALID_PAGE                         0x1037+#define HPDF_INVALID_PAGES                        0x1038+#define HPDF_INVALID_PARAMETER                    0x1039+/*                                                0x103A */+#define HPDF_INVALID_PNG_IMAGE                    0x103B+#define HPDF_INVALID_STREAM                       0x103C+#define HPDF_MISSING_FILE_NAME_ENTRY              0x103D+/*                                                0x103E */+#define HPDF_INVALID_TTC_FILE                     0x103F+#define HPDF_INVALID_TTC_INDEX                    0x1040+#define HPDF_INVALID_WX_DATA                      0x1041+#define HPDF_ITEM_NOT_FOUND                       0x1042+#define HPDF_LIBPNG_ERROR                         0x1043+#define HPDF_NAME_INVALID_VALUE                   0x1044+#define HPDF_NAME_OUT_OF_RANGE                    0x1045+/*                                                0x1046 */+/*                                                0x1047 */+#define HPDF_PAGE_INVALID_PARAM_COUNT             0x1048+#define HPDF_PAGES_MISSING_KIDS_ENTRY             0x1049+#define HPDF_PAGE_CANNOT_FIND_OBJECT              0x104A+#define HPDF_PAGE_CANNOT_GET_ROOT_PAGES           0x104B+#define HPDF_PAGE_CANNOT_RESTORE_GSTATE           0x104C+#define HPDF_PAGE_CANNOT_SET_PARENT               0x104D+#define HPDF_PAGE_FONT_NOT_FOUND                  0x104E+#define HPDF_PAGE_INVALID_FONT                    0x104F+#define HPDF_PAGE_INVALID_FONT_SIZE               0x1050+#define HPDF_PAGE_INVALID_GMODE                   0x1051+#define HPDF_PAGE_INVALID_INDEX                   0x1052+#define HPDF_PAGE_INVALID_ROTATE_VALUE            0x1053+#define HPDF_PAGE_INVALID_SIZE                    0x1054+#define HPDF_PAGE_INVALID_XOBJECT                 0x1055+#define HPDF_PAGE_OUT_OF_RANGE                    0x1056+#define HPDF_REAL_OUT_OF_RANGE                    0x1057+#define HPDF_STREAM_EOF                           0x1058+#define HPDF_STREAM_READLN_CONTINUE               0x1059+/*                                                0x105A */+#define HPDF_STRING_OUT_OF_RANGE                  0x105B+#define HPDF_THIS_FUNC_WAS_SKIPPED                0x105C+#define HPDF_TTF_CANNOT_EMBEDDING_FONT            0x105D+#define HPDF_TTF_INVALID_CMAP                     0x105E+#define HPDF_TTF_INVALID_FOMAT                    0x105F+#define HPDF_TTF_MISSING_TABLE                    0x1060+#define HPDF_UNSUPPORTED_FONT_TYPE                0x1061+#define HPDF_UNSUPPORTED_FUNC                     0x1062+#define HPDF_UNSUPPORTED_JPEG_FORMAT              0x1063+#define HPDF_UNSUPPORTED_TYPE1_FONT               0x1064+#define HPDF_XREF_COUNT_ERR                       0x1065+#define HPDF_ZLIB_ERROR                           0x1066+#define HPDF_INVALID_PAGE_INDEX                   0x1067+#define HPDF_INVALID_URI                          0x1068+#define HPDF_PAGE_LAYOUT_OUT_OF_RANGE             0x1069+#define HPDF_PAGE_MODE_OUT_OF_RANGE               0x1070+#define HPDF_PAGE_NUM_STYLE_OUT_OF_RANGE          0x1071+#define HPDF_ANNOT_INVALID_ICON                   0x1072+#define HPDF_ANNOT_INVALID_BORDER_STYLE           0x1073+#define HPDF_PAGE_INVALID_DIRECTION               0x1074+#define HPDF_INVALID_FONT                         0x1075+#define HPDF_PAGE_INSUFFICIENT_SPACE              0x1076+#define HPDF_PAGE_INVALID_DISPLAY_TIME            0x1077+#define HPDF_PAGE_INVALID_TRANSITION_TIME         0x1078+#define HPDF_INVALID_PAGE_SLIDESHOW_TYPE          0x1079+#define HPDF_EXT_GSTATE_OUT_OF_RANGE              0x1080+#define HPDF_INVALID_EXT_GSTATE                   0x1081+#define HPDF_EXT_GSTATE_READ_ONLY                 0x1082++/*---------------------------------------------------------------------------*/+/*----- HPDF_Error ----------------------------------------------------------*/++typedef struct  _HPDF_Error_Rec  *HPDF_Error;++typedef struct  _HPDF_Error_Rec {+    HPDF_STATUS             error_no;+    HPDF_STATUS             detail_no;+    HPDF_Error_Handler      error_fn;+    void                    *user_data;+} HPDF_Error_Rec;+++/*  HPDF_Error_init+ *+ *  if error_fn is NULL, the default-handlers are set as error-handler.+ *  user_data is used to identify the object which threw an error.+ *+ */+void+HPDF_Error_Init  (HPDF_Error    error,+                  void         *user_data);+++void+HPDF_Error_Reset  (HPDF_Error  error);+++HPDF_STATUS+HPDF_Error_GetCode  (HPDF_Error  error);+++HPDF_STATUS+HPDF_Error_GetDetailCode  (HPDF_Error  error);+++HPDF_STATUS+HPDF_SetError  (HPDF_Error   error,+                HPDF_STATUS  error_no,+                HPDF_STATUS  detail_no);+++HPDF_STATUS+HPDF_CheckError  (HPDF_Error   error);+++HPDF_STATUS+HPDF_RaiseError  (HPDF_Error   error,+                  HPDF_STATUS  error_no,+                  HPDF_STATUS  detail_no);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_ERROR_H */+
+ haru/hpdf_ext_gstate.c view
@@ -0,0 +1,150 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_ext_gstate.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_ext_gstate.h"+#include "hpdf.h"++const static char  *HPDF_BM_NAMES[] = {+                                      "Normal",+                                      "Multiply",+                                      "Screen",+                                      "Overlay",+                                      "Darken",+                                      "Lighten",+                                      "ColorDodge",+                                      "ColorBurn",+                                      "HardLight",+                                      "SoftLight",+                                      "Difference",+                                      "Exclusion"+                                      };+++HPDF_BOOL+HPDF_ExtGState_Validate  (HPDF_ExtGState  ext_gstate)+{+    if (!ext_gstate || (ext_gstate->header.obj_class != +                (HPDF_OSUBCLASS_EXT_GSTATE | HPDF_OCLASS_DICT) &&+                ext_gstate->header.obj_class !=+                 (HPDF_OSUBCLASS_EXT_GSTATE_R | HPDF_OCLASS_DICT)))+        return HPDF_FALSE;++    return HPDF_TRUE;+}+++HPDF_STATUS+ExtGState_Check  (HPDF_ExtGState  ext_gstate)+{+    if (!HPDF_ExtGState_Validate (ext_gstate))+        return HPDF_INVALID_OBJECT;+    +    if (ext_gstate->header.obj_class == +            (HPDF_OSUBCLASS_EXT_GSTATE_R | HPDF_OCLASS_DICT))+        return HPDF_RaiseError (ext_gstate->error, HPDF_EXT_GSTATE_READ_ONLY,+                0);++    return HPDF_OK;+}+++HPDF_Dict+HPDF_ExtGState_New  (HPDF_MMgr   mmgr, +                     HPDF_Xref   xref)+{+    HPDF_Dict obj = HPDF_Dict_New (mmgr);++    HPDF_PTRACE ((" HPDF_ExtGState_New\n"));++    if (!obj)+        return NULL;++    if (HPDF_Xref_Add (xref, obj) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddName (obj, "Type", "ExtGState") != HPDF_OK)+        return NULL;++    obj->header.obj_class |= HPDF_OSUBCLASS_EXT_GSTATE;++    return obj;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetAlphaStroke  (HPDF_ExtGState   ext_gstate,+                                HPDF_REAL        value)+{+    HPDF_STATUS ret = ExtGState_Check (ext_gstate);+    +    if (ret != HPDF_OK)+        return ret;+    +    if (value < 0 || value > 1.0f)+        return HPDF_RaiseError (ext_gstate->error, +                HPDF_EXT_GSTATE_OUT_OF_RANGE, 0);++    return HPDF_Dict_AddReal (ext_gstate, "CA", value);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetAlphaFill  (HPDF_ExtGState   ext_gstate,+                              HPDF_REAL        value)+{+    HPDF_STATUS ret = ExtGState_Check (ext_gstate);+    +    if (ret != HPDF_OK)+        return ret;++    if (value < 0 || value > 1.0f)+        return HPDF_RaiseError (ext_gstate->error, +                HPDF_EXT_GSTATE_OUT_OF_RANGE, 0);++    return HPDF_Dict_AddReal (ext_gstate, "ca", value);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_ExtGState_SetBlendMode  (HPDF_ExtGState   ext_gstate,+                              HPDF_BlendMode   bmode)+{+    HPDF_STATUS ret = ExtGState_Check (ext_gstate);+    +    if (ret != HPDF_OK)+        return ret;++    if ((int)bmode < 0 || (int)bmode > (int)HPDF_BM_EOF)+        return HPDF_RaiseError (ext_gstate->error, +                HPDF_EXT_GSTATE_OUT_OF_RANGE, 0);++    return HPDF_Dict_AddName (ext_gstate, "BM", HPDF_BM_NAMES[(int)bmode]);+}++/*+HPDF_STATUS+HPDF_ExtGState_SetStrokeAdjustment  (HPDF_ExtGState   ext_gstate,+                                     HPDF_BOOL        value)+{+    HPDF_STATUS ret = ExtGState_Check (ext_gstate);+    +    if (ret != HPDF_OK)+        return ret;++    return HPDF_Dict_AddBoolean (ext_gstate, "SA", value);+}+*/+
+ haru/hpdf_ext_gstate.h view
@@ -0,0 +1,38 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_ext_gstate.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_EXT_GSTATE_H+#define _HPDF_EXT_GSTATE_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++HPDF_Dict+HPDF_ExtGState_New  (HPDF_MMgr   mmgr, +                     HPDF_Xref   xref);+++HPDF_BOOL+HPDF_ExtGState_Validate  (HPDF_ExtGState  ext_gstate);+++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_EXT_GSTATE_H */+
+ haru/hpdf_font.c view
@@ -0,0 +1,229 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_font.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.07.25 modified.+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"+++HPDF_EXPORT(HPDF_TextWidth)+HPDF_Font_TextWidth  (HPDF_Font        font,+                      const HPDF_BYTE  *text,+                      HPDF_UINT        len)+{+    HPDF_TextWidth tw = {0, 0, 0, 0};+    HPDF_FontAttr attr;++    HPDF_PTRACE ((" HPDF_Font_TextWidth\n"));++    if (!HPDF_Font_Validate(font))+        return tw;++    if (len > HPDF_LIMIT_MAX_STRING_LEN) {+        HPDF_RaiseError (font->error, HPDF_STRING_OUT_OF_RANGE, 0);+        return tw;+    }++    attr = (HPDF_FontAttr)font->attr;++    if (!attr->text_width_fn) {+        HPDF_SetError (font->error, HPDF_INVALID_OBJECT, 0);+        return tw;+    }++    tw = attr->text_width_fn (font, text, len);++    return tw;+}+++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_MeasureText (HPDF_Font          font,+                       const HPDF_BYTE   *text,+                       HPDF_UINT          len,+                       HPDF_REAL          width,+                       HPDF_REAL          font_size,+                       HPDF_REAL          char_space,+                       HPDF_REAL          word_space,+                       HPDF_BOOL          wordwrap,+                       HPDF_REAL         *real_width)+{+    HPDF_FontAttr attr;++    HPDF_PTRACE ((" HPDF_Font_MeasureText\n"));++    if (!HPDF_Font_Validate(font))+        return 0;++    if (len > HPDF_LIMIT_MAX_STRING_LEN) {+        HPDF_RaiseError (font->error, HPDF_STRING_OUT_OF_RANGE, 0);+        return 0;+    }++    attr = (HPDF_FontAttr)font->attr;++    if (!attr->measure_text_fn) {+        HPDF_RaiseError (font->error, HPDF_INVALID_OBJECT, 0);+        return 0;+    }++    return attr->measure_text_fn (font, text, len, width, font_size,+                            char_space, word_space, wordwrap, real_width);+}+++HPDF_EXPORT(const char*)+HPDF_Font_GetFontName  (HPDF_Font font)+{+    HPDF_FontAttr attr;++    HPDF_PTRACE((" HPDF_Font_GetFontName\n"));++    if (!HPDF_Font_Validate(font))+        return NULL;++    attr = (HPDF_FontAttr)font->attr;++    return attr->fontdef->base_font;+}+++HPDF_EXPORT(const char*)+HPDF_Font_GetEncodingName  (HPDF_Font font)+{+    HPDF_FontAttr attr;++    HPDF_PTRACE((" HPDF_Font_GetEncodingName\n"));++    if (!HPDF_Font_Validate(font))+        return NULL;++    attr = (HPDF_FontAttr)font->attr;++    return attr->encoder->name;+}+++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetUnicodeWidth  (HPDF_Font       font,+                            HPDF_UNICODE    code)+{+    HPDF_FontAttr attr;+    HPDF_FontDef fontdef;++    HPDF_PTRACE((" HPDF_Font_GetUnicodeWidth\n"));++    if (!HPDF_Font_Validate(font))+        return 0;++    attr = (HPDF_FontAttr)font->attr;+    fontdef = attr->fontdef;++    if (fontdef->type == HPDF_FONTDEF_TYPE_TYPE1) {+        return HPDF_Type1FontDef_GetWidth (fontdef, code);+    } else if (fontdef->type == HPDF_FONTDEF_TYPE_TRUETYPE) {+        return HPDF_TTFontDef_GetCharWidth (fontdef, code);+    } else if (fontdef->type == HPDF_FONTDEF_TYPE_CID) {+        HPDF_CMapEncoderAttr encoder_attr =+            (HPDF_CMapEncoderAttr)attr->encoder->attr;+        HPDF_UINT l, h;++        for (l = 0; l <= 255; l++) {+            for (h = 0; h < 255; h++) {+                if (code == encoder_attr->unicode_map[l][h]) {+                    HPDF_UINT16 cid = encoder_attr->cid_map[l][h];++                    return HPDF_CIDFontDef_GetCIDWidth (fontdef, cid);+                }+            }+        }+    }++    HPDF_PTRACE((" HPDF_Font_GetUnicodeWidth not found (0x%04X)\n", code));++    return 0;+}+++HPDF_EXPORT(HPDF_Box)+HPDF_Font_GetBBox  (HPDF_Font  font)+{+    HPDF_Box bbox = {0, 0, 0, 0};++    HPDF_PTRACE((" HPDF_Font_GetBBox\n"));+    if (HPDF_Font_Validate(font))+        return ((HPDF_FontAttr)font->attr)->fontdef->font_bbox;++    return bbox;+}++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetAscent  (HPDF_Font  font)+{+    HPDF_PTRACE((" HPDF_Font_GetAscent\n"));++    if (HPDF_Font_Validate(font))+        return ((HPDF_FontAttr)font->attr)->fontdef->ascent;++    return 0;+}++HPDF_EXPORT(HPDF_INT)+HPDF_Font_GetDescent  (HPDF_Font  font)+{+    HPDF_PTRACE((" HPDF_Font_GetDescent\n"));++    if (HPDF_Font_Validate(font))+        return ((HPDF_FontAttr)font->attr)->fontdef->descent;++    return 0;+}++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_GetXHeight  (HPDF_Font  font)+{+    HPDF_PTRACE((" HPDF_Font_GetXHeight\n"));++    if (HPDF_Font_Validate(font))+        return ((HPDF_FontAttr)font->attr)->fontdef->x_height;++    return 0;+}++HPDF_EXPORT(HPDF_UINT)+HPDF_Font_GetCapHeight  (HPDF_Font  font)+{+    HPDF_PTRACE((" HPDF_Font_GetCapHeight\n"));++    if (HPDF_Font_Validate(font))+        return ((HPDF_FontAttr)font->attr)->fontdef->cap_height;++    return 0;+}+++HPDF_BOOL+HPDF_Font_Validate  (HPDF_Font font)+{+    HPDF_PTRACE((" HPDF_Font_Validate\n"));++    if (!font || !font->attr || font->header.obj_class !=+            (HPDF_OSUBCLASS_FONT | HPDF_OCLASS_DICT))+        return HPDF_FALSE;++    return HPDF_TRUE;+}++
+ haru/hpdf_font.h view
@@ -0,0 +1,112 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_font.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_FONT_H+#define _HPDF_FONT_H++#include "hpdf_fontdef.h"++#ifdef __cplusplus+extern "C" {+#endif+++/*----------------------------------------------------------------------------*/+/*----- Writing Mode ---------------------------------------------------------*/++typedef enum _HPDF_FontType {+    HPDF_FONT_TYPE1 = 0,+    HPDF_FONT_TRUETYPE,+    HPDF_FONT_TYPE3,+    HPDF_FONT_TYPE0_CID,+    HPDF_FONT_TYPE0_TT,+    HPDF_FONT_CID_TYPE0,+    HPDF_FONT_CID_TYPE2,+    HPDF_FONT_MMTYPE1+} HPDF_FontType;+++typedef HPDF_Dict HPDF_Font;+++typedef HPDF_TextWidth+(*HPDF_Font_TextWidths_Func)  (HPDF_Font        font,+                             const HPDF_BYTE  *text,+                             HPDF_UINT        len);+++typedef HPDF_UINT+(*HPDF_Font_MeasureText_Func)  (HPDF_Font        font,+                              const HPDF_BYTE  *text,+                              HPDF_UINT        len,+                              HPDF_REAL        width,+                              HPDF_REAL        fontsize,+                              HPDF_REAL        charspace,+                              HPDF_REAL        wordspace,+                              HPDF_BOOL        wordwrap,+                              HPDF_REAL        *real_width);+++typedef struct _HPDF_FontAttr_Rec  *HPDF_FontAttr;++typedef struct _HPDF_FontAttr_Rec {+    HPDF_FontType               type;+    HPDF_WritingMode            writing_mode;+    HPDF_Font_TextWidths_Func   text_width_fn;+    HPDF_Font_MeasureText_Func  measure_text_fn;+    HPDF_FontDef                fontdef;+    HPDF_Encoder                encoder;++    /* if the encoding-type is HPDF_ENCODER_TYPE_SINGLE_BYTE, the width of+     * each charactors are cashed in 'widths'.+     * when HPDF_ENCODER_TYPE_DOUBLE_BYTE the width is calculate each time.+     */+    HPDF_INT16*                 widths;+    HPDF_BYTE*                  used;++    HPDF_Xref                   xref;+    HPDF_Font                   descendant_font;+    HPDF_Dict                   map_stream;+    HPDF_Dict                   cmap_stream;+} HPDF_FontAttr_Rec;+++HPDF_Font+HPDF_Type1Font_New  (HPDF_MMgr        mmgr,+                     HPDF_FontDef     fontdef,+                     HPDF_Encoder     encoder,+                     HPDF_Xref        xref);++HPDF_Font+HPDF_TTFont_New  (HPDF_MMgr        mmgr,+                  HPDF_FontDef     fontdef,+                  HPDF_Encoder     encoder,+                  HPDF_Xref        xref);++HPDF_Font+HPDF_Type0Font_New  (HPDF_MMgr        mmgr,+                     HPDF_FontDef     fontdef,+                     HPDF_Encoder     encoder,+                     HPDF_Xref        xref);+++HPDF_BOOL+HPDF_Font_Validate  (HPDF_Font font);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_FONT_H */+
+ haru/hpdf_font_cid.c view
@@ -0,0 +1,1030 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_font_cid.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.08.04 modified MeasureText().+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_font.h"++static HPDF_Font+CIDFontType0_New (HPDF_Font parent,+                  HPDF_Xref xref);+++static HPDF_Font+CIDFontType2_New (HPDF_Font parent,+                  HPDF_Xref xref);+++static HPDF_TextWidth+TextWidth  (HPDF_Font         font,+            const HPDF_BYTE  *text,+            HPDF_UINT         len);+++static HPDF_UINT+MeasureText  (HPDF_Font         font,+              const HPDF_BYTE  *text,+              HPDF_UINT         len,+              HPDF_REAL         width,+              HPDF_REAL         font_size,+              HPDF_REAL         char_space,+              HPDF_REAL         word_space,+              HPDF_BOOL         wordwrap,+              HPDF_REAL        *real_width);+++static char*+UINT16ToHex  (char     *s,+              HPDF_UINT16    val,+              char     *eptr);+++static HPDF_Dict+CreateCMap  (HPDF_Encoder   encoder,+             HPDF_Xref      xref);+++static void+OnFree_Func  (HPDF_Dict  obj);+++static HPDF_STATUS+CIDFontType2_BeforeWrite_Func  (HPDF_Dict   obj);+++/*--------------------------------------------------------------------------*/++HPDF_Font+HPDF_Type0Font_New  (HPDF_MMgr        mmgr,+                     HPDF_FontDef     fontdef,+                     HPDF_Encoder     encoder,+                     HPDF_Xref        xref)+{+    HPDF_Dict font;+    HPDF_FontAttr attr;+    HPDF_CMapEncoderAttr encoder_attr;+    HPDF_STATUS ret = 0;+    HPDF_Array descendant_fonts;++    HPDF_PTRACE ((" HPDF_Type0Font_New\n"));++    font = HPDF_Dict_New (mmgr);+    if (!font)+        return NULL;++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;++    /* check whether the fontdef object and the encoder object is valid. */+    if (encoder->type != HPDF_ENCODER_TYPE_DOUBLE_BYTE) {+        HPDF_SetError(font->error, HPDF_INVALID_ENCODER_TYPE, 0);+        return NULL;+    }++    if (fontdef->type != HPDF_FONTDEF_TYPE_CID &&+        fontdef->type != HPDF_FONTDEF_TYPE_TRUETYPE) {+        HPDF_SetError(font->error, HPDF_INVALID_FONTDEF_TYPE, 0);+        return NULL;+    }++    attr = HPDF_GetMem (mmgr, sizeof(HPDF_FontAttr_Rec));+    if (!attr) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;+    font->write_fn = NULL;+    font->free_fn = OnFree_Func;+    font->attr = attr;++    encoder_attr = (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_MemSet (attr, 0, sizeof(HPDF_FontAttr_Rec));++    attr->writing_mode = encoder_attr->writing_mode;+    attr->text_width_fn = TextWidth;+    attr->measure_text_fn = MeasureText;+    attr->fontdef = fontdef;+    attr->encoder = encoder;+    attr->xref = xref;++    if (HPDF_Xref_Add (xref, font) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_AddName (font, "Type", "Font");+    ret += HPDF_Dict_AddName (font, "BaseFont", fontdef->base_font);+    ret += HPDF_Dict_AddName (font, "Subtype", "Type0");++    if (fontdef->type == HPDF_FONTDEF_TYPE_CID) {+        ret += HPDF_Dict_AddName (font, "Encoding", encoder->name);+    } else {+        attr->cmap_stream = CreateCMap (encoder, xref);++        if (attr->cmap_stream) {+            ret += HPDF_Dict_Add (font, "Encoding", attr->cmap_stream);+        } else+            return NULL;+    }++    if (ret != HPDF_OK)+        return NULL;++    descendant_fonts = HPDF_Array_New (mmgr);+    if (!descendant_fonts)+        return NULL;++    if (HPDF_Dict_Add (font, "DescendantFonts", descendant_fonts) != HPDF_OK)+        return NULL;++    if (fontdef->type == HPDF_FONTDEF_TYPE_CID) {+        attr->descendant_font = CIDFontType0_New (font, xref);+        attr->type = HPDF_FONT_TYPE0_CID;+    } else {+        attr->descendant_font = CIDFontType2_New (font, xref);+        attr->type = HPDF_FONT_TYPE0_TT;+    }++    if (!attr->descendant_font)+        return NULL;+    else+        if (HPDF_Array_Add (descendant_fonts, attr->descendant_font) !=+                HPDF_OK)+            return NULL;++    return font;+}++static void+OnFree_Func  (HPDF_Dict  obj)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)obj->attr;++    HPDF_PTRACE ((" HPDF_Type0Font_OnFree\n"));++    if (attr)+        HPDF_FreeMem (obj->mmgr, attr);+}++static HPDF_Font+CIDFontType0_New (HPDF_Font parent, HPDF_Xref xref)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_FontAttr attr = (HPDF_FontAttr)parent->attr;+    HPDF_FontDef fontdef = attr->fontdef;+    HPDF_CIDFontDefAttr fontdef_attr = (HPDF_CIDFontDefAttr)fontdef->attr;+    HPDF_Encoder encoder = attr->encoder;+    HPDF_CMapEncoderAttr encoder_attr =+                (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_UINT16 save_cid = 0;+    HPDF_Font font;+    HPDF_Array array;+    HPDF_Array sub_array = NULL;+    HPDF_UINT i;++    HPDF_Dict descriptor;+    HPDF_Dict cid_system_info;++    HPDF_PTRACE ((" HPDF_CIDFontType0_New\n"));++    font = HPDF_Dict_New (parent->mmgr);+    if (!font)+        return NULL;++    if (HPDF_Xref_Add (xref, font) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_AddName (font, "Type", "Font");+    ret += HPDF_Dict_AddName (font, "Subtype", "CIDFontType0");+    ret += HPDF_Dict_AddNumber (font, "DW", fontdef_attr->DW);+    ret += HPDF_Dict_AddName (font, "BaseFont", fontdef->base_font);+    if (ret != HPDF_OK)+        return NULL;++    /* add 'DW2' element */+    array = HPDF_Array_New (parent->mmgr);+    if (!array)+        return NULL;++    if (HPDF_Dict_Add (font, "DW2", array) != HPDF_OK)+        return NULL;++    ret += HPDF_Array_AddNumber (array, fontdef_attr->DW2[0]);+    ret += HPDF_Array_AddNumber (array, fontdef_attr->DW2[1]);++    if (ret != HPDF_OK)+        return NULL;++    /* add 'W' element */+    array = HPDF_Array_New (parent->mmgr);+    if (!array)+        return NULL;++    if (HPDF_Dict_Add (font, "W", array) != HPDF_OK)+        return NULL;++    /* Create W array. */+    for (i = 0; i< fontdef_attr->widths->count; i++) {+        HPDF_CID_Width *w =+                (HPDF_CID_Width *)HPDF_List_ItemAt (fontdef_attr->widths, i);++        if (w->cid != save_cid + 1 || !sub_array) {+            sub_array = HPDF_Array_New (parent->mmgr);+            if (!sub_array)+                return NULL;++            ret += HPDF_Array_AddNumber (array, w->cid);+            ret += HPDF_Array_Add (array, sub_array);+        }++        ret += HPDF_Array_AddNumber (sub_array, w->width);+        save_cid = w->cid;++        if (ret != HPDF_OK)+            return NULL;+    }++    /* create descriptor */+    descriptor = HPDF_Dict_New (parent->mmgr);+    if (!descriptor)+        return NULL;++    if (HPDF_Xref_Add (xref, descriptor) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_Add (font, "FontDescriptor", descriptor) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_AddName (descriptor, "Type", "FontDescriptor");+    ret += HPDF_Dict_AddName (descriptor, "FontName", fontdef->base_font);+    ret += HPDF_Dict_AddNumber (descriptor, "Ascent", fontdef->ascent);+    ret += HPDF_Dict_AddNumber (descriptor, "Descent", fontdef->descent);+    ret += HPDF_Dict_AddNumber (descriptor, "CapHeight",+                fontdef->cap_height);+    ret += HPDF_Dict_AddNumber (descriptor, "MissingWidth",+                fontdef->missing_width);+    ret += HPDF_Dict_AddNumber (descriptor, "Flags", fontdef->flags);++    if (ret != HPDF_OK)+        return NULL;++    array = HPDF_Box_Array_New (parent->mmgr, fontdef->font_bbox);+    if (!array)+        return NULL;++    ret += HPDF_Dict_Add (descriptor, "FontBBox", array);+    ret += HPDF_Dict_AddNumber (descriptor, "ItalicAngle",+            fontdef->italic_angle);+    ret += HPDF_Dict_AddNumber (descriptor, "StemV", fontdef->stemv);++    if (ret != HPDF_OK)+        return NULL;++    /* create CIDSystemInfo dictionary */+    cid_system_info = HPDF_Dict_New (parent->mmgr);+    if (!cid_system_info)+        return NULL;++    if (HPDF_Dict_Add (font, "CIDSystemInfo", cid_system_info) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_Add (cid_system_info, "Registry",+            HPDF_String_New (parent->mmgr, encoder_attr->registry, NULL));+    ret += HPDF_Dict_Add (cid_system_info, "Ordering",+            HPDF_String_New (parent->mmgr, encoder_attr->ordering, NULL));+    ret += HPDF_Dict_AddNumber (cid_system_info, "Supplement",+            encoder_attr->suppliment);++    if (ret != HPDF_OK)+        return NULL;++    return font;+}++static HPDF_Font+CIDFontType2_New (HPDF_Font parent, HPDF_Xref xref)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_FontAttr attr = (HPDF_FontAttr)parent->attr;+    HPDF_FontDef fontdef = attr->fontdef;+    HPDF_TTFontDefAttr fontdef_attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_Encoder encoder = attr->encoder;+    HPDF_CMapEncoderAttr encoder_attr =+                (HPDF_CMapEncoderAttr)encoder->attr;++    HPDF_Font font;+    HPDF_Array array;+    HPDF_UINT i;+    HPDF_UNICODE tmp_map[65536];+    HPDF_Dict cid_system_info;++    HPDF_UINT16 max = 0;++    HPDF_PTRACE ((" HPDF_CIDFontType2_New\n"));++    font = HPDF_Dict_New (parent->mmgr);+    if (!font)+        return NULL;++    if (HPDF_Xref_Add (xref, font) != HPDF_OK)+        return NULL;++    parent->before_write_fn = CIDFontType2_BeforeWrite_Func;++    ret += HPDF_Dict_AddName (font, "Type", "Font");+    ret += HPDF_Dict_AddName (font, "Subtype", "CIDFontType2");+    ret += HPDF_Dict_AddNumber (font, "DW", fontdef->missing_width);+    if (ret != HPDF_OK)+        return NULL;++    /* add 'DW2' element */+    array = HPDF_Array_New (font->mmgr);+    if (!array)+        return NULL;++    if (HPDF_Dict_Add (font, "DW2", array) != HPDF_OK)+        return NULL;++    ret += HPDF_Array_AddNumber (array, fontdef->font_bbox.bottom);+    ret += HPDF_Array_AddNumber (array, fontdef->font_bbox.bottom -+                fontdef->font_bbox.top);++    HPDF_MemSet (tmp_map, 0, sizeof(HPDF_UNICODE) * 65536);++    if (ret != HPDF_OK)+        return NULL;++    for (i = 0; i < 256; i++) {+        HPDF_UINT j;++        for (j = 0; j < 256; j++) {+            HPDF_UINT16 cid = encoder_attr->cid_map[i][j];+            if (cid != 0) {+                HPDF_UNICODE unicode = encoder_attr->unicode_map[i][j];+                HPDF_UINT16 gid = HPDF_TTFontDef_GetGlyphid (fontdef, unicode);+                tmp_map[cid] = gid;+                if (max < cid)+                    max = cid;+            }+        }+    }++    if (max > 0) {+        HPDF_INT16 dw = fontdef->missing_width;+        HPDF_UNICODE *ptmp_map = tmp_map;+        HPDF_Array tmp_array = NULL;++        /* add 'W' element */+        array = HPDF_Array_New (font->mmgr);+        if (!array)+            return NULL;++        if (HPDF_Dict_Add (font, "W", array) != HPDF_OK)+            return NULL;++        for (i = 0; i < max; i++, ptmp_map++) {+            HPDF_INT w = HPDF_TTFontDef_GetGidWidth (fontdef, *ptmp_map);++            if (w != dw) {+                if (!tmp_array) {+                    if ((ret = HPDF_Array_AddNumber (array, i)) != HPDF_OK)+                        return NULL;++                    tmp_array = HPDF_Array_New (font->mmgr);+                    if (!tmp_array)+                        return NULL;++                    if ((ret = HPDF_Array_Add (array, tmp_array)) != HPDF_OK)+                        return NULL;+                }++                if ((ret = HPDF_Array_AddNumber (tmp_array, w)) != HPDF_OK)+                    return NULL;+            } else+                  tmp_array = NULL;+        }++        /* create "CIDToGIDMap" data */+        if (fontdef_attr->embedding) {+            attr->map_stream = HPDF_DictStream_New (font->mmgr, xref);+            if (!attr->map_stream)+                return NULL;++            if ((ret = HPDF_Dict_Add (font, "CIDToGIDMap", attr->map_stream))+                    != HPDF_OK)+                return NULL;++            for (i = 0; i < max; i++) {+                HPDF_BYTE u[2];+                HPDF_UINT16 gid = tmp_map[i];++                u[0] = gid >> 8;+                u[1] = gid;++                HPDF_MemCpy ((HPDF_BYTE *)(tmp_map + i), u, 2);+            }++            if ((ret = HPDF_Stream_Write (attr->map_stream->stream,+                            (HPDF_BYTE *)tmp_map, max * 2)) != HPDF_OK)+                return NULL;+        }+    } else {+        HPDF_SetError (font->error, HPDF_INVALID_FONTDEF_DATA, 0);+        return 0;+    }++    /* create CIDSystemInfo dictionary */+    cid_system_info = HPDF_Dict_New (parent->mmgr);+    if (!cid_system_info)+        return NULL;++    if (HPDF_Dict_Add (font, "CIDSystemInfo", cid_system_info) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_Add (cid_system_info, "Registry",+            HPDF_String_New (parent->mmgr, encoder_attr->registry, NULL));+    ret += HPDF_Dict_Add (cid_system_info, "Ordering",+            HPDF_String_New (parent->mmgr, encoder_attr->ordering, NULL));+    ret += HPDF_Dict_AddNumber (cid_system_info, "Supplement",+            encoder_attr->suppliment);++    if (ret != HPDF_OK)+        return NULL;++    return font;+}+++static HPDF_STATUS+CIDFontType2_BeforeWrite_Func  (HPDF_Dict obj)+{+    HPDF_FontAttr font_attr = (HPDF_FontAttr)obj->attr;+    HPDF_FontDef def = font_attr->fontdef;+    HPDF_TTFontDefAttr def_attr = (HPDF_TTFontDefAttr)def->attr;+    HPDF_STATUS ret = 0;++    HPDF_PTRACE ((" CIDFontType2_BeforeWrite_Func\n"));++    if (font_attr->map_stream)+        font_attr->map_stream->filter = obj->filter;++    if (font_attr->cmap_stream)+        font_attr->cmap_stream->filter = obj->filter;++    if (!font_attr->fontdef->descriptor) {+        HPDF_Dict descriptor = HPDF_Dict_New (obj->mmgr);+        HPDF_Array array;++        if (!descriptor)+            return HPDF_Error_GetCode (obj->error);++        if (def_attr->embedding) {+            HPDF_Dict font_data = HPDF_DictStream_New (obj->mmgr,+                    font_attr->xref);++            if (!font_data)+                return HPDF_Error_GetCode (obj->error);++            if (HPDF_TTFontDef_SaveFontData (font_attr->fontdef,+                font_data->stream) != HPDF_OK)+                return HPDF_Error_GetCode (obj->error);++            ret += HPDF_Dict_Add (descriptor, "FontFile2", font_data);+            ret += HPDF_Dict_AddNumber (font_data, "Length1",+                    def_attr->length1);+            ret += HPDF_Dict_AddNumber (font_data, "Length2", 0);+            ret += HPDF_Dict_AddNumber (font_data, "Length3", 0);++            font_data->filter = obj->filter;++            if (ret != HPDF_OK)+                return HPDF_Error_GetCode (obj->error);+        }++        ret += HPDF_Xref_Add (font_attr->xref, descriptor);+        ret += HPDF_Dict_AddName (descriptor, "Type", "FontDescriptor");+        ret += HPDF_Dict_AddNumber (descriptor, "Ascent", def->ascent);+        ret += HPDF_Dict_AddNumber (descriptor, "Descent", def->descent);+        ret += HPDF_Dict_AddNumber (descriptor, "Flags", def->flags);++        array = HPDF_Box_Array_New (obj->mmgr, def->font_bbox);+        ret += HPDF_Dict_Add (descriptor, "FontBBox", array);++        ret += HPDF_Dict_AddName (descriptor, "FontName", def_attr->base_font);+        ret += HPDF_Dict_AddNumber (descriptor, "ItalicAngle",+                def->italic_angle);+        ret += HPDF_Dict_AddNumber (descriptor, "StemV", def->stemv);+        ret += HPDF_Dict_AddNumber (descriptor, "XHeight", def->x_height);++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (obj->error);++        font_attr->fontdef->descriptor = descriptor;+    }++    if ((ret = HPDF_Dict_AddName (obj, "BaseFont",+                def_attr->base_font)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Dict_AddName (font_attr->descendant_font, "BaseFont",+                def_attr->base_font)) != HPDF_OK)+        return ret;++    return HPDF_Dict_Add (font_attr->descendant_font, "FontDescriptor",+                font_attr->fontdef->descriptor);+}+++static HPDF_TextWidth+TextWidth  (HPDF_Font         font,+            const HPDF_BYTE  *text,+            HPDF_UINT         len)+{+    HPDF_TextWidth tw = {0, 0, 0, 0};+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;+    HPDF_ParseText_Rec  parse_state;+    HPDF_Encoder encoder = attr->encoder;+    HPDF_UINT i = 0;+    HPDF_INT dw2;+    HPDF_BYTE b = 0;++    HPDF_PTRACE ((" HPDF_Type0Font_TextWidth\n"));++    if (attr->fontdef->type == HPDF_FONTDEF_TYPE_CID) {+        HPDF_CIDFontDefAttr cid_fontdef_attr =+                    (HPDF_CIDFontDefAttr)attr->fontdef->attr;+        dw2 = cid_fontdef_attr->DW2[1];+    } else {+        dw2 = attr->fontdef->font_bbox.bottom -+                    attr->fontdef->font_bbox.top;+    }++    HPDF_Encoder_SetParseText (encoder, &parse_state, text, len);++    while (i < len) {+        HPDF_ByteType btype = HPDF_CMapEncoder_ByteType (encoder, &parse_state);+        HPDF_UINT16 cid;+        HPDF_UNICODE unicode;+        HPDF_UINT16 code;+        HPDF_UINT w = 0;++        b = *text++;+        code = b;++        if (btype == HPDF_BYTE_TYPE_LEAD) {+            code <<= 8;+            code += *text;+        }++        if (btype != HPDF_BYTE_TYPE_TRIAL) {+            if (attr->writing_mode == HPDF_WMODE_HORIZONTAL) {+                if (attr->fontdef->type == HPDF_FONTDEF_TYPE_CID) {+                    /* cid-based font */+                    cid = HPDF_CMapEncoder_ToCID (encoder, code);+                    w = HPDF_CIDFontDef_GetCIDWidth (attr->fontdef, cid);+                } else {+                    /* unicode-based font */+                    unicode = HPDF_CMapEncoder_ToUnicode (encoder, code);+                    w = HPDF_TTFontDef_GetCharWidth (attr->fontdef, unicode);+                }+            } else {+                w = -dw2;+            }++            tw.numchars++;+        }++        if (HPDF_IS_WHITE_SPACE(code)) {+            tw.numwords++;+            tw.numspace++;+        }++        tw.width += w;+        i++;+    }++    /* 2006.08.19 add. */+    if (HPDF_IS_WHITE_SPACE(b))+        ; /* do nothing. */+    else+        tw.numwords++;++    return tw;+}+++static HPDF_UINT+MeasureText  (HPDF_Font          font,+              const HPDF_BYTE   *text,+              HPDF_UINT          len,+              HPDF_REAL          width,+              HPDF_REAL          font_size,+              HPDF_REAL          char_space,+              HPDF_REAL          word_space,+              HPDF_BOOL          wordwrap,+              HPDF_REAL         *real_width)+{+    HPDF_REAL w = 0;+    HPDF_UINT tmp_len = 0;+    HPDF_UINT i;+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;+    HPDF_ByteType last_btype = HPDF_BYTE_TYPE_TRIAL;+    HPDF_Encoder encoder = attr->encoder;+    HPDF_ParseText_Rec  parse_state;+    HPDF_INT dw2;++    HPDF_PTRACE ((" HPDF_Type0Font_MeasureText\n"));++    if (attr->fontdef->type == HPDF_FONTDEF_TYPE_CID) {+        HPDF_CIDFontDefAttr cid_fontdef_attr =+                (HPDF_CIDFontDefAttr)attr->fontdef->attr;+        dw2 = cid_fontdef_attr->DW2[1];+    } else {+        dw2 = attr->fontdef->font_bbox.bottom -+                    attr->fontdef->font_bbox.top;+    }++    HPDF_Encoder_SetParseText (encoder, &parse_state, text, len);++    for (i = 0; i < len; i++) {+        HPDF_BYTE b = *text++;+        HPDF_BYTE b2 = *text;  /* next byte */+        HPDF_ByteType btype = HPDF_Encoder_ByteType (encoder, &parse_state);+        HPDF_UNICODE unicode;+        HPDF_UINT16 code = b;+        HPDF_UINT16 tmp_w = 0;++        if (btype == HPDF_BYTE_TYPE_LEAD) {+            code <<= 8;+            code += b2;+        }++        if (!wordwrap) {+            if (HPDF_IS_WHITE_SPACE(b)) {+                tmp_len = i + 1;+                if (real_width)+                    *real_width = w;+            } else if (btype == HPDF_BYTE_TYPE_SINGLE ||+                        btype == HPDF_BYTE_TYPE_LEAD) {+                tmp_len = i;+                if (real_width)+                    *real_width = w;+            }+        } else {+            if (HPDF_IS_WHITE_SPACE(b)) {+                tmp_len = i + 1;+                if (real_width)+                    *real_width = w;+            } else+            if (last_btype == HPDF_BYTE_TYPE_TRIAL ||+                    (btype == HPDF_BYTE_TYPE_LEAD &&+                    last_btype == HPDF_BYTE_TYPE_SINGLE)) {+                if (!HPDF_Encoder_CheckJWWLineHead(encoder, code)) {+                    tmp_len = i;+                    if (real_width)+                        *real_width = w;+                }+            }+        }++        if (HPDF_IS_WHITE_SPACE(b)) {+            w += word_space;+        }++        if (btype != HPDF_BYTE_TYPE_TRIAL) {+            if (attr->writing_mode == HPDF_WMODE_HORIZONTAL) {+                if (attr->fontdef->type == HPDF_FONTDEF_TYPE_CID) {+                    /* cid-based font */+                    HPDF_UINT16 cid = HPDF_CMapEncoder_ToCID (encoder, code);+                    tmp_w = HPDF_CIDFontDef_GetCIDWidth (attr->fontdef, cid);+                } else {+                    /* unicode-based font */+                    unicode = HPDF_CMapEncoder_ToUnicode (encoder, code);+                    tmp_w = HPDF_TTFontDef_GetCharWidth (attr->fontdef,+                            unicode);+                }+            } else {+                tmp_w = -dw2;+            }++            if (i > 0)+                w += char_space;+        }++        w += (HPDF_DOUBLE)tmp_w * font_size / 1000;++        /* 2006.08.04 break when it encountered  line feed */+        if (w > width || b == 0x0A)+            return tmp_len;++        if (HPDF_IS_WHITE_SPACE(b))+            last_btype = HPDF_BYTE_TYPE_TRIAL;+        else+            last_btype = btype;+    }++    /* all of text can be put in the specified width */+    if (real_width)+        *real_width = w;++    return len;+}+++static char*+UINT16ToHex  (char     *s,+              HPDF_UINT16    val,+              char     *eptr)+{+    HPDF_BYTE b[2];+    HPDF_UINT16 val2;+    char c;++    if (eptr - s < 7)+        return s;++    /* align byte-order */+    HPDF_MemCpy (b, (HPDF_BYTE *)&val, 2);+    val2 = (HPDF_UINT16)((HPDF_UINT16)b[0] << 8 | (HPDF_UINT16)b[1]);++    HPDF_MemCpy (b, (HPDF_BYTE *)&val2, 2);++    *s++ = '<';++    if (b[0] != 0) {+        c = b[0] >> 4;+        if (c <= 9)+            c += 0x30;+        else+            c += 0x41 - 10;+        *s++ = c;++        c = b[0] & 0x0f;+        if (c <= 9)+            c += 0x30;+        else+            c += 0x41 - 10;+        *s++ = c;+    }++    c = b[1] >> 4;+    if (c <= 9)+        c += 0x30;+    else+        c += 0x41 - 10;+    *s++ = c;++    c = b[1] & 0x0f;+    if (c <= 9)+        c += 0x30;+    else+        c += 0x41 - 10;+    *s++ = c;++    *s++ = '>';+    *s = 0;++    return s;+}+++static HPDF_Dict+CreateCMap  (HPDF_Encoder   encoder,+             HPDF_Xref      xref)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Dict cmap = HPDF_DictStream_New (encoder->mmgr, xref);+    HPDF_CMapEncoderAttr attr = (HPDF_CMapEncoderAttr)encoder->attr;+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_UINT i;+    HPDF_UINT phase, odd;+    HPDF_Dict sysinfo;++    if (!cmap)+        return NULL;++    ret += HPDF_Dict_AddName (cmap, "Type", "CMap");+    ret += HPDF_Dict_AddName (cmap, "CMapName", encoder->name);++    sysinfo = HPDF_Dict_New (encoder->mmgr);+    if (!sysinfo)+        return NULL;++    if (HPDF_Dict_Add (cmap, "CIDSystemInfo", sysinfo) != HPDF_OK)+        return NULL;++    ret += HPDF_Dict_Add (sysinfo, "Registry", HPDF_String_New (encoder->mmgr,+                    attr->registry, NULL));+    ret += HPDF_Dict_Add (sysinfo, "Ordering", HPDF_String_New (encoder->mmgr,+                    attr->ordering, NULL));+    ret += HPDF_Dict_AddNumber (sysinfo, "Supplement", attr->suppliment);+    ret += HPDF_Dict_AddNumber (cmap, "WMode",+                    (HPDF_UINT32)attr->writing_mode);++    /* create cmap data from encoding data */+    ret += HPDF_Stream_WriteStr (cmap->stream,+                "%!PS-Adobe-3.0 Resource-CMap\r\n");+    ret += HPDF_Stream_WriteStr (cmap->stream,+                "%%DocumentNeededResources: ProcSet (CIDInit)\r\n");+    ret += HPDF_Stream_WriteStr (cmap->stream,+                "%%IncludeResource: ProcSet (CIDInit)\r\n");++    pbuf = HPDF_StrCpy (buf, "%%BeginResource: CMap (", eptr);+    pbuf = HPDF_StrCpy (pbuf, encoder->name, eptr);+    HPDF_StrCpy (pbuf, ")\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    pbuf = HPDF_StrCpy (buf, "%%Title: (", eptr);+    pbuf = HPDF_StrCpy (pbuf, encoder->name, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_StrCpy (pbuf, attr->registry, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_StrCpy (pbuf, attr->ordering, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_IToA (pbuf, attr->suppliment, eptr);+    HPDF_StrCpy (pbuf, ")\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    ret += HPDF_Stream_WriteStr (cmap->stream, "%%Version: 1.0\r\n");+    ret += HPDF_Stream_WriteStr (cmap->stream, "%%EndComments\r\n");++    ret += HPDF_Stream_WriteStr (cmap->stream,+                "/CIDInit /ProcSet findresource begin\r\n\r\n");++    /* Adobe CMap and CIDFont Files Specification recommends to allocate+     * five more elements to this dictionary than existing elements.+     */+    ret += HPDF_Stream_WriteStr (cmap->stream, "12 dict begin\r\n\r\n");++    ret += HPDF_Stream_WriteStr (cmap->stream, "begincmap\r\n\r\n");+    ret += HPDF_Stream_WriteStr (cmap->stream,+                "/CIDSystemInfo 3 dict dup begin\r\n");++    pbuf = HPDF_StrCpy (buf, "  /Registry (", eptr);+    pbuf = HPDF_StrCpy (pbuf, attr->registry, eptr);+    HPDF_StrCpy (pbuf, ") def\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    pbuf = HPDF_StrCpy (buf, "  /Ordering (", eptr);+    pbuf = HPDF_StrCpy (pbuf, attr->ordering, eptr);+    HPDF_StrCpy (pbuf, ") def\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    pbuf = HPDF_StrCpy (buf, "  /Supplement ", eptr);+    pbuf = HPDF_IToA (pbuf, attr->suppliment, eptr);+    pbuf = HPDF_StrCpy (pbuf, " def\r\n", eptr);+    HPDF_StrCpy (pbuf, "end def\r\n\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    pbuf = HPDF_StrCpy (buf, "/CMapName /", eptr);+    pbuf = HPDF_StrCpy (pbuf, encoder->name, eptr);+    HPDF_StrCpy (pbuf, " def\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    ret += HPDF_Stream_WriteStr (cmap->stream, "/CMapVersion 1.0 def\r\n");+    ret += HPDF_Stream_WriteStr (cmap->stream, "/CMapType 1 def\r\n\r\n");++    if (attr->uid_offset >= 0) {+        pbuf = HPDF_StrCpy (buf, "/UIDOffset ", eptr);+        pbuf = HPDF_IToA (pbuf, attr->uid_offset, eptr);+        HPDF_StrCpy (pbuf, " def\r\n\r\n", eptr);+        ret += HPDF_Stream_WriteStr (cmap->stream, buf);+    }++    pbuf = HPDF_StrCpy (buf, "/XUID [", eptr);+    pbuf = HPDF_IToA (pbuf, attr->xuid[0], eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_IToA (pbuf, attr->xuid[1], eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_IToA (pbuf, attr->xuid[2], eptr);+    HPDF_StrCpy (pbuf, "] def\r\n\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    pbuf = HPDF_StrCpy (buf, "/WMode ", eptr);+    pbuf = HPDF_IToA (pbuf, (HPDF_UINT32)attr->writing_mode, eptr);+    HPDF_StrCpy (pbuf, " def\r\n\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    /* add code-space-range */+    pbuf = HPDF_IToA (buf, attr->code_space_range->count, eptr);+    HPDF_StrCpy (pbuf, " begincodespacerange\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    for (i = 0; i < attr->code_space_range->count; i++) {+        HPDF_CidRange_Rec *range = HPDF_List_ItemAt (attr->code_space_range,+                        i);++        pbuf = UINT16ToHex (buf, range->from, eptr);+        *pbuf++ = ' ';+        pbuf = UINT16ToHex (pbuf, range->to, eptr);+        HPDF_StrCpy (pbuf, "\r\n", eptr);++        ret += HPDF_Stream_WriteStr (cmap->stream, buf);++        if (ret != HPDF_OK)+            return NULL;+    }++    HPDF_StrCpy (buf, "endcodespacerange\r\n\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);+    if (ret != HPDF_OK)+        return NULL;++    /* add not-def-range */+    pbuf = HPDF_IToA (buf, attr->notdef_range->count, eptr);+    HPDF_StrCpy (pbuf, " beginnotdefrange\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    for (i = 0; i < attr->notdef_range->count; i++) {+        HPDF_CidRange_Rec *range = HPDF_List_ItemAt (attr->notdef_range, i);++        pbuf = UINT16ToHex (buf, range->from, eptr);+        *pbuf++ = ' ';+        pbuf = UINT16ToHex (pbuf, range->to, eptr);+        *pbuf++ = ' ';+        pbuf = HPDF_IToA (pbuf, range->cid, eptr);+        HPDF_StrCpy (pbuf, "\r\n", eptr);++        ret += HPDF_Stream_WriteStr (cmap->stream, buf);++        if (ret != HPDF_OK)+            return NULL;+    }++    HPDF_StrCpy (buf, "endnotdefrange\r\n\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);+    if (ret != HPDF_OK)+        return NULL;++    /* add cid-range */+    phase = attr->cmap_range->count / 100;+    odd = attr->cmap_range->count % 100;+    if (phase > 0)+        pbuf = HPDF_IToA (buf, 100, eptr);+    else+        pbuf = HPDF_IToA (buf, odd, eptr);+    HPDF_StrCpy (pbuf, " begincidrange\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    for (i = 0; i < attr->cmap_range->count; i++) {+        HPDF_CidRange_Rec *range = HPDF_List_ItemAt (attr->cmap_range, i);++        pbuf = UINT16ToHex (buf, range->from, eptr);+        *pbuf++ = ' ';+        pbuf = UINT16ToHex (pbuf, range->to, eptr);+        *pbuf++ = ' ';+        pbuf = HPDF_IToA (pbuf, range->cid, eptr);+        HPDF_StrCpy (pbuf, "\r\n", eptr);++        ret += HPDF_Stream_WriteStr (cmap->stream, buf);++        if ((i + 1) %100 == 0) {+            phase--;+            pbuf = HPDF_StrCpy (buf, "endcidrange\r\n\r\n", eptr);++            if (phase > 0)+                pbuf = HPDF_IToA (pbuf, 100, eptr);+            else+                pbuf = HPDF_IToA (pbuf, odd, eptr);++            HPDF_StrCpy (pbuf, " begincidrange\r\n", eptr);++            ret += HPDF_Stream_WriteStr (cmap->stream, buf);+        }++        if (ret != HPDF_OK)+            return NULL;+    }++    if (odd > 0)+        pbuf = HPDF_StrCpy (buf, "endcidrange\r\n", eptr);++    pbuf = HPDF_StrCpy (pbuf, "endcmap\r\n", eptr);+    pbuf = HPDF_StrCpy (pbuf, "CMapName currentdict /CMap "+            "defineresource pop\r\n", eptr);+    pbuf = HPDF_StrCpy (pbuf, "end\r\n", eptr);+    pbuf = HPDF_StrCpy (pbuf, "end\r\n\r\n", eptr);+    pbuf = HPDF_StrCpy (pbuf, "%%EndResource\r\n", eptr);+    HPDF_StrCpy (pbuf, "%%EOF\r\n", eptr);+    ret += HPDF_Stream_WriteStr (cmap->stream, buf);++    if (ret != HPDF_OK)+        return NULL;++    return cmap;+}+
+ haru/hpdf_font_tt.c view
@@ -0,0 +1,406 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_font_tt.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_font.h"++static HPDF_STATUS+OnWrite  (HPDF_Dict    obj,+          HPDF_Stream  stream);++static HPDF_STATUS+BeforeWrite  (HPDF_Dict   obj);+++static void+OnFree  (HPDF_Dict  obj);+++static HPDF_INT+CharWidth (HPDF_Font  font,+           HPDF_BYTE  code);++static HPDF_TextWidth+TextWidth  (HPDF_Font         font,+            const HPDF_BYTE  *text,+            HPDF_UINT         len);+++static HPDF_STATUS+CreateDescriptor  (HPDF_Font  font);+++static HPDF_UINT+MeasureText  (HPDF_Font          font,+              const HPDF_BYTE   *text,+              HPDF_UINT          len,+              HPDF_REAL          width,+              HPDF_REAL          font_size,+              HPDF_REAL          char_space,+              HPDF_REAL          word_space,+              HPDF_BOOL          wordwrap,+              HPDF_REAL         *real_width);+++HPDF_Font+HPDF_TTFont_New  (HPDF_MMgr        mmgr,+                  HPDF_FontDef     fontdef,+                  HPDF_Encoder     encoder,+                  HPDF_Xref        xref)+{+    HPDF_Dict font;+    HPDF_FontAttr attr;+    HPDF_TTFontDefAttr fontdef_attr;+    HPDF_BasicEncoderAttr encoder_attr;+    HPDF_STATUS ret = 0;++    HPDF_PTRACE ((" HPDF_TTFont_New\n"));++    font = HPDF_Dict_New (mmgr);+    if (!font)+        return NULL;++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;++    /* check whether the fontdef object and the encoder object is valid. */+    if (encoder->type != HPDF_ENCODER_TYPE_SINGLE_BYTE) {+        HPDF_SetError(font->error, HPDF_INVALID_ENCODER_TYPE, 0);+        return NULL;+    }++    if (fontdef->type != HPDF_FONTDEF_TYPE_TRUETYPE) {+        HPDF_SetError(font->error, HPDF_INVALID_FONTDEF_TYPE, 0);+        return NULL;+    }++    attr = HPDF_GetMem (mmgr, sizeof(HPDF_FontAttr_Rec));+    if (!attr) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    HPDF_MemSet (attr, 0, sizeof(HPDF_FontAttr_Rec));++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;+    font->write_fn = OnWrite;+    font->before_write_fn = BeforeWrite;+    font->free_fn = OnFree;+    font->attr = attr;++    attr->type = HPDF_FONT_TRUETYPE;+    attr->writing_mode = HPDF_WMODE_HORIZONTAL;+    attr->text_width_fn = TextWidth;+    attr->measure_text_fn = MeasureText;+    attr->fontdef = fontdef;+    attr->encoder = encoder;+    attr->xref = xref;++    /* singlebyte-font has a widths-array which is an array of 256 signed+     * short integer.+     * in the case of type1-font, widths-array for all letters is made in+     * constructer. but in the case of true-type-font, the array is+     * initialized at 0, and set when the corresponding character was used+     * for the first time.+     */+    attr->widths = HPDF_GetMem (mmgr, sizeof(HPDF_INT16) * 256);+    if (!attr->widths) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    HPDF_MemSet (attr->widths, 0, sizeof(HPDF_INT16) * 256);++    attr->used = HPDF_GetMem (mmgr, sizeof(HPDF_BYTE) * 256);+    if (!attr->used) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    HPDF_MemSet (attr->used, 0, sizeof(HPDF_BYTE) * 256);++    fontdef_attr = (HPDF_TTFontDefAttr)fontdef->attr;++    ret += HPDF_Dict_AddName (font, "Type", "Font");+    ret += HPDF_Dict_AddName (font, "BaseFont", fontdef_attr->base_font);+    ret += HPDF_Dict_AddName (font, "Subtype", "TrueType");++    encoder_attr = (HPDF_BasicEncoderAttr)encoder->attr;++    ret += HPDF_Dict_AddNumber (font, "FirstChar", encoder_attr->first_char);+    ret += HPDF_Dict_AddNumber (font, "LastChar", encoder_attr->last_char);+    if (fontdef->missing_width != 0)+        ret += HPDF_Dict_AddNumber (font, "MissingWidth",+                fontdef->missing_width);++    if (ret != HPDF_OK) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    if (HPDF_Xref_Add (xref, font) != HPDF_OK)+        return NULL;++    return font;+}+++static HPDF_STATUS+CreateDescriptor  (HPDF_Font  font)+{+    HPDF_FontAttr font_attr = (HPDF_FontAttr)font->attr;+    HPDF_FontDef def = font_attr->fontdef;+    HPDF_TTFontDefAttr def_attr = (HPDF_TTFontDefAttr)def->attr;++    HPDF_PTRACE ((" HPDF_TTFont_CreateDescriptor\n"));++    if (!font_attr->fontdef->descriptor) {+        HPDF_Dict descriptor = HPDF_Dict_New (font->mmgr);+        HPDF_STATUS ret = 0;+        HPDF_Array array;++        if (!descriptor)+            return HPDF_Error_GetCode (font->error);++        ret += HPDF_Xref_Add (font_attr->xref, descriptor);+        ret += HPDF_Dict_AddName (descriptor, "Type", "FontDescriptor");+        ret += HPDF_Dict_AddNumber (descriptor, "Ascent", def->ascent);+        ret += HPDF_Dict_AddNumber (descriptor, "Descent", def->descent);+        ret += HPDF_Dict_AddNumber (descriptor, "Flags", def->flags);++        array = HPDF_Box_Array_New (font->mmgr, def->font_bbox);+        ret += HPDF_Dict_Add (descriptor, "FontBBox", array);++        ret += HPDF_Dict_AddName (descriptor, "FontName", def_attr->base_font);+        ret += HPDF_Dict_AddNumber (descriptor, "ItalicAngle",+                def->italic_angle);+        ret += HPDF_Dict_AddNumber (descriptor, "StemV", def->stemv);+        ret += HPDF_Dict_AddNumber (descriptor, "XHeight", def->x_height);++        if (def_attr->char_set)+            ret += HPDF_Dict_AddName (descriptor, "CharSet",+                        def_attr->char_set);++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (font->error);++        if (def_attr->embedding) {+            HPDF_Dict font_data = HPDF_DictStream_New (font->mmgr,+                    font_attr->xref);++            if (!font_data)+                return HPDF_Error_GetCode (font->error);++            if (HPDF_TTFontDef_SaveFontData (font_attr->fontdef,+                font_data->stream) != HPDF_OK)+                return HPDF_Error_GetCode (font->error);++            ret += HPDF_Dict_Add (descriptor, "FontFile2", font_data);+            ret += HPDF_Dict_AddNumber (font_data, "Length1",+                    def_attr->length1);+            ret += HPDF_Dict_AddNumber (font_data, "Length2", 0);+            ret += HPDF_Dict_AddNumber (font_data, "Length3", 0);++            font_data->filter = font->filter;+        }++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (font->error);++        font_attr->fontdef->descriptor = descriptor;+    }++    return HPDF_Dict_Add (font, "FontDescriptor",+                font_attr->fontdef->descriptor);+}+++static HPDF_INT+CharWidth (HPDF_Font  font,+           HPDF_BYTE  code)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;++    if (attr->used[code] == 0) {+        HPDF_UNICODE unicode = HPDF_Encoder_ToUnicode (attr->encoder, code);++        attr->used[code] = 1;+        attr->widths[code] = HPDF_TTFontDef_GetCharWidth(attr->fontdef,+                unicode);+    }++    return attr->widths[code];+}+++HPDF_TextWidth+TextWidth  (HPDF_Font         font,+            const HPDF_BYTE  *text,+            HPDF_UINT         len)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;+    HPDF_TextWidth ret = {0, 0, 0, 0};+    HPDF_UINT i;+    HPDF_BYTE b = 0;++    HPDF_PTRACE ((" HPDF_TTFont_TextWidth\n"));++    if (attr->widths) {+        for (i = 0; i < len; i++) {+            b = text[i];+            ret.numchars++;+            ret.width += CharWidth (font, b);++            if (HPDF_IS_WHITE_SPACE(b)) {+                ret.numspace++;+                ret.numwords++;+            }+        }+    } else+        HPDF_SetError (font->error, HPDF_FONT_INVALID_WIDTHS_TABLE, 0);++    /* 2006.08.19 add. */+    if (HPDF_IS_WHITE_SPACE(b))+        ; /* do nothing. */+    else+        ret.numwords++;++    return ret;+}+++HPDF_UINT+MeasureText (HPDF_Font          font,+             const HPDF_BYTE   *text,+             HPDF_UINT          len,+             HPDF_REAL          width,+             HPDF_REAL          font_size,+             HPDF_REAL          char_space,+             HPDF_REAL          word_space,+             HPDF_BOOL          wordwrap,+             HPDF_REAL         *real_width)+{+    HPDF_DOUBLE w = 0;+    HPDF_UINT tmp_len = 0;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_TTFont_MeasureText\n"));++    for (i = 0; i < len; i++) {+        HPDF_BYTE b = text[i];++        if (HPDF_IS_WHITE_SPACE(b)) {+            tmp_len = i + 1;++            if (real_width)+                *real_width = w;++            w += word_space;+        } else if (!wordwrap) {+            tmp_len = i;++            if (real_width)+                *real_width = w;+        }++        w += (HPDF_DOUBLE)CharWidth (font, b) * font_size / 1000;++        /* 2006.08.04 break when it encountered  line feed */+        if (w > width || b == 0x0A)+            return tmp_len;++        if (i > 0)+            w += char_space;+    }++    /* all of text can be put in the specified width */+    if (real_width)+        *real_width = w;+    return len;+}+++static HPDF_STATUS+OnWrite  (HPDF_Dict    obj,+          HPDF_Stream  stream)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)obj->attr;+    HPDF_BasicEncoderAttr encoder_attr =+                    (HPDF_BasicEncoderAttr)attr->encoder->attr;+    HPDF_UINT i;+    HPDF_STATUS ret;+    char buf[128];+    char *pbuf = buf;+    char *eptr = buf + 127;++    HPDF_PTRACE ((" HPDF_Font_OnWrite\n"));++    /* Widths entry */+    if ((ret = HPDF_Stream_WriteEscapeName (stream, "Widths")) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteStr (stream, " [\012")) != HPDF_OK)+        return ret;++    for (i = encoder_attr->first_char; i <= encoder_attr->last_char; i++) {++        pbuf = HPDF_IToA (pbuf, attr->widths[i], eptr);+        *pbuf++ = ' ';++        if ((i + 1) % 16 == 0) {+            HPDF_StrCpy(pbuf, "\012", eptr);+            if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+                return ret;+            pbuf = buf;+        }++    }++    HPDF_StrCpy (pbuf, "]\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+        return ret;++    return attr->encoder->write_fn (attr->encoder, stream);+}++static HPDF_STATUS+BeforeWrite  (HPDF_Dict   obj)+{+    HPDF_PTRACE ((" HPDF_TTFont_BeforeWrite\n"));++    return CreateDescriptor (obj);+}++static void+OnFree  (HPDF_Dict  obj)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)obj->attr;++    HPDF_PTRACE ((" HPDF_TTFont_OnFree\n"));++    if (attr) {+        if (attr->widths) {+            HPDF_FreeMem (obj->mmgr, attr->widths);+        }++        if (attr->used) {+            HPDF_FreeMem (obj->mmgr, attr->used);+        }++        HPDF_FreeMem (obj->mmgr, attr);+    }+}++
+ haru/hpdf_font_type1.c view
@@ -0,0 +1,391 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_font_type1.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_font.h"++static HPDF_STATUS+Type1Font_OnWrite  (HPDF_Dict    obj,+          HPDF_Stream  stream);+++static void+Type1Font_OnFree  (HPDF_Dict  obj);+++static HPDF_TextWidth+Type1Font_TextWidth  (HPDF_Font        font,+                      const HPDF_BYTE  *text,+                      HPDF_UINT        len);+++static HPDF_UINT+Type1Font_MeasureText  (HPDF_Font          font,+                        const HPDF_BYTE   *text,+                        HPDF_UINT          len,+                        HPDF_REAL          width,+                        HPDF_REAL          font_size,+                        HPDF_REAL          char_space,+                        HPDF_REAL          word_space,+                        HPDF_BOOL          wordwrap,+                        HPDF_REAL         *real_width);+++static HPDF_STATUS+Type1Font_CreateDescriptor  (HPDF_MMgr  mmgr,+                             HPDF_Font  font,+                             HPDF_Xref  xref);+++HPDF_Font+HPDF_Type1Font_New  (HPDF_MMgr        mmgr,+                     HPDF_FontDef     fontdef,+                     HPDF_Encoder     encoder,+                     HPDF_Xref        xref)+{+    HPDF_Dict font;+    HPDF_FontAttr attr;+    HPDF_Type1FontDefAttr fontdef_attr;+    HPDF_BasicEncoderAttr encoder_attr;+    HPDF_STATUS ret = 0;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Type1Font_New\n"));++    /* check whether the fontdef object and the encoder object is valid. */+    if (encoder->type != HPDF_ENCODER_TYPE_SINGLE_BYTE) {+        HPDF_SetError(mmgr->error, HPDF_INVALID_ENCODER_TYPE, 0);+        return NULL;+    }++    if (fontdef->type != HPDF_FONTDEF_TYPE_TYPE1) {+        HPDF_SetError(mmgr->error, HPDF_INVALID_FONTDEF_TYPE, 0);+        return NULL;+    }++    font = HPDF_Dict_New (mmgr);+    if (!font)+        return NULL;++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;++    attr = HPDF_GetMem (mmgr, sizeof(HPDF_FontAttr_Rec));+    if (!attr) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    font->header.obj_class |= HPDF_OSUBCLASS_FONT;+    font->write_fn = Type1Font_OnWrite;+    font->free_fn = Type1Font_OnFree;++    HPDF_MemSet (attr, 0, sizeof(HPDF_FontAttr_Rec));++    font->attr = attr;+    attr->type = HPDF_FONT_TYPE1;+    attr->writing_mode = HPDF_WMODE_HORIZONTAL;+    attr->text_width_fn = Type1Font_TextWidth;+    attr->measure_text_fn = Type1Font_MeasureText;+    attr->fontdef = fontdef;+    attr->encoder = encoder;+    attr->xref = xref;++    /* singlebyte-font has a widths-array which is an array of 256 signed+     * short integer.+     */+    attr->widths = HPDF_GetMem (mmgr, sizeof(HPDF_INT16) * 256);+    if (!attr->widths) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    encoder_attr = (HPDF_BasicEncoderAttr)encoder->attr;++    HPDF_MemSet (attr->widths, 0, sizeof(HPDF_INT16) * 256);+    for (i = encoder_attr->first_char; i <= encoder_attr->last_char; i++) {+        HPDF_UNICODE u = encoder_attr->unicode_map[i];++        HPDF_UINT16 w = HPDF_Type1FontDef_GetWidth (fontdef, u);+        attr->widths[i] = w;+    }++    fontdef_attr = (HPDF_Type1FontDefAttr)fontdef->attr;++    ret += HPDF_Dict_AddName (font, "Type", "Font");+    ret += HPDF_Dict_AddName (font, "BaseFont", fontdef->base_font);+    ret += HPDF_Dict_AddName (font, "Subtype", "Type1");++    if (!fontdef_attr->is_base14font) {+        if (fontdef->missing_width != 0)+            ret += HPDF_Dict_AddNumber (font, "MissingWidth",+                    fontdef->missing_width);++        ret += Type1Font_CreateDescriptor (mmgr, font, xref);+    }++    if (ret != HPDF_OK) {+        HPDF_Dict_Free (font);+        return NULL;+    }++    if (HPDF_Xref_Add (xref, font) != HPDF_OK)+        return NULL;++    return font;+}+++static HPDF_STATUS+Type1Font_CreateDescriptor  (HPDF_MMgr  mmgr,+                             HPDF_Font  font,+                             HPDF_Xref  xref)+{+    HPDF_FontAttr font_attr = (HPDF_FontAttr)font->attr;+    HPDF_FontDef def = font_attr->fontdef;+    HPDF_Type1FontDefAttr def_attr = (HPDF_Type1FontDefAttr)def->attr;++    HPDF_PTRACE ((" HPDF_Type1Font_CreateDescriptor\n"));++    if (!font_attr->fontdef->descriptor) {+        HPDF_Dict descriptor = HPDF_Dict_New (mmgr);+        HPDF_STATUS ret = 0;+        HPDF_Array array;++        if (!descriptor)+            return HPDF_Error_GetCode (font->error);++        ret += HPDF_Xref_Add (xref, descriptor);+        ret += HPDF_Dict_AddName (descriptor, "Type", "FontDescriptor");+        ret += HPDF_Dict_AddNumber (descriptor, "Ascent", def->ascent);+        ret += HPDF_Dict_AddNumber (descriptor, "Descent", def->descent);+        ret += HPDF_Dict_AddNumber (descriptor, "Flags", def->flags);++        array = HPDF_Box_Array_New (mmgr, def->font_bbox);+        ret += HPDF_Dict_Add (descriptor, "FontBBox", array);++        ret += HPDF_Dict_AddName (descriptor, "FontName",+                font_attr->fontdef->base_font);+        ret += HPDF_Dict_AddNumber (descriptor, "ItalicAngle",+                def->italic_angle);+        ret += HPDF_Dict_AddNumber (descriptor, "StemV", def->stemv);+        ret += HPDF_Dict_AddNumber (descriptor, "XHeight", def->x_height);++        if (def_attr->char_set)+            ret += HPDF_Dict_AddName (descriptor, "CharSet",+                        def_attr->char_set);++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (font->error);++        if (def_attr->font_data) {+            HPDF_Dict font_data = HPDF_DictStream_New (mmgr, xref);++            if (!font_data)+                return HPDF_Error_GetCode (font->error);++            if (HPDF_Stream_WriteToStream (def_attr->font_data,+                font_data->stream, HPDF_STREAM_FILTER_NONE, NULL) != HPDF_OK)+                return HPDF_Error_GetCode (font->error);++            ret += HPDF_Dict_Add (descriptor, "FontFile", font_data);+            ret += HPDF_Dict_AddNumber (font_data, "Length1",+                    def_attr->length1);+            ret += HPDF_Dict_AddNumber (font_data, "Length2",+                    def_attr->length2);+            ret += HPDF_Dict_AddNumber (font_data, "Length3",+                    def_attr->length3);++            font_data->filter = font->filter;+        }++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (font->error);++        font_attr->fontdef->descriptor = descriptor;+    }++    return HPDF_Dict_Add (font, "FontDescriptor",+            font_attr->fontdef->descriptor);+}+++static HPDF_TextWidth+Type1Font_TextWidth  (HPDF_Font        font,+                      const HPDF_BYTE  *text,+                      HPDF_UINT        len)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;+    HPDF_TextWidth ret = {0, 0, 0, 0};+    HPDF_UINT i;+    HPDF_BYTE b = 0;++    HPDF_PTRACE ((" HPDF_Type1Font_TextWidth\n"));++    if (attr->widths) {+        for (i = 0; i < len; i++) {+            b = text[i];+            ret.numchars++;+            ret.width += attr->widths[b];++            if (HPDF_IS_WHITE_SPACE(b)) {+                ret.numspace++;+                ret.numwords++;+            }+        }+    } else+        HPDF_SetError (font->error, HPDF_FONT_INVALID_WIDTHS_TABLE, 0);++    /* 2006.08.19 add. */+    if (HPDF_IS_WHITE_SPACE(b))+        ; /* do nothing. */+    else+        ret.numwords++;++    return ret;+}+++static HPDF_UINT+Type1Font_MeasureText (HPDF_Font          font,+                       const HPDF_BYTE   *text,+                       HPDF_UINT          len,+                       HPDF_REAL          width,+                       HPDF_REAL          font_size,+                       HPDF_REAL          char_space,+                       HPDF_REAL          word_space,+                       HPDF_BOOL          wordwrap,+                       HPDF_REAL         *real_width)+{+    HPDF_REAL w = 0;+    HPDF_UINT tmp_len = 0;+    HPDF_UINT i;+    HPDF_FontAttr attr = (HPDF_FontAttr)font->attr;++    HPDF_PTRACE ((" HPDF_Type1Font_MeasureText\n"));++    for (i = 0; i < len; i++) {+        HPDF_BYTE b = text[i];++        if (HPDF_IS_WHITE_SPACE(b)) {+            tmp_len = i + 1;++            if (real_width)+                *real_width = w;++            w += word_space;+        } else if (!wordwrap) {+            tmp_len = i;++            if (real_width)+                *real_width = w;+        }++        w += attr->widths[b] * font_size / 1000;++        /* 2006.08.04 break when it encountered  line feed */+        if (w > width || b == 0x0A)+            return tmp_len;++        if (i > 0)+            w += char_space;+    }++    /* all of text can be put in the specified width */+    if (real_width)+        *real_width = w;++    return len;+}+++static HPDF_STATUS+Type1Font_OnWrite  (HPDF_Dict    obj,+          HPDF_Stream  stream)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)obj->attr;+    HPDF_Type1FontDefAttr fontdef_attr =+                    (HPDF_Type1FontDefAttr)attr->fontdef->attr;+    HPDF_BasicEncoderAttr encoder_attr =+                    (HPDF_BasicEncoderAttr)attr->encoder->attr;+    HPDF_UINT i;+    HPDF_STATUS ret;+    char buf[HPDF_TMP_BUF_SIZ];+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;++    HPDF_PTRACE ((" HPDF_Font_Type1Font_OnWrite\n"));++    /* if font is base14-font these entries is not required */+    if (!fontdef_attr->is_base14font || encoder_attr->has_differences) {+        char *pbuf;++        pbuf = HPDF_StrCpy (buf, "/FirstChar ", eptr);+        pbuf = HPDF_IToA (pbuf, encoder_attr->first_char, eptr);+        HPDF_StrCpy (pbuf, "\012", eptr);+        if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+            return ret;++        pbuf = HPDF_StrCpy (buf, "/LastChar ", eptr);+        pbuf = HPDF_IToA (pbuf, encoder_attr->last_char, eptr);+        HPDF_StrCpy (pbuf, "\012", eptr);+        if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+            return ret;++        /* Widths entry */+        if ((ret = HPDF_Stream_WriteEscapeName (stream, "Widths")) != HPDF_OK)+            return ret;++        if ((ret = HPDF_Stream_WriteStr (stream, " [\012")) != HPDF_OK)+            return ret;++        pbuf = buf;+        for (i = encoder_attr->first_char; i <= encoder_attr->last_char; i++) {++            pbuf = HPDF_IToA (pbuf, attr->widths[i], eptr);+            *pbuf++ = ' ';++            if ((i + 1) % 16 == 0) {+                HPDF_StrCpy(pbuf, "\012", eptr);+                if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+                    return ret;+                pbuf = buf;+            }+        }++        HPDF_StrCpy (pbuf, "]\012", eptr);++        if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+            return ret;+    }++    return attr->encoder->write_fn (attr->encoder, stream);+}+++static void+Type1Font_OnFree  (HPDF_Dict  obj)+{+    HPDF_FontAttr attr = (HPDF_FontAttr)obj->attr;++    HPDF_PTRACE ((" HPDF_Type1Font_OnFree\n"));++    if (attr) {+        if (attr->widths) {+            HPDF_FreeMem (obj->mmgr, attr->widths);+        }+        HPDF_FreeMem (obj->mmgr, attr);+    }+}++
+ haru/hpdf_fontdef.c view
@@ -0,0 +1,56 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_fontdef.h"++void+HPDF_FontDef_Cleanup (HPDF_FontDef  fontdef)+{+    if (!fontdef)+        return;++    HPDF_PTRACE ((" HPDF_FontDef_Cleanup\n"));++    if (fontdef->clean_fn)+        fontdef->clean_fn (fontdef);++    fontdef->descriptor = NULL;+}++void+HPDF_FontDef_Free (HPDF_FontDef  fontdef)+{+    if (!fontdef)+        return;++    HPDF_PTRACE ((" HPDF_FontDef_Free\n"));++    if (fontdef->free_fn)+        fontdef->free_fn (fontdef);+    HPDF_FreeMem (fontdef->mmgr, fontdef);+}++HPDF_BOOL+HPDF_FontDef_Validate (HPDF_FontDef  fontdef)+{+    HPDF_PTRACE ((" HPDF_FontDef_Validate\n"));++    if (!fontdef || fontdef->sig_bytes != HPDF_FONTDEF_SIG_BYTES)+        return HPDF_FALSE;+    else+        return HPDF_TRUE;+}+
+ haru/hpdf_fontdef.h view
@@ -0,0 +1,403 @@+/*+ * << Haru Free PDF Library 2.0.4 >> -- hpdf_fontdef.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_FONTDEF_H+#define _HPDF_FONTDEF_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif+++#define HPDF_FONTDEF_SIG_BYTES 0x464F4E54L++/*------ collection of flags for defining characteristics. ---*/++#define HPDF_FONT_FIXED_WIDTH    1+#define HPDF_FONT_SERIF          2+#define HPDF_FONT_SYMBOLIC       4+#define HPDF_FONT_SCRIPT         8+  /* Reserved                    16 */+#define HPDF_FONT_STD_CHARSET    32+#define HPDF_FONT_ITALIC         64+  /* Reserved                    128+     Reserved                    256+     Reserved                    512+     Reserved                    1024+     Reserved                    2048+     Reserved                    4096+     Reserved                    8192+     Reserved                    16384+     Reserved                    32768 */+#define HPDF_FONT_ALL_CAP        65536+#define HPDF_FONT_SMALL_CAP      131072+#define HPDF_FONT_FOURCE_BOLD    262144++#define HPDF_CID_W_TYPE_FROM_TO     0+#define HPDF_CID_W_TYPE_FROM_ARRAY  1++/*-- HPDF_FontDef ---------------------------------------*/++typedef struct _HPDF_CharData {+    HPDF_INT16     char_cd;+    HPDF_UNICODE   unicode;+    HPDF_INT16     width;+} HPDF_CharData;++typedef enum  _HPDF_FontDefType {+    HPDF_FONTDEF_TYPE_TYPE1,+    HPDF_FONTDEF_TYPE_TRUETYPE,+    HPDF_FONTDEF_TYPE_CID,+    HPDF_FONTDEF_TYPE_UNINITIALIZED,+    HPDF_FONTDEF_TYPE_EOF+} HPDF_FontDefType;++typedef struct _HPDF_CID_Width {+    HPDF_UINT16   cid;+    HPDF_INT16    width;+}  HPDF_CID_Width;++/*----------------------------------------------------------------------------*/+/*----- HPDF_FontDef ---------------------------------------------------------*/++typedef struct _HPDF_FontDef_Rec  *HPDF_FontDef;++typedef void  (*HPDF_FontDef_FreeFunc)  (HPDF_FontDef  fontdef);++typedef void  (*HPDF_FontDef_CleanFunc)  (HPDF_FontDef  fontdef);++typedef HPDF_STATUS  (*HPDF_FontDef_InitFunc)  (HPDF_FontDef  fontdef);++typedef struct _HPDF_FontDef_Rec {+    HPDF_UINT32              sig_bytes;+    char                base_font[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_MMgr                mmgr;+    HPDF_Error               error;+    HPDF_FontDefType         type;+    HPDF_FontDef_CleanFunc   clean_fn;+    HPDF_FontDef_FreeFunc    free_fn;+    HPDF_FontDef_InitFunc    init_fn;++    HPDF_INT16    ascent;+    HPDF_INT16    descent;+    HPDF_UINT     flags;+    HPDF_Box      font_bbox;+    HPDF_INT16    italic_angle;+    HPDF_UINT16   stemv;+    HPDF_INT16    avg_width;+    HPDF_INT16    max_width;+    HPDF_INT16    missing_width;+    HPDF_UINT16   stemh;+    HPDF_UINT16   x_height;+    HPDF_UINT16   cap_height;++    /*  the initial value of descriptor entry is NULL.+     *  when first font-object besed on the fontdef object is created,+     *  the font-descriptor object is created and descriptor entry is set.+     */+    HPDF_Dict                descriptor;+    HPDF_Stream              data;++    HPDF_BOOL                valid;+    void                    *attr;+} HPDF_FontDef_Rec;+++void+HPDF_FontDef_Free  (HPDF_FontDef  fontdef);+++void+HPDF_FontDef_Cleanup  (HPDF_FontDef  fontdef);+++HPDF_BOOL+HPDF_FontDef_Validate  (HPDF_FontDef  fontdef);+++/*----------------------------------------------------------------------------*/+/*----- HPDF_Type1FontDef  ---------------------------------------------------*/++typedef struct _HPDF_Type1FontDefAttrRec   *HPDF_Type1FontDefAttr;++typedef struct _HPDF_Type1FontDefAttrRec {+    HPDF_BYTE       first_char;                               /* Required */+    HPDF_BYTE       last_char;                                /* Required */+    HPDF_CharData  *widths;                                   /* Required */+    HPDF_UINT       widths_count;++    HPDF_INT16      leading;+    char      *char_set;+    char       encoding_scheme[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_UINT       length1;+    HPDF_UINT       length2;+    HPDF_UINT       length3;+    HPDF_BOOL       is_base14font;+    HPDF_BOOL       is_fixed_pitch;++    HPDF_Stream     font_data;+} HPDF_Type1FontDefAttr_Rec;++++HPDF_FontDef+HPDF_Type1FontDef_New  (HPDF_MMgr  mmgr);+++HPDF_FontDef+HPDF_Type1FontDef_Load  (HPDF_MMgr         mmgr,+                         HPDF_Stream       afm,+                         HPDF_Stream       font_data);+++HPDF_FontDef+HPDF_Type1FontDef_Duplicate  (HPDF_MMgr     mmgr,+                              HPDF_FontDef  src);+++HPDF_STATUS+HPDF_Type1FontDef_SetWidths  (HPDF_FontDef         fontdef,+                              const HPDF_CharData  *widths);+++HPDF_INT16+HPDF_Type1FontDef_GetWidthByName  (HPDF_FontDef     fontdef,+                                   const char  *gryph_name);+++HPDF_INT16+HPDF_Type1FontDef_GetWidth  (HPDF_FontDef  fontdef,+                             HPDF_UNICODE  unicode);+++HPDF_FontDef+HPDF_Base14FontDef_New  (HPDF_MMgr        mmgr,+                         const char  *font_name);++++/*----------------------------------------------------------------------------*/+/*----- HPDF_TTFontDef  ------------------------------------------------------*/++#define HPDF_TTF_FONT_TAG_LEN  6++typedef struct _HPDF_TTF_Table {+        char     tag[4];+        HPDF_UINT32   check_sum;+        HPDF_UINT32   offset;+        HPDF_UINT32   length;+} HPDF_TTFTable;+++typedef struct _HPDF_TTF_OffsetTbl {+        HPDF_UINT32     sfnt_version;+        HPDF_UINT16     num_tables;+        HPDF_UINT16     search_range;+        HPDF_UINT16     entry_selector;+        HPDF_UINT16     range_shift;+        HPDF_TTFTable  *table;+} HPDF_TTF_OffsetTbl;+++typedef struct _HPDF_TTF_CmapRange {+        HPDF_UINT16   format;+        HPDF_UINT16   length;+        HPDF_UINT16   language;+        HPDF_UINT16   seg_count_x2;+        HPDF_UINT16   search_range;+        HPDF_UINT16   entry_selector;+        HPDF_UINT16   range_shift;+        HPDF_UINT16  *end_count;+        HPDF_UINT16   reserved_pad;+        HPDF_UINT16  *start_count;+        HPDF_INT16   *id_delta;+        HPDF_UINT16  *id_range_offset;+        HPDF_UINT16  *glyph_id_array;+        HPDF_UINT     glyph_id_array_count;+} HPDF_TTF_CmapRange;+++typedef struct _HPDF_TTF_GryphOffsets {+        HPDF_UINT32   base_offset;+        HPDF_UINT32  *offsets;+        HPDF_BYTE    *flgs;   /* 0: unused, 1: used */+} HPDF_TTF_GryphOffsets;+++typedef struct _HPDF_TTF_LongHorMetric {+        HPDF_UINT16  advance_width;+        HPDF_INT16   lsb;+} HPDF_TTF_LongHorMetric;+++typedef struct _HPDF_TTF_FontHeader {+    HPDF_BYTE     version_number[4];+    HPDF_UINT32   font_revision;+    HPDF_UINT32   check_sum_adjustment;+    HPDF_UINT32   magic_number;+    HPDF_UINT16   flags;+    HPDF_UINT16   units_per_em;+    HPDF_BYTE     created[8];+    HPDF_BYTE     modified[8];+    HPDF_INT16    x_min;+    HPDF_INT16    y_min;+    HPDF_INT16    x_max;+    HPDF_INT16    y_max;+    HPDF_UINT16   mac_style;+    HPDF_UINT16   lowest_rec_ppem;+    HPDF_INT16    font_direction_hint;+    HPDF_INT16    index_to_loc_format;+    HPDF_INT16    glyph_data_format;+} HPDF_TTF_FontHeader;+++typedef struct _HPDF_TTF_NameRecord {+    HPDF_UINT16   platform_id;+    HPDF_UINT16   encoding_id;+    HPDF_UINT16   language_id;+    HPDF_UINT16   name_id;+    HPDF_UINT16   length;+    HPDF_UINT16   offset;+}  HPDF_TTF_NameRecord;+++typedef struct _HPDF_TTF_NamingTable {+    HPDF_UINT16           format;+    HPDF_UINT16           count;+    HPDF_UINT16           string_offset;+    HPDF_TTF_NameRecord  *name_records;+}  HPDF_TTF_NamingTable;+++typedef struct _HPDF_TTFontDefAttr_Rec   *HPDF_TTFontDefAttr;++typedef struct _HPDF_TTFontDefAttr_Rec {+    char                base_font[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_BYTE                first_char;+    HPDF_BYTE                last_char;+    char               *char_set;+    char                tag_name[HPDF_TTF_FONT_TAG_LEN + 1];+    char                tag_name2[(HPDF_TTF_FONT_TAG_LEN + 1) * 2];+    HPDF_TTF_FontHeader      header;+    HPDF_TTF_GryphOffsets    glyph_tbl;+    HPDF_UINT16              num_glyphs;+    HPDF_TTF_NamingTable     name_tbl;+    HPDF_TTF_LongHorMetric  *h_metric;+    HPDF_UINT16              num_h_metric;+    HPDF_TTF_OffsetTbl       offset_tbl;+    HPDF_TTF_CmapRange       cmap;+    HPDF_UINT16              fs_type;+    HPDF_BYTE                panose[12];+    HPDF_UINT32              code_page_range1;+    HPDF_UINT32              code_page_range2;++    HPDF_UINT                length1;++    HPDF_BOOL                embedding;+    HPDF_BOOL                is_cidfont;++    HPDF_Stream              stream;+} HPDF_TTFontDefAttr_Rec;++++HPDF_FontDef+HPDF_TTFontDef_New (HPDF_MMgr   mmgr);+++HPDF_FontDef+HPDF_TTFontDef_Load  (HPDF_MMgr     mmgr,+                      HPDF_Stream   stream,+                      HPDF_BOOL     embedding);+++HPDF_FontDef+HPDF_TTFontDef_Load2  (HPDF_MMgr     mmgr,+                       HPDF_Stream   stream,+                       HPDF_UINT     index,+                       HPDF_BOOL     embedding);+++HPDF_UINT16+HPDF_TTFontDef_GetGlyphid  (HPDF_FontDef   fontdef,+                            HPDF_UINT16    unicode);+++HPDF_INT16+HPDF_TTFontDef_GetCharWidth  (HPDF_FontDef   fontdef,+                              HPDF_UINT16    unicode);+++HPDF_INT16+HPDF_TTFontDef_GetGidWidth  (HPDF_FontDef   fontdef,+                             HPDF_UINT16    gid);+++HPDF_STATUS+HPDF_TTFontDef_SaveFontData  (HPDF_FontDef   fontdef,+                              HPDF_Stream    stream);+++HPDF_Box+HPDF_TTFontDef_GetCharBBox  (HPDF_FontDef   fontdef,+                             HPDF_UINT16    unicode);+++void+HPDF_TTFontDef_SetTagName  (HPDF_FontDef   fontdef,+                            char     *tag);+++/*----------------------------------------------------------------------------*/+/*----- HPDF_CIDFontDef  -----------------------------------------------------*/++typedef struct _HPDF_CIDFontDefAttrRec   *HPDF_CIDFontDefAttr;++typedef struct _HPDF_CIDFontDefAttrRec {+    HPDF_List     widths;+    HPDF_INT16    DW;+    HPDF_INT16    DW2[2];+} HPDF_CIDFontDefAttr_Rec;+++HPDF_FontDef+HPDF_CIDFontDef_New  (HPDF_MMgr               mmgr,+                      char              *name,+                      HPDF_FontDef_InitFunc   init_fn);+++HPDF_STATUS+HPDF_CIDFontDef_AddWidth  (HPDF_FontDef            fontdef,+                           const HPDF_CID_Width   *widths);+++HPDF_INT16+HPDF_CIDFontDef_GetCIDWidth  (HPDF_FontDef  fontdef,+                              HPDF_UINT16   cid);++++HPDF_STATUS+HPDF_CIDFontDef_ChangeStyle   (HPDF_FontDef    fontdef,+                               HPDF_BOOL       bold,+                               HPDF_BOOL       italic);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_FONTDEF_H */+
+ haru/hpdf_fontdef_base14.c view
@@ -0,0 +1,4506 @@+/*+ * << Haru Free PDF Library 2.0.1 >> -- HPDF_FontDef_base14.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.07.25 modified.+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_fontdef.h"++static const HPDF_CharData CHAR_DATA_COURIER[316] = {+    {32, 0x0020, 600},+    {33, 0x0021, 600},+    {34, 0x0022, 600},+    {35, 0x0023, 600},+    {36, 0x0024, 600},+    {37, 0x0025, 600},+    {38, 0x0026, 600},+    {39, 0x2019, 600},+    {40, 0x0028, 600},+    {41, 0x0029, 600},+    {42, 0x002A, 600},+    {43, 0x002B, 600},+    {44, 0x002C, 600},+    {45, 0x002D, 600},+    {46, 0x002E, 600},+    {47, 0x002F, 600},+    {48, 0x0030, 600},+    {49, 0x0031, 600},+    {50, 0x0032, 600},+    {51, 0x0033, 600},+    {52, 0x0034, 600},+    {53, 0x0035, 600},+    {54, 0x0036, 600},+    {55, 0x0037, 600},+    {56, 0x0038, 600},+    {57, 0x0039, 600},+    {58, 0x003A, 600},+    {59, 0x003B, 600},+    {60, 0x003C, 600},+    {61, 0x003D, 600},+    {62, 0x003E, 600},+    {63, 0x003F, 600},+    {64, 0x0040, 600},+    {65, 0x0041, 600},+    {66, 0x0042, 600},+    {67, 0x0043, 600},+    {68, 0x0044, 600},+    {69, 0x0045, 600},+    {70, 0x0046, 600},+    {71, 0x0047, 600},+    {72, 0x0048, 600},+    {73, 0x0049, 600},+    {74, 0x004A, 600},+    {75, 0x004B, 600},+    {76, 0x004C, 600},+    {77, 0x004D, 600},+    {78, 0x004E, 600},+    {79, 0x004F, 600},+    {80, 0x0050, 600},+    {81, 0x0051, 600},+    {82, 0x0052, 600},+    {83, 0x0053, 600},+    {84, 0x0054, 600},+    {85, 0x0055, 600},+    {86, 0x0056, 600},+    {87, 0x0057, 600},+    {88, 0x0058, 600},+    {89, 0x0059, 600},+    {90, 0x005A, 600},+    {91, 0x005B, 600},+    {92, 0x005C, 600},+    {93, 0x005D, 600},+    {94, 0x005E, 600},+    {95, 0x005F, 600},+    {96, 0x2018, 600},+    {97, 0x0061, 600},+    {98, 0x0062, 600},+    {99, 0x0063, 600},+    {100, 0x0064, 600},+    {101, 0x0065, 600},+    {102, 0x0066, 600},+    {103, 0x0067, 600},+    {104, 0x0068, 600},+    {105, 0x0069, 600},+    {106, 0x006A, 600},+    {107, 0x006B, 600},+    {108, 0x006C, 600},+    {109, 0x006D, 600},+    {110, 0x006E, 600},+    {111, 0x006F, 600},+    {112, 0x0070, 600},+    {113, 0x0071, 600},+    {114, 0x0072, 600},+    {115, 0x0073, 600},+    {116, 0x0074, 600},+    {117, 0x0075, 600},+    {118, 0x0076, 600},+    {119, 0x0077, 600},+    {120, 0x0078, 600},+    {121, 0x0079, 600},+    {122, 0x007A, 600},+    {123, 0x007B, 600},+    {124, 0x007C, 600},+    {125, 0x007D, 600},+    {126, 0x007E, 600},+    {161, 0x00A1, 600},+    {162, 0x00A2, 600},+    {163, 0x00A3, 600},+    {164, 0x2044, 600},+    {165, 0x00A5, 600},+    {166, 0x0192, 600},+    {167, 0x00A7, 600},+    {168, 0x00A4, 600},+    {169, 0x0027, 600},+    {170, 0x201C, 600},+    {171, 0x00AB, 600},+    {172, 0x2039, 600},+    {173, 0x203A, 600},+    {174, 0xFB01, 600},+    {175, 0xFB02, 600},+    {177, 0x2013, 600},+    {178, 0x2020, 600},+    {179, 0x2021, 600},+    {180, 0x00B7, 600},+    {182, 0x00B6, 600},+    {183, 0x2022, 600},+    {184, 0x201A, 600},+    {185, 0x201E, 600},+    {186, 0x201D, 600},+    {187, 0x00BB, 600},+    {188, 0x2026, 600},+    {189, 0x2030, 600},+    {191, 0x00BF, 600},+    {193, 0x0060, 600},+    {194, 0x00B4, 600},+    {195, 0x02C6, 600},+    {196, 0x02DC, 600},+    {197, 0x00AF, 600},+    {198, 0x02D8, 600},+    {199, 0x02D9, 600},+    {200, 0x00A8, 600},+    {202, 0x02DA, 600},+    {203, 0x00B8, 600},+    {205, 0x02DD, 600},+    {206, 0x02DB, 600},+    {207, 0x02C7, 600},+    {208, 0x2014, 600},+    {225, 0x00C6, 600},+    {227, 0x00AA, 600},+    {232, 0x0141, 600},+    {233, 0x00D8, 600},+    {234, 0x0152, 600},+    {235, 0x00BA, 600},+    {241, 0x00E6, 600},+    {245, 0x0131, 600},+    {248, 0x0142, 600},+    {249, 0x00F8, 600},+    {250, 0x0153, 600},+    {251, 0x00DF, 600},+    {-1, 0x00CF, 600},+    {-1, 0x00E9, 600},+    {-1, 0x0103, 600},+    {-1, 0x0171, 600},+    {-1, 0x011B, 600},+    {-1, 0x0178, 600},+    {-1, 0x00F7, 600},+    {-1, 0x00DD, 600},+    {-1, 0x00C2, 600},+    {-1, 0x00E1, 600},+    {-1, 0x00DB, 600},+    {-1, 0x00FD, 600},+    {-1, 0x0219, 600},+    {-1, 0x00EA, 600},+    {-1, 0x016E, 600},+    {-1, 0x00DC, 600},+    {-1, 0x0105, 600},+    {-1, 0x00DA, 600},+    {-1, 0x0173, 600},+    {-1, 0x00CB, 600},+    {-1, 0x0110, 600},+    {-1, 0xF6C3, 600},+    {-1, 0x00A9, 600},+    {-1, 0x0112, 600},+    {-1, 0x010D, 600},+    {-1, 0x00E5, 600},+    {-1, 0x0145, 600},+    {-1, 0x013A, 600},+    {-1, 0x00E0, 600},+    {-1, 0x0162, 600},+    {-1, 0x0106, 600},+    {-1, 0x00E3, 600},+    {-1, 0x0116, 600},+    {-1, 0x0161, 600},+    {-1, 0x015F, 600},+    {-1, 0x00ED, 600},+    {-1, 0x25CA, 600},+    {-1, 0x0158, 600},+    {-1, 0x0122, 600},+    {-1, 0x00FB, 600},+    {-1, 0x00E2, 600},+    {-1, 0x0100, 600},+    {-1, 0x0159, 600},+    {-1, 0x00E7, 600},+    {-1, 0x017B, 600},+    {-1, 0x00DE, 600},+    {-1, 0x014C, 600},+    {-1, 0x0154, 600},+    {-1, 0x015A, 600},+    {-1, 0x010F, 600},+    {-1, 0x016A, 600},+    {-1, 0x016F, 600},+    {-1, 0x00B3, 600},+    {-1, 0x00D2, 600},+    {-1, 0x00C0, 600},+    {-1, 0x0102, 600},+    {-1, 0x00D7, 600},+    {-1, 0x00FA, 600},+    {-1, 0x0164, 600},+    {-1, 0x2202, 600},+    {-1, 0x00FF, 600},+    {-1, 0x0143, 600},+    {-1, 0x00EE, 600},+    {-1, 0x00CA, 600},+    {-1, 0x00E4, 600},+    {-1, 0x00EB, 600},+    {-1, 0x0107, 600},+    {-1, 0x0144, 600},+    {-1, 0x016B, 600},+    {-1, 0x0147, 600},+    {-1, 0x00CD, 600},+    {-1, 0x00B1, 600},+    {-1, 0x00A6, 600},+    {-1, 0x00AE, 600},+    {-1, 0x011E, 600},+    {-1, 0x0130, 600},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 600},+    {-1, 0x0155, 600},+    {-1, 0x014D, 600},+    {-1, 0x0179, 600},+    {-1, 0x017D, 600},+    {-1, 0x2265, 600},+    {-1, 0x00D0, 600},+    {-1, 0x00C7, 600},+    {-1, 0x013C, 600},+    {-1, 0x0165, 600},+    {-1, 0x0119, 600},+    {-1, 0x0172, 600},+    {-1, 0x00C1, 600},+    {-1, 0x00C4, 600},+    {-1, 0x00E8, 600},+    {-1, 0x017A, 600},+    {-1, 0x012F, 600},+    {-1, 0x00D3, 600},+    {-1, 0x00F3, 600},+    {-1, 0x0101, 600},+    {-1, 0x015B, 600},+    {-1, 0x00EF, 600},+    {-1, 0x00D4, 600},+    {-1, 0x00D9, 600},+    {-1, 0x0394, 600},+    {-1, 0x00FE, 600},+    {-1, 0x00B2, 600},+    {-1, 0x00D6, 600},+    {-1, 0x00B5, 600},+    {-1, 0x00EC, 600},+    {-1, 0x0151, 600},+    {-1, 0x0118, 600},+    {-1, 0x0111, 600},+    {-1, 0x00BE, 600},+    {-1, 0x015E, 600},+    {-1, 0x013E, 600},+    {-1, 0x0136, 600},+    {-1, 0x0139, 600},+    {-1, 0x2122, 600},+    {-1, 0x0117, 600},+    {-1, 0x00CC, 600},+    {-1, 0x012A, 600},+    {-1, 0x013D, 600},+    {-1, 0x00BD, 600},+    {-1, 0x2264, 600},+    {-1, 0x00F4, 600},+    {-1, 0x00F1, 600},+    {-1, 0x0170, 600},+    {-1, 0x00C9, 600},+    {-1, 0x0113, 600},+    {-1, 0x011F, 600},+    {-1, 0x00BC, 600},+    {-1, 0x0160, 600},+    {-1, 0x0218, 600},+    {-1, 0x0150, 600},+    {-1, 0x00B0, 600},+    {-1, 0x00F2, 600},+    {-1, 0x010C, 600},+    {-1, 0x00F9, 600},+    {-1, 0x221A, 600},+    {-1, 0x010E, 600},+    {-1, 0x0157, 600},+    {-1, 0x00D1, 600},+    {-1, 0x00F5, 600},+    {-1, 0x0156, 600},+    {-1, 0x013B, 600},+    {-1, 0x00C3, 600},+    {-1, 0x0104, 600},+    {-1, 0x00C5, 600},+    {-1, 0x00D5, 600},+    {-1, 0x017C, 600},+    {-1, 0x011A, 600},+    {-1, 0x012E, 600},+    {-1, 0x0137, 600},+    {-1, 0x2212, 600},+    {-1, 0x00CE, 600},+    {-1, 0x0148, 600},+    {-1, 0x0163, 600},+    {-1, 0x00AC, 600},+    {-1, 0x00F6, 600},+    {-1, 0x00FC, 600},+    {-1, 0x2260, 600},+    {-1, 0x0123, 600},+    {-1, 0x00F0, 600},+    {-1, 0x017E, 600},+    {-1, 0x0146, 600},+    {-1, 0x00B9, 600},+    {-1, 0x012B, 600},+    {-1, 0x20AC, 600},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_COURIER_BOLD[316] = {+    {32, 0x0020, 600},+    {33, 0x0021, 600},+    {34, 0x0022, 600},+    {35, 0x0023, 600},+    {36, 0x0024, 600},+    {37, 0x0025, 600},+    {38, 0x0026, 600},+    {39, 0x2019, 600},+    {40, 0x0028, 600},+    {41, 0x0029, 600},+    {42, 0x002A, 600},+    {43, 0x002B, 600},+    {44, 0x002C, 600},+    {45, 0x002D, 600},+    {46, 0x002E, 600},+    {47, 0x002F, 600},+    {48, 0x0030, 600},+    {49, 0x0031, 600},+    {50, 0x0032, 600},+    {51, 0x0033, 600},+    {52, 0x0034, 600},+    {53, 0x0035, 600},+    {54, 0x0036, 600},+    {55, 0x0037, 600},+    {56, 0x0038, 600},+    {57, 0x0039, 600},+    {58, 0x003A, 600},+    {59, 0x003B, 600},+    {60, 0x003C, 600},+    {61, 0x003D, 600},+    {62, 0x003E, 600},+    {63, 0x003F, 600},+    {64, 0x0040, 600},+    {65, 0x0041, 600},+    {66, 0x0042, 600},+    {67, 0x0043, 600},+    {68, 0x0044, 600},+    {69, 0x0045, 600},+    {70, 0x0046, 600},+    {71, 0x0047, 600},+    {72, 0x0048, 600},+    {73, 0x0049, 600},+    {74, 0x004A, 600},+    {75, 0x004B, 600},+    {76, 0x004C, 600},+    {77, 0x004D, 600},+    {78, 0x004E, 600},+    {79, 0x004F, 600},+    {80, 0x0050, 600},+    {81, 0x0051, 600},+    {82, 0x0052, 600},+    {83, 0x0053, 600},+    {84, 0x0054, 600},+    {85, 0x0055, 600},+    {86, 0x0056, 600},+    {87, 0x0057, 600},+    {88, 0x0058, 600},+    {89, 0x0059, 600},+    {90, 0x005A, 600},+    {91, 0x005B, 600},+    {92, 0x005C, 600},+    {93, 0x005D, 600},+    {94, 0x005E, 600},+    {95, 0x005F, 600},+    {96, 0x2018, 600},+    {97, 0x0061, 600},+    {98, 0x0062, 600},+    {99, 0x0063, 600},+    {100, 0x0064, 600},+    {101, 0x0065, 600},+    {102, 0x0066, 600},+    {103, 0x0067, 600},+    {104, 0x0068, 600},+    {105, 0x0069, 600},+    {106, 0x006A, 600},+    {107, 0x006B, 600},+    {108, 0x006C, 600},+    {109, 0x006D, 600},+    {110, 0x006E, 600},+    {111, 0x006F, 600},+    {112, 0x0070, 600},+    {113, 0x0071, 600},+    {114, 0x0072, 600},+    {115, 0x0073, 600},+    {116, 0x0074, 600},+    {117, 0x0075, 600},+    {118, 0x0076, 600},+    {119, 0x0077, 600},+    {120, 0x0078, 600},+    {121, 0x0079, 600},+    {122, 0x007A, 600},+    {123, 0x007B, 600},+    {124, 0x007C, 600},+    {125, 0x007D, 600},+    {126, 0x007E, 600},+    {161, 0x00A1, 600},+    {162, 0x00A2, 600},+    {163, 0x00A3, 600},+    {164, 0x2044, 600},+    {165, 0x00A5, 600},+    {166, 0x0192, 600},+    {167, 0x00A7, 600},+    {168, 0x00A4, 600},+    {169, 0x0027, 600},+    {170, 0x201C, 600},+    {171, 0x00AB, 600},+    {172, 0x2039, 600},+    {173, 0x203A, 600},+    {174, 0xFB01, 600},+    {175, 0xFB02, 600},+    {177, 0x2013, 600},+    {178, 0x2020, 600},+    {179, 0x2021, 600},+    {180, 0x00B7, 600},+    {182, 0x00B6, 600},+    {183, 0x2022, 600},+    {184, 0x201A, 600},+    {185, 0x201E, 600},+    {186, 0x201D, 600},+    {187, 0x00BB, 600},+    {188, 0x2026, 600},+    {189, 0x2030, 600},+    {191, 0x00BF, 600},+    {193, 0x0060, 600},+    {194, 0x00B4, 600},+    {195, 0x02C6, 600},+    {196, 0x02DC, 600},+    {197, 0x00AF, 600},+    {198, 0x02D8, 600},+    {199, 0x02D9, 600},+    {200, 0x00A8, 600},+    {202, 0x02DA, 600},+    {203, 0x00B8, 600},+    {205, 0x02DD, 600},+    {206, 0x02DB, 600},+    {207, 0x02C7, 600},+    {208, 0x2014, 600},+    {225, 0x00C6, 600},+    {227, 0x00AA, 600},+    {232, 0x0141, 600},+    {233, 0x00D8, 600},+    {234, 0x0152, 600},+    {235, 0x00BA, 600},+    {241, 0x00E6, 600},+    {245, 0x0131, 600},+    {248, 0x0142, 600},+    {249, 0x00F8, 600},+    {250, 0x0153, 600},+    {251, 0x00DF, 600},+    {-1, 0x00CF, 600},+    {-1, 0x00E9, 600},+    {-1, 0x0103, 600},+    {-1, 0x0171, 600},+    {-1, 0x011B, 600},+    {-1, 0x0178, 600},+    {-1, 0x00F7, 600},+    {-1, 0x00DD, 600},+    {-1, 0x00C2, 600},+    {-1, 0x00E1, 600},+    {-1, 0x00DB, 600},+    {-1, 0x00FD, 600},+    {-1, 0x0219, 600},+    {-1, 0x00EA, 600},+    {-1, 0x016E, 600},+    {-1, 0x00DC, 600},+    {-1, 0x0105, 600},+    {-1, 0x00DA, 600},+    {-1, 0x0173, 600},+    {-1, 0x00CB, 600},+    {-1, 0x0110, 600},+    {-1, 0xF6C3, 600},+    {-1, 0x00A9, 600},+    {-1, 0x0112, 600},+    {-1, 0x010D, 600},+    {-1, 0x00E5, 600},+    {-1, 0x0145, 600},+    {-1, 0x013A, 600},+    {-1, 0x00E0, 600},+    {-1, 0x0162, 600},+    {-1, 0x0106, 600},+    {-1, 0x00E3, 600},+    {-1, 0x0116, 600},+    {-1, 0x0161, 600},+    {-1, 0x015F, 600},+    {-1, 0x00ED, 600},+    {-1, 0x25CA, 600},+    {-1, 0x0158, 600},+    {-1, 0x0122, 600},+    {-1, 0x00FB, 600},+    {-1, 0x00E2, 600},+    {-1, 0x0100, 600},+    {-1, 0x0159, 600},+    {-1, 0x00E7, 600},+    {-1, 0x017B, 600},+    {-1, 0x00DE, 600},+    {-1, 0x014C, 600},+    {-1, 0x0154, 600},+    {-1, 0x015A, 600},+    {-1, 0x010F, 600},+    {-1, 0x016A, 600},+    {-1, 0x016F, 600},+    {-1, 0x00B3, 600},+    {-1, 0x00D2, 600},+    {-1, 0x00C0, 600},+    {-1, 0x0102, 600},+    {-1, 0x00D7, 600},+    {-1, 0x00FA, 600},+    {-1, 0x0164, 600},+    {-1, 0x2202, 600},+    {-1, 0x00FF, 600},+    {-1, 0x0143, 600},+    {-1, 0x00EE, 600},+    {-1, 0x00CA, 600},+    {-1, 0x00E4, 600},+    {-1, 0x00EB, 600},+    {-1, 0x0107, 600},+    {-1, 0x0144, 600},+    {-1, 0x016B, 600},+    {-1, 0x0147, 600},+    {-1, 0x00CD, 600},+    {-1, 0x00B1, 600},+    {-1, 0x00A6, 600},+    {-1, 0x00AE, 600},+    {-1, 0x011E, 600},+    {-1, 0x0130, 600},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 600},+    {-1, 0x0155, 600},+    {-1, 0x014D, 600},+    {-1, 0x0179, 600},+    {-1, 0x017D, 600},+    {-1, 0x2265, 600},+    {-1, 0x00D0, 600},+    {-1, 0x00C7, 600},+    {-1, 0x013C, 600},+    {-1, 0x0165, 600},+    {-1, 0x0119, 600},+    {-1, 0x0172, 600},+    {-1, 0x00C1, 600},+    {-1, 0x00C4, 600},+    {-1, 0x00E8, 600},+    {-1, 0x017A, 600},+    {-1, 0x012F, 600},+    {-1, 0x00D3, 600},+    {-1, 0x00F3, 600},+    {-1, 0x0101, 600},+    {-1, 0x015B, 600},+    {-1, 0x00EF, 600},+    {-1, 0x00D4, 600},+    {-1, 0x00D9, 600},+    {-1, 0x0394, 600},+    {-1, 0x00FE, 600},+    {-1, 0x00B2, 600},+    {-1, 0x00D6, 600},+    {-1, 0x00B5, 600},+    {-1, 0x00EC, 600},+    {-1, 0x0151, 600},+    {-1, 0x0118, 600},+    {-1, 0x0111, 600},+    {-1, 0x00BE, 600},+    {-1, 0x015E, 600},+    {-1, 0x013E, 600},+    {-1, 0x0136, 600},+    {-1, 0x0139, 600},+    {-1, 0x2122, 600},+    {-1, 0x0117, 600},+    {-1, 0x00CC, 600},+    {-1, 0x012A, 600},+    {-1, 0x013D, 600},+    {-1, 0x00BD, 600},+    {-1, 0x2264, 600},+    {-1, 0x00F4, 600},+    {-1, 0x00F1, 600},+    {-1, 0x0170, 600},+    {-1, 0x00C9, 600},+    {-1, 0x0113, 600},+    {-1, 0x011F, 600},+    {-1, 0x00BC, 600},+    {-1, 0x0160, 600},+    {-1, 0x0218, 600},+    {-1, 0x0150, 600},+    {-1, 0x00B0, 600},+    {-1, 0x00F2, 600},+    {-1, 0x010C, 600},+    {-1, 0x00F9, 600},+    {-1, 0x221A, 600},+    {-1, 0x010E, 600},+    {-1, 0x0157, 600},+    {-1, 0x00D1, 600},+    {-1, 0x00F5, 600},+    {-1, 0x0156, 600},+    {-1, 0x013B, 600},+    {-1, 0x00C3, 600},+    {-1, 0x0104, 600},+    {-1, 0x00C5, 600},+    {-1, 0x00D5, 600},+    {-1, 0x017C, 600},+    {-1, 0x011A, 600},+    {-1, 0x012E, 600},+    {-1, 0x0137, 600},+    {-1, 0x2212, 600},+    {-1, 0x00CE, 600},+    {-1, 0x0148, 600},+    {-1, 0x0163, 600},+    {-1, 0x00AC, 600},+    {-1, 0x00F6, 600},+    {-1, 0x00FC, 600},+    {-1, 0x2260, 600},+    {-1, 0x0123, 600},+    {-1, 0x00F0, 600},+    {-1, 0x017E, 600},+    {-1, 0x0146, 600},+    {-1, 0x00B9, 600},+    {-1, 0x012B, 600},+    {-1, 0x20AC, 600},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_COURIER_BOLD_OBLIQUE[316] = {+    {32, 0x0020, 600},+    {33, 0x0021, 600},+    {34, 0x0022, 600},+    {35, 0x0023, 600},+    {36, 0x0024, 600},+    {37, 0x0025, 600},+    {38, 0x0026, 600},+    {39, 0x2019, 600},+    {40, 0x0028, 600},+    {41, 0x0029, 600},+    {42, 0x002A, 600},+    {43, 0x002B, 600},+    {44, 0x002C, 600},+    {45, 0x002D, 600},+    {46, 0x002E, 600},+    {47, 0x002F, 600},+    {48, 0x0030, 600},+    {49, 0x0031, 600},+    {50, 0x0032, 600},+    {51, 0x0033, 600},+    {52, 0x0034, 600},+    {53, 0x0035, 600},+    {54, 0x0036, 600},+    {55, 0x0037, 600},+    {56, 0x0038, 600},+    {57, 0x0039, 600},+    {58, 0x003A, 600},+    {59, 0x003B, 600},+    {60, 0x003C, 600},+    {61, 0x003D, 600},+    {62, 0x003E, 600},+    {63, 0x003F, 600},+    {64, 0x0040, 600},+    {65, 0x0041, 600},+    {66, 0x0042, 600},+    {67, 0x0043, 600},+    {68, 0x0044, 600},+    {69, 0x0045, 600},+    {70, 0x0046, 600},+    {71, 0x0047, 600},+    {72, 0x0048, 600},+    {73, 0x0049, 600},+    {74, 0x004A, 600},+    {75, 0x004B, 600},+    {76, 0x004C, 600},+    {77, 0x004D, 600},+    {78, 0x004E, 600},+    {79, 0x004F, 600},+    {80, 0x0050, 600},+    {81, 0x0051, 600},+    {82, 0x0052, 600},+    {83, 0x0053, 600},+    {84, 0x0054, 600},+    {85, 0x0055, 600},+    {86, 0x0056, 600},+    {87, 0x0057, 600},+    {88, 0x0058, 600},+    {89, 0x0059, 600},+    {90, 0x005A, 600},+    {91, 0x005B, 600},+    {92, 0x005C, 600},+    {93, 0x005D, 600},+    {94, 0x005E, 600},+    {95, 0x005F, 600},+    {96, 0x2018, 600},+    {97, 0x0061, 600},+    {98, 0x0062, 600},+    {99, 0x0063, 600},+    {100, 0x0064, 600},+    {101, 0x0065, 600},+    {102, 0x0066, 600},+    {103, 0x0067, 600},+    {104, 0x0068, 600},+    {105, 0x0069, 600},+    {106, 0x006A, 600},+    {107, 0x006B, 600},+    {108, 0x006C, 600},+    {109, 0x006D, 600},+    {110, 0x006E, 600},+    {111, 0x006F, 600},+    {112, 0x0070, 600},+    {113, 0x0071, 600},+    {114, 0x0072, 600},+    {115, 0x0073, 600},+    {116, 0x0074, 600},+    {117, 0x0075, 600},+    {118, 0x0076, 600},+    {119, 0x0077, 600},+    {120, 0x0078, 600},+    {121, 0x0079, 600},+    {122, 0x007A, 600},+    {123, 0x007B, 600},+    {124, 0x007C, 600},+    {125, 0x007D, 600},+    {126, 0x007E, 600},+    {161, 0x00A1, 600},+    {162, 0x00A2, 600},+    {163, 0x00A3, 600},+    {164, 0x2044, 600},+    {165, 0x00A5, 600},+    {166, 0x0192, 600},+    {167, 0x00A7, 600},+    {168, 0x00A4, 600},+    {169, 0x0027, 600},+    {170, 0x201C, 600},+    {171, 0x00AB, 600},+    {172, 0x2039, 600},+    {173, 0x203A, 600},+    {174, 0xFB01, 600},+    {175, 0xFB02, 600},+    {177, 0x2013, 600},+    {178, 0x2020, 600},+    {179, 0x2021, 600},+    {180, 0x00B7, 600},+    {182, 0x00B6, 600},+    {183, 0x2022, 600},+    {184, 0x201A, 600},+    {185, 0x201E, 600},+    {186, 0x201D, 600},+    {187, 0x00BB, 600},+    {188, 0x2026, 600},+    {189, 0x2030, 600},+    {191, 0x00BF, 600},+    {193, 0x0060, 600},+    {194, 0x00B4, 600},+    {195, 0x02C6, 600},+    {196, 0x02DC, 600},+    {197, 0x00AF, 600},+    {198, 0x02D8, 600},+    {199, 0x02D9, 600},+    {200, 0x00A8, 600},+    {202, 0x02DA, 600},+    {203, 0x00B8, 600},+    {205, 0x02DD, 600},+    {206, 0x02DB, 600},+    {207, 0x02C7, 600},+    {208, 0x2014, 600},+    {225, 0x00C6, 600},+    {227, 0x00AA, 600},+    {232, 0x0141, 600},+    {233, 0x00D8, 600},+    {234, 0x0152, 600},+    {235, 0x00BA, 600},+    {241, 0x00E6, 600},+    {245, 0x0131, 600},+    {248, 0x0142, 600},+    {249, 0x00F8, 600},+    {250, 0x0153, 600},+    {251, 0x00DF, 600},+    {-1, 0x00CF, 600},+    {-1, 0x00E9, 600},+    {-1, 0x0103, 600},+    {-1, 0x0171, 600},+    {-1, 0x011B, 600},+    {-1, 0x0178, 600},+    {-1, 0x00F7, 600},+    {-1, 0x00DD, 600},+    {-1, 0x00C2, 600},+    {-1, 0x00E1, 600},+    {-1, 0x00DB, 600},+    {-1, 0x00FD, 600},+    {-1, 0x0219, 600},+    {-1, 0x00EA, 600},+    {-1, 0x016E, 600},+    {-1, 0x00DC, 600},+    {-1, 0x0105, 600},+    {-1, 0x00DA, 600},+    {-1, 0x0173, 600},+    {-1, 0x00CB, 600},+    {-1, 0x0110, 600},+    {-1, 0xF6C3, 600},+    {-1, 0x00A9, 600},+    {-1, 0x0112, 600},+    {-1, 0x010D, 600},+    {-1, 0x00E5, 600},+    {-1, 0x0145, 600},+    {-1, 0x013A, 600},+    {-1, 0x00E0, 600},+    {-1, 0x0162, 600},+    {-1, 0x0106, 600},+    {-1, 0x00E3, 600},+    {-1, 0x0116, 600},+    {-1, 0x0161, 600},+    {-1, 0x015F, 600},+    {-1, 0x00ED, 600},+    {-1, 0x25CA, 600},+    {-1, 0x0158, 600},+    {-1, 0x0122, 600},+    {-1, 0x00FB, 600},+    {-1, 0x00E2, 600},+    {-1, 0x0100, 600},+    {-1, 0x0159, 600},+    {-1, 0x00E7, 600},+    {-1, 0x017B, 600},+    {-1, 0x00DE, 600},+    {-1, 0x014C, 600},+    {-1, 0x0154, 600},+    {-1, 0x015A, 600},+    {-1, 0x010F, 600},+    {-1, 0x016A, 600},+    {-1, 0x016F, 600},+    {-1, 0x00B3, 600},+    {-1, 0x00D2, 600},+    {-1, 0x00C0, 600},+    {-1, 0x0102, 600},+    {-1, 0x00D7, 600},+    {-1, 0x00FA, 600},+    {-1, 0x0164, 600},+    {-1, 0x2202, 600},+    {-1, 0x00FF, 600},+    {-1, 0x0143, 600},+    {-1, 0x00EE, 600},+    {-1, 0x00CA, 600},+    {-1, 0x00E4, 600},+    {-1, 0x00EB, 600},+    {-1, 0x0107, 600},+    {-1, 0x0144, 600},+    {-1, 0x016B, 600},+    {-1, 0x0147, 600},+    {-1, 0x00CD, 600},+    {-1, 0x00B1, 600},+    {-1, 0x00A6, 600},+    {-1, 0x00AE, 600},+    {-1, 0x011E, 600},+    {-1, 0x0130, 600},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 600},+    {-1, 0x0155, 600},+    {-1, 0x014D, 600},+    {-1, 0x0179, 600},+    {-1, 0x017D, 600},+    {-1, 0x2265, 600},+    {-1, 0x00D0, 600},+    {-1, 0x00C7, 600},+    {-1, 0x013C, 600},+    {-1, 0x0165, 600},+    {-1, 0x0119, 600},+    {-1, 0x0172, 600},+    {-1, 0x00C1, 600},+    {-1, 0x00C4, 600},+    {-1, 0x00E8, 600},+    {-1, 0x017A, 600},+    {-1, 0x012F, 600},+    {-1, 0x00D3, 600},+    {-1, 0x00F3, 600},+    {-1, 0x0101, 600},+    {-1, 0x015B, 600},+    {-1, 0x00EF, 600},+    {-1, 0x00D4, 600},+    {-1, 0x00D9, 600},+    {-1, 0x0394, 600},+    {-1, 0x00FE, 600},+    {-1, 0x00B2, 600},+    {-1, 0x00D6, 600},+    {-1, 0x00B5, 600},+    {-1, 0x00EC, 600},+    {-1, 0x0151, 600},+    {-1, 0x0118, 600},+    {-1, 0x0111, 600},+    {-1, 0x00BE, 600},+    {-1, 0x015E, 600},+    {-1, 0x013E, 600},+    {-1, 0x0136, 600},+    {-1, 0x0139, 600},+    {-1, 0x2122, 600},+    {-1, 0x0117, 600},+    {-1, 0x00CC, 600},+    {-1, 0x012A, 600},+    {-1, 0x013D, 600},+    {-1, 0x00BD, 600},+    {-1, 0x2264, 600},+    {-1, 0x00F4, 600},+    {-1, 0x00F1, 600},+    {-1, 0x0170, 600},+    {-1, 0x00C9, 600},+    {-1, 0x0113, 600},+    {-1, 0x011F, 600},+    {-1, 0x00BC, 600},+    {-1, 0x0160, 600},+    {-1, 0x0218, 600},+    {-1, 0x0150, 600},+    {-1, 0x00B0, 600},+    {-1, 0x00F2, 600},+    {-1, 0x010C, 600},+    {-1, 0x00F9, 600},+    {-1, 0x221A, 600},+    {-1, 0x010E, 600},+    {-1, 0x0157, 600},+    {-1, 0x00D1, 600},+    {-1, 0x00F5, 600},+    {-1, 0x0156, 600},+    {-1, 0x013B, 600},+    {-1, 0x00C3, 600},+    {-1, 0x0104, 600},+    {-1, 0x00C5, 600},+    {-1, 0x00D5, 600},+    {-1, 0x017C, 600},+    {-1, 0x011A, 600},+    {-1, 0x012E, 600},+    {-1, 0x0137, 600},+    {-1, 0x2212, 600},+    {-1, 0x00CE, 600},+    {-1, 0x0148, 600},+    {-1, 0x0163, 600},+    {-1, 0x00AC, 600},+    {-1, 0x00F6, 600},+    {-1, 0x00FC, 600},+    {-1, 0x2260, 600},+    {-1, 0x0123, 600},+    {-1, 0x00F0, 600},+    {-1, 0x017E, 600},+    {-1, 0x0146, 600},+    {-1, 0x00B9, 600},+    {-1, 0x012B, 600},+    {-1, 0x20AC, 600},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_COURIER_OBLIQUE[316] = {+    {32, 0x0020, 600},+    {33, 0x0021, 600},+    {34, 0x0022, 600},+    {35, 0x0023, 600},+    {36, 0x0024, 600},+    {37, 0x0025, 600},+    {38, 0x0026, 600},+    {39, 0x2019, 600},+    {40, 0x0028, 600},+    {41, 0x0029, 600},+    {42, 0x002A, 600},+    {43, 0x002B, 600},+    {44, 0x002C, 600},+    {45, 0x002D, 600},+    {46, 0x002E, 600},+    {47, 0x002F, 600},+    {48, 0x0030, 600},+    {49, 0x0031, 600},+    {50, 0x0032, 600},+    {51, 0x0033, 600},+    {52, 0x0034, 600},+    {53, 0x0035, 600},+    {54, 0x0036, 600},+    {55, 0x0037, 600},+    {56, 0x0038, 600},+    {57, 0x0039, 600},+    {58, 0x003A, 600},+    {59, 0x003B, 600},+    {60, 0x003C, 600},+    {61, 0x003D, 600},+    {62, 0x003E, 600},+    {63, 0x003F, 600},+    {64, 0x0040, 600},+    {65, 0x0041, 600},+    {66, 0x0042, 600},+    {67, 0x0043, 600},+    {68, 0x0044, 600},+    {69, 0x0045, 600},+    {70, 0x0046, 600},+    {71, 0x0047, 600},+    {72, 0x0048, 600},+    {73, 0x0049, 600},+    {74, 0x004A, 600},+    {75, 0x004B, 600},+    {76, 0x004C, 600},+    {77, 0x004D, 600},+    {78, 0x004E, 600},+    {79, 0x004F, 600},+    {80, 0x0050, 600},+    {81, 0x0051, 600},+    {82, 0x0052, 600},+    {83, 0x0053, 600},+    {84, 0x0054, 600},+    {85, 0x0055, 600},+    {86, 0x0056, 600},+    {87, 0x0057, 600},+    {88, 0x0058, 600},+    {89, 0x0059, 600},+    {90, 0x005A, 600},+    {91, 0x005B, 600},+    {92, 0x005C, 600},+    {93, 0x005D, 600},+    {94, 0x005E, 600},+    {95, 0x005F, 600},+    {96, 0x2018, 600},+    {97, 0x0061, 600},+    {98, 0x0062, 600},+    {99, 0x0063, 600},+    {100, 0x0064, 600},+    {101, 0x0065, 600},+    {102, 0x0066, 600},+    {103, 0x0067, 600},+    {104, 0x0068, 600},+    {105, 0x0069, 600},+    {106, 0x006A, 600},+    {107, 0x006B, 600},+    {108, 0x006C, 600},+    {109, 0x006D, 600},+    {110, 0x006E, 600},+    {111, 0x006F, 600},+    {112, 0x0070, 600},+    {113, 0x0071, 600},+    {114, 0x0072, 600},+    {115, 0x0073, 600},+    {116, 0x0074, 600},+    {117, 0x0075, 600},+    {118, 0x0076, 600},+    {119, 0x0077, 600},+    {120, 0x0078, 600},+    {121, 0x0079, 600},+    {122, 0x007A, 600},+    {123, 0x007B, 600},+    {124, 0x007C, 600},+    {125, 0x007D, 600},+    {126, 0x007E, 600},+    {161, 0x00A1, 600},+    {162, 0x00A2, 600},+    {163, 0x00A3, 600},+    {164, 0x2044, 600},+    {165, 0x00A5, 600},+    {166, 0x0192, 600},+    {167, 0x00A7, 600},+    {168, 0x00A4, 600},+    {169, 0x0027, 600},+    {170, 0x201C, 600},+    {171, 0x00AB, 600},+    {172, 0x2039, 600},+    {173, 0x203A, 600},+    {174, 0xFB01, 600},+    {175, 0xFB02, 600},+    {177, 0x2013, 600},+    {178, 0x2020, 600},+    {179, 0x2021, 600},+    {180, 0x00B7, 600},+    {182, 0x00B6, 600},+    {183, 0x2022, 600},+    {184, 0x201A, 600},+    {185, 0x201E, 600},+    {186, 0x201D, 600},+    {187, 0x00BB, 600},+    {188, 0x2026, 600},+    {189, 0x2030, 600},+    {191, 0x00BF, 600},+    {193, 0x0060, 600},+    {194, 0x00B4, 600},+    {195, 0x02C6, 600},+    {196, 0x02DC, 600},+    {197, 0x00AF, 600},+    {198, 0x02D8, 600},+    {199, 0x02D9, 600},+    {200, 0x00A8, 600},+    {202, 0x02DA, 600},+    {203, 0x00B8, 600},+    {205, 0x02DD, 600},+    {206, 0x02DB, 600},+    {207, 0x02C7, 600},+    {208, 0x2014, 600},+    {225, 0x00C6, 600},+    {227, 0x00AA, 600},+    {232, 0x0141, 600},+    {233, 0x00D8, 600},+    {234, 0x0152, 600},+    {235, 0x00BA, 600},+    {241, 0x00E6, 600},+    {245, 0x0131, 600},+    {248, 0x0142, 600},+    {249, 0x00F8, 600},+    {250, 0x0153, 600},+    {251, 0x00DF, 600},+    {-1, 0x00CF, 600},+    {-1, 0x00E9, 600},+    {-1, 0x0103, 600},+    {-1, 0x0171, 600},+    {-1, 0x011B, 600},+    {-1, 0x0178, 600},+    {-1, 0x00F7, 600},+    {-1, 0x00DD, 600},+    {-1, 0x00C2, 600},+    {-1, 0x00E1, 600},+    {-1, 0x00DB, 600},+    {-1, 0x00FD, 600},+    {-1, 0x0219, 600},+    {-1, 0x00EA, 600},+    {-1, 0x016E, 600},+    {-1, 0x00DC, 600},+    {-1, 0x0105, 600},+    {-1, 0x00DA, 600},+    {-1, 0x0173, 600},+    {-1, 0x00CB, 600},+    {-1, 0x0110, 600},+    {-1, 0xF6C3, 600},+    {-1, 0x00A9, 600},+    {-1, 0x0112, 600},+    {-1, 0x010D, 600},+    {-1, 0x00E5, 600},+    {-1, 0x0145, 600},+    {-1, 0x013A, 600},+    {-1, 0x00E0, 600},+    {-1, 0x0162, 600},+    {-1, 0x0106, 600},+    {-1, 0x00E3, 600},+    {-1, 0x0116, 600},+    {-1, 0x0161, 600},+    {-1, 0x015F, 600},+    {-1, 0x00ED, 600},+    {-1, 0x25CA, 600},+    {-1, 0x0158, 600},+    {-1, 0x0122, 600},+    {-1, 0x00FB, 600},+    {-1, 0x00E2, 600},+    {-1, 0x0100, 600},+    {-1, 0x0159, 600},+    {-1, 0x00E7, 600},+    {-1, 0x017B, 600},+    {-1, 0x00DE, 600},+    {-1, 0x014C, 600},+    {-1, 0x0154, 600},+    {-1, 0x015A, 600},+    {-1, 0x010F, 600},+    {-1, 0x016A, 600},+    {-1, 0x016F, 600},+    {-1, 0x00B3, 600},+    {-1, 0x00D2, 600},+    {-1, 0x00C0, 600},+    {-1, 0x0102, 600},+    {-1, 0x00D7, 600},+    {-1, 0x00FA, 600},+    {-1, 0x0164, 600},+    {-1, 0x2202, 600},+    {-1, 0x00FF, 600},+    {-1, 0x0143, 600},+    {-1, 0x00EE, 600},+    {-1, 0x00CA, 600},+    {-1, 0x00E4, 600},+    {-1, 0x00EB, 600},+    {-1, 0x0107, 600},+    {-1, 0x0144, 600},+    {-1, 0x016B, 600},+    {-1, 0x0147, 600},+    {-1, 0x00CD, 600},+    {-1, 0x00B1, 600},+    {-1, 0x00A6, 600},+    {-1, 0x00AE, 600},+    {-1, 0x011E, 600},+    {-1, 0x0130, 600},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 600},+    {-1, 0x0155, 600},+    {-1, 0x014D, 600},+    {-1, 0x0179, 600},+    {-1, 0x017D, 600},+    {-1, 0x2265, 600},+    {-1, 0x00D0, 600},+    {-1, 0x00C7, 600},+    {-1, 0x013C, 600},+    {-1, 0x0165, 600},+    {-1, 0x0119, 600},+    {-1, 0x0172, 600},+    {-1, 0x00C1, 600},+    {-1, 0x00C4, 600},+    {-1, 0x00E8, 600},+    {-1, 0x017A, 600},+    {-1, 0x012F, 600},+    {-1, 0x00D3, 600},+    {-1, 0x00F3, 600},+    {-1, 0x0101, 600},+    {-1, 0x015B, 600},+    {-1, 0x00EF, 600},+    {-1, 0x00D4, 600},+    {-1, 0x00D9, 600},+    {-1, 0x0394, 600},+    {-1, 0x00FE, 600},+    {-1, 0x00B2, 600},+    {-1, 0x00D6, 600},+    {-1, 0x00B5, 600},+    {-1, 0x00EC, 600},+    {-1, 0x0151, 600},+    {-1, 0x0118, 600},+    {-1, 0x0111, 600},+    {-1, 0x00BE, 600},+    {-1, 0x015E, 600},+    {-1, 0x013E, 600},+    {-1, 0x0136, 600},+    {-1, 0x0139, 600},+    {-1, 0x2122, 600},+    {-1, 0x0117, 600},+    {-1, 0x00CC, 600},+    {-1, 0x012A, 600},+    {-1, 0x013D, 600},+    {-1, 0x00BD, 600},+    {-1, 0x2264, 600},+    {-1, 0x00F4, 600},+    {-1, 0x00F1, 600},+    {-1, 0x0170, 600},+    {-1, 0x00C9, 600},+    {-1, 0x0113, 600},+    {-1, 0x011F, 600},+    {-1, 0x00BC, 600},+    {-1, 0x0160, 600},+    {-1, 0x0218, 600},+    {-1, 0x0150, 600},+    {-1, 0x00B0, 600},+    {-1, 0x00F2, 600},+    {-1, 0x010C, 600},+    {-1, 0x00F9, 600},+    {-1, 0x221A, 600},+    {-1, 0x010E, 600},+    {-1, 0x0157, 600},+    {-1, 0x00D1, 600},+    {-1, 0x00F5, 600},+    {-1, 0x0156, 600},+    {-1, 0x013B, 600},+    {-1, 0x00C3, 600},+    {-1, 0x0104, 600},+    {-1, 0x00C5, 600},+    {-1, 0x00D5, 600},+    {-1, 0x017C, 600},+    {-1, 0x011A, 600},+    {-1, 0x012E, 600},+    {-1, 0x0137, 600},+    {-1, 0x2212, 600},+    {-1, 0x00CE, 600},+    {-1, 0x0148, 600},+    {-1, 0x0163, 600},+    {-1, 0x00AC, 600},+    {-1, 0x00F6, 600},+    {-1, 0x00FC, 600},+    {-1, 0x2260, 600},+    {-1, 0x0123, 600},+    {-1, 0x00F0, 600},+    {-1, 0x017E, 600},+    {-1, 0x0146, 600},+    {-1, 0x00B9, 600},+    {-1, 0x012B, 600},+    {-1, 0x20AC, 600},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_HELVETICA[316] = {+    {32, 0x0020, 278},+    {33, 0x0021, 278},+    {34, 0x0022, 355},+    {35, 0x0023, 556},+    {36, 0x0024, 556},+    {37, 0x0025, 889},+    {38, 0x0026, 667},+    {39, 0x2019, 222},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 389},+    {43, 0x002B, 584},+    {44, 0x002C, 278},+    {45, 0x002D, 333},+    {46, 0x002E, 278},+    {47, 0x002F, 278},+    {48, 0x0030, 556},+    {49, 0x0031, 556},+    {50, 0x0032, 556},+    {51, 0x0033, 556},+    {52, 0x0034, 556},+    {53, 0x0035, 556},+    {54, 0x0036, 556},+    {55, 0x0037, 556},+    {56, 0x0038, 556},+    {57, 0x0039, 556},+    {58, 0x003A, 278},+    {59, 0x003B, 278},+    {60, 0x003C, 584},+    {61, 0x003D, 584},+    {62, 0x003E, 584},+    {63, 0x003F, 556},+    {64, 0x0040, 1015},+    {65, 0x0041, 667},+    {66, 0x0042, 667},+    {67, 0x0043, 722},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 611},+    {71, 0x0047, 778},+    {72, 0x0048, 722},+    {73, 0x0049, 278},+    {74, 0x004A, 500},+    {75, 0x004B, 667},+    {76, 0x004C, 556},+    {77, 0x004D, 833},+    {78, 0x004E, 722},+    {79, 0x004F, 778},+    {80, 0x0050, 667},+    {81, 0x0051, 778},+    {82, 0x0052, 722},+    {83, 0x0053, 667},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 667},+    {87, 0x0057, 944},+    {88, 0x0058, 667},+    {89, 0x0059, 667},+    {90, 0x005A, 611},+    {91, 0x005B, 278},+    {92, 0x005C, 278},+    {93, 0x005D, 278},+    {94, 0x005E, 469},+    {95, 0x005F, 556},+    {96, 0x2018, 222},+    {97, 0x0061, 556},+    {98, 0x0062, 556},+    {99, 0x0063, 500},+    {100, 0x0064, 556},+    {101, 0x0065, 556},+    {102, 0x0066, 278},+    {103, 0x0067, 556},+    {104, 0x0068, 556},+    {105, 0x0069, 222},+    {106, 0x006A, 222},+    {107, 0x006B, 500},+    {108, 0x006C, 222},+    {109, 0x006D, 833},+    {110, 0x006E, 556},+    {111, 0x006F, 556},+    {112, 0x0070, 556},+    {113, 0x0071, 556},+    {114, 0x0072, 333},+    {115, 0x0073, 500},+    {116, 0x0074, 278},+    {117, 0x0075, 556},+    {118, 0x0076, 500},+    {119, 0x0077, 722},+    {120, 0x0078, 500},+    {121, 0x0079, 500},+    {122, 0x007A, 500},+    {123, 0x007B, 334},+    {124, 0x007C, 260},+    {125, 0x007D, 334},+    {126, 0x007E, 584},+    {161, 0x00A1, 333},+    {162, 0x00A2, 556},+    {163, 0x00A3, 556},+    {164, 0x2044, 167},+    {165, 0x00A5, 556},+    {166, 0x0192, 556},+    {167, 0x00A7, 556},+    {168, 0x00A4, 556},+    {169, 0x0027, 191},+    {170, 0x201C, 333},+    {171, 0x00AB, 556},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 500},+    {175, 0xFB02, 500},+    {177, 0x2013, 556},+    {178, 0x2020, 556},+    {179, 0x2021, 556},+    {180, 0x00B7, 278},+    {182, 0x00B6, 537},+    {183, 0x2022, 350},+    {184, 0x201A, 222},+    {185, 0x201E, 333},+    {186, 0x201D, 333},+    {187, 0x00BB, 556},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 611},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 1000},+    {227, 0x00AA, 370},+    {232, 0x0141, 556},+    {233, 0x00D8, 778},+    {234, 0x0152, 1000},+    {235, 0x00BA, 365},+    {241, 0x00E6, 889},+    {245, 0x0131, 278},+    {248, 0x0142, 222},+    {249, 0x00F8, 611},+    {250, 0x0153, 944},+    {251, 0x00DF, 611},+    {-1, 0x00CF, 278},+    {-1, 0x00E9, 556},+    {-1, 0x0103, 556},+    {-1, 0x0171, 556},+    {-1, 0x011B, 556},+    {-1, 0x0178, 667},+    {-1, 0x00F7, 584},+    {-1, 0x00DD, 667},+    {-1, 0x00C2, 667},+    {-1, 0x00E1, 556},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 500},+    {-1, 0x0219, 500},+    {-1, 0x00EA, 556},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 556},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 556},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 737},+    {-1, 0x0112, 667},+    {-1, 0x010D, 500},+    {-1, 0x00E5, 556},+    {-1, 0x0145, 722},+    {-1, 0x013A, 222},+    {-1, 0x00E0, 556},+    {-1, 0x0162, 611},+    {-1, 0x0106, 722},+    {-1, 0x00E3, 556},+    {-1, 0x0116, 667},+    {-1, 0x0161, 500},+    {-1, 0x015F, 500},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 471},+    {-1, 0x0158, 722},+    {-1, 0x0122, 778},+    {-1, 0x00FB, 556},+    {-1, 0x00E2, 556},+    {-1, 0x0100, 667},+    {-1, 0x0159, 333},+    {-1, 0x00E7, 500},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 667},+    {-1, 0x014C, 778},+    {-1, 0x0154, 722},+    {-1, 0x015A, 667},+    {-1, 0x010F, 643},+    {-1, 0x016A, 722},+    {-1, 0x016F, 556},+    {-1, 0x00B3, 333},+    {-1, 0x00D2, 778},+    {-1, 0x00C0, 667},+    {-1, 0x0102, 667},+    {-1, 0x00D7, 584},+    {-1, 0x00FA, 556},+    {-1, 0x0164, 611},+    {-1, 0x2202, 476},+    {-1, 0x00FF, 500},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 556},+    {-1, 0x00EB, 556},+    {-1, 0x0107, 500},+    {-1, 0x0144, 556},+    {-1, 0x016B, 556},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 278},+    {-1, 0x00B1, 584},+    {-1, 0x00A6, 260},+    {-1, 0x00AE, 737},+    {-1, 0x011E, 778},+    {-1, 0x0130, 278},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 333},+    {-1, 0x014D, 556},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 722},+    {-1, 0x013C, 222},+    {-1, 0x0165, 316},+    {-1, 0x0119, 556},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 667},+    {-1, 0x00C4, 667},+    {-1, 0x00E8, 556},+    {-1, 0x017A, 500},+    {-1, 0x012F, 222},+    {-1, 0x00D3, 778},+    {-1, 0x00F3, 556},+    {-1, 0x0101, 556},+    {-1, 0x015B, 500},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 778},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 556},+    {-1, 0x00B2, 333},+    {-1, 0x00D6, 778},+    {-1, 0x00B5, 556},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 556},+    {-1, 0x0118, 667},+    {-1, 0x0111, 556},+    {-1, 0x00BE, 834},+    {-1, 0x015E, 667},+    {-1, 0x013E, 299},+    {-1, 0x0136, 667},+    {-1, 0x0139, 556},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 556},+    {-1, 0x00CC, 278},+    {-1, 0x012A, 278},+    {-1, 0x013D, 556},+    {-1, 0x00BD, 834},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 556},+    {-1, 0x00F1, 556},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 556},+    {-1, 0x011F, 556},+    {-1, 0x00BC, 834},+    {-1, 0x0160, 667},+    {-1, 0x0218, 667},+    {-1, 0x0150, 778},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 556},+    {-1, 0x010C, 722},+    {-1, 0x00F9, 556},+    {-1, 0x221A, 453},+    {-1, 0x010E, 722},+    {-1, 0x0157, 333},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 556},+    {-1, 0x0156, 722},+    {-1, 0x013B, 556},+    {-1, 0x00C3, 667},+    {-1, 0x0104, 667},+    {-1, 0x00C5, 667},+    {-1, 0x00D5, 778},+    {-1, 0x017C, 500},+    {-1, 0x011A, 667},+    {-1, 0x012E, 278},+    {-1, 0x0137, 500},+    {-1, 0x2212, 584},+    {-1, 0x00CE, 278},+    {-1, 0x0148, 556},+    {-1, 0x0163, 278},+    {-1, 0x00AC, 584},+    {-1, 0x00F6, 556},+    {-1, 0x00FC, 556},+    {-1, 0x2260, 549},+    {-1, 0x0123, 556},+    {-1, 0x00F0, 556},+    {-1, 0x017E, 500},+    {-1, 0x0146, 556},+    {-1, 0x00B9, 333},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 556},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_HELVETICA_BOLD[316] = {+    {32, 0x0020, 278},+    {33, 0x0021, 333},+    {34, 0x0022, 474},+    {35, 0x0023, 556},+    {36, 0x0024, 556},+    {37, 0x0025, 889},+    {38, 0x0026, 722},+    {39, 0x2019, 278},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 389},+    {43, 0x002B, 584},+    {44, 0x002C, 278},+    {45, 0x002D, 333},+    {46, 0x002E, 278},+    {47, 0x002F, 278},+    {48, 0x0030, 556},+    {49, 0x0031, 556},+    {50, 0x0032, 556},+    {51, 0x0033, 556},+    {52, 0x0034, 556},+    {53, 0x0035, 556},+    {54, 0x0036, 556},+    {55, 0x0037, 556},+    {56, 0x0038, 556},+    {57, 0x0039, 556},+    {58, 0x003A, 333},+    {59, 0x003B, 333},+    {60, 0x003C, 584},+    {61, 0x003D, 584},+    {62, 0x003E, 584},+    {63, 0x003F, 611},+    {64, 0x0040, 975},+    {65, 0x0041, 722},+    {66, 0x0042, 722},+    {67, 0x0043, 722},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 611},+    {71, 0x0047, 778},+    {72, 0x0048, 722},+    {73, 0x0049, 278},+    {74, 0x004A, 556},+    {75, 0x004B, 722},+    {76, 0x004C, 611},+    {77, 0x004D, 833},+    {78, 0x004E, 722},+    {79, 0x004F, 778},+    {80, 0x0050, 667},+    {81, 0x0051, 778},+    {82, 0x0052, 722},+    {83, 0x0053, 667},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 667},+    {87, 0x0057, 944},+    {88, 0x0058, 667},+    {89, 0x0059, 667},+    {90, 0x005A, 611},+    {91, 0x005B, 333},+    {92, 0x005C, 278},+    {93, 0x005D, 333},+    {94, 0x005E, 584},+    {95, 0x005F, 556},+    {96, 0x2018, 278},+    {97, 0x0061, 556},+    {98, 0x0062, 611},+    {99, 0x0063, 556},+    {100, 0x0064, 611},+    {101, 0x0065, 556},+    {102, 0x0066, 333},+    {103, 0x0067, 611},+    {104, 0x0068, 611},+    {105, 0x0069, 278},+    {106, 0x006A, 278},+    {107, 0x006B, 556},+    {108, 0x006C, 278},+    {109, 0x006D, 889},+    {110, 0x006E, 611},+    {111, 0x006F, 611},+    {112, 0x0070, 611},+    {113, 0x0071, 611},+    {114, 0x0072, 389},+    {115, 0x0073, 556},+    {116, 0x0074, 333},+    {117, 0x0075, 611},+    {118, 0x0076, 556},+    {119, 0x0077, 778},+    {120, 0x0078, 556},+    {121, 0x0079, 556},+    {122, 0x007A, 500},+    {123, 0x007B, 389},+    {124, 0x007C, 280},+    {125, 0x007D, 389},+    {126, 0x007E, 584},+    {161, 0x00A1, 333},+    {162, 0x00A2, 556},+    {163, 0x00A3, 556},+    {164, 0x2044, 167},+    {165, 0x00A5, 556},+    {166, 0x0192, 556},+    {167, 0x00A7, 556},+    {168, 0x00A4, 556},+    {169, 0x0027, 238},+    {170, 0x201C, 500},+    {171, 0x00AB, 556},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 611},+    {175, 0xFB02, 611},+    {177, 0x2013, 556},+    {178, 0x2020, 556},+    {179, 0x2021, 556},+    {180, 0x00B7, 278},+    {182, 0x00B6, 556},+    {183, 0x2022, 350},+    {184, 0x201A, 278},+    {185, 0x201E, 500},+    {186, 0x201D, 500},+    {187, 0x00BB, 556},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 611},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 1000},+    {227, 0x00AA, 370},+    {232, 0x0141, 611},+    {233, 0x00D8, 778},+    {234, 0x0152, 1000},+    {235, 0x00BA, 365},+    {241, 0x00E6, 889},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 611},+    {250, 0x0153, 944},+    {251, 0x00DF, 611},+    {-1, 0x00CF, 278},+    {-1, 0x00E9, 556},+    {-1, 0x0103, 556},+    {-1, 0x0171, 611},+    {-1, 0x011B, 556},+    {-1, 0x0178, 667},+    {-1, 0x00F7, 584},+    {-1, 0x00DD, 667},+    {-1, 0x00C2, 722},+    {-1, 0x00E1, 556},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 556},+    {-1, 0x0219, 556},+    {-1, 0x00EA, 556},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 556},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 611},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 737},+    {-1, 0x0112, 667},+    {-1, 0x010D, 556},+    {-1, 0x00E5, 556},+    {-1, 0x0145, 722},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 556},+    {-1, 0x0162, 611},+    {-1, 0x0106, 722},+    {-1, 0x00E3, 556},+    {-1, 0x0116, 667},+    {-1, 0x0161, 556},+    {-1, 0x015F, 556},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 494},+    {-1, 0x0158, 722},+    {-1, 0x0122, 778},+    {-1, 0x00FB, 611},+    {-1, 0x00E2, 556},+    {-1, 0x0100, 722},+    {-1, 0x0159, 389},+    {-1, 0x00E7, 556},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 667},+    {-1, 0x014C, 778},+    {-1, 0x0154, 722},+    {-1, 0x015A, 667},+    {-1, 0x010F, 743},+    {-1, 0x016A, 722},+    {-1, 0x016F, 611},+    {-1, 0x00B3, 333},+    {-1, 0x00D2, 778},+    {-1, 0x00C0, 722},+    {-1, 0x0102, 722},+    {-1, 0x00D7, 584},+    {-1, 0x00FA, 611},+    {-1, 0x0164, 611},+    {-1, 0x2202, 494},+    {-1, 0x00FF, 556},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 556},+    {-1, 0x00EB, 556},+    {-1, 0x0107, 556},+    {-1, 0x0144, 611},+    {-1, 0x016B, 611},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 278},+    {-1, 0x00B1, 584},+    {-1, 0x00A6, 280},+    {-1, 0x00AE, 737},+    {-1, 0x011E, 778},+    {-1, 0x0130, 278},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 389},+    {-1, 0x014D, 611},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 722},+    {-1, 0x013C, 278},+    {-1, 0x0165, 389},+    {-1, 0x0119, 556},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 722},+    {-1, 0x00C4, 722},+    {-1, 0x00E8, 556},+    {-1, 0x017A, 500},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 778},+    {-1, 0x00F3, 611},+    {-1, 0x0101, 556},+    {-1, 0x015B, 556},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 778},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 611},+    {-1, 0x00B2, 333},+    {-1, 0x00D6, 778},+    {-1, 0x00B5, 611},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 611},+    {-1, 0x0118, 667},+    {-1, 0x0111, 611},+    {-1, 0x00BE, 834},+    {-1, 0x015E, 667},+    {-1, 0x013E, 400},+    {-1, 0x0136, 722},+    {-1, 0x0139, 611},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 556},+    {-1, 0x00CC, 278},+    {-1, 0x012A, 278},+    {-1, 0x013D, 611},+    {-1, 0x00BD, 834},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 611},+    {-1, 0x00F1, 611},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 556},+    {-1, 0x011F, 611},+    {-1, 0x00BC, 834},+    {-1, 0x0160, 667},+    {-1, 0x0218, 667},+    {-1, 0x0150, 778},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 611},+    {-1, 0x010C, 722},+    {-1, 0x00F9, 611},+    {-1, 0x221A, 549},+    {-1, 0x010E, 722},+    {-1, 0x0157, 389},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 611},+    {-1, 0x0156, 722},+    {-1, 0x013B, 611},+    {-1, 0x00C3, 722},+    {-1, 0x0104, 722},+    {-1, 0x00C5, 722},+    {-1, 0x00D5, 778},+    {-1, 0x017C, 500},+    {-1, 0x011A, 667},+    {-1, 0x012E, 278},+    {-1, 0x0137, 556},+    {-1, 0x2212, 584},+    {-1, 0x00CE, 278},+    {-1, 0x0148, 611},+    {-1, 0x0163, 333},+    {-1, 0x00AC, 584},+    {-1, 0x00F6, 611},+    {-1, 0x00FC, 611},+    {-1, 0x2260, 549},+    {-1, 0x0123, 611},+    {-1, 0x00F0, 611},+    {-1, 0x017E, 500},+    {-1, 0x0146, 611},+    {-1, 0x00B9, 333},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 556},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_HELVETICA_BOLD_OBLIQUE[316] = {+    {32, 0x0020, 278},+    {33, 0x0021, 333},+    {34, 0x0022, 474},+    {35, 0x0023, 556},+    {36, 0x0024, 556},+    {37, 0x0025, 889},+    {38, 0x0026, 722},+    {39, 0x2019, 278},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 389},+    {43, 0x002B, 584},+    {44, 0x002C, 278},+    {45, 0x002D, 333},+    {46, 0x002E, 278},+    {47, 0x002F, 278},+    {48, 0x0030, 556},+    {49, 0x0031, 556},+    {50, 0x0032, 556},+    {51, 0x0033, 556},+    {52, 0x0034, 556},+    {53, 0x0035, 556},+    {54, 0x0036, 556},+    {55, 0x0037, 556},+    {56, 0x0038, 556},+    {57, 0x0039, 556},+    {58, 0x003A, 333},+    {59, 0x003B, 333},+    {60, 0x003C, 584},+    {61, 0x003D, 584},+    {62, 0x003E, 584},+    {63, 0x003F, 611},+    {64, 0x0040, 975},+    {65, 0x0041, 722},+    {66, 0x0042, 722},+    {67, 0x0043, 722},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 611},+    {71, 0x0047, 778},+    {72, 0x0048, 722},+    {73, 0x0049, 278},+    {74, 0x004A, 556},+    {75, 0x004B, 722},+    {76, 0x004C, 611},+    {77, 0x004D, 833},+    {78, 0x004E, 722},+    {79, 0x004F, 778},+    {80, 0x0050, 667},+    {81, 0x0051, 778},+    {82, 0x0052, 722},+    {83, 0x0053, 667},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 667},+    {87, 0x0057, 944},+    {88, 0x0058, 667},+    {89, 0x0059, 667},+    {90, 0x005A, 611},+    {91, 0x005B, 333},+    {92, 0x005C, 278},+    {93, 0x005D, 333},+    {94, 0x005E, 584},+    {95, 0x005F, 556},+    {96, 0x2018, 278},+    {97, 0x0061, 556},+    {98, 0x0062, 611},+    {99, 0x0063, 556},+    {100, 0x0064, 611},+    {101, 0x0065, 556},+    {102, 0x0066, 333},+    {103, 0x0067, 611},+    {104, 0x0068, 611},+    {105, 0x0069, 278},+    {106, 0x006A, 278},+    {107, 0x006B, 556},+    {108, 0x006C, 278},+    {109, 0x006D, 889},+    {110, 0x006E, 611},+    {111, 0x006F, 611},+    {112, 0x0070, 611},+    {113, 0x0071, 611},+    {114, 0x0072, 389},+    {115, 0x0073, 556},+    {116, 0x0074, 333},+    {117, 0x0075, 611},+    {118, 0x0076, 556},+    {119, 0x0077, 778},+    {120, 0x0078, 556},+    {121, 0x0079, 556},+    {122, 0x007A, 500},+    {123, 0x007B, 389},+    {124, 0x007C, 280},+    {125, 0x007D, 389},+    {126, 0x007E, 584},+    {161, 0x00A1, 333},+    {162, 0x00A2, 556},+    {163, 0x00A3, 556},+    {164, 0x2044, 167},+    {165, 0x00A5, 556},+    {166, 0x0192, 556},+    {167, 0x00A7, 556},+    {168, 0x00A4, 556},+    {169, 0x0027, 238},+    {170, 0x201C, 500},+    {171, 0x00AB, 556},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 611},+    {175, 0xFB02, 611},+    {177, 0x2013, 556},+    {178, 0x2020, 556},+    {179, 0x2021, 556},+    {180, 0x00B7, 278},+    {182, 0x00B6, 556},+    {183, 0x2022, 350},+    {184, 0x201A, 278},+    {185, 0x201E, 500},+    {186, 0x201D, 500},+    {187, 0x00BB, 556},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 611},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 1000},+    {227, 0x00AA, 370},+    {232, 0x0141, 611},+    {233, 0x00D8, 778},+    {234, 0x0152, 1000},+    {235, 0x00BA, 365},+    {241, 0x00E6, 889},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 611},+    {250, 0x0153, 944},+    {251, 0x00DF, 611},+    {-1, 0x00CF, 278},+    {-1, 0x00E9, 556},+    {-1, 0x0103, 556},+    {-1, 0x0171, 611},+    {-1, 0x011B, 556},+    {-1, 0x0178, 667},+    {-1, 0x00F7, 584},+    {-1, 0x00DD, 667},+    {-1, 0x00C2, 722},+    {-1, 0x00E1, 556},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 556},+    {-1, 0x0219, 556},+    {-1, 0x00EA, 556},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 556},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 611},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 737},+    {-1, 0x0112, 667},+    {-1, 0x010D, 556},+    {-1, 0x00E5, 556},+    {-1, 0x0145, 722},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 556},+    {-1, 0x0162, 611},+    {-1, 0x0106, 722},+    {-1, 0x00E3, 556},+    {-1, 0x0116, 667},+    {-1, 0x0161, 556},+    {-1, 0x015F, 556},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 494},+    {-1, 0x0158, 722},+    {-1, 0x0122, 778},+    {-1, 0x00FB, 611},+    {-1, 0x00E2, 556},+    {-1, 0x0100, 722},+    {-1, 0x0159, 389},+    {-1, 0x00E7, 556},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 667},+    {-1, 0x014C, 778},+    {-1, 0x0154, 722},+    {-1, 0x015A, 667},+    {-1, 0x010F, 743},+    {-1, 0x016A, 722},+    {-1, 0x016F, 611},+    {-1, 0x00B3, 333},+    {-1, 0x00D2, 778},+    {-1, 0x00C0, 722},+    {-1, 0x0102, 722},+    {-1, 0x00D7, 584},+    {-1, 0x00FA, 611},+    {-1, 0x0164, 611},+    {-1, 0x2202, 494},+    {-1, 0x00FF, 556},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 556},+    {-1, 0x00EB, 556},+    {-1, 0x0107, 556},+    {-1, 0x0144, 611},+    {-1, 0x016B, 611},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 278},+    {-1, 0x00B1, 584},+    {-1, 0x00A6, 280},+    {-1, 0x00AE, 737},+    {-1, 0x011E, 778},+    {-1, 0x0130, 278},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 389},+    {-1, 0x014D, 611},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 722},+    {-1, 0x013C, 278},+    {-1, 0x0165, 389},+    {-1, 0x0119, 556},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 722},+    {-1, 0x00C4, 722},+    {-1, 0x00E8, 556},+    {-1, 0x017A, 500},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 778},+    {-1, 0x00F3, 611},+    {-1, 0x0101, 556},+    {-1, 0x015B, 556},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 778},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 611},+    {-1, 0x00B2, 333},+    {-1, 0x00D6, 778},+    {-1, 0x00B5, 611},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 611},+    {-1, 0x0118, 667},+    {-1, 0x0111, 611},+    {-1, 0x00BE, 834},+    {-1, 0x015E, 667},+    {-1, 0x013E, 400},+    {-1, 0x0136, 722},+    {-1, 0x0139, 611},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 556},+    {-1, 0x00CC, 278},+    {-1, 0x012A, 278},+    {-1, 0x013D, 611},+    {-1, 0x00BD, 834},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 611},+    {-1, 0x00F1, 611},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 556},+    {-1, 0x011F, 611},+    {-1, 0x00BC, 834},+    {-1, 0x0160, 667},+    {-1, 0x0218, 667},+    {-1, 0x0150, 778},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 611},+    {-1, 0x010C, 722},+    {-1, 0x00F9, 611},+    {-1, 0x221A, 549},+    {-1, 0x010E, 722},+    {-1, 0x0157, 389},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 611},+    {-1, 0x0156, 722},+    {-1, 0x013B, 611},+    {-1, 0x00C3, 722},+    {-1, 0x0104, 722},+    {-1, 0x00C5, 722},+    {-1, 0x00D5, 778},+    {-1, 0x017C, 500},+    {-1, 0x011A, 667},+    {-1, 0x012E, 278},+    {-1, 0x0137, 556},+    {-1, 0x2212, 584},+    {-1, 0x00CE, 278},+    {-1, 0x0148, 611},+    {-1, 0x0163, 333},+    {-1, 0x00AC, 584},+    {-1, 0x00F6, 611},+    {-1, 0x00FC, 611},+    {-1, 0x2260, 549},+    {-1, 0x0123, 611},+    {-1, 0x00F0, 611},+    {-1, 0x017E, 500},+    {-1, 0x0146, 611},+    {-1, 0x00B9, 333},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 556},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_HELVETICA_OBLIQUE[316] = {+    {32, 0x0020, 278},+    {33, 0x0021, 278},+    {34, 0x0022, 355},+    {35, 0x0023, 556},+    {36, 0x0024, 556},+    {37, 0x0025, 889},+    {38, 0x0026, 667},+    {39, 0x2019, 222},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 389},+    {43, 0x002B, 584},+    {44, 0x002C, 278},+    {45, 0x002D, 333},+    {46, 0x002E, 278},+    {47, 0x002F, 278},+    {48, 0x0030, 556},+    {49, 0x0031, 556},+    {50, 0x0032, 556},+    {51, 0x0033, 556},+    {52, 0x0034, 556},+    {53, 0x0035, 556},+    {54, 0x0036, 556},+    {55, 0x0037, 556},+    {56, 0x0038, 556},+    {57, 0x0039, 556},+    {58, 0x003A, 278},+    {59, 0x003B, 278},+    {60, 0x003C, 584},+    {61, 0x003D, 584},+    {62, 0x003E, 584},+    {63, 0x003F, 556},+    {64, 0x0040, 1015},+    {65, 0x0041, 667},+    {66, 0x0042, 667},+    {67, 0x0043, 722},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 611},+    {71, 0x0047, 778},+    {72, 0x0048, 722},+    {73, 0x0049, 278},+    {74, 0x004A, 500},+    {75, 0x004B, 667},+    {76, 0x004C, 556},+    {77, 0x004D, 833},+    {78, 0x004E, 722},+    {79, 0x004F, 778},+    {80, 0x0050, 667},+    {81, 0x0051, 778},+    {82, 0x0052, 722},+    {83, 0x0053, 667},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 667},+    {87, 0x0057, 944},+    {88, 0x0058, 667},+    {89, 0x0059, 667},+    {90, 0x005A, 611},+    {91, 0x005B, 278},+    {92, 0x005C, 278},+    {93, 0x005D, 278},+    {94, 0x005E, 469},+    {95, 0x005F, 556},+    {96, 0x2018, 222},+    {97, 0x0061, 556},+    {98, 0x0062, 556},+    {99, 0x0063, 500},+    {100, 0x0064, 556},+    {101, 0x0065, 556},+    {102, 0x0066, 278},+    {103, 0x0067, 556},+    {104, 0x0068, 556},+    {105, 0x0069, 222},+    {106, 0x006A, 222},+    {107, 0x006B, 500},+    {108, 0x006C, 222},+    {109, 0x006D, 833},+    {110, 0x006E, 556},+    {111, 0x006F, 556},+    {112, 0x0070, 556},+    {113, 0x0071, 556},+    {114, 0x0072, 333},+    {115, 0x0073, 500},+    {116, 0x0074, 278},+    {117, 0x0075, 556},+    {118, 0x0076, 500},+    {119, 0x0077, 722},+    {120, 0x0078, 500},+    {121, 0x0079, 500},+    {122, 0x007A, 500},+    {123, 0x007B, 334},+    {124, 0x007C, 260},+    {125, 0x007D, 334},+    {126, 0x007E, 584},+    {161, 0x00A1, 333},+    {162, 0x00A2, 556},+    {163, 0x00A3, 556},+    {164, 0x2044, 167},+    {165, 0x00A5, 556},+    {166, 0x0192, 556},+    {167, 0x00A7, 556},+    {168, 0x00A4, 556},+    {169, 0x0027, 191},+    {170, 0x201C, 333},+    {171, 0x00AB, 556},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 500},+    {175, 0xFB02, 500},+    {177, 0x2013, 556},+    {178, 0x2020, 556},+    {179, 0x2021, 556},+    {180, 0x00B7, 278},+    {182, 0x00B6, 537},+    {183, 0x2022, 350},+    {184, 0x201A, 222},+    {185, 0x201E, 333},+    {186, 0x201D, 333},+    {187, 0x00BB, 556},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 611},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 1000},+    {227, 0x00AA, 370},+    {232, 0x0141, 556},+    {233, 0x00D8, 778},+    {234, 0x0152, 1000},+    {235, 0x00BA, 365},+    {241, 0x00E6, 889},+    {245, 0x0131, 278},+    {248, 0x0142, 222},+    {249, 0x00F8, 611},+    {250, 0x0153, 944},+    {251, 0x00DF, 611},+    {-1, 0x00CF, 278},+    {-1, 0x00E9, 556},+    {-1, 0x0103, 556},+    {-1, 0x0171, 556},+    {-1, 0x011B, 556},+    {-1, 0x0178, 667},+    {-1, 0x00F7, 584},+    {-1, 0x00DD, 667},+    {-1, 0x00C2, 667},+    {-1, 0x00E1, 556},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 500},+    {-1, 0x0219, 500},+    {-1, 0x00EA, 556},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 556},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 556},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 737},+    {-1, 0x0112, 667},+    {-1, 0x010D, 500},+    {-1, 0x00E5, 556},+    {-1, 0x0145, 722},+    {-1, 0x013A, 222},+    {-1, 0x00E0, 556},+    {-1, 0x0162, 611},+    {-1, 0x0106, 722},+    {-1, 0x00E3, 556},+    {-1, 0x0116, 667},+    {-1, 0x0161, 500},+    {-1, 0x015F, 500},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 471},+    {-1, 0x0158, 722},+    {-1, 0x0122, 778},+    {-1, 0x00FB, 556},+    {-1, 0x00E2, 556},+    {-1, 0x0100, 667},+    {-1, 0x0159, 333},+    {-1, 0x00E7, 500},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 667},+    {-1, 0x014C, 778},+    {-1, 0x0154, 722},+    {-1, 0x015A, 667},+    {-1, 0x010F, 643},+    {-1, 0x016A, 722},+    {-1, 0x016F, 556},+    {-1, 0x00B3, 333},+    {-1, 0x00D2, 778},+    {-1, 0x00C0, 667},+    {-1, 0x0102, 667},+    {-1, 0x00D7, 584},+    {-1, 0x00FA, 556},+    {-1, 0x0164, 611},+    {-1, 0x2202, 476},+    {-1, 0x00FF, 500},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 556},+    {-1, 0x00EB, 556},+    {-1, 0x0107, 500},+    {-1, 0x0144, 556},+    {-1, 0x016B, 556},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 278},+    {-1, 0x00B1, 584},+    {-1, 0x00A6, 260},+    {-1, 0x00AE, 737},+    {-1, 0x011E, 778},+    {-1, 0x0130, 278},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 333},+    {-1, 0x014D, 556},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 722},+    {-1, 0x013C, 222},+    {-1, 0x0165, 316},+    {-1, 0x0119, 556},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 667},+    {-1, 0x00C4, 667},+    {-1, 0x00E8, 556},+    {-1, 0x017A, 500},+    {-1, 0x012F, 222},+    {-1, 0x00D3, 778},+    {-1, 0x00F3, 556},+    {-1, 0x0101, 556},+    {-1, 0x015B, 500},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 778},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 556},+    {-1, 0x00B2, 333},+    {-1, 0x00D6, 778},+    {-1, 0x00B5, 556},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 556},+    {-1, 0x0118, 667},+    {-1, 0x0111, 556},+    {-1, 0x00BE, 834},+    {-1, 0x015E, 667},+    {-1, 0x013E, 299},+    {-1, 0x0136, 667},+    {-1, 0x0139, 556},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 556},+    {-1, 0x00CC, 278},+    {-1, 0x012A, 278},+    {-1, 0x013D, 556},+    {-1, 0x00BD, 834},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 556},+    {-1, 0x00F1, 556},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 556},+    {-1, 0x011F, 556},+    {-1, 0x00BC, 834},+    {-1, 0x0160, 667},+    {-1, 0x0218, 667},+    {-1, 0x0150, 778},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 556},+    {-1, 0x010C, 722},+    {-1, 0x00F9, 556},+    {-1, 0x221A, 453},+    {-1, 0x010E, 722},+    {-1, 0x0157, 333},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 556},+    {-1, 0x0156, 722},+    {-1, 0x013B, 556},+    {-1, 0x00C3, 667},+    {-1, 0x0104, 667},+    {-1, 0x00C5, 667},+    {-1, 0x00D5, 778},+    {-1, 0x017C, 500},+    {-1, 0x011A, 667},+    {-1, 0x012E, 278},+    {-1, 0x0137, 500},+    {-1, 0x2212, 584},+    {-1, 0x00CE, 278},+    {-1, 0x0148, 556},+    {-1, 0x0163, 278},+    {-1, 0x00AC, 584},+    {-1, 0x00F6, 556},+    {-1, 0x00FC, 556},+    {-1, 0x2260, 549},+    {-1, 0x0123, 556},+    {-1, 0x00F0, 556},+    {-1, 0x017E, 500},+    {-1, 0x0146, 556},+    {-1, 0x00B9, 333},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 556},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_TIMES_ROMAN[316] = {+    {32, 0x0020, 250},+    {33, 0x0021, 333},+    {34, 0x0022, 408},+    {35, 0x0023, 500},+    {36, 0x0024, 500},+    {37, 0x0025, 833},+    {38, 0x0026, 778},+    {39, 0x2019, 333},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 500},+    {43, 0x002B, 564},+    {44, 0x002C, 250},+    {45, 0x002D, 333},+    {46, 0x002E, 250},+    {47, 0x002F, 278},+    {48, 0x0030, 500},+    {49, 0x0031, 500},+    {50, 0x0032, 500},+    {51, 0x0033, 500},+    {52, 0x0034, 500},+    {53, 0x0035, 500},+    {54, 0x0036, 500},+    {55, 0x0037, 500},+    {56, 0x0038, 500},+    {57, 0x0039, 500},+    {58, 0x003A, 278},+    {59, 0x003B, 278},+    {60, 0x003C, 564},+    {61, 0x003D, 564},+    {62, 0x003E, 564},+    {63, 0x003F, 444},+    {64, 0x0040, 921},+    {65, 0x0041, 722},+    {66, 0x0042, 667},+    {67, 0x0043, 667},+    {68, 0x0044, 722},+    {69, 0x0045, 611},+    {70, 0x0046, 556},+    {71, 0x0047, 722},+    {72, 0x0048, 722},+    {73, 0x0049, 333},+    {74, 0x004A, 389},+    {75, 0x004B, 722},+    {76, 0x004C, 611},+    {77, 0x004D, 889},+    {78, 0x004E, 722},+    {79, 0x004F, 722},+    {80, 0x0050, 556},+    {81, 0x0051, 722},+    {82, 0x0052, 667},+    {83, 0x0053, 556},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 722},+    {87, 0x0057, 944},+    {88, 0x0058, 722},+    {89, 0x0059, 722},+    {90, 0x005A, 611},+    {91, 0x005B, 333},+    {92, 0x005C, 278},+    {93, 0x005D, 333},+    {94, 0x005E, 469},+    {95, 0x005F, 500},+    {96, 0x2018, 333},+    {97, 0x0061, 444},+    {98, 0x0062, 500},+    {99, 0x0063, 444},+    {100, 0x0064, 500},+    {101, 0x0065, 444},+    {102, 0x0066, 333},+    {103, 0x0067, 500},+    {104, 0x0068, 500},+    {105, 0x0069, 278},+    {106, 0x006A, 278},+    {107, 0x006B, 500},+    {108, 0x006C, 278},+    {109, 0x006D, 778},+    {110, 0x006E, 500},+    {111, 0x006F, 500},+    {112, 0x0070, 500},+    {113, 0x0071, 500},+    {114, 0x0072, 333},+    {115, 0x0073, 389},+    {116, 0x0074, 278},+    {117, 0x0075, 500},+    {118, 0x0076, 500},+    {119, 0x0077, 722},+    {120, 0x0078, 500},+    {121, 0x0079, 500},+    {122, 0x007A, 444},+    {123, 0x007B, 480},+    {124, 0x007C, 200},+    {125, 0x007D, 480},+    {126, 0x007E, 541},+    {161, 0x00A1, 333},+    {162, 0x00A2, 500},+    {163, 0x00A3, 500},+    {164, 0x2044, 167},+    {165, 0x00A5, 500},+    {166, 0x0192, 500},+    {167, 0x00A7, 500},+    {168, 0x00A4, 500},+    {169, 0x0027, 180},+    {170, 0x201C, 444},+    {171, 0x00AB, 500},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 556},+    {175, 0xFB02, 556},+    {177, 0x2013, 500},+    {178, 0x2020, 500},+    {179, 0x2021, 500},+    {180, 0x00B7, 250},+    {182, 0x00B6, 453},+    {183, 0x2022, 350},+    {184, 0x201A, 333},+    {185, 0x201E, 444},+    {186, 0x201D, 444},+    {187, 0x00BB, 500},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 444},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 889},+    {227, 0x00AA, 276},+    {232, 0x0141, 611},+    {233, 0x00D8, 722},+    {234, 0x0152, 889},+    {235, 0x00BA, 310},+    {241, 0x00E6, 667},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 500},+    {250, 0x0153, 722},+    {251, 0x00DF, 500},+    {-1, 0x00CF, 333},+    {-1, 0x00E9, 444},+    {-1, 0x0103, 444},+    {-1, 0x0171, 500},+    {-1, 0x011B, 444},+    {-1, 0x0178, 722},+    {-1, 0x00F7, 564},+    {-1, 0x00DD, 722},+    {-1, 0x00C2, 722},+    {-1, 0x00E1, 444},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 500},+    {-1, 0x0219, 389},+    {-1, 0x00EA, 444},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 444},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 500},+    {-1, 0x00CB, 611},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 760},+    {-1, 0x0112, 611},+    {-1, 0x010D, 444},+    {-1, 0x00E5, 444},+    {-1, 0x0145, 722},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 444},+    {-1, 0x0162, 611},+    {-1, 0x0106, 667},+    {-1, 0x00E3, 444},+    {-1, 0x0116, 611},+    {-1, 0x0161, 389},+    {-1, 0x015F, 389},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 471},+    {-1, 0x0158, 667},+    {-1, 0x0122, 722},+    {-1, 0x00FB, 500},+    {-1, 0x00E2, 444},+    {-1, 0x0100, 722},+    {-1, 0x0159, 333},+    {-1, 0x00E7, 444},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 556},+    {-1, 0x014C, 722},+    {-1, 0x0154, 667},+    {-1, 0x015A, 556},+    {-1, 0x010F, 588},+    {-1, 0x016A, 722},+    {-1, 0x016F, 500},+    {-1, 0x00B3, 300},+    {-1, 0x00D2, 722},+    {-1, 0x00C0, 722},+    {-1, 0x0102, 722},+    {-1, 0x00D7, 564},+    {-1, 0x00FA, 500},+    {-1, 0x0164, 611},+    {-1, 0x2202, 476},+    {-1, 0x00FF, 500},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 611},+    {-1, 0x00E4, 444},+    {-1, 0x00EB, 444},+    {-1, 0x0107, 444},+    {-1, 0x0144, 500},+    {-1, 0x016B, 500},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 333},+    {-1, 0x00B1, 564},+    {-1, 0x00A6, 200},+    {-1, 0x00AE, 760},+    {-1, 0x011E, 722},+    {-1, 0x0130, 333},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 611},+    {-1, 0x0155, 333},+    {-1, 0x014D, 500},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 667},+    {-1, 0x013C, 278},+    {-1, 0x0165, 326},+    {-1, 0x0119, 444},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 722},+    {-1, 0x00C4, 722},+    {-1, 0x00E8, 444},+    {-1, 0x017A, 444},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 722},+    {-1, 0x00F3, 500},+    {-1, 0x0101, 444},+    {-1, 0x015B, 389},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 722},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 500},+    {-1, 0x00B2, 300},+    {-1, 0x00D6, 722},+    {-1, 0x00B5, 500},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 500},+    {-1, 0x0118, 611},+    {-1, 0x0111, 500},+    {-1, 0x00BE, 750},+    {-1, 0x015E, 556},+    {-1, 0x013E, 344},+    {-1, 0x0136, 722},+    {-1, 0x0139, 611},+    {-1, 0x2122, 980},+    {-1, 0x0117, 444},+    {-1, 0x00CC, 333},+    {-1, 0x012A, 333},+    {-1, 0x013D, 611},+    {-1, 0x00BD, 750},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 500},+    {-1, 0x00F1, 500},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 611},+    {-1, 0x0113, 444},+    {-1, 0x011F, 500},+    {-1, 0x00BC, 750},+    {-1, 0x0160, 556},+    {-1, 0x0218, 556},+    {-1, 0x0150, 722},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 500},+    {-1, 0x010C, 667},+    {-1, 0x00F9, 500},+    {-1, 0x221A, 453},+    {-1, 0x010E, 722},+    {-1, 0x0157, 333},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 500},+    {-1, 0x0156, 667},+    {-1, 0x013B, 611},+    {-1, 0x00C3, 722},+    {-1, 0x0104, 722},+    {-1, 0x00C5, 722},+    {-1, 0x00D5, 722},+    {-1, 0x017C, 444},+    {-1, 0x011A, 611},+    {-1, 0x012E, 333},+    {-1, 0x0137, 500},+    {-1, 0x2212, 564},+    {-1, 0x00CE, 333},+    {-1, 0x0148, 500},+    {-1, 0x0163, 278},+    {-1, 0x00AC, 564},+    {-1, 0x00F6, 500},+    {-1, 0x00FC, 500},+    {-1, 0x2260, 549},+    {-1, 0x0123, 500},+    {-1, 0x00F0, 500},+    {-1, 0x017E, 444},+    {-1, 0x0146, 500},+    {-1, 0x00B9, 300},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 500},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_TIMES_BOLD[316] = {+    {32, 0x0020, 250},+    {33, 0x0021, 333},+    {34, 0x0022, 555},+    {35, 0x0023, 500},+    {36, 0x0024, 500},+    {37, 0x0025, 1000},+    {38, 0x0026, 833},+    {39, 0x2019, 333},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 500},+    {43, 0x002B, 570},+    {44, 0x002C, 250},+    {45, 0x002D, 333},+    {46, 0x002E, 250},+    {47, 0x002F, 278},+    {48, 0x0030, 500},+    {49, 0x0031, 500},+    {50, 0x0032, 500},+    {51, 0x0033, 500},+    {52, 0x0034, 500},+    {53, 0x0035, 500},+    {54, 0x0036, 500},+    {55, 0x0037, 500},+    {56, 0x0038, 500},+    {57, 0x0039, 500},+    {58, 0x003A, 333},+    {59, 0x003B, 333},+    {60, 0x003C, 570},+    {61, 0x003D, 570},+    {62, 0x003E, 570},+    {63, 0x003F, 500},+    {64, 0x0040, 930},+    {65, 0x0041, 722},+    {66, 0x0042, 667},+    {67, 0x0043, 722},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 611},+    {71, 0x0047, 778},+    {72, 0x0048, 778},+    {73, 0x0049, 389},+    {74, 0x004A, 500},+    {75, 0x004B, 778},+    {76, 0x004C, 667},+    {77, 0x004D, 944},+    {78, 0x004E, 722},+    {79, 0x004F, 778},+    {80, 0x0050, 611},+    {81, 0x0051, 778},+    {82, 0x0052, 722},+    {83, 0x0053, 556},+    {84, 0x0054, 667},+    {85, 0x0055, 722},+    {86, 0x0056, 722},+    {87, 0x0057, 1000},+    {88, 0x0058, 722},+    {89, 0x0059, 722},+    {90, 0x005A, 667},+    {91, 0x005B, 333},+    {92, 0x005C, 278},+    {93, 0x005D, 333},+    {94, 0x005E, 581},+    {95, 0x005F, 500},+    {96, 0x2018, 333},+    {97, 0x0061, 500},+    {98, 0x0062, 556},+    {99, 0x0063, 444},+    {100, 0x0064, 556},+    {101, 0x0065, 444},+    {102, 0x0066, 333},+    {103, 0x0067, 500},+    {104, 0x0068, 556},+    {105, 0x0069, 278},+    {106, 0x006A, 333},+    {107, 0x006B, 556},+    {108, 0x006C, 278},+    {109, 0x006D, 833},+    {110, 0x006E, 556},+    {111, 0x006F, 500},+    {112, 0x0070, 556},+    {113, 0x0071, 556},+    {114, 0x0072, 444},+    {115, 0x0073, 389},+    {116, 0x0074, 333},+    {117, 0x0075, 556},+    {118, 0x0076, 500},+    {119, 0x0077, 722},+    {120, 0x0078, 500},+    {121, 0x0079, 500},+    {122, 0x007A, 444},+    {123, 0x007B, 394},+    {124, 0x007C, 220},+    {125, 0x007D, 394},+    {126, 0x007E, 520},+    {161, 0x00A1, 333},+    {162, 0x00A2, 500},+    {163, 0x00A3, 500},+    {164, 0x2044, 167},+    {165, 0x00A5, 500},+    {166, 0x0192, 500},+    {167, 0x00A7, 500},+    {168, 0x00A4, 500},+    {169, 0x0027, 278},+    {170, 0x201C, 500},+    {171, 0x00AB, 500},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 556},+    {175, 0xFB02, 556},+    {177, 0x2013, 500},+    {178, 0x2020, 500},+    {179, 0x2021, 500},+    {180, 0x00B7, 250},+    {182, 0x00B6, 540},+    {183, 0x2022, 350},+    {184, 0x201A, 333},+    {185, 0x201E, 500},+    {186, 0x201D, 500},+    {187, 0x00BB, 500},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 500},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 1000},+    {227, 0x00AA, 300},+    {232, 0x0141, 667},+    {233, 0x00D8, 778},+    {234, 0x0152, 1000},+    {235, 0x00BA, 330},+    {241, 0x00E6, 722},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 500},+    {250, 0x0153, 722},+    {251, 0x00DF, 556},+    {-1, 0x00CF, 389},+    {-1, 0x00E9, 444},+    {-1, 0x0103, 500},+    {-1, 0x0171, 556},+    {-1, 0x011B, 444},+    {-1, 0x0178, 722},+    {-1, 0x00F7, 570},+    {-1, 0x00DD, 722},+    {-1, 0x00C2, 722},+    {-1, 0x00E1, 500},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 500},+    {-1, 0x0219, 389},+    {-1, 0x00EA, 444},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 500},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 556},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 747},+    {-1, 0x0112, 667},+    {-1, 0x010D, 444},+    {-1, 0x00E5, 500},+    {-1, 0x0145, 722},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 500},+    {-1, 0x0162, 667},+    {-1, 0x0106, 722},+    {-1, 0x00E3, 500},+    {-1, 0x0116, 667},+    {-1, 0x0161, 389},+    {-1, 0x015F, 389},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 494},+    {-1, 0x0158, 722},+    {-1, 0x0122, 778},+    {-1, 0x00FB, 556},+    {-1, 0x00E2, 500},+    {-1, 0x0100, 722},+    {-1, 0x0159, 444},+    {-1, 0x00E7, 444},+    {-1, 0x017B, 667},+    {-1, 0x00DE, 611},+    {-1, 0x014C, 778},+    {-1, 0x0154, 722},+    {-1, 0x015A, 556},+    {-1, 0x010F, 672},+    {-1, 0x016A, 722},+    {-1, 0x016F, 556},+    {-1, 0x00B3, 300},+    {-1, 0x00D2, 778},+    {-1, 0x00C0, 722},+    {-1, 0x0102, 722},+    {-1, 0x00D7, 570},+    {-1, 0x00FA, 556},+    {-1, 0x0164, 667},+    {-1, 0x2202, 494},+    {-1, 0x00FF, 500},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 500},+    {-1, 0x00EB, 444},+    {-1, 0x0107, 444},+    {-1, 0x0144, 556},+    {-1, 0x016B, 556},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 389},+    {-1, 0x00B1, 570},+    {-1, 0x00A6, 220},+    {-1, 0x00AE, 747},+    {-1, 0x011E, 778},+    {-1, 0x0130, 389},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 444},+    {-1, 0x014D, 500},+    {-1, 0x0179, 667},+    {-1, 0x017D, 667},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 722},+    {-1, 0x013C, 278},+    {-1, 0x0165, 416},+    {-1, 0x0119, 444},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 722},+    {-1, 0x00C4, 722},+    {-1, 0x00E8, 444},+    {-1, 0x017A, 444},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 778},+    {-1, 0x00F3, 500},+    {-1, 0x0101, 500},+    {-1, 0x015B, 389},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 778},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 556},+    {-1, 0x00B2, 300},+    {-1, 0x00D6, 778},+    {-1, 0x00B5, 556},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 500},+    {-1, 0x0118, 667},+    {-1, 0x0111, 556},+    {-1, 0x00BE, 750},+    {-1, 0x015E, 556},+    {-1, 0x013E, 394},+    {-1, 0x0136, 778},+    {-1, 0x0139, 667},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 444},+    {-1, 0x00CC, 389},+    {-1, 0x012A, 389},+    {-1, 0x013D, 667},+    {-1, 0x00BD, 750},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 500},+    {-1, 0x00F1, 556},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 444},+    {-1, 0x011F, 500},+    {-1, 0x00BC, 750},+    {-1, 0x0160, 556},+    {-1, 0x0218, 556},+    {-1, 0x0150, 778},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 500},+    {-1, 0x010C, 722},+    {-1, 0x00F9, 556},+    {-1, 0x221A, 549},+    {-1, 0x010E, 722},+    {-1, 0x0157, 444},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 500},+    {-1, 0x0156, 722},+    {-1, 0x013B, 667},+    {-1, 0x00C3, 722},+    {-1, 0x0104, 722},+    {-1, 0x00C5, 722},+    {-1, 0x00D5, 778},+    {-1, 0x017C, 444},+    {-1, 0x011A, 667},+    {-1, 0x012E, 389},+    {-1, 0x0137, 556},+    {-1, 0x2212, 570},+    {-1, 0x00CE, 389},+    {-1, 0x0148, 556},+    {-1, 0x0163, 333},+    {-1, 0x00AC, 570},+    {-1, 0x00F6, 500},+    {-1, 0x00FC, 556},+    {-1, 0x2260, 549},+    {-1, 0x0123, 500},+    {-1, 0x00F0, 500},+    {-1, 0x017E, 444},+    {-1, 0x0146, 556},+    {-1, 0x00B9, 300},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 500},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_TIMES_BOLD_ITALIC[316] = {+    {32, 0x0020, 250},+    {33, 0x0021, 389},+    {34, 0x0022, 555},+    {35, 0x0023, 500},+    {36, 0x0024, 500},+    {37, 0x0025, 833},+    {38, 0x0026, 778},+    {39, 0x2019, 333},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 500},+    {43, 0x002B, 570},+    {44, 0x002C, 250},+    {45, 0x002D, 333},+    {46, 0x002E, 250},+    {47, 0x002F, 278},+    {48, 0x0030, 500},+    {49, 0x0031, 500},+    {50, 0x0032, 500},+    {51, 0x0033, 500},+    {52, 0x0034, 500},+    {53, 0x0035, 500},+    {54, 0x0036, 500},+    {55, 0x0037, 500},+    {56, 0x0038, 500},+    {57, 0x0039, 500},+    {58, 0x003A, 333},+    {59, 0x003B, 333},+    {60, 0x003C, 570},+    {61, 0x003D, 570},+    {62, 0x003E, 570},+    {63, 0x003F, 500},+    {64, 0x0040, 832},+    {65, 0x0041, 667},+    {66, 0x0042, 667},+    {67, 0x0043, 667},+    {68, 0x0044, 722},+    {69, 0x0045, 667},+    {70, 0x0046, 667},+    {71, 0x0047, 722},+    {72, 0x0048, 778},+    {73, 0x0049, 389},+    {74, 0x004A, 500},+    {75, 0x004B, 667},+    {76, 0x004C, 611},+    {77, 0x004D, 889},+    {78, 0x004E, 722},+    {79, 0x004F, 722},+    {80, 0x0050, 611},+    {81, 0x0051, 722},+    {82, 0x0052, 667},+    {83, 0x0053, 556},+    {84, 0x0054, 611},+    {85, 0x0055, 722},+    {86, 0x0056, 667},+    {87, 0x0057, 889},+    {88, 0x0058, 667},+    {89, 0x0059, 611},+    {90, 0x005A, 611},+    {91, 0x005B, 333},+    {92, 0x005C, 278},+    {93, 0x005D, 333},+    {94, 0x005E, 570},+    {95, 0x005F, 500},+    {96, 0x2018, 333},+    {97, 0x0061, 500},+    {98, 0x0062, 500},+    {99, 0x0063, 444},+    {100, 0x0064, 500},+    {101, 0x0065, 444},+    {102, 0x0066, 333},+    {103, 0x0067, 500},+    {104, 0x0068, 556},+    {105, 0x0069, 278},+    {106, 0x006A, 278},+    {107, 0x006B, 500},+    {108, 0x006C, 278},+    {109, 0x006D, 778},+    {110, 0x006E, 556},+    {111, 0x006F, 500},+    {112, 0x0070, 500},+    {113, 0x0071, 500},+    {114, 0x0072, 389},+    {115, 0x0073, 389},+    {116, 0x0074, 278},+    {117, 0x0075, 556},+    {118, 0x0076, 444},+    {119, 0x0077, 667},+    {120, 0x0078, 500},+    {121, 0x0079, 444},+    {122, 0x007A, 389},+    {123, 0x007B, 348},+    {124, 0x007C, 220},+    {125, 0x007D, 348},+    {126, 0x007E, 570},+    {161, 0x00A1, 389},+    {162, 0x00A2, 500},+    {163, 0x00A3, 500},+    {164, 0x2044, 167},+    {165, 0x00A5, 500},+    {166, 0x0192, 500},+    {167, 0x00A7, 500},+    {168, 0x00A4, 500},+    {169, 0x0027, 278},+    {170, 0x201C, 500},+    {171, 0x00AB, 500},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 556},+    {175, 0xFB02, 556},+    {177, 0x2013, 500},+    {178, 0x2020, 500},+    {179, 0x2021, 500},+    {180, 0x00B7, 250},+    {182, 0x00B6, 500},+    {183, 0x2022, 350},+    {184, 0x201A, 333},+    {185, 0x201E, 500},+    {186, 0x201D, 500},+    {187, 0x00BB, 500},+    {188, 0x2026, 1000},+    {189, 0x2030, 1000},+    {191, 0x00BF, 500},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 1000},+    {225, 0x00C6, 944},+    {227, 0x00AA, 266},+    {232, 0x0141, 611},+    {233, 0x00D8, 722},+    {234, 0x0152, 944},+    {235, 0x00BA, 300},+    {241, 0x00E6, 722},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 500},+    {250, 0x0153, 722},+    {251, 0x00DF, 500},+    {-1, 0x00CF, 389},+    {-1, 0x00E9, 444},+    {-1, 0x0103, 500},+    {-1, 0x0171, 556},+    {-1, 0x011B, 444},+    {-1, 0x0178, 611},+    {-1, 0x00F7, 570},+    {-1, 0x00DD, 611},+    {-1, 0x00C2, 667},+    {-1, 0x00E1, 500},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 444},+    {-1, 0x0219, 389},+    {-1, 0x00EA, 444},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 500},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 556},+    {-1, 0x00CB, 667},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 747},+    {-1, 0x0112, 667},+    {-1, 0x010D, 444},+    {-1, 0x00E5, 500},+    {-1, 0x0145, 722},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 500},+    {-1, 0x0162, 611},+    {-1, 0x0106, 667},+    {-1, 0x00E3, 500},+    {-1, 0x0116, 667},+    {-1, 0x0161, 389},+    {-1, 0x015F, 389},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 494},+    {-1, 0x0158, 667},+    {-1, 0x0122, 722},+    {-1, 0x00FB, 556},+    {-1, 0x00E2, 500},+    {-1, 0x0100, 667},+    {-1, 0x0159, 389},+    {-1, 0x00E7, 444},+    {-1, 0x017B, 611},+    {-1, 0x00DE, 611},+    {-1, 0x014C, 722},+    {-1, 0x0154, 667},+    {-1, 0x015A, 556},+    {-1, 0x010F, 608},+    {-1, 0x016A, 722},+    {-1, 0x016F, 556},+    {-1, 0x00B3, 300},+    {-1, 0x00D2, 722},+    {-1, 0x00C0, 667},+    {-1, 0x0102, 667},+    {-1, 0x00D7, 570},+    {-1, 0x00FA, 556},+    {-1, 0x0164, 611},+    {-1, 0x2202, 494},+    {-1, 0x00FF, 444},+    {-1, 0x0143, 722},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 667},+    {-1, 0x00E4, 500},+    {-1, 0x00EB, 444},+    {-1, 0x0107, 444},+    {-1, 0x0144, 556},+    {-1, 0x016B, 556},+    {-1, 0x0147, 722},+    {-1, 0x00CD, 389},+    {-1, 0x00B1, 570},+    {-1, 0x00A6, 220},+    {-1, 0x00AE, 747},+    {-1, 0x011E, 722},+    {-1, 0x0130, 389},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 667},+    {-1, 0x0155, 389},+    {-1, 0x014D, 500},+    {-1, 0x0179, 611},+    {-1, 0x017D, 611},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 667},+    {-1, 0x013C, 278},+    {-1, 0x0165, 366},+    {-1, 0x0119, 444},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 667},+    {-1, 0x00C4, 667},+    {-1, 0x00E8, 444},+    {-1, 0x017A, 389},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 722},+    {-1, 0x00F3, 500},+    {-1, 0x0101, 500},+    {-1, 0x015B, 389},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 722},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 500},+    {-1, 0x00B2, 300},+    {-1, 0x00D6, 722},+    {-1, 0x00B5, 576},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 500},+    {-1, 0x0118, 667},+    {-1, 0x0111, 500},+    {-1, 0x00BE, 750},+    {-1, 0x015E, 556},+    {-1, 0x013E, 382},+    {-1, 0x0136, 667},+    {-1, 0x0139, 611},+    {-1, 0x2122, 1000},+    {-1, 0x0117, 444},+    {-1, 0x00CC, 389},+    {-1, 0x012A, 389},+    {-1, 0x013D, 611},+    {-1, 0x00BD, 750},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 500},+    {-1, 0x00F1, 556},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 667},+    {-1, 0x0113, 444},+    {-1, 0x011F, 500},+    {-1, 0x00BC, 750},+    {-1, 0x0160, 556},+    {-1, 0x0218, 556},+    {-1, 0x0150, 722},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 500},+    {-1, 0x010C, 667},+    {-1, 0x00F9, 556},+    {-1, 0x221A, 549},+    {-1, 0x010E, 722},+    {-1, 0x0157, 389},+    {-1, 0x00D1, 722},+    {-1, 0x00F5, 500},+    {-1, 0x0156, 667},+    {-1, 0x013B, 611},+    {-1, 0x00C3, 667},+    {-1, 0x0104, 667},+    {-1, 0x00C5, 667},+    {-1, 0x00D5, 722},+    {-1, 0x017C, 389},+    {-1, 0x011A, 667},+    {-1, 0x012E, 389},+    {-1, 0x0137, 500},+    {-1, 0x2212, 606},+    {-1, 0x00CE, 389},+    {-1, 0x0148, 556},+    {-1, 0x0163, 278},+    {-1, 0x00AC, 606},+    {-1, 0x00F6, 500},+    {-1, 0x00FC, 556},+    {-1, 0x2260, 549},+    {-1, 0x0123, 500},+    {-1, 0x00F0, 500},+    {-1, 0x017E, 389},+    {-1, 0x0146, 556},+    {-1, 0x00B9, 300},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 500},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_TIMES_ITALIC[316] = {+    {32, 0x0020, 250},+    {33, 0x0021, 333},+    {34, 0x0022, 420},+    {35, 0x0023, 500},+    {36, 0x0024, 500},+    {37, 0x0025, 833},+    {38, 0x0026, 778},+    {39, 0x2019, 333},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 500},+    {43, 0x002B, 675},+    {44, 0x002C, 250},+    {45, 0x002D, 333},+    {46, 0x002E, 250},+    {47, 0x002F, 278},+    {48, 0x0030, 500},+    {49, 0x0031, 500},+    {50, 0x0032, 500},+    {51, 0x0033, 500},+    {52, 0x0034, 500},+    {53, 0x0035, 500},+    {54, 0x0036, 500},+    {55, 0x0037, 500},+    {56, 0x0038, 500},+    {57, 0x0039, 500},+    {58, 0x003A, 333},+    {59, 0x003B, 333},+    {60, 0x003C, 675},+    {61, 0x003D, 675},+    {62, 0x003E, 675},+    {63, 0x003F, 500},+    {64, 0x0040, 920},+    {65, 0x0041, 611},+    {66, 0x0042, 611},+    {67, 0x0043, 667},+    {68, 0x0044, 722},+    {69, 0x0045, 611},+    {70, 0x0046, 611},+    {71, 0x0047, 722},+    {72, 0x0048, 722},+    {73, 0x0049, 333},+    {74, 0x004A, 444},+    {75, 0x004B, 667},+    {76, 0x004C, 556},+    {77, 0x004D, 833},+    {78, 0x004E, 667},+    {79, 0x004F, 722},+    {80, 0x0050, 611},+    {81, 0x0051, 722},+    {82, 0x0052, 611},+    {83, 0x0053, 500},+    {84, 0x0054, 556},+    {85, 0x0055, 722},+    {86, 0x0056, 611},+    {87, 0x0057, 833},+    {88, 0x0058, 611},+    {89, 0x0059, 556},+    {90, 0x005A, 556},+    {91, 0x005B, 389},+    {92, 0x005C, 278},+    {93, 0x005D, 389},+    {94, 0x005E, 422},+    {95, 0x005F, 500},+    {96, 0x2018, 333},+    {97, 0x0061, 500},+    {98, 0x0062, 500},+    {99, 0x0063, 444},+    {100, 0x0064, 500},+    {101, 0x0065, 444},+    {102, 0x0066, 278},+    {103, 0x0067, 500},+    {104, 0x0068, 500},+    {105, 0x0069, 278},+    {106, 0x006A, 278},+    {107, 0x006B, 444},+    {108, 0x006C, 278},+    {109, 0x006D, 722},+    {110, 0x006E, 500},+    {111, 0x006F, 500},+    {112, 0x0070, 500},+    {113, 0x0071, 500},+    {114, 0x0072, 389},+    {115, 0x0073, 389},+    {116, 0x0074, 278},+    {117, 0x0075, 500},+    {118, 0x0076, 444},+    {119, 0x0077, 667},+    {120, 0x0078, 444},+    {121, 0x0079, 444},+    {122, 0x007A, 389},+    {123, 0x007B, 400},+    {124, 0x007C, 275},+    {125, 0x007D, 400},+    {126, 0x007E, 541},+    {161, 0x00A1, 389},+    {162, 0x00A2, 500},+    {163, 0x00A3, 500},+    {164, 0x2044, 167},+    {165, 0x00A5, 500},+    {166, 0x0192, 500},+    {167, 0x00A7, 500},+    {168, 0x00A4, 500},+    {169, 0x0027, 214},+    {170, 0x201C, 556},+    {171, 0x00AB, 500},+    {172, 0x2039, 333},+    {173, 0x203A, 333},+    {174, 0xFB01, 500},+    {175, 0xFB02, 500},+    {177, 0x2013, 500},+    {178, 0x2020, 500},+    {179, 0x2021, 500},+    {180, 0x00B7, 250},+    {182, 0x00B6, 523},+    {183, 0x2022, 350},+    {184, 0x201A, 333},+    {185, 0x201E, 556},+    {186, 0x201D, 556},+    {187, 0x00BB, 500},+    {188, 0x2026, 889},+    {189, 0x2030, 1000},+    {191, 0x00BF, 500},+    {193, 0x0060, 333},+    {194, 0x00B4, 333},+    {195, 0x02C6, 333},+    {196, 0x02DC, 333},+    {197, 0x00AF, 333},+    {198, 0x02D8, 333},+    {199, 0x02D9, 333},+    {200, 0x00A8, 333},+    {202, 0x02DA, 333},+    {203, 0x00B8, 333},+    {205, 0x02DD, 333},+    {206, 0x02DB, 333},+    {207, 0x02C7, 333},+    {208, 0x2014, 889},+    {225, 0x00C6, 889},+    {227, 0x00AA, 276},+    {232, 0x0141, 556},+    {233, 0x00D8, 722},+    {234, 0x0152, 944},+    {235, 0x00BA, 310},+    {241, 0x00E6, 667},+    {245, 0x0131, 278},+    {248, 0x0142, 278},+    {249, 0x00F8, 500},+    {250, 0x0153, 667},+    {251, 0x00DF, 500},+    {-1, 0x00CF, 333},+    {-1, 0x00E9, 444},+    {-1, 0x0103, 500},+    {-1, 0x0171, 500},+    {-1, 0x011B, 444},+    {-1, 0x0178, 556},+    {-1, 0x00F7, 675},+    {-1, 0x00DD, 556},+    {-1, 0x00C2, 611},+    {-1, 0x00E1, 500},+    {-1, 0x00DB, 722},+    {-1, 0x00FD, 444},+    {-1, 0x0219, 389},+    {-1, 0x00EA, 444},+    {-1, 0x016E, 722},+    {-1, 0x00DC, 722},+    {-1, 0x0105, 500},+    {-1, 0x00DA, 722},+    {-1, 0x0173, 500},+    {-1, 0x00CB, 611},+    {-1, 0x0110, 722},+    {-1, 0xF6C3, 250},+    {-1, 0x00A9, 760},+    {-1, 0x0112, 611},+    {-1, 0x010D, 444},+    {-1, 0x00E5, 500},+    {-1, 0x0145, 667},+    {-1, 0x013A, 278},+    {-1, 0x00E0, 500},+    {-1, 0x0162, 556},+    {-1, 0x0106, 667},+    {-1, 0x00E3, 500},+    {-1, 0x0116, 611},+    {-1, 0x0161, 389},+    {-1, 0x015F, 389},+    {-1, 0x00ED, 278},+    {-1, 0x25CA, 471},+    {-1, 0x0158, 611},+    {-1, 0x0122, 722},+    {-1, 0x00FB, 500},+    {-1, 0x00E2, 500},+    {-1, 0x0100, 611},+    {-1, 0x0159, 389},+    {-1, 0x00E7, 444},+    {-1, 0x017B, 556},+    {-1, 0x00DE, 611},+    {-1, 0x014C, 722},+    {-1, 0x0154, 611},+    {-1, 0x015A, 500},+    {-1, 0x010F, 544},+    {-1, 0x016A, 722},+    {-1, 0x016F, 500},+    {-1, 0x00B3, 300},+    {-1, 0x00D2, 722},+    {-1, 0x00C0, 611},+    {-1, 0x0102, 611},+    {-1, 0x00D7, 675},+    {-1, 0x00FA, 500},+    {-1, 0x0164, 556},+    {-1, 0x2202, 476},+    {-1, 0x00FF, 444},+    {-1, 0x0143, 667},+    {-1, 0x00EE, 278},+    {-1, 0x00CA, 611},+    {-1, 0x00E4, 500},+    {-1, 0x00EB, 444},+    {-1, 0x0107, 444},+    {-1, 0x0144, 500},+    {-1, 0x016B, 500},+    {-1, 0x0147, 667},+    {-1, 0x00CD, 333},+    {-1, 0x00B1, 675},+    {-1, 0x00A6, 275},+    {-1, 0x00AE, 760},+    {-1, 0x011E, 722},+    {-1, 0x0130, 333},+    {-1, 0x2211, 600},+    {-1, 0x00C8, 611},+    {-1, 0x0155, 389},+    {-1, 0x014D, 500},+    {-1, 0x0179, 556},+    {-1, 0x017D, 556},+    {-1, 0x2265, 549},+    {-1, 0x00D0, 722},+    {-1, 0x00C7, 667},+    {-1, 0x013C, 278},+    {-1, 0x0165, 300},+    {-1, 0x0119, 444},+    {-1, 0x0172, 722},+    {-1, 0x00C1, 611},+    {-1, 0x00C4, 611},+    {-1, 0x00E8, 444},+    {-1, 0x017A, 389},+    {-1, 0x012F, 278},+    {-1, 0x00D3, 722},+    {-1, 0x00F3, 500},+    {-1, 0x0101, 500},+    {-1, 0x015B, 389},+    {-1, 0x00EF, 278},+    {-1, 0x00D4, 722},+    {-1, 0x00D9, 722},+    {-1, 0x0394, 612},+    {-1, 0x00FE, 500},+    {-1, 0x00B2, 300},+    {-1, 0x00D6, 722},+    {-1, 0x00B5, 500},+    {-1, 0x00EC, 278},+    {-1, 0x0151, 500},+    {-1, 0x0118, 611},+    {-1, 0x0111, 500},+    {-1, 0x00BE, 750},+    {-1, 0x015E, 500},+    {-1, 0x013E, 300},+    {-1, 0x0136, 667},+    {-1, 0x0139, 556},+    {-1, 0x2122, 980},+    {-1, 0x0117, 444},+    {-1, 0x00CC, 333},+    {-1, 0x012A, 333},+    {-1, 0x013D, 611},+    {-1, 0x00BD, 750},+    {-1, 0x2264, 549},+    {-1, 0x00F4, 500},+    {-1, 0x00F1, 500},+    {-1, 0x0170, 722},+    {-1, 0x00C9, 611},+    {-1, 0x0113, 444},+    {-1, 0x011F, 500},+    {-1, 0x00BC, 750},+    {-1, 0x0160, 500},+    {-1, 0x0218, 500},+    {-1, 0x0150, 722},+    {-1, 0x00B0, 400},+    {-1, 0x00F2, 500},+    {-1, 0x010C, 667},+    {-1, 0x00F9, 500},+    {-1, 0x221A, 453},+    {-1, 0x010E, 722},+    {-1, 0x0157, 389},+    {-1, 0x00D1, 667},+    {-1, 0x00F5, 500},+    {-1, 0x0156, 611},+    {-1, 0x013B, 556},+    {-1, 0x00C3, 611},+    {-1, 0x0104, 611},+    {-1, 0x00C5, 611},+    {-1, 0x00D5, 722},+    {-1, 0x017C, 389},+    {-1, 0x011A, 611},+    {-1, 0x012E, 333},+    {-1, 0x0137, 444},+    {-1, 0x2212, 675},+    {-1, 0x00CE, 333},+    {-1, 0x0148, 500},+    {-1, 0x0163, 278},+    {-1, 0x00AC, 675},+    {-1, 0x00F6, 500},+    {-1, 0x00FC, 500},+    {-1, 0x2260, 549},+    {-1, 0x0123, 500},+    {-1, 0x00F0, 500},+    {-1, 0x017E, 389},+    {-1, 0x0146, 500},+    {-1, 0x00B9, 300},+    {-1, 0x012B, 278},+    {-1, 0x20AC, 500},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_ZAPF_DINGBATS[203] = {+    {32, 0x0020, 278},+    {33, 0x0021, 974},+    {34, 0x0022, 961},+    {35, 0x0023, 974},+    {36, 0x0024, 980},+    {37, 0x0025, 719},+    {38, 0x0026, 789},+    {39, 0x0027, 790},+    {40, 0x0028, 791},+    {41, 0x0029, 690},+    {42, 0x002A, 960},+    {43, 0x002B, 939},+    {44, 0x002C, 549},+    {45, 0x002D, 855},+    {46, 0x002E, 911},+    {47, 0x002F, 933},+    {48, 0x0030, 911},+    {49, 0x0031, 945},+    {50, 0x0032, 974},+    {51, 0x0033, 755},+    {52, 0x0034, 846},+    {53, 0x0035, 762},+    {54, 0x0036, 761},+    {55, 0x0037, 571},+    {56, 0x0038, 677},+    {57, 0x0039, 763},+    {58, 0x003A, 760},+    {59, 0x003B, 759},+    {60, 0x003C, 754},+    {61, 0x003D, 494},+    {62, 0x003E, 552},+    {63, 0x003F, 537},+    {64, 0x0040, 577},+    {65, 0x0041, 692},+    {66, 0x0042, 786},+    {67, 0x0043, 788},+    {68, 0x0044, 788},+    {69, 0x0045, 790},+    {70, 0x0046, 793},+    {71, 0x0047, 794},+    {72, 0x0048, 816},+    {73, 0x0049, 823},+    {74, 0x004A, 789},+    {75, 0x004B, 841},+    {76, 0x004C, 823},+    {77, 0x004D, 833},+    {78, 0x004E, 816},+    {79, 0x004F, 831},+    {80, 0x0050, 923},+    {81, 0x0051, 744},+    {82, 0x0052, 723},+    {83, 0x0053, 749},+    {84, 0x0054, 790},+    {85, 0x0055, 792},+    {86, 0x0056, 695},+    {87, 0x0057, 776},+    {88, 0x0058, 768},+    {89, 0x0059, 792},+    {90, 0x005A, 759},+    {91, 0x005B, 707},+    {92, 0x005C, 708},+    {93, 0x005D, 682},+    {94, 0x005E, 701},+    {95, 0x005F, 826},+    {96, 0x0060, 815},+    {97, 0x0061, 789},+    {98, 0x0062, 789},+    {99, 0x0063, 707},+    {100, 0x0064, 687},+    {101, 0x0065, 696},+    {102, 0x0066, 689},+    {103, 0x0067, 786},+    {104, 0x0068, 787},+    {105, 0x0069, 713},+    {106, 0x006A, 791},+    {107, 0x006B, 785},+    {108, 0x006C, 791},+    {109, 0x006D, 873},+    {110, 0x006E, 761},+    {111, 0x006F, 762},+    {112, 0x0070, 762},+    {113, 0x0071, 759},+    {114, 0x0072, 759},+    {115, 0x0073, 892},+    {116, 0x0074, 892},+    {117, 0x0075, 788},+    {118, 0x0076, 784},+    {119, 0x0077, 438},+    {120, 0x0078, 138},+    {121, 0x0079, 277},+    {122, 0x007A, 415},+    {123, 0x007B, 392},+    {124, 0x007C, 392},+    {125, 0x007D, 668},+    {126, 0x007E, 668},+    {128, 0x0080, 390},+    {129, 0x0081, 390},+    {130, 0x0082, 317},+    {131, 0x0083, 317},+    {132, 0x0084, 276},+    {133, 0x0085, 276},+    {134, 0x0086, 509},+    {135, 0x0087, 509},+    {136, 0x0088, 410},+    {137, 0x0089, 410},+    {138, 0x008A, 234},+    {139, 0x008B, 234},+    {140, 0x008C, 334},+    {141, 0x008D, 334},+    {161, 0x00A1, 732},+    {162, 0x00A2, 544},+    {163, 0x00A3, 544},+    {164, 0x00A4, 910},+    {165, 0x00A5, 667},+    {166, 0x00A6, 760},+    {167, 0x00A7, 760},+    {168, 0x00A8, 776},+    {169, 0x00A9, 595},+    {170, 0x00AA, 694},+    {171, 0x00AB, 626},+    {172, 0x00AC, 788},+    {173, 0x00AD, 788},+    {174, 0x00AE, 788},+    {175, 0x00AF, 788},+    {176, 0x00B0, 788},+    {177, 0x00B1, 788},+    {178, 0x00B2, 788},+    {179, 0x00B3, 788},+    {180, 0x00B4, 788},+    {181, 0x00B5, 788},+    {182, 0x00B6, 788},+    {183, 0x00B7, 788},+    {184, 0x00B8, 788},+    {185, 0x00B9, 788},+    {186, 0x00BA, 788},+    {187, 0x00BB, 788},+    {188, 0x00BC, 788},+    {189, 0x00BD, 788},+    {190, 0x00BE, 788},+    {191, 0x00BF, 788},+    {192, 0x00C0, 788},+    {193, 0x00C1, 788},+    {194, 0x00C2, 788},+    {195, 0x00C3, 788},+    {196, 0x00C4, 788},+    {197, 0x00C5, 788},+    {198, 0x00C6, 788},+    {199, 0x00C7, 788},+    {200, 0x00C8, 788},+    {201, 0x00C9, 788},+    {202, 0x00CA, 788},+    {203, 0x00CB, 788},+    {204, 0x00CC, 788},+    {205, 0x00CD, 788},+    {206, 0x00CE, 788},+    {207, 0x00CF, 788},+    {208, 0x00D0, 788},+    {209, 0x00D1, 788},+    {210, 0x00D2, 788},+    {211, 0x00D3, 788},+    {212, 0x00D4, 894},+    {213, 0x00D5, 838},+    {214, 0x00D6, 1016},+    {215, 0x00D7, 458},+    {216, 0x00D8, 748},+    {217, 0x00D9, 924},+    {218, 0x00DA, 748},+    {219, 0x00DB, 918},+    {220, 0x00DC, 927},+    {221, 0x00DD, 928},+    {222, 0x00DE, 928},+    {223, 0x00DF, 834},+    {224, 0x00E0, 873},+    {225, 0x00E1, 828},+    {226, 0x00E2, 924},+    {227, 0x00E3, 924},+    {228, 0x00E4, 917},+    {229, 0x00E5, 930},+    {230, 0x00E6, 931},+    {231, 0x00E7, 463},+    {232, 0x00E8, 883},+    {233, 0x00E9, 836},+    {234, 0x00EA, 836},+    {235, 0x00EB, 867},+    {236, 0x00EC, 867},+    {237, 0x00ED, 696},+    {238, 0x00EE, 696},+    {239, 0x00EF, 874},+    {241, 0x00F1, 874},+    {242, 0x00F2, 760},+    {243, 0x00F3, 946},+    {244, 0x00F4, 771},+    {245, 0x00F5, 865},+    {246, 0x00F6, 771},+    {247, 0x00F7, 888},+    {248, 0x00F8, 967},+    {249, 0x00F9, 888},+    {250, 0x00FA, 831},+    {251, 0x00FB, 873},+    {252, 0x00FC, 927},+    {253, 0x00FD, 970},+    {254, 0x00FE, 918},+    {-1, 0xFFFF, 0}+    };++static const HPDF_CharData CHAR_DATA_SYMBOL[190] = {+    {32, 0x0020, 250},+    {33, 0x0021, 333},+    {34, 0x0022, 713},+    {35, 0x0023, 500},+    {36, 0x0024, 549},+    {37, 0x0025, 833},+    {38, 0x0026, 778},+    {39, 0x0027, 439},+    {40, 0x0028, 333},+    {41, 0x0029, 333},+    {42, 0x002A, 500},+    {43, 0x002B, 549},+    {44, 0x002C, 250},+    {45, 0x002D, 549},+    {46, 0x002E, 250},+    {47, 0x002F, 278},+    {48, 0x0030, 500},+    {49, 0x0031, 500},+    {50, 0x0032, 500},+    {51, 0x0033, 500},+    {52, 0x0034, 500},+    {53, 0x0035, 500},+    {54, 0x0036, 500},+    {55, 0x0037, 500},+    {56, 0x0038, 500},+    {57, 0x0039, 500},+    {58, 0x003A, 278},+    {59, 0x003B, 278},+    {60, 0x003C, 549},+    {61, 0x003D, 549},+    {62, 0x003E, 549},+    {63, 0x003F, 444},+    {64, 0x0040, 549},+    {65, 0x0041, 722},+    {66, 0x0042, 667},+    {67, 0x0043, 722},+    {68, 0x0044, 612},+    {69, 0x0045, 611},+    {70, 0x0046, 763},+    {71, 0x0047, 603},+    {72, 0x0048, 722},+    {73, 0x0049, 333},+    {74, 0x004A, 631},+    {75, 0x004B, 722},+    {76, 0x004C, 686},+    {77, 0x004D, 889},+    {78, 0x004E, 722},+    {79, 0x004F, 722},+    {80, 0x0050, 768},+    {81, 0x0051, 741},+    {82, 0x0052, 556},+    {83, 0x0053, 592},+    {84, 0x0054, 611},+    {85, 0x0055, 690},+    {86, 0x0056, 439},+    {87, 0x0057, 768},+    {88, 0x0058, 645},+    {89, 0x0059, 795},+    {90, 0x005A, 611},+    {91, 0x005B, 333},+    {92, 0x005C, 863},+    {93, 0x005D, 333},+    {94, 0x005E, 658},+    {95, 0x005F, 500},+    {96, 0x0060, 500},+    {97, 0x0061, 631},+    {98, 0x0062, 549},+    {99, 0x0063, 549},+    {100, 0x0064, 494},+    {101, 0x0065, 439},+    {102, 0x0066, 521},+    {103, 0x0067, 411},+    {104, 0x0068, 603},+    {105, 0x0069, 329},+    {106, 0x006A, 603},+    {107, 0x006B, 549},+    {108, 0x006C, 549},+    {109, 0x006D, 576},+    {110, 0x006E, 521},+    {111, 0x006F, 549},+    {112, 0x0070, 549},+    {113, 0x0071, 521},+    {114, 0x0072, 549},+    {115, 0x0073, 603},+    {116, 0x0074, 439},+    {117, 0x0075, 576},+    {118, 0x0076, 713},+    {119, 0x0077, 686},+    {120, 0x0078, 493},+    {121, 0x0079, 686},+    {122, 0x007A, 494},+    {123, 0x007B, 480},+    {124, 0x007C, 200},+    {125, 0x007D, 480},+    {126, 0x007E, 549},+    {160, 0x00A0, 750},+    {161, 0x00A1, 620},+    {162, 0x00A2, 247},+    {163, 0x00A3, 549},+    {164, 0x00A4, 167},+    {165, 0x00A5, 713},+    {166, 0x00A6, 500},+    {167, 0x00A7, 753},+    {168, 0x00A8, 753},+    {169, 0x00A9, 753},+    {170, 0x00AA, 753},+    {171, 0x00AB, 1042},+    {172, 0x00AC, 987},+    {173, 0x00AD, 603},+    {174, 0x00AE, 987},+    {175, 0x00AF, 603},+    {176, 0x00B0, 400},+    {177, 0x00B1, 549},+    {178, 0x00B2, 411},+    {179, 0x00B3, 549},+    {180, 0x00B4, 549},+    {181, 0x00B5, 713},+    {182, 0x00B6, 494},+    {183, 0x00B7, 460},+    {184, 0x00B8, 549},+    {185, 0x00B9, 549},+    {186, 0x00BA, 549},+    {187, 0x00BB, 549},+    {188, 0x00BC, 1000},+    {189, 0x00BD, 603},+    {190, 0x00BE, 1000},+    {191, 0x00BF, 658},+    {192, 0x00C0, 823},+    {193, 0x00C1, 686},+    {194, 0x00C2, 795},+    {195, 0x00C3, 987},+    {196, 0x00C4, 768},+    {197, 0x00C5, 768},+    {198, 0x00C6, 823},+    {199, 0x00C7, 768},+    {200, 0x00C8, 768},+    {201, 0x00C9, 713},+    {202, 0x00CA, 713},+    {203, 0x00CB, 713},+    {204, 0x00CC, 713},+    {205, 0x00CD, 713},+    {206, 0x00CE, 713},+    {207, 0x00CF, 713},+    {208, 0x00D0, 768},+    {209, 0x00D1, 713},+    {210, 0x00D2, 790},+    {211, 0x00D3, 790},+    {212, 0x00D4, 890},+    {213, 0x00D5, 823},+    {214, 0x00D6, 549},+    {215, 0x00D7, 250},+    {216, 0x00D8, 713},+    {217, 0x00D9, 603},+    {218, 0x00DA, 603},+    {219, 0x00DB, 1042},+    {220, 0x00DC, 987},+    {221, 0x00DD, 603},+    {222, 0x00DE, 987},+    {223, 0x00DF, 603},+    {224, 0x00E0, 494},+    {225, 0x00E1, 329},+    {226, 0x00E2, 790},+    {227, 0x00E3, 790},+    {228, 0x00E4, 786},+    {229, 0x00E5, 713},+    {230, 0x00E6, 384},+    {231, 0x00E7, 384},+    {232, 0x00E8, 384},+    {233, 0x00E9, 384},+    {234, 0x00EA, 384},+    {235, 0x00EB, 384},+    {236, 0x00EC, 494},+    {237, 0x00ED, 494},+    {238, 0x00EE, 494},+    {239, 0x00EF, 494},+    {241, 0x00F1, 329},+    {242, 0x00F2, 274},+    {243, 0x00F3, 686},+    {244, 0x00F4, 686},+    {245, 0x00F5, 686},+    {246, 0x00F6, 384},+    {247, 0x00F7, 384},+    {248, 0x00F8, 384},+    {249, 0x00F9, 384},+    {250, 0x00FA, 384},+    {251, 0x00FB, 384},+    {252, 0x00FC, 494},+    {253, 0x00FD, 494},+    {254, 0x00FE, 494},+    {-1, 0xFFFF, 0}+    };+++/*----------------------------------------------------------------------------*/+/*------ base14 fonts --------------------------------------------------------*/++#define  HPDF_FONT_COURIER                 "Courier"+#define  HPDF_FONT_COURIER_BOLD            "Courier-Bold"+#define  HPDF_FONT_COURIER_OBLIQUE         "Courier-Oblique"+#define  HPDF_FONT_COURIER_BOLD_OBLIQUE    "Courier-BoldOblique"+#define  HPDF_FONT_HELVETICA               "Helvetica"+#define  HPDF_FONT_HELVETICA_BOLD          "Helvetica-Bold"+#define  HPDF_FONT_HELVETICA_OBLIQUE       "Helvetica-Oblique"+#define  HPDF_FONT_HELVETICA_BOLD_OBLIQUE  "Helvetica-BoldOblique"+#define  HPDF_FONT_TIMES_ROMAN             "Times-Roman"+#define  HPDF_FONT_TIMES_BOLD              "Times-Bold"+#define  HPDF_FONT_TIMES_ITALIC            "Times-Italic"+#define  HPDF_FONT_TIMES_BOLD_ITALIC       "Times-BoldItalic"+#define  HPDF_FONT_SYMBOL                  "Symbol"+#define  HPDF_FONT_ZAPF_DINGBATS           "ZapfDingbats"+++typedef struct _HPDF_Base14FontDefData {+    const char      *font_name;+    const HPDF_CharData  *widths_table;+    HPDF_BOOL             is_font_specific;+    HPDF_INT16            ascent;+    HPDF_INT16            descent;+    HPDF_UINT16           x_height;+    HPDF_UINT16           cap_height;+    HPDF_Box              bbox;+} HPDF_Base14FontDefData;+++static const HPDF_Base14FontDefData  HPDF_BUILTIN_FONTS[] = {+    {+        HPDF_FONT_COURIER,+        CHAR_DATA_COURIER,+        HPDF_FALSE,+        629,+        -157,+        426,+        562,+        {-23, -250, 715, 805}+    },+    {+        HPDF_FONT_COURIER_BOLD,+        CHAR_DATA_COURIER_BOLD,+        HPDF_FALSE,+        629,+        -157,+        439,+        562,+        {-113, -250, 749, 801}+    },+    {+        HPDF_FONT_COURIER_OBLIQUE,+        CHAR_DATA_COURIER_OBLIQUE,+        HPDF_FALSE,+        629,+        -157,+        426,+        562,+        {-27, -250, 849, 805}+    },+    {+        HPDF_FONT_COURIER_BOLD_OBLIQUE,+        CHAR_DATA_COURIER_BOLD_OBLIQUE,+        HPDF_FALSE,+        629,+        -157,+        439,+        562,+        {-57, -250, 869, 801}+    },+    {+        HPDF_FONT_HELVETICA,+        CHAR_DATA_HELVETICA,+        HPDF_FALSE,+        718,+        -207,+        523,+        718,+        {-166, -225, 1000, 931}+    },+    {+        HPDF_FONT_HELVETICA_BOLD,+        CHAR_DATA_HELVETICA_BOLD,+        HPDF_FALSE,+        718,+        -207,+        532,+        718,+        {-170, -228, 1003, 962}+    },+    {+        HPDF_FONT_HELVETICA_OBLIQUE,+        CHAR_DATA_HELVETICA_OBLIQUE,+        HPDF_FALSE,+        718,+        -207,+        532,+        718,+        {-170, -225, 1116, 931}+    },+    {+        HPDF_FONT_HELVETICA_BOLD_OBLIQUE,+        CHAR_DATA_HELVETICA_BOLD_OBLIQUE,+        HPDF_FALSE,+        718,+        -207,+        532,+        718,+        {-174, -228, 1114, 962}+    },+    {+        HPDF_FONT_TIMES_ROMAN,+        CHAR_DATA_TIMES_ROMAN,+        HPDF_FALSE,+        683,+        -217,+        450,+        662,+        {-168, -218, 1000, 898}+    },+    {+        HPDF_FONT_TIMES_BOLD,+        CHAR_DATA_TIMES_BOLD,+        HPDF_FALSE,+        683,+        -217,+        461,+        676,+        {-168, -218, 1000, 935}+    },+    {+        HPDF_FONT_TIMES_ITALIC,+        CHAR_DATA_TIMES_ITALIC,+        HPDF_FALSE,+        683,+        -217,+        441,+        653,+        {-169, -217, 1010, 883}+    },+    {+        HPDF_FONT_TIMES_BOLD_ITALIC,+        CHAR_DATA_TIMES_BOLD_ITALIC,+        HPDF_FALSE,+        683,+        -217,+        462,+        669,+        {-200, -218, 996, 921}+    },+    {+        HPDF_FONT_SYMBOL,+        CHAR_DATA_SYMBOL,+        HPDF_TRUE,+        0,+        0,+        0,+        0,+        {-180, -293, 1090, 1010}+    },+    {+        HPDF_FONT_ZAPF_DINGBATS,+        CHAR_DATA_ZAPF_DINGBATS,+        HPDF_TRUE,+        0,+        0,+        0,+        0,+        {-1, -143, 981, 820}+    },+    {+        NULL,+        NULL,+        HPDF_FALSE,+        0,+        0,+        0,+        0,+        {0, 0, 0, 0}+    },+};+++/*---------------------------------------------------------------------------*/++const HPDF_Base14FontDefData*+HPDF_Base14FontDef_FindBuiltinData  (const char  *font_name);+++/*---------------------------------------------------------------------------*/+/*----- PDF_Base14FontDef ---------------------------------------------------*/++const HPDF_Base14FontDefData*+HPDF_Base14FontDef_FindBuiltinData  (const char  *font_name)+{+    HPDF_UINT i = 0;++    while (HPDF_BUILTIN_FONTS[i].font_name) {+        if (HPDF_StrCmp (HPDF_BUILTIN_FONTS[i].font_name, font_name) == 0)+            break;++        i++;+    }++    return &HPDF_BUILTIN_FONTS[i];+}++HPDF_FontDef+HPDF_Base14FontDef_New  (HPDF_MMgr        mmgr,+                         const char  *font_name)+{+    HPDF_FontDef                   fontdef;+    HPDF_STATUS                    ret;+    const HPDF_Base14FontDefData   *data;+    char                      *eptr;+    HPDF_Type1FontDefAttr          attr;++    fontdef = HPDF_Type1FontDef_New (mmgr);+    if (!fontdef)+        return NULL;++    data = HPDF_Base14FontDef_FindBuiltinData (font_name);++    if (!data->font_name) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_FONT_NAME, 0);+        HPDF_FontDef_Free (fontdef);+        return NULL;+    }++    eptr = fontdef->base_font + HPDF_LIMIT_MAX_NAME_LEN;+    HPDF_StrCpy (fontdef->base_font, data->font_name, eptr);++    attr = (HPDF_Type1FontDefAttr)fontdef->attr;+    attr->is_base14font = HPDF_TRUE;++    if (data->is_font_specific)+        HPDF_StrCpy (attr->encoding_scheme, HPDF_ENCODING_FONT_SPECIFIC,+                attr->encoding_scheme + HPDF_LIMIT_MAX_NAME_LEN);++    ret = HPDF_Type1FontDef_SetWidths (fontdef, data->widths_table);++    if (ret != HPDF_OK) {+        HPDF_FontDef_Free (fontdef);+        return NULL;+    }++    fontdef->font_bbox = data->bbox;+    fontdef->ascent = data->ascent;+    fontdef->descent = data->descent;+    fontdef->x_height = data->x_height;+    fontdef->cap_height = data->cap_height;++    fontdef->valid = HPDF_TRUE;++    return fontdef;+}+
+ haru/hpdf_fontdef_cid.c view
@@ -0,0 +1,194 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_cid.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_fontdef.h"++void+HPDF_CIDFontDef_FreeWidth  (HPDF_FontDef  fontdef);+++void+HPDF_CIDFontDef_FreeFunc (HPDF_FontDef  fontdef);+++/*----------------------------------------------------------------------*/+/*----- HPDF_CIDFontDef ------------------------------------------------*/++void+HPDF_CIDFontDef_FreeWidth  (HPDF_FontDef  fontdef)+{+    HPDF_CIDFontDefAttr attr = (HPDF_CIDFontDefAttr)fontdef->attr;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_FontDef_Validate\n"));++    for (i = 0; i < attr->widths->count; i++) {+        HPDF_CID_Width *w =+                    (HPDF_CID_Width *)HPDF_List_ItemAt (attr->widths, i);++        HPDF_FreeMem (fontdef->mmgr, w);+    }++    HPDF_List_Free (attr->widths);+    attr->widths = NULL;++    fontdef->valid = HPDF_FALSE;+}+++HPDF_FontDef+HPDF_CIDFontDef_New  (HPDF_MMgr               mmgr,+                      char              *name,+                      HPDF_FontDef_InitFunc   init_fn)+{+    HPDF_FontDef fontdef;+    HPDF_CIDFontDefAttr fontdef_attr;++    HPDF_PTRACE ((" HPDF_CIDFontDef_New\n"));++    if (!mmgr)+        return NULL;++    fontdef = HPDF_GetMem (mmgr, sizeof(HPDF_FontDef_Rec));+    if (!fontdef)+        return NULL;++    HPDF_MemSet (fontdef, 0, sizeof(HPDF_FontDef_Rec));+    fontdef->sig_bytes = HPDF_FONTDEF_SIG_BYTES;+    HPDF_StrCpy (fontdef->base_font, name, fontdef->base_font ++                    HPDF_LIMIT_MAX_NAME_LEN);+    fontdef->mmgr = mmgr;+    fontdef->error = mmgr->error;+    fontdef->type = HPDF_FONTDEF_TYPE_UNINITIALIZED;+    fontdef->free_fn = HPDF_CIDFontDef_FreeFunc;+    fontdef->init_fn = init_fn;+    fontdef->valid = HPDF_FALSE;+    fontdef_attr = HPDF_GetMem (mmgr, sizeof(HPDF_CIDFontDefAttr_Rec));+    if (!fontdef_attr) {+        HPDF_FreeMem (fontdef->mmgr, fontdef);+        return NULL;+    }++    fontdef->attr = fontdef_attr;+    HPDF_MemSet ((HPDF_BYTE *)fontdef_attr, 0,+                sizeof(HPDF_CIDFontDefAttr_Rec));++    fontdef_attr->widths = HPDF_List_New (mmgr, HPDF_DEF_CHAR_WIDTHS_NUM);+    if (!fontdef_attr->widths) {+        HPDF_FreeMem (fontdef->mmgr, fontdef);+        HPDF_FreeMem (fontdef->mmgr, fontdef_attr);+        return NULL;+    }++    fontdef->missing_width = 500;+    fontdef_attr->DW = 1000;+    fontdef_attr->DW2[0] = 880;+    fontdef_attr->DW2[1] = -1000;++    return fontdef;+}+++HPDF_INT16+HPDF_CIDFontDef_GetCIDWidth  (HPDF_FontDef  fontdef,+                              HPDF_UINT16    cid)+{+    HPDF_CIDFontDefAttr attr = (HPDF_CIDFontDefAttr)fontdef->attr;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_CIDFontDef_GetCIDWidth\n"));++    for (i = 0; i < attr->widths->count; i++) {+        HPDF_CID_Width *w = (HPDF_CID_Width *)HPDF_List_ItemAt (attr->widths,+                i);++        if (w->cid == cid)+            return w->width;+    }++    /* Not found in pdf_cid_width array. */+    return attr->DW;+}++void+HPDF_CIDFontDef_FreeFunc (HPDF_FontDef  fontdef)+{+    HPDF_CIDFontDefAttr attr = (HPDF_CIDFontDefAttr)fontdef->attr;++    HPDF_PTRACE ((" HPDF_CIDFontDef_FreeFunc\n"));++    HPDF_CIDFontDef_FreeWidth (fontdef);+    HPDF_FreeMem (fontdef->mmgr, attr);+}+++HPDF_STATUS+HPDF_CIDFontDef_AddWidth  (HPDF_FontDef            fontdef,+                           const HPDF_CID_Width   *widths)+{+    HPDF_CIDFontDefAttr attr = (HPDF_CIDFontDefAttr)fontdef->attr;++    HPDF_PTRACE ((" HPDF_CIDFontDef_AddWidth\n"));++    while (widths->cid != 0xFFFF) {+        HPDF_CID_Width *w = HPDF_GetMem (fontdef->mmgr,+                sizeof (HPDF_CID_Width));+        HPDF_STATUS ret;++        if (!w)+            return fontdef->error->error_no;++        w->cid = widths->cid;+        w->width = widths->width;++        if ((ret = HPDF_List_Add (attr->widths, w)) != HPDF_OK) {+            HPDF_FreeMem (fontdef->mmgr, w);++            return ret;+        }++        widths++;+    }++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_CIDFontDef_ChangeStyle  (HPDF_FontDef   fontdef,+                              HPDF_BOOL      bold,+                              HPDF_BOOL      italic)+{+    HPDF_PTRACE ((" HPDF_CIDFontDef_ChangeStyle\n"));++    if (!fontdef || !fontdef->attr)+        return HPDF_INVALID_FONTDEF_DATA;++    if (bold) {+        fontdef->stemv *= 2;+        fontdef->flags |= HPDF_FONT_FOURCE_BOLD;+    }++    if (italic) {+        fontdef->italic_angle -= 11;+        fontdef->flags |= HPDF_FONT_ITALIC;+    }++    return HPDF_OK;+}+++
+ haru/hpdf_fontdef_cns.c view
@@ -0,0 +1,471 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_cns.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++/*----------------------------------------------------------------------------*/++static const HPDF_CID_Width SIMSUN_W_ARRAY[] = {+    {668, 500},+    {669, 500},+    {670, 500},+    {671, 500},+    {672, 500},+    {673, 500},+    {674, 500},+    {675, 500},+    {676, 500},+    {677, 500},+    {678, 500},+    {679, 500},+    {680, 500},+    {681, 500},+    {682, 500},+    {683, 500},+    {684, 500},+    {685, 500},+    {686, 500},+    {687, 500},+    {688, 500},+    {689, 500},+    {690, 500},+    {691, 500},+    {692, 500},+    {693, 500},+    {694, 500},+    {696, 500},+    {697, 500},+    {698, 500},+    {699, 500},+    {814, 500},+    {815, 500},+    {816, 500},+    {817, 500},+    {818, 500},+    {819, 500},+    {820, 500},+    {821, 500},+    {822, 500},+    {823, 500},+    {824, 500},+    {825, 500},+    {826, 500},+    {827, 500},+    {828, 500},+    {829, 500},+    {830, 500},+    {831, 500},+    {832, 500},+    {833, 500},+    {834, 500},+    {835, 500},+    {836, 500},+    {837, 500},+    {838, 500},+    {839, 500},+    {840, 500},+    {841, 500},+    {842, 500},+    {843, 500},+    {844, 500},+    {845, 500},+    {846, 500},+    {847, 500},+    {848, 500},+    {849, 500},+    {850, 500},+    {851, 500},+    {852, 500},+    {853, 500},+    {854, 500},+    {855, 500},+    {856, 500},+    {857, 500},+    {858, 500},+    {859, 500},+    {860, 500},+    {861, 500},+    {862, 500},+    {863, 500},+    {864, 500},+    {865, 500},+    {866, 500},+    {867, 500},+    {868, 500},+    {869, 500},+    {870, 500},+    {871, 500},+    {872, 500},+    {873, 500},+    {874, 500},+    {875, 500},+    {876, 500},+    {877, 500},+    {878, 500},+    {879, 500},+    {880, 500},+    {881, 500},+    {882, 500},+    {883, 500},+    {884, 500},+    {885, 500},+    {886, 500},+    {887, 500},+    {888, 500},+    {889, 500},+    {890, 500},+    {891, 500},+    {892, 500},+    {893, 500},+    {894, 500},+    {895, 500},+    {896, 500},+    {897, 500},+    {898, 500},+    {899, 500},+    {900, 500},+    {901, 500},+    {902, 500},+    {903, 500},+    {904, 500},+    {905, 500},+    {906, 500},+    {907, 500},+    {7716, 500},+    {0xFFFF, 0}+};+++static const HPDF_CID_Width SIMHEI_W_ARRAY[] = {+    {668, 500},+    {669, 500},+    {670, 500},+    {671, 500},+    {672, 500},+    {673, 500},+    {674, 500},+    {675, 500},+    {676, 500},+    {677, 500},+    {678, 500},+    {679, 500},+    {680, 500},+    {681, 500},+    {682, 500},+    {683, 500},+    {684, 500},+    {685, 500},+    {686, 500},+    {687, 500},+    {688, 500},+    {689, 500},+    {690, 500},+    {691, 500},+    {692, 500},+    {693, 500},+    {694, 500},+    {696, 500},+    {697, 500},+    {698, 500},+    {699, 500},+    {814, 500},+    {815, 500},+    {816, 500},+    {817, 500},+    {818, 500},+    {819, 500},+    {820, 500},+    {821, 500},+    {822, 500},+    {823, 500},+    {824, 500},+    {825, 500},+    {826, 500},+    {827, 500},+    {828, 500},+    {829, 500},+    {830, 500},+    {831, 500},+    {832, 500},+    {833, 500},+    {834, 500},+    {835, 500},+    {836, 500},+    {837, 500},+    {838, 500},+    {839, 500},+    {840, 500},+    {841, 500},+    {842, 500},+    {843, 500},+    {844, 500},+    {845, 500},+    {846, 500},+    {847, 500},+    {848, 500},+    {849, 500},+    {850, 500},+    {851, 500},+    {852, 500},+    {853, 500},+    {854, 500},+    {855, 500},+    {856, 500},+    {857, 500},+    {858, 500},+    {859, 500},+    {860, 500},+    {861, 500},+    {862, 500},+    {863, 500},+    {864, 500},+    {865, 500},+    {866, 500},+    {867, 500},+    {868, 500},+    {869, 500},+    {870, 500},+    {871, 500},+    {872, 500},+    {873, 500},+    {874, 500},+    {875, 500},+    {876, 500},+    {877, 500},+    {878, 500},+    {879, 500},+    {880, 500},+    {881, 500},+    {882, 500},+    {883, 500},+    {884, 500},+    {885, 500},+    {886, 500},+    {887, 500},+    {888, 500},+    {889, 500},+    {890, 500},+    {891, 500},+    {892, 500},+    {893, 500},+    {894, 500},+    {895, 500},+    {896, 500},+    {897, 500},+    {898, 500},+    {899, 500},+    {900, 500},+    {901, 500},+    {902, 500},+    {903, 500},+    {904, 500},+    {905, 500},+    {906, 500},+    {907, 500},+    {7716, 500},+    {0xFFFF, 0}+};+++/*---------------------------------------------------------------------------*/+/*----- SimHei Font ---------------------------------------------------------*/+++static HPDF_STATUS+SimSun_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_SimSun_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 683;+    fontdef->font_bbox = HPDF_ToBox(0, -140, 996, 855);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH ++                HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, SIMSUN_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+SimSun_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimSun_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+SimSun_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimSun_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+SimSun_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimSun_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+SimHei_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_SimHei_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 769;+    fontdef->font_bbox = HPDF_ToBox(-0, -140, 996, 855);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, SIMHEI_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+SimHei_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimHei_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+SimHei_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimHei_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+SimHei_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = SimHei_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNSFonts   (HPDF_Doc   pdf)+{+    HPDF_FontDef fontdef;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* SimSun */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimSun",+                SimSun_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimSun,Bold",+                SimSun_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimSun,Italic",+                SimSun_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimSun,BoldItalic",+                SimSun_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* SimHei */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimHei",+                SimHei_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimHei,Bold",+                SimHei_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimHei,Italic",+                SimHei_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "SimHei,BoldItalic",+                SimHei_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+
+ haru/hpdf_fontdef_cnt.c view
@@ -0,0 +1,250 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_cnt.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++/*----------------------------------------------------------------------------*/++static const HPDF_CID_Width MING_LIU_W_ARRAY[] = {+    {668, 500},+    {669, 500},+    {670, 500},+    {671, 500},+    {672, 500},+    {673, 500},+    {674, 500},+    {675, 500},+    {676, 500},+    {677, 500},+    {678, 500},+    {679, 500},+    {680, 500},+    {681, 500},+    {682, 500},+    {683, 500},+    {684, 500},+    {685, 500},+    {686, 500},+    {687, 500},+    {688, 500},+    {689, 500},+    {690, 500},+    {691, 500},+    {692, 500},+    {693, 500},+    {694, 500},+    {696, 500},+    {697, 500},+    {698, 500},+    {699, 500},+    {814, 500},+    {815, 500},+    {816, 500},+    {817, 500},+    {818, 500},+    {819, 500},+    {820, 500},+    {821, 500},+    {822, 500},+    {823, 500},+    {824, 500},+    {825, 500},+    {826, 500},+    {827, 500},+    {828, 500},+    {829, 500},+    {830, 500},+    {831, 500},+    {832, 500},+    {833, 500},+    {834, 500},+    {835, 500},+    {836, 500},+    {837, 500},+    {838, 500},+    {839, 500},+    {840, 500},+    {841, 500},+    {842, 500},+    {843, 500},+    {844, 500},+    {845, 500},+    {846, 500},+    {847, 500},+    {848, 500},+    {849, 500},+    {850, 500},+    {851, 500},+    {852, 500},+    {853, 500},+    {854, 500},+    {855, 500},+    {856, 500},+    {857, 500},+    {858, 500},+    {859, 500},+    {860, 500},+    {861, 500},+    {862, 500},+    {863, 500},+    {864, 500},+    {865, 500},+    {866, 500},+    {867, 500},+    {868, 500},+    {869, 500},+    {870, 500},+    {871, 500},+    {872, 500},+    {873, 500},+    {874, 500},+    {875, 500},+    {876, 500},+    {877, 500},+    {878, 500},+    {879, 500},+    {880, 500},+    {881, 500},+    {882, 500},+    {883, 500},+    {884, 500},+    {885, 500},+    {886, 500},+    {887, 500},+    {888, 500},+    {889, 500},+    {890, 500},+    {891, 500},+    {892, 500},+    {893, 500},+    {894, 500},+    {895, 500},+    {896, 500},+    {897, 500},+    {898, 500},+    {899, 500},+    {900, 500},+    {901, 500},+    {902, 500},+    {903, 500},+    {904, 500},+    {905, 500},+    {906, 500},+    {907, 500},+    {7716, 500},+    {0xFFFF, 0}+};+++static HPDF_STATUS+MingLiU_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_MingLiU_Init\n"));++    fontdef->ascent = 800;+    fontdef->descent = -199;+    fontdef->cap_height = 769;+    fontdef->font_bbox = HPDF_ToBox(0, -199, 1000, 800);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH ++                HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, MING_LIU_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+MingLiU_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MingLiU_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+MingLiU_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MingLiU_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+MingLiU_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MingLiU_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseCNTFonts   (HPDF_Doc   pdf)+{+    HPDF_FontDef fontdef;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* MingLiU */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MingLiU",+                MingLiU_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MingLiU,Bold",+                MingLiU_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MingLiU,Italic",+                MingLiU_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MingLiU,BoldItalic",+                MingLiU_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+
+ haru/hpdf_fontdef_jp.c view
@@ -0,0 +1,1904 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_jp.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++/*----------------------------------------------------------------------------*/++static const HPDF_CID_Width MS_Gothic_W_ARRAY[] = {+    {1, 500},+    {2, 500},+    {3, 500},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 500},+    {8, 500},+    {9, 500},+    {10, 500},+    {11, 500},+    {12, 500},+    {13, 500},+    {14, 500},+    {15, 500},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 500},+    {28, 500},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 500},+    {33, 500},+    {34, 500},+    {35, 500},+    {36, 500},+    {37, 500},+    {38, 500},+    {39, 500},+    {40, 500},+    {41, 500},+    {42, 500},+    {43, 500},+    {44, 500},+    {45, 500},+    {46, 500},+    {47, 500},+    {48, 500},+    {49, 500},+    {50, 500},+    {51, 500},+    {52, 500},+    {53, 500},+    {54, 500},+    {55, 500},+    {56, 500},+    {57, 500},+    {58, 500},+    {59, 500},+    {60, 500},+    {61, 500},+    {62, 500},+    {63, 500},+    {64, 500},+    {65, 500},+    {66, 500},+    {67, 500},+    {68, 500},+    {69, 500},+    {70, 500},+    {71, 500},+    {72, 500},+    {73, 500},+    {74, 500},+    {75, 500},+    {76, 500},+    {77, 500},+    {78, 500},+    {79, 500},+    {80, 500},+    {81, 500},+    {82, 500},+    {83, 500},+    {84, 500},+    {85, 500},+    {86, 500},+    {87, 500},+    {88, 500},+    {89, 500},+    {90, 500},+    {91, 500},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 500},+    {231, 500},+    {232, 500},+    {233, 500},+    {234, 500},+    {235, 500},+    {236, 500},+    {237, 500},+    {238, 500},+    {239, 500},+    {240, 500},+    {241, 500},+    {242, 500},+    {243, 500},+    {244, 500},+    {245, 500},+    {246, 500},+    {247, 500},+    {248, 500},+    {249, 500},+    {250, 500},+    {251, 500},+    {252, 500},+    {253, 500},+    {254, 500},+    {255, 500},+    {256, 500},+    {257, 500},+    {258, 500},+    {259, 500},+    {260, 500},+    {261, 500},+    {262, 500},+    {263, 500},+    {264, 500},+    {265, 500},+    {266, 500},+    {267, 500},+    {268, 500},+    {269, 500},+    {270, 500},+    {271, 500},+    {272, 500},+    {273, 500},+    {274, 500},+    {275, 500},+    {276, 500},+    {277, 500},+    {278, 500},+    {279, 500},+    {280, 500},+    {281, 500},+    {282, 500},+    {283, 500},+    {284, 500},+    {285, 500},+    {286, 500},+    {287, 500},+    {288, 500},+    {289, 500},+    {290, 500},+    {291, 500},+    {292, 500},+    {293, 500},+    {294, 500},+    {295, 500},+    {296, 500},+    {297, 500},+    {298, 500},+    {299, 500},+    {300, 500},+    {301, 500},+    {302, 500},+    {303, 500},+    {304, 500},+    {305, 500},+    {306, 500},+    {307, 500},+    {308, 500},+    {309, 500},+    {310, 500},+    {311, 500},+    {312, 500},+    {313, 500},+    {314, 500},+    {315, 500},+    {316, 500},+    {317, 500},+    {318, 500},+    {319, 500},+    {320, 500},+    {321, 500},+    {322, 500},+    {323, 500},+    {324, 500},+    {327, 500},+    {328, 500},+    {329, 500},+    {330, 500},+    {331, 500},+    {332, 500},+    {333, 500},+    {334, 500},+    {335, 500},+    {336, 500},+    {337, 500},+    {338, 500},+    {339, 500},+    {340, 500},+    {341, 500},+    {342, 500},+    {343, 500},+    {344, 500},+    {345, 500},+    {346, 500},+    {347, 500},+    {348, 500},+    {349, 500},+    {350, 500},+    {351, 500},+    {352, 500},+    {353, 500},+    {354, 500},+    {355, 500},+    {356, 500},+    {357, 500},+    {358, 500},+    {359, 500},+    {360, 500},+    {361, 500},+    {362, 500},+    {363, 500},+    {364, 500},+    {365, 500},+    {366, 500},+    {367, 500},+    {368, 500},+    {369, 500},+    {370, 500},+    {371, 500},+    {372, 500},+    {373, 500},+    {374, 500},+    {375, 500},+    {376, 500},+    {377, 500},+    {378, 500},+    {379, 500},+    {380, 500},+    {381, 500},+    {382, 500},+    {383, 500},+    {384, 500},+    {385, 500},+    {386, 500},+    {387, 500},+    {388, 500},+    {389, 500},+    {631, 500},+    {0xFFFF, 0}+};+++static const HPDF_CID_Width MS_PGothic_W_ARRAY[] = {+    {1, 304},+    {2, 218},+    {3, 500},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 593},+    {8, 203},+    {9, 304},+    {10, 304},+    {11, 500},+    {12, 500},+    {13, 203},+    {14, 500},+    {15, 203},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 203},+    {28, 203},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 453},+    {33, 667},+    {34, 632},+    {35, 636},+    {36, 664},+    {37, 648},+    {38, 566},+    {39, 550},+    {40, 679},+    {41, 640},+    {42, 246},+    {43, 542},+    {44, 597},+    {45, 539},+    {46, 742},+    {47, 640},+    {48, 707},+    {49, 617},+    {50, 707},+    {51, 625},+    {52, 601},+    {53, 589},+    {54, 640},+    {55, 632},+    {56, 742},+    {57, 601},+    {58, 589},+    {59, 566},+    {60, 335},+    {61, 503},+    {62, 335},+    {63, 414},+    {64, 304},+    {65, 414},+    {66, 476},+    {67, 496},+    {68, 500},+    {69, 496},+    {70, 500},+    {71, 304},+    {72, 460},+    {73, 500},+    {74, 210},+    {75, 218},+    {76, 460},+    {77, 210},+    {78, 734},+    {79, 500},+    {80, 507},+    {81, 496},+    {82, 496},+    {83, 347},+    {84, 460},+    {85, 351},+    {86, 500},+    {87, 476},+    {88, 648},+    {89, 460},+    {90, 476},+    {91, 457},+    {92, 234},+    {93, 234},+    {94, 234},+    {95, 414},+    {231, 304},+    {232, 218},+    {233, 500},+    {234, 500},+    {235, 500},+    {236, 500},+    {237, 593},+    {238, 203},+    {239, 304},+    {240, 304},+    {241, 500},+    {242, 500},+    {243, 203},+    {244, 500},+    {245, 203},+    {246, 500},+    {247, 500},+    {248, 500},+    {249, 500},+    {250, 500},+    {251, 500},+    {252, 500},+    {253, 500},+    {254, 500},+    {255, 500},+    {256, 500},+    {257, 203},+    {258, 203},+    {259, 500},+    {260, 500},+    {261, 500},+    {262, 453},+    {263, 667},+    {264, 632},+    {265, 636},+    {266, 664},+    {267, 648},+    {268, 566},+    {269, 550},+    {270, 679},+    {271, 640},+    {272, 246},+    {273, 542},+    {274, 597},+    {275, 539},+    {276, 742},+    {277, 640},+    {278, 707},+    {279, 617},+    {280, 707},+    {281, 625},+    {282, 601},+    {283, 589},+    {284, 640},+    {285, 632},+    {286, 742},+    {287, 601},+    {288, 589},+    {289, 566},+    {290, 335},+    {291, 503},+    {292, 335},+    {293, 414},+    {294, 304},+    {295, 414},+    {296, 476},+    {297, 496},+    {298, 500},+    {299, 496},+    {300, 500},+    {301, 304},+    {302, 460},+    {303, 500},+    {304, 210},+    {305, 218},+    {306, 460},+    {307, 210},+    {308, 734},+    {309, 500},+    {310, 507},+    {311, 496},+    {312, 496},+    {313, 347},+    {314, 460},+    {315, 351},+    {316, 500},+    {317, 476},+    {318, 648},+    {319, 460},+    {320, 476},+    {321, 457},+    {322, 234},+    {323, 234},+    {324, 234},+    {327, 441},+    {328, 441},+    {329, 441},+    {330, 441},+    {331, 441},+    {332, 546},+    {333, 523},+    {334, 445},+    {335, 480},+    {336, 468},+    {337, 515},+    {338, 523},+    {339, 503},+    {340, 437},+    {341, 500},+    {342, 640},+    {343, 617},+    {344, 566},+    {345, 625},+    {346, 597},+    {347, 636},+    {348, 562},+    {349, 652},+    {350, 539},+    {351, 621},+    {352, 523},+    {353, 664},+    {354, 589},+    {355, 636},+    {356, 644},+    {357, 554},+    {358, 527},+    {359, 601},+    {360, 601},+    {361, 601},+    {362, 460},+    {363, 644},+    {364, 597},+    {365, 578},+    {366, 648},+    {367, 492},+    {368, 636},+    {369, 515},+    {370, 546},+    {371, 613},+    {372, 640},+    {373, 605},+    {374, 453},+    {375, 660},+    {376, 507},+    {377, 609},+    {378, 664},+    {379, 640},+    {380, 519},+    {381, 558},+    {382, 511},+    {383, 656},+    {384, 566},+    {385, 558},+    {386, 589},+    {387, 562},+    {388, 250},+    {389, 230},+    {631, 414},+    {633, 664},+    {634, 664},+    {635, 664},+    {636, 664},+    {637, 664},+    {638, 500},+    {639, 500},+    {640, 500},+    {643, 500},+    {644, 500},+    {645, 500},+    {646, 500},+    {647, 500},+    {648, 500},+    {651, 746},+    {652, 746},+    {653, 734},+    {654, 699},+    {660, 960},+    {662, 500},+    {670, 500},+    {671, 500},+    {672, 500},+    {673, 500},+    {674, 500},+    {675, 500},+    {676, 500},+    {677, 500},+    {678, 500},+    {679, 500},+    {680, 500},+    {681, 500},+    {682, 500},+    {683, 500},+    {684, 500},+    {685, 500},+    {686, 500},+    {687, 500},+    {688, 500},+    {689, 500},+    {690, 500},+    {691, 500},+    {776, 500},+    {777, 500},+    {778, 500},+    {780, 683},+    {781, 683},+    {782, 683},+    {783, 683},+    {784, 683},+    {785, 683},+    {786, 683},+    {787, 683},+    {788, 683},+    {789, 683},+    {790, 714},+    {791, 777},+    {792, 742},+    {793, 757},+    {794, 710},+    {795, 632},+    {796, 773},+    {797, 769},+    {798, 273},+    {799, 605},+    {800, 753},+    {801, 628},+    {802, 933},+    {803, 769},+    {804, 804},+    {805, 710},+    {806, 804},+    {807, 757},+    {808, 742},+    {809, 617},+    {810, 769},+    {811, 714},+    {812, 980},+    {813, 652},+    {814, 648},+    {815, 648},+    {816, 574},+    {817, 601},+    {818, 562},+    {819, 601},+    {820, 562},+    {821, 296},+    {822, 578},+    {823, 621},+    {824, 250},+    {825, 250},+    {826, 593},+    {827, 250},+    {828, 937},+    {829, 621},+    {830, 605},+    {831, 605},+    {832, 601},+    {833, 378},+    {834, 570},+    {835, 335},+    {836, 621},+    {837, 511},+    {838, 777},+    {839, 519},+    {840, 496},+    {841, 507},+    {842, 746},+    {843, 941},+    {844, 804},+    {845, 945},+    {846, 601},+    {847, 707},+    {848, 750},+    {849, 902},+    {850, 804},+    {851, 945},+    {854, 843},+    {855, 902},+    {856, 589},+    {857, 816},+    {858, 945},+    {859, 980},+    {860, 796},+    {861, 894},+    {862, 765},+    {863, 882},+    {864, 765},+    {865, 765},+    {866, 960},+    {867, 980},+    {870, 921},+    {871, 960},+    {872, 921},+    {873, 921},+    {874, 863},+    {875, 902},+    {876, 804},+    {877, 953},+    {878, 957},+    {879, 902},+    {880, 902},+    {881, 765},+    {882, 882},+    {883, 902},+    {884, 941},+    {891, 960},+    {892, 960},+    {893, 960},+    {903, 890},+    {905, 980},+    {906, 980},+    {907, 804},+    {908, 843},+    {910, 843},+    {911, 980},+    {912, 726},+    {913, 863},+    {914, 804},+    {915, 746},+    {916, 863},+    {918, 843},+    {919, 863},+    {923, 855},+    {924, 960},+    {925, 757},+    {926, 898},+    {927, 652},+    {928, 824},+    {929, 753},+    {930, 941},+    {931, 742},+    {932, 894},+    {933, 808},+    {934, 933},+    {935, 824},+    {936, 921},+    {937, 960},+    {938, 964},+    {939, 804},+    {940, 941},+    {941, 929},+    {942, 960},+    {943, 796},+    {944, 890},+    {947, 898},+    {948, 898},+    {949, 902},+    {950, 964},+    {951, 914},+    {952, 980},+    {953, 804},+    {954, 882},+    {955, 765},+    {956, 921},+    {957, 910},+    {958, 960},+    {959, 734},+    {960, 863},+    {961, 921},+    {962, 886},+    {963, 960},+    {964, 648},+    {965, 707},+    {966, 941},+    {967, 910},+    {968, 824},+    {969, 929},+    {970, 707},+    {974, 765},+    {975, 863},+    {976, 863},+    {977, 804},+    {978, 882},+    {979, 882},+    {980, 945},+    {981, 945},+    {982, 945},+    {983, 921},+    {984, 953},+    {985, 953},+    {986, 902},+    {987, 667},+    {988, 976},+    {989, 718},+    {990, 898},+    {991, 804},+    {992, 980},+    {993, 812},+    {994, 960},+    {995, 628},+    {996, 726},+    {997, 808},+    {998, 746},+    {1000, 851},+    {1001, 863},+    {1002, 765},+    {1003, 941},+    {1006, 804},+    {1007, 863},+    {1008, 960},+    {1009, 726},+    {1010, 777},+    {0xFFFF, 0}+};+++static const HPDF_CID_Width MS_Mincyo_W_ARRAY[] = {+    {1, 500},+    {2, 500},+    {3, 500},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 500},+    {8, 500},+    {9, 500},+    {10, 500},+    {11, 500},+    {12, 500},+    {13, 500},+    {14, 500},+    {15, 500},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 500},+    {28, 500},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 500},+    {33, 500},+    {34, 500},+    {35, 500},+    {36, 500},+    {37, 500},+    {38, 500},+    {39, 500},+    {40, 500},+    {41, 500},+    {42, 500},+    {43, 500},+    {44, 500},+    {45, 500},+    {46, 500},+    {47, 500},+    {48, 500},+    {49, 500},+    {50, 500},+    {51, 500},+    {52, 500},+    {53, 500},+    {54, 500},+    {55, 500},+    {56, 500},+    {57, 500},+    {58, 500},+    {59, 500},+    {60, 500},+    {61, 500},+    {62, 500},+    {63, 500},+    {64, 500},+    {65, 500},+    {66, 500},+    {67, 500},+    {68, 500},+    {69, 500},+    {70, 500},+    {71, 500},+    {72, 500},+    {73, 500},+    {74, 500},+    {75, 500},+    {76, 500},+    {77, 500},+    {78, 500},+    {79, 500},+    {80, 500},+    {81, 500},+    {82, 500},+    {83, 500},+    {84, 500},+    {85, 500},+    {86, 500},+    {87, 500},+    {88, 500},+    {89, 500},+    {90, 500},+    {91, 500},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 500},+    {231, 500},+    {232, 500},+    {233, 500},+    {234, 500},+    {235, 500},+    {236, 500},+    {237, 500},+    {238, 500},+    {239, 500},+    {240, 500},+    {241, 500},+    {242, 500},+    {243, 500},+    {244, 500},+    {245, 500},+    {246, 500},+    {247, 500},+    {248, 500},+    {249, 500},+    {250, 500},+    {251, 500},+    {252, 500},+    {253, 500},+    {254, 500},+    {255, 500},+    {256, 500},+    {257, 500},+    {258, 500},+    {259, 500},+    {260, 500},+    {261, 500},+    {262, 500},+    {263, 500},+    {264, 500},+    {265, 500},+    {266, 500},+    {267, 500},+    {268, 500},+    {269, 500},+    {270, 500},+    {271, 500},+    {272, 500},+    {273, 500},+    {274, 500},+    {275, 500},+    {276, 500},+    {277, 500},+    {278, 500},+    {279, 500},+    {280, 500},+    {281, 500},+    {282, 500},+    {283, 500},+    {284, 500},+    {285, 500},+    {286, 500},+    {287, 500},+    {288, 500},+    {289, 500},+    {290, 500},+    {291, 500},+    {292, 500},+    {293, 500},+    {294, 500},+    {295, 500},+    {296, 500},+    {297, 500},+    {298, 500},+    {299, 500},+    {300, 500},+    {301, 500},+    {302, 500},+    {303, 500},+    {304, 500},+    {305, 500},+    {306, 500},+    {307, 500},+    {308, 500},+    {309, 500},+    {310, 500},+    {311, 500},+    {312, 500},+    {313, 500},+    {314, 500},+    {315, 500},+    {316, 500},+    {317, 500},+    {318, 500},+    {319, 500},+    {320, 500},+    {321, 500},+    {322, 500},+    {323, 500},+    {324, 500},+    {327, 500},+    {328, 500},+    {329, 500},+    {330, 500},+    {331, 500},+    {332, 500},+    {333, 500},+    {334, 500},+    {335, 500},+    {336, 500},+    {337, 500},+    {338, 500},+    {339, 500},+    {340, 500},+    {341, 500},+    {342, 500},+    {343, 500},+    {344, 500},+    {345, 500},+    {346, 500},+    {347, 500},+    {348, 500},+    {349, 500},+    {350, 500},+    {351, 500},+    {352, 500},+    {353, 500},+    {354, 500},+    {355, 500},+    {356, 500},+    {357, 500},+    {358, 500},+    {359, 500},+    {360, 500},+    {361, 500},+    {362, 500},+    {363, 500},+    {364, 500},+    {365, 500},+    {366, 500},+    {367, 500},+    {368, 500},+    {369, 500},+    {370, 500},+    {371, 500},+    {372, 500},+    {373, 500},+    {374, 500},+    {375, 500},+    {376, 500},+    {377, 500},+    {378, 500},+    {379, 500},+    {380, 500},+    {381, 500},+    {382, 500},+    {383, 500},+    {384, 500},+    {385, 500},+    {386, 500},+    {387, 500},+    {388, 500},+    {389, 500},+    {631, 500},+    {0xFFFF, 0}+};++++static const HPDF_CID_Width MS_PMincyo_W_ARRAY[] = {+    {1, 304},+    {2, 304},+    {3, 460},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 613},+    {8, 304},+    {9, 304},+    {10, 304},+    {11, 500},+    {12, 500},+    {13, 304},+    {14, 500},+    {15, 304},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 304},+    {28, 304},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 500},+    {33, 726},+    {34, 664},+    {35, 621},+    {36, 699},+    {37, 691},+    {38, 597},+    {39, 597},+    {40, 710},+    {41, 722},+    {42, 289},+    {43, 386},+    {44, 667},+    {45, 585},+    {46, 800},+    {47, 664},+    {48, 765},+    {49, 562},+    {50, 765},+    {51, 601},+    {52, 503},+    {53, 625},+    {54, 691},+    {55, 664},+    {56, 871},+    {57, 656},+    {58, 625},+    {59, 562},+    {60, 332},+    {61, 500},+    {62, 332},+    {63, 304},+    {64, 304},+    {65, 304},+    {66, 453},+    {67, 500},+    {68, 464},+    {69, 500},+    {70, 472},+    {71, 253},+    {72, 472},+    {73, 500},+    {74, 242},+    {75, 242},+    {76, 492},+    {77, 242},+    {78, 703},+    {79, 500},+    {80, 500},+    {81, 500},+    {82, 500},+    {83, 367},+    {84, 414},+    {85, 351},+    {86, 500},+    {87, 476},+    {88, 601},+    {89, 468},+    {90, 476},+    {91, 453},+    {92, 242},+    {93, 218},+    {94, 242},+    {95, 500},+    {231, 304},+    {232, 304},+    {233, 460},+    {234, 500},+    {235, 500},+    {236, 500},+    {237, 613},+    {238, 304},+    {239, 304},+    {240, 304},+    {241, 500},+    {242, 500},+    {243, 304},+    {244, 500},+    {245, 304},+    {246, 500},+    {247, 500},+    {248, 500},+    {249, 500},+    {250, 500},+    {251, 500},+    {252, 500},+    {253, 500},+    {254, 500},+    {255, 500},+    {256, 500},+    {257, 304},+    {258, 304},+    {259, 500},+    {260, 500},+    {261, 500},+    {262, 500},+    {263, 726},+    {264, 664},+    {265, 621},+    {266, 699},+    {267, 691},+    {268, 597},+    {269, 597},+    {270, 710},+    {271, 722},+    {272, 289},+    {273, 386},+    {274, 667},+    {275, 585},+    {276, 800},+    {277, 664},+    {278, 765},+    {279, 562},+    {280, 765},+    {281, 601},+    {282, 503},+    {283, 625},+    {284, 691},+    {285, 664},+    {286, 871},+    {287, 656},+    {288, 625},+    {289, 562},+    {290, 332},+    {291, 500},+    {292, 332},+    {293, 304},+    {294, 304},+    {295, 304},+    {296, 453},+    {297, 500},+    {298, 464},+    {299, 500},+    {300, 472},+    {301, 253},+    {302, 472},+    {303, 500},+    {304, 242},+    {305, 242},+    {306, 492},+    {307, 242},+    {308, 703},+    {309, 500},+    {310, 500},+    {311, 500},+    {312, 500},+    {313, 367},+    {314, 414},+    {315, 351},+    {316, 500},+    {317, 476},+    {318, 601},+    {319, 468},+    {320, 476},+    {321, 453},+    {322, 242},+    {323, 218},+    {324, 242},+    {327, 437},+    {328, 437},+    {329, 437},+    {330, 437},+    {331, 437},+    {332, 574},+    {333, 527},+    {334, 480},+    {335, 484},+    {336, 523},+    {337, 570},+    {338, 531},+    {339, 550},+    {340, 437},+    {341, 531},+    {342, 664},+    {343, 613},+    {344, 585},+    {345, 550},+    {346, 648},+    {347, 652},+    {348, 589},+    {349, 597},+    {350, 535},+    {351, 625},+    {352, 539},+    {353, 652},+    {354, 652},+    {355, 593},+    {356, 648},+    {357, 539},+    {358, 574},+    {359, 636},+    {360, 585},+    {361, 636},+    {362, 453},+    {363, 664},+    {364, 625},+    {365, 593},+    {366, 648},+    {367, 535},+    {368, 664},+    {369, 523},+    {370, 597},+    {371, 664},+    {372, 613},+    {373, 648},+    {374, 449},+    {375, 625},+    {376, 531},+    {377, 648},+    {378, 636},+    {379, 648},+    {380, 554},+    {381, 574},+    {382, 468},+    {383, 664},+    {384, 589},+    {385, 574},+    {386, 597},+    {387, 613},+    {388, 238},+    {389, 226},+    {631, 500},+    {633, 664},+    {634, 664},+    {635, 664},+    {636, 664},+    {637, 664},+    {638, 500},+    {639, 500},+    {640, 500},+    {643, 500},+    {644, 500},+    {645, 500},+    {646, 500},+    {647, 500},+    {648, 500},+    {651, 648},+    {652, 800},+    {653, 652},+    {654, 703},+    {662, 500},+    {670, 500},+    {671, 500},+    {672, 500},+    {673, 500},+    {674, 500},+    {675, 500},+    {676, 500},+    {677, 500},+    {678, 500},+    {679, 500},+    {680, 500},+    {681, 500},+    {682, 500},+    {683, 500},+    {684, 500},+    {685, 500},+    {686, 500},+    {687, 500},+    {688, 500},+    {689, 500},+    {690, 500},+    {691, 500},+    {776, 500},+    {777, 500},+    {778, 500},+    {780, 621},+    {781, 621},+    {782, 621},+    {783, 621},+    {784, 621},+    {785, 621},+    {786, 621},+    {787, 621},+    {788, 621},+    {789, 621},+    {790, 804},+    {791, 714},+    {792, 761},+    {793, 812},+    {794, 718},+    {795, 687},+    {796, 800},+    {797, 859},+    {798, 359},+    {799, 359},+    {800, 804},+    {801, 675},+    {803, 835},+    {804, 832},+    {805, 679},+    {806, 832},+    {807, 726},+    {808, 687},+    {809, 718},+    {810, 855},+    {811, 769},+    {812, 976},+    {813, 730},+    {814, 777},+    {815, 656},+    {816, 531},+    {817, 574},+    {818, 531},+    {819, 574},+    {820, 542},+    {821, 386},+    {822, 558},+    {823, 613},+    {824, 292},+    {825, 292},+    {826, 570},+    {827, 292},+    {828, 875},+    {829, 613},+    {830, 574},+    {831, 574},+    {832, 574},+    {833, 414},+    {834, 468},+    {835, 421},+    {836, 613},+    {837, 542},+    {838, 781},+    {839, 574},+    {840, 562},+    {841, 500},+    {842, 753},+    {843, 882},+    {844, 750},+    {845, 953},+    {846, 507},+    {847, 617},+    {848, 703},+    {849, 898},+    {850, 800},+    {852, 945},+    {853, 949},+    {854, 792},+    {855, 894},+    {856, 644},+    {857, 804},+    {858, 914},+    {859, 980},+    {860, 753},+    {861, 867},+    {862, 753},+    {863, 882},+    {864, 777},+    {865, 777},+    {870, 921},+    {871, 960},+    {872, 906},+    {873, 949},+    {874, 902},+    {875, 902},+    {876, 855},+    {879, 902},+    {880, 941},+    {881, 703},+    {882, 843},+    {883, 902},+    {884, 949},+    {887, 949},+    {888, 968},+    {900, 945},+    {901, 980},+    {902, 980},+    {903, 824},+    {906, 953},+    {907, 757},+    {908, 875},+    {910, 835},+    {911, 933},+    {912, 687},+    {913, 785},+    {914, 765},+    {915, 640},+    {916, 792},+    {917, 984},+    {918, 863},+    {919, 800},+    {920, 953},+    {921, 945},+    {922, 984},+    {923, 855},+    {924, 945},+    {925, 750},+    {926, 890},+    {927, 667},+    {928, 777},+    {929, 707},+    {930, 800},+    {931, 804},+    {932, 941},+    {933, 808},+    {934, 941},+    {935, 878},+    {936, 925},+    {937, 886},+    {938, 902},+    {939, 746},+    {940, 882},+    {941, 882},+    {942, 933},+    {943, 792},+    {944, 863},+    {945, 953},+    {946, 960},+    {947, 902},+    {948, 902},+    {949, 820},+    {950, 902},+    {951, 929},+    {952, 949},+    {953, 753},+    {954, 855},+    {955, 785},+    {956, 910},+    {957, 964},+    {958, 945},+    {959, 734},+    {960, 847},+    {961, 921},+    {962, 902},+    {964, 589},+    {965, 707},+    {966, 972},+    {967, 910},+    {968, 804},+    {969, 921},+    {970, 699},+    {971, 976},+    {972, 976},+    {973, 976},+    {974, 656},+    {975, 851},+    {976, 843},+    {977, 843},+    {978, 945},+    {979, 945},+    {983, 882},+    {984, 921},+    {985, 921},+    {986, 929},+    {987, 609},+    {988, 863},+    {989, 675},+    {990, 941},+    {991, 789},+    {992, 925},+    {993, 792},+    {994, 941},+    {995, 597},+    {996, 703},+    {997, 765},+    {998, 609},+    {999, 980},+    {1000, 832},+    {1001, 785},+    {1002, 699},+    {1003, 804},+    {1004, 964},+    {1005, 960},+    {1006, 785},+    {1007, 863},+    {1008, 882},+    {1009, 695},+    {1010, 765},+    {0xFFFF, 0}+};+++/*---------------------------------------------------------------------------*/+/*----- Mincyo Font ---------------------------------------------------------*/+++static HPDF_STATUS+MS_Gothic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_MS_Gothic_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 769;+    fontdef->font_bbox = HPDF_ToBox(-0, -136, 1000, 859);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, MS_Gothic_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+MS_Gothic_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Gothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+MS_Gothic_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Gothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+MS_Gothic_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Gothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+MS_PGothic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_MS_PGothic_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 679;+    fontdef->font_bbox = HPDF_ToBox(-121, -136, 996, 859);+    fontdef->flags = HPDF_FONT_SYMBOLIC;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, MS_PGothic_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+MS_PGothic_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PGothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+MS_PGothic_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PGothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+MS_PGothic_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PGothic_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+MS_Mincyo_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_MS_Mincyo_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 769;+    fontdef->font_bbox = HPDF_ToBox(-0, -136, 1000, 859);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH ++                HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, MS_Gothic_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+MS_Mincyo_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Mincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+MS_Mincyo_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Mincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+MS_Mincyo_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_Mincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+MS_PMincyo_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_MS_PMincyo_Init\n"));++    fontdef->ascent = 859;+    fontdef->descent = -140;+    fontdef->cap_height = 679;+    fontdef->font_bbox = HPDF_ToBox(-82, -136, 996, 859);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, MS_PGothic_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+MS_PMincyo_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PMincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+MS_PMincyo_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PMincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+MS_PMincyo_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = MS_PMincyo_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseJPFonts   (HPDF_Doc   pdf)+{+    HPDF_FontDef fontdef;+    HPDF_STATUS ret;++    if (!HPDF_Doc_Validate (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* MS-Gothic */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Gothic",+                MS_Gothic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Gothic,Bold",+                MS_Gothic_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Gothic,Italic",+                MS_Gothic_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Gothic,BoldItalic",+                MS_Gothic_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* MS-PGothic */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PGothic",+                MS_PGothic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PGothic,Bold",+                MS_PGothic_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PGothic,Italic",+                MS_PGothic_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PGothic,BoldItalic",+                MS_PGothic_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* MS-Mincyo */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Mincyo",+                MS_Mincyo_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Mincyo,Bold",+                MS_Mincyo_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Mincyo,Italic",+                MS_Mincyo_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-Mincyo,BoldItalic",+                MS_Mincyo_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* MS-PMincyo */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PMincyo",+                MS_PMincyo_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PMincyo,Bold",+                MS_PMincyo_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PMincyo,Italic",+                MS_PMincyo_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "MS-PMincyo,BoldItalic",+                MS_PMincyo_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+
+ haru/hpdf_fontdef_kr.c view
@@ -0,0 +1,1572 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_kr.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++/*----------------------------------------------------------------------------*/++static const HPDF_CID_Width DotumChe_W_ARRAY[] = {+    {1, 500},+    {2, 500},+    {3, 500},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 500},+    {8, 500},+    {9, 500},+    {10, 500},+    {11, 500},+    {12, 500},+    {13, 500},+    {14, 500},+    {15, 500},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 500},+    {28, 500},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 500},+    {33, 500},+    {34, 500},+    {35, 500},+    {36, 500},+    {37, 500},+    {38, 500},+    {39, 500},+    {40, 500},+    {41, 500},+    {42, 500},+    {43, 500},+    {44, 500},+    {45, 500},+    {46, 500},+    {47, 500},+    {48, 500},+    {49, 500},+    {50, 500},+    {51, 500},+    {52, 500},+    {53, 500},+    {54, 500},+    {55, 500},+    {56, 500},+    {57, 500},+    {58, 500},+    {59, 500},+    {60, 500},+    {61, 500},+    {62, 500},+    {63, 500},+    {64, 500},+    {65, 500},+    {66, 500},+    {67, 500},+    {68, 500},+    {69, 500},+    {70, 500},+    {71, 500},+    {72, 500},+    {73, 500},+    {74, 500},+    {75, 500},+    {76, 500},+    {77, 500},+    {78, 500},+    {79, 500},+    {80, 500},+    {81, 500},+    {82, 500},+    {83, 500},+    {84, 500},+    {85, 500},+    {86, 500},+    {87, 500},+    {88, 500},+    {89, 500},+    {90, 500},+    {91, 500},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 500},+    {8094, 500},+    {8095, 500},+    {8096, 500},+    {8097, 500},+    {8098, 500},+    {8099, 500},+    {8100, 500},+    {8101, 500},+    {8102, 500},+    {8103, 500},+    {8104, 500},+    {8105, 500},+    {8106, 500},+    {8107, 500},+    {8108, 500},+    {8109, 500},+    {8110, 500},+    {8111, 500},+    {8112, 500},+    {8113, 500},+    {8114, 500},+    {8115, 500},+    {8116, 500},+    {8117, 500},+    {8118, 500},+    {8119, 500},+    {8120, 500},+    {8121, 500},+    {8122, 500},+    {8123, 500},+    {8124, 500},+    {8125, 500},+    {8126, 500},+    {8127, 500},+    {8128, 500},+    {8129, 500},+    {8130, 500},+    {8131, 500},+    {8132, 500},+    {8133, 500},+    {8134, 500},+    {8135, 500},+    {8136, 500},+    {8137, 500},+    {8138, 500},+    {8139, 500},+    {8140, 500},+    {8141, 500},+    {8142, 500},+    {8143, 500},+    {8144, 500},+    {8145, 500},+    {8146, 500},+    {8147, 500},+    {8148, 500},+    {8149, 500},+    {8150, 500},+    {8151, 500},+    {8152, 500},+    {8153, 500},+    {8154, 500},+    {8155, 500},+    {8156, 500},+    {8157, 500},+    {8158, 500},+    {8159, 500},+    {8160, 500},+    {8161, 500},+    {8162, 500},+    {8163, 500},+    {8164, 500},+    {8165, 500},+    {8166, 500},+    {8167, 500},+    {8168, 500},+    {8169, 500},+    {8170, 500},+    {8171, 500},+    {8172, 500},+    {8173, 500},+    {8174, 500},+    {8175, 500},+    {8176, 500},+    {8177, 500},+    {8178, 500},+    {8179, 500},+    {8180, 500},+    {8181, 500},+    {8182, 500},+    {8183, 500},+    {8184, 500},+    {8185, 500},+    {8186, 500},+    {8187, 500},+    {8188, 500},+    {0xFFFF, 0}+};+++static const HPDF_CID_Width Dotum_W_ARRAY[] = {+    {1, 333},+    {2, 333},+    {3, 416},+    {4, 625},+    {5, 500},+    {6, 916},+    {7, 708},+    {8, 291},+    {9, 375},+    {10, 375},+    {11, 583},+    {12, 582},+    {13, 375},+    {14, 589},+    {15, 375},+    {16, 416},+    {17, 583},+    {18, 583},+    {19, 583},+    {20, 583},+    {21, 583},+    {22, 583},+    {23, 583},+    {24, 583},+    {25, 583},+    {26, 583},+    {27, 339},+    {28, 339},+    {29, 625},+    {30, 583},+    {31, 625},+    {32, 583},+    {34, 666},+    {35, 679},+    {36, 720},+    {37, 724},+    {38, 628},+    {39, 599},+    {40, 750},+    {41, 722},+    {42, 257},+    {43, 484},+    {44, 656},+    {45, 541},+    {46, 808},+    {47, 697},+    {48, 750},+    {49, 642},+    {50, 750},+    {51, 667},+    {52, 638},+    {53, 583},+    {54, 724},+    {55, 601},+    {56, 892},+    {57, 603},+    {58, 601},+    {59, 603},+    {60, 500},+    {61, 958},+    {62, 500},+    {63, 625},+    {64, 500},+    {65, 332},+    {66, 583},+    {67, 599},+    {68, 558},+    {69, 603},+    {70, 558},+    {71, 343},+    {72, 597},+    {73, 560},+    {74, 228},+    {75, 228},+    {76, 509},+    {77, 230},+    {78, 916},+    {79, 568},+    {80, 599},+    {81, 601},+    {82, 603},+    {83, 320},+    {84, 515},+    {85, 312},+    {86, 554},+    {87, 474},+    {88, 724},+    {89, 478},+    {90, 480},+    {91, 482},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 791},+    {104, 332},+    {107, 500},+    {109, 500},+    {110, 687},+    {114, 291},+    {115, 291},+    {116, 458},+    {117, 458},+    {130, 833},+    {131, 833},+    {132, 833},+    {133, 833},+    {134, 833},+    {135, 833},+    {136, 911},+    {138, 405},+    {139, 335},+    {140, 563},+    {146, 625},+    {147, 625},+    {151, 562},+    {153, 833},+    {155, 562},+    {160, 937},+    {164, 889},+    {165, 889},+    {167, 914},+    {169, 914},+    {172, 750},+    {173, 750},+    {178, 500},+    {182, 375},+    {191, 718},+    {199, 333},+    {201, 437},+    {202, 375},+    {203, 437},+    {204, 312},+    {205, 317},+    {206, 333},+    {207, 312},+    {208, 416},+    {209, 583},+    {212, 812},+    {213, 687},+    {214, 562},+    {222, 750},+    {224, 792},+    {226, 843},+    {244, 562},+    {245, 562},+    {246, 562},+    {247, 750},+    {254, 687},+    {471, 666},+    {472, 708},+    {473, 594},+    {474, 705},+    {475, 666},+    {476, 625},+    {477, 750},+    {478, 791},+    {479, 291},+    {480, 708},+    {481, 666},+    {482, 875},+    {483, 750},+    {484, 750},+    {485, 791},+    {486, 702},+    {487, 666},+    {488, 674},+    {489, 583},+    {490, 625},+    {491, 770},+    {492, 625},+    {493, 794},+    {494, 750},+    {495, 625},+    {496, 563},+    {497, 562},+    {498, 571},+    {499, 562},+    {500, 500},+    {501, 625},+    {502, 687},+    {503, 375},+    {504, 562},+    {505, 687},+    {506, 567},+    {507, 500},+    {508, 500},+    {509, 625},+    {510, 687},+    {511, 625},+    {512, 625},+    {513, 583},+    {514, 583},+    {515, 625},+    {516, 583},+    {517, 731},+    {518, 750},+    {590, 500},+    {643, 750},+    {666, 937},+    {667, 751},+    {668, 403},+    {669, 750},+    {670, 750},+    {671, 583},+    {672, 583},+    {673, 791},+    {674, 934},+    {675, 375},+    {676, 666},+    {677, 583},+    {678, 750},+    {748, 500},+    {751, 500},+    {752, 500},+    {753, 562},+    {754, 561},+    {755, 562},+    {756, 562},+    {757, 812},+    {758, 625},+    {759, 625},+    {760, 583},+    {761, 250},+    {762, 500},+    {763, 562},+    {764, 312},+    {765, 250},+    {766, 625},+    {767, 875},+    {768, 625},+    {769, 625},+    {770, 333},+    {771, 625},+    {772, 687},+    {842, 375},+    {843, 322},+    {844, 322},+    {846, 500},+    {1020, 666},+    {1021, 708},+    {1022, 708},+    {1023, 594},+    {1024, 812},+    {1025, 666},+    {1026, 666},+    {1027, 937},+    {1028, 583},+    {1029, 750},+    {1030, 750},+    {1031, 708},+    {1032, 714},+    {1033, 875},+    {1034, 750},+    {1035, 791},+    {1036, 750},+    {1037, 666},+    {1038, 750},+    {1039, 583},+    {1040, 500},+    {1041, 770},+    {1042, 625},+    {1043, 742},+    {1044, 583},+    {1045, 966},+    {1046, 966},+    {1047, 787},+    {1048, 825},+    {1049, 666},+    {1050, 738},+    {1051, 991},+    {1052, 708},+    {1053, 583},+    {1054, 583},+    {1055, 610},+    {1056, 583},+    {1057, 653},+    {1058, 583},+    {1059, 583},+    {1060, 768},+    {1061, 563},+    {1062, 658},+    {1063, 662},+    {1064, 562},+    {1065, 641},+    {1066, 740},+    {1067, 640},+    {1068, 625},+    {1069, 645},+    {1070, 625},+    {1071, 583},+    {1072, 595},+    {1073, 500},+    {1074, 763},+    {1075, 500},+    {1076, 619},+    {1077, 583},+    {1078, 840},+    {1079, 838},+    {1080, 609},+    {1081, 779},+    {1082, 512},+    {1083, 574},+    {1084, 770},+    {1085, 581},+    {8094, 333},+    {8095, 333},+    {8096, 416},+    {8097, 625},+    {8098, 500},+    {8099, 916},+    {8100, 708},+    {8101, 291},+    {8102, 375},+    {8103, 375},+    {8104, 583},+    {8105, 582},+    {8106, 375},+    {8107, 589},+    {8108, 375},+    {8109, 416},+    {8110, 583},+    {8111, 583},+    {8112, 583},+    {8113, 583},+    {8114, 583},+    {8115, 583},+    {8116, 583},+    {8117, 583},+    {8118, 583},+    {8119, 583},+    {8120, 339},+    {8121, 339},+    {8122, 625},+    {8123, 583},+    {8124, 625},+    {8125, 583},+    {8127, 666},+    {8128, 679},+    {8129, 720},+    {8130, 724},+    {8131, 628},+    {8132, 599},+    {8133, 750},+    {8134, 722},+    {8135, 257},+    {8136, 484},+    {8137, 656},+    {8138, 541},+    {8139, 808},+    {8140, 697},+    {8141, 750},+    {8142, 642},+    {8143, 750},+    {8144, 667},+    {8145, 638},+    {8146, 583},+    {8147, 724},+    {8148, 601},+    {8149, 892},+    {8150, 603},+    {8151, 601},+    {8152, 603},+    {8153, 500},+    {8154, 958},+    {8155, 500},+    {8156, 625},+    {8157, 500},+    {8158, 332},+    {8159, 583},+    {8160, 599},+    {8161, 558},+    {8162, 603},+    {8163, 558},+    {8164, 343},+    {8165, 597},+    {8166, 560},+    {8167, 228},+    {8168, 228},+    {8169, 509},+    {8170, 230},+    {8171, 916},+    {8172, 568},+    {8173, 599},+    {8174, 601},+    {8175, 603},+    {8176, 320},+    {8177, 515},+    {8178, 312},+    {8179, 554},+    {8180, 474},+    {8181, 724},+    {8182, 478},+    {8183, 480},+    {8184, 482},+    {8185, 500},+    {8186, 500},+    {8187, 500},+    {8188, 791},+    {0xFFFF, 0}+};+++static const HPDF_CID_Width BatangChe_W_ARRAY[] = {+    {1, 500},+    {2, 500},+    {3, 500},+    {4, 500},+    {5, 500},+    {6, 500},+    {7, 500},+    {8, 500},+    {9, 500},+    {10, 500},+    {11, 500},+    {12, 500},+    {13, 500},+    {14, 500},+    {15, 500},+    {16, 500},+    {17, 500},+    {18, 500},+    {19, 500},+    {20, 500},+    {21, 500},+    {22, 500},+    {23, 500},+    {24, 500},+    {25, 500},+    {26, 500},+    {27, 500},+    {28, 500},+    {29, 500},+    {30, 500},+    {31, 500},+    {32, 500},+    {33, 500},+    {34, 500},+    {35, 500},+    {36, 500},+    {37, 500},+    {38, 500},+    {39, 500},+    {40, 500},+    {41, 500},+    {42, 500},+    {43, 500},+    {44, 500},+    {45, 500},+    {46, 500},+    {47, 500},+    {48, 500},+    {49, 500},+    {50, 500},+    {51, 500},+    {52, 500},+    {53, 500},+    {54, 500},+    {55, 500},+    {56, 500},+    {57, 500},+    {58, 500},+    {59, 500},+    {60, 500},+    {61, 500},+    {62, 500},+    {63, 500},+    {64, 500},+    {65, 500},+    {66, 500},+    {67, 500},+    {68, 500},+    {69, 500},+    {70, 500},+    {71, 500},+    {72, 500},+    {73, 500},+    {74, 500},+    {75, 500},+    {76, 500},+    {77, 500},+    {78, 500},+    {79, 500},+    {80, 500},+    {81, 500},+    {82, 500},+    {83, 500},+    {84, 500},+    {85, 500},+    {86, 500},+    {87, 500},+    {88, 500},+    {89, 500},+    {90, 500},+    {91, 500},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 500},+    {8094, 500},+    {8095, 500},+    {8096, 500},+    {8097, 500},+    {8098, 500},+    {8099, 500},+    {8100, 500},+    {8101, 500},+    {8102, 500},+    {8103, 500},+    {8104, 500},+    {8105, 500},+    {8106, 500},+    {8107, 500},+    {8108, 500},+    {8109, 500},+    {8110, 500},+    {8111, 500},+    {8112, 500},+    {8113, 500},+    {8114, 500},+    {8115, 500},+    {8116, 500},+    {8117, 500},+    {8118, 500},+    {8119, 500},+    {8120, 500},+    {8121, 500},+    {8122, 500},+    {8123, 500},+    {8124, 500},+    {8125, 500},+    {8126, 500},+    {8127, 500},+    {8128, 500},+    {8129, 500},+    {8130, 500},+    {8131, 500},+    {8132, 500},+    {8133, 500},+    {8134, 500},+    {8135, 500},+    {8136, 500},+    {8137, 500},+    {8138, 500},+    {8139, 500},+    {8140, 500},+    {8141, 500},+    {8142, 500},+    {8143, 500},+    {8144, 500},+    {8145, 500},+    {8146, 500},+    {8147, 500},+    {8148, 500},+    {8149, 500},+    {8150, 500},+    {8151, 500},+    {8152, 500},+    {8153, 500},+    {8154, 500},+    {8155, 500},+    {8156, 500},+    {8157, 500},+    {8158, 500},+    {8159, 500},+    {8160, 500},+    {8161, 500},+    {8162, 500},+    {8163, 500},+    {8164, 500},+    {8165, 500},+    {8166, 500},+    {8167, 500},+    {8168, 500},+    {8169, 500},+    {8170, 500},+    {8171, 500},+    {8172, 500},+    {8173, 500},+    {8174, 500},+    {8175, 500},+    {8176, 500},+    {8177, 500},+    {8178, 500},+    {8179, 500},+    {8180, 500},+    {8181, 500},+    {8182, 500},+    {8183, 500},+    {8184, 500},+    {8185, 500},+    {8186, 500},+    {8187, 500},+    {8188, 500},+    {0xFFFF, 0}+};++++static const HPDF_CID_Width Batang_W_ARRAY[] = {+    {1, 333},+    {2, 416},+    {3, 416},+    {4, 625},+    {5, 541},+    {6, 666},+    {7, 583},+    {8, 291},+    {9, 416},+    {10, 416},+    {11, 500},+    {12, 625},+    {13, 333},+    {14, 832},+    {15, 333},+    {16, 375},+    {17, 583},+    {18, 583},+    {19, 583},+    {20, 583},+    {21, 583},+    {22, 583},+    {23, 583},+    {24, 583},+    {25, 583},+    {26, 583},+    {27, 333},+    {28, 333},+    {29, 708},+    {30, 625},+    {31, 708},+    {32, 583},+    {33, 735},+    {34, 687},+    {35, 683},+    {36, 687},+    {37, 678},+    {38, 657},+    {39, 656},+    {40, 700},+    {41, 702},+    {42, 462},+    {43, 562},+    {44, 687},+    {45, 625},+    {46, 812},+    {47, 711},+    {48, 672},+    {49, 651},+    {50, 702},+    {51, 702},+    {52, 619},+    {53, 648},+    {54, 712},+    {55, 682},+    {56, 792},+    {57, 666},+    {58, 667},+    {59, 634},+    {60, 500},+    {61, 750},+    {62, 500},+    {63, 562},+    {64, 500},+    {65, 327},+    {66, 613},+    {67, 637},+    {68, 615},+    {69, 637},+    {70, 610},+    {71, 500},+    {72, 637},+    {73, 650},+    {74, 469},+    {75, 471},+    {76, 641},+    {77, 500},+    {78, 875},+    {79, 646},+    {80, 657},+    {81, 655},+    {82, 655},+    {83, 583},+    {84, 583},+    {85, 562},+    {86, 645},+    {87, 645},+    {88, 750},+    {89, 613},+    {90, 647},+    {91, 551},+    {92, 500},+    {93, 500},+    {94, 500},+    {95, 791},+    {104, 332},+    {107, 500},+    {109, 437},+    {110, 687},+    {114, 333},+    {115, 333},+    {116, 500},+    {117, 500},+    {130, 833},+    {131, 833},+    {132, 833},+    {133, 833},+    {134, 833},+    {135, 833},+    {136, 913},+    {138, 437},+    {139, 333},+    {140, 525},+    {146, 625},+    {147, 625},+    {151, 593},+    {153, 833},+    {155, 625},+    {164, 889},+    {165, 889},+    {167, 914},+    {169, 914},+    {172, 750},+    {173, 750},+    {178, 549},+    {182, 569},+    {191, 718},+    {199, 375},+    {201, 375},+    {202, 375},+    {203, 500},+    {204, 312},+    {205, 312},+    {206, 333},+    {207, 375},+    {208, 416},+    {209, 583},+    {212, 897},+    {213, 798},+    {214, 500},+    {222, 750},+    {224, 792},+    {226, 843},+    {244, 687},+    {245, 562},+    {246, 562},+    {247, 750},+    {254, 687},+    {258, 959},+    {471, 708},+    {472, 708},+    {473, 666},+    {474, 687},+    {475, 708},+    {476, 687},+    {477, 750},+    {478, 708},+    {479, 587},+    {480, 750},+    {481, 708},+    {482, 833},+    {483, 750},+    {484, 791},+    {485, 708},+    {486, 763},+    {487, 666},+    {488, 708},+    {489, 708},+    {490, 708},+    {491, 687},+    {492, 708},+    {493, 883},+    {494, 812},+    {495, 666},+    {496, 625},+    {497, 666},+    {498, 597},+    {499, 562},+    {500, 500},+    {501, 666},+    {502, 625},+    {503, 543},+    {504, 666},+    {505, 750},+    {506, 666},+    {507, 666},+    {508, 500},+    {509, 616},+    {510, 728},+    {511, 666},+    {512, 687},+    {513, 599},+    {514, 625},+    {515, 666},+    {516, 730},+    {517, 812},+    {518, 777},+    {590, 525},+    {643, 812},+    {667, 708},+    {668, 500},+    {669, 750},+    {671, 666},+    {672, 666},+    {673, 708},+    {675, 500},+    {676, 666},+    {677, 708},+    {678, 750},+    {748, 500},+    {751, 500},+    {752, 500},+    {753, 500},+    {754, 500},+    {755, 500},+    {756, 500},+    {757, 812},+    {758, 666},+    {759, 625},+    {760, 666},+    {761, 541},+    {762, 901},+    {763, 666},+    {764, 541},+    {765, 541},+    {766, 666},+    {767, 948},+    {768, 750},+    {769, 666},+    {770, 583},+    {771, 666},+    {772, 666},+    {842, 500},+    {843, 500},+    {844, 500},+    {846, 500},+    {1020, 708},+    {1021, 708},+    {1022, 708},+    {1023, 666},+    {1024, 773},+    {1025, 708},+    {1026, 708},+    {1028, 687},+    {1029, 750},+    {1030, 750},+    {1031, 750},+    {1032, 797},+    {1033, 833},+    {1034, 750},+    {1035, 708},+    {1036, 750},+    {1037, 666},+    {1038, 708},+    {1039, 708},+    {1040, 666},+    {1041, 687},+    {1042, 708},+    {1043, 750},+    {1044, 666},+    {1047, 843},+    {1049, 647},+    {1050, 687},+    {1052, 750},+    {1053, 666},+    {1054, 625},+    {1055, 666},+    {1056, 605},+    {1057, 666},+    {1058, 625},+    {1059, 625},+    {1060, 812},+    {1061, 599},+    {1062, 715},+    {1063, 715},+    {1064, 666},+    {1065, 760},+    {1066, 729},+    {1067, 650},+    {1068, 616},+    {1069, 667},+    {1070, 666},+    {1071, 625},+    {1072, 625},+    {1073, 666},+    {1074, 767},+    {1075, 625},+    {1076, 720},+    {1077, 666},+    {1078, 797},+    {1079, 841},+    {1080, 733},+    {1081, 875},+    {1082, 649},+    {1083, 625},+    {1084, 887},+    {1085, 659},+    {8094, 333},+    {8095, 416},+    {8096, 416},+    {8097, 625},+    {8098, 541},+    {8099, 666},+    {8100, 583},+    {8101, 291},+    {8102, 416},+    {8103, 416},+    {8104, 500},+    {8105, 625},+    {8106, 333},+    {8107, 832},+    {8108, 333},+    {8109, 375},+    {8110, 583},+    {8111, 583},+    {8112, 583},+    {8113, 583},+    {8114, 583},+    {8115, 583},+    {8116, 583},+    {8117, 583},+    {8118, 583},+    {8119, 583},+    {8120, 333},+    {8121, 333},+    {8122, 708},+    {8123, 625},+    {8124, 708},+    {8125, 583},+    {8126, 735},+    {8127, 687},+    {8128, 683},+    {8129, 687},+    {8130, 678},+    {8131, 657},+    {8132, 656},+    {8133, 700},+    {8134, 702},+    {8135, 462},+    {8136, 562},+    {8137, 687},+    {8138, 625},+    {8139, 812},+    {8140, 711},+    {8141, 672},+    {8142, 651},+    {8143, 702},+    {8144, 702},+    {8145, 619},+    {8146, 648},+    {8147, 712},+    {8148, 682},+    {8149, 792},+    {8150, 666},+    {8151, 667},+    {8152, 634},+    {8153, 500},+    {8154, 750},+    {8155, 500},+    {8156, 562},+    {8157, 500},+    {8158, 327},+    {8159, 613},+    {8160, 637},+    {8161, 615},+    {8162, 637},+    {8163, 610},+    {8164, 500},+    {8165, 637},+    {8166, 650},+    {8167, 469},+    {8168, 471},+    {8169, 641},+    {8170, 500},+    {8171, 875},+    {8172, 646},+    {8173, 657},+    {8174, 655},+    {8175, 655},+    {8176, 583},+    {8177, 583},+    {8178, 562},+    {8179, 645},+    {8180, 645},+    {8181, 750},+    {8182, 613},+    {8183, 647},+    {8184, 551},+    {8185, 500},+    {8186, 500},+    {8187, 500},+    {8188, 791},+    {0xFFFF, 0}+};+++/*---------------------------------------------------------------------------*/+/*----- BatangChe Font ---------------------------------------------------------*/+++static HPDF_STATUS+DotumChe_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_DotumChe_Init\n"));++    fontdef->ascent = 858;+    fontdef->descent = -141;+    fontdef->cap_height = 679;+    fontdef->font_bbox = HPDF_ToBox(0, -150, 1000, 863);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, DotumChe_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+DotumChe_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = DotumChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+DotumChe_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = DotumChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+DotumChe_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = DotumChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+Dotum_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_Dotum_Init\n"));++    fontdef->ascent = 858;+    fontdef->descent = -141;+    fontdef->cap_height = 679;+    fontdef->font_bbox = HPDF_ToBox(0, -150, 1000, 863);+    fontdef->flags = HPDF_FONT_SYMBOLIC;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, Dotum_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+Dotum_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Dotum_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+Dotum_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Dotum_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+Dotum_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Dotum_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+BatangChe_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_BatangChe_Init\n"));++    fontdef->ascent = 858;+    fontdef->descent = -141;+    fontdef->cap_height = 769;+    fontdef->font_bbox = HPDF_ToBox(-0, -154, 1000, 861);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_FIXED_WIDTH ++                HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, DotumChe_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+BatangChe_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = BatangChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+BatangChe_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = BatangChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+BatangChe_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = BatangChe_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++static HPDF_STATUS+Batang_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_FontDef_Batang_Init\n"));++    fontdef->ascent = 858;+    fontdef->descent = -141;+    fontdef->cap_height = 679;+    fontdef->font_bbox = HPDF_ToBox(0, -154, 1000, 861);+    fontdef->flags = HPDF_FONT_SYMBOLIC + HPDF_FONT_SERIF;+    fontdef->italic_angle = 0;+    fontdef->stemv = 78;+    if ((ret = HPDF_CIDFontDef_AddWidth (fontdef, Dotum_W_ARRAY)) !=+                HPDF_OK) {+        return ret;+    }++    fontdef->type = HPDF_FONTDEF_TYPE_CID;+    fontdef->valid = HPDF_TRUE;++    return HPDF_OK;+}+++static HPDF_STATUS+Batang_Bold_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Batang_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_FALSE);+}+++static HPDF_STATUS+Batang_Italic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Batang_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_FALSE, HPDF_TRUE);+}++static HPDF_STATUS+Batang_BoldItalic_Init  (HPDF_FontDef   fontdef)+{+    HPDF_STATUS ret = Batang_Init (fontdef);++    if (ret != HPDF_OK)+        return ret;++    return HPDF_CIDFontDef_ChangeStyle (fontdef, HPDF_TRUE, HPDF_TRUE);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_UseKRFonts   (HPDF_Doc   pdf)+{+    HPDF_FontDef fontdef;+    HPDF_STATUS ret;++    if (!HPDF_HasDoc (pdf))+        return HPDF_INVALID_DOCUMENT;++    /* DotumChe */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "DotumChe",+                DotumChe_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "DotumChe,Bold",+                DotumChe_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "DotumChe,Italic",+                DotumChe_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "DotumChe,BoldItalic",+                DotumChe_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* Dotum */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Dotum",+                Dotum_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Dotum,Bold",+                Dotum_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Dotum,Italic",+                Dotum_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Dotum,BoldItalic",+                Dotum_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* BatangChe */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "BatangChe",+                BatangChe_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "BatangChe,Bold",+                BatangChe_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "BatangChe,Italic",+                BatangChe_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "BatangChe,BoldItalic",+                BatangChe_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    /* Batang */+    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Batang",+                Batang_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Batang,Bold",+                Batang_Bold_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Batang,Italic",+                Batang_Italic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    fontdef = HPDF_CIDFontDef_New (pdf->mmgr,  "Batang,BoldItalic",+                Batang_BoldItalic_Init);++    if ((ret = HPDF_Doc_RegisterFontDef (pdf, fontdef)) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+
+ haru/hpdf_fontdef_tt.c view
@@ -0,0 +1,2230 @@+/*+ * << Haru Free PDF Library 2.0.4 >> -- hpdf_fontdef_tt.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.08.24 fixed for composite glyph description.+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_fontdef.h"+++#define HPDF_TTF_MAX_MEM_SIZ    10000++#define HPDF_REQUIRED_TAGS_COUNT  13++static const char  *REQUIRED_TAGS[HPDF_REQUIRED_TAGS_COUNT] = {+    "OS/2",+    "cmap",+    "cvt ",+    "fpgm",+    "glyf",+    "head",+    "hhea",+    "hmtx",+    "loca",+    "maxp",+    "name",+    "post",+    "prep"+};+++static void+FreeFunc (HPDF_FontDef  fontdef);+++static HPDF_STATUS+LoadFontData (HPDF_FontDef  fontdef,+              HPDF_Stream   stream,+              HPDF_BOOL     embedding,+              HPDF_UINT     offset);+++static HPDF_STATUS+LoadFontData2 (HPDF_FontDef  fontdef,+               HPDF_Stream   stream,+               HPDF_UINT     index,+               HPDF_BOOL     embedding);+++static void+InitAttr (HPDF_FontDef  fontdef);+++static HPDF_STATUS+GetUINT32 (HPDF_Stream   stream,+           HPDF_UINT32  *value);+++static HPDF_STATUS+GetUINT16 (HPDF_Stream   stream,+           HPDF_UINT16  *value);+++static HPDF_STATUS+GetINT16 (HPDF_Stream   stream,+          HPDF_INT16    *value);+++static HPDF_STATUS+WriteUINT32 (HPDF_Stream   stream,+             HPDF_UINT32   value);+++static HPDF_STATUS+WriteUINT16 (HPDF_Stream   stream,+             HPDF_UINT16   value);+++static HPDF_STATUS+WriteINT16 (HPDF_Stream   stream,+            HPDF_INT16    value);+++static void+UINT32Swap (HPDF_UINT32  *value);+++static void+UINT16Swap (HPDF_UINT16  *value);+++static void+INT16Swap (HPDF_INT16  *value);+++static HPDF_STATUS+LoadTTFTable (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseHead (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseMaxp (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseHhea (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseCMap (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseCMAP_format0  (HPDF_FontDef  fontdef,+                    HPDF_UINT32   offset);+++static HPDF_STATUS+ParseCMAP_format4  (HPDF_FontDef  fontdef,+                    HPDF_UINT32   offset);+++static HPDF_STATUS+ParseHmtx  (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseLoca  (HPDF_FontDef  fontdef);+++static HPDF_STATUS+LoadUnicodeName  (HPDF_Stream   stream,+                  HPDF_UINT     offset,+                  HPDF_UINT     len,+                  char          *buf);++static HPDF_STATUS+ParseName  (HPDF_FontDef  fontdef);+++static HPDF_STATUS+ParseOS2  (HPDF_FontDef  fontdef);+++static HPDF_TTFTable*+FindTable (HPDF_FontDef   fontdef,+           const char    *tag);+++static void+CleanFunc (HPDF_FontDef   fontdef);+++static HPDF_STATUS+CheckCompositGryph  (HPDF_FontDef   fontdef,+                     HPDF_UINT16    gid);+++/*---------------------------------------------------------------------------*/+/*---------------------------------------------------------------------------*/++static void+FreeFunc (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;++    HPDF_PTRACE ((" HPDF_TTFontDef_FreeFunc\n"));++    if (attr) {+        InitAttr (fontdef);++        HPDF_FreeMem (fontdef->mmgr, attr);+    }+}+++static void+CleanFunc (HPDF_FontDef   fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_MemSet (attr->glyph_tbl.flgs, 0,+            sizeof (HPDF_BYTE) * attr->num_glyphs);+    attr->glyph_tbl.flgs[0] = 1;+}+++static void+InitAttr (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;++    if (attr) {+        if (attr->char_set)+            HPDF_FreeMem (fontdef->mmgr, attr->char_set);++        if (attr->h_metric)+            HPDF_FreeMem (fontdef->mmgr, attr->h_metric);++        if (attr->name_tbl.name_records)+            HPDF_FreeMem (fontdef->mmgr, attr->name_tbl.name_records);++        if (attr->cmap.end_count)+            HPDF_FreeMem (fontdef->mmgr, attr->cmap.end_count);++        if (attr->cmap.start_count)+            HPDF_FreeMem (fontdef->mmgr, attr->cmap.start_count);++        if (attr->cmap.id_delta)+            HPDF_FreeMem (fontdef->mmgr, attr->cmap.id_delta);++        if (attr->cmap.id_range_offset)+            HPDF_FreeMem (fontdef->mmgr, attr->cmap.id_range_offset);++        if (attr->cmap.glyph_id_array)+            HPDF_FreeMem (fontdef->mmgr, attr->cmap.glyph_id_array);++        if (attr->offset_tbl.table)+            HPDF_FreeMem (fontdef->mmgr, attr->offset_tbl.table);++        if (attr->glyph_tbl.flgs)+            HPDF_FreeMem (fontdef->mmgr, attr->glyph_tbl.flgs);++        if (attr->glyph_tbl.offsets)+            HPDF_FreeMem (fontdef->mmgr, attr->glyph_tbl.offsets);++        if (attr->stream)+            HPDF_Stream_Free (attr->stream);+    }+}+++HPDF_FontDef+HPDF_TTFontDef_New (HPDF_MMgr   mmgr)+{+    HPDF_FontDef fontdef;+    HPDF_TTFontDefAttr fontdef_attr;++    HPDF_PTRACE ((" HPDF_TTFontDef_New\n"));++    if (!mmgr)+        return NULL;++    fontdef = HPDF_GetMem (mmgr, sizeof(HPDF_FontDef_Rec));+    if (!fontdef)+        return NULL;++    HPDF_MemSet (fontdef, 0, sizeof(HPDF_FontDef_Rec));+    fontdef->sig_bytes = HPDF_FONTDEF_SIG_BYTES;+    fontdef->mmgr = mmgr;+    fontdef->error = mmgr->error;+    fontdef->type = HPDF_FONTDEF_TYPE_TRUETYPE;+    fontdef->clean_fn = CleanFunc;+    fontdef->free_fn = FreeFunc;++    fontdef_attr = HPDF_GetMem (mmgr, sizeof(HPDF_TTFontDefAttr_Rec));+    if (!fontdef_attr) {+        HPDF_FreeMem (fontdef->mmgr, fontdef);+        return NULL;+    }++    fontdef->attr = fontdef_attr;+    HPDF_MemSet ((HPDF_BYTE *)fontdef_attr, 0, sizeof(HPDF_TTFontDefAttr_Rec));+    fontdef->flags = HPDF_FONT_STD_CHARSET;++    return fontdef;+}+++HPDF_FontDef+HPDF_TTFontDef_Load  (HPDF_MMgr     mmgr,+                      HPDF_Stream   stream,+                      HPDF_BOOL     embedding)+{+    HPDF_STATUS ret;+    HPDF_FontDef fontdef;++    HPDF_PTRACE ((" HPDF_TTFontDef_Load\n"));++    fontdef = HPDF_TTFontDef_New (mmgr);++    if (!fontdef) {+        HPDF_Stream_Free (stream);+        return NULL;+    }++    ret = LoadFontData (fontdef, stream, embedding, 0);+    if (ret != HPDF_OK) {+        HPDF_FontDef_Free (fontdef);+        return NULL;+    }++    return fontdef;+}+++HPDF_FontDef+HPDF_TTFontDef_Load2  (HPDF_MMgr     mmgr,+                       HPDF_Stream   stream,+                       HPDF_UINT     index,+                       HPDF_BOOL     embedding)+{+    HPDF_STATUS ret;+    HPDF_FontDef fontdef;++    HPDF_PTRACE ((" HPDF_TTFontDef_Load\n"));++    fontdef = HPDF_TTFontDef_New (mmgr);++    if (!fontdef) {+        HPDF_Stream_Free (stream);+        return NULL;+    }++    ret = LoadFontData2 (fontdef, stream, index, embedding);+    if (ret != HPDF_OK) {+        HPDF_FontDef_Free (fontdef);+        return NULL;+    }++    return fontdef;+}+++#ifdef HPDF_TTF_DEBUG+static void+DumpTable (HPDF_FontDef   fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_Stream  stream;+    HPDF_UINT i;++    for (i = 0; i < HPDF_REQUIRED_TAGS_COUNT; i++) {+        char fname[9];+        HPDF_TTFTable *tbl = FindTable (fontdef, REQUIRED_TAGS[i]);++        if (!tbl) {+            HPDF_PTRACE ((" ERR: cannot seek %s\n", fname));+            return;+        }++        HPDF_MemSet (fname, 0, 9);+        HPDF_MemCpy (fname, REQUIRED_TAGS[i], 4);+        HPDF_MemCpy (fname + 4, ".dat", 4);+        HPDF_PTRACE ((" %s open\n", fname));++        if (HPDF_MemCmp(fname, "OS/2", 4) == 0)+            fname[2] = '_';++        stream = HPDF_FileWriter_New (fontdef->mmgr, fname);++        if (!stream) {+            HPDF_PTRACE ((" ERR: cannot open %s\n", fname));+        } else {+            HPDF_STATUS ret;+            HPDF_UINT tbl_len = tbl->length;++            ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+            if (ret != HPDF_OK) {+                HPDF_PTRACE ((" ERR: cannot seek \n"));+                HPDF_Stream_Free (stream);+                return;+            }++            for (;;) {+                HPDF_BYTE buf[HPDF_STREAM_BUF_SIZ];+                HPDF_UINT len = HPDF_STREAM_BUF_SIZ;++                if (len > tbl_len)+                    len = tbl_len;++                HPDF_Stream_Read (attr->stream, buf, &len);+                if (len <= 0)+                    break;++                ret = HPDF_Stream_Write (stream, buf, len);+                if (ret != HPDF_OK) {+                    HPDF_PTRACE ((" ERR: cannot write\n"));+                    break;+                }++                tbl_len -= len;+                if (tbl_len == 0)+                    break;+            }++            HPDF_Stream_Free (stream);+        }+    }+}+#endif++static HPDF_STATUS+LoadFontData (HPDF_FontDef  fontdef,+              HPDF_Stream   stream,+              HPDF_BOOL     embedding,+              HPDF_UINT     offset)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret;+    HPDF_TTFTable *tbl;++    HPDF_PTRACE ((" HPDF_TTFontDef_LoadFontData\n"));++    attr->stream = stream;+    attr->embedding = embedding;++    if ((ret = HPDF_Stream_Seek (stream, offset, HPDF_SEEK_SET)) != HPDF_OK)+        return ret;++    if ((ret = LoadTTFTable (fontdef)) != HPDF_OK)+        return ret;++#ifdef HPDF_DUMP_FONTDATA+    DumpTable (fontdef);+#endif /* HPDF_DUMP_FONTDATA */++    if ((ret = ParseHead (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseMaxp (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseHhea (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseCMap (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseHmtx (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseLoca (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseName (fontdef)) != HPDF_OK)+        return ret;++    if ((ret = ParseOS2 (fontdef)) != HPDF_OK)+        return ret;++    tbl = FindTable (fontdef, "glyf");+    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 4);++    attr->glyph_tbl.base_offset = tbl->offset;+    fontdef->cap_height =+                HPDF_TTFontDef_GetCharBBox (fontdef, (HPDF_UINT16)'H').top;+    fontdef->x_height =+                HPDF_TTFontDef_GetCharBBox (fontdef, (HPDF_UINT16)'x').top;+    fontdef->missing_width = (HPDF_UINT32)attr->h_metric[0].advance_width * 1000 /+                attr->header.units_per_em;++    HPDF_PTRACE ((" fontdef->cap_height=%d\n", fontdef->cap_height));+    HPDF_PTRACE ((" fontdef->x_height=%d\n", fontdef->x_height));+    HPDF_PTRACE ((" fontdef->missing_width=%d\n", fontdef->missing_width));++    if (!embedding) {+        HPDF_Stream_Free (attr->stream);+        attr->stream = NULL;+    }++    return HPDF_OK;+}++static HPDF_STATUS+LoadFontData2 (HPDF_FontDef  fontdef,+               HPDF_Stream   stream,+               HPDF_UINT     index,+               HPDF_BOOL     embedding)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret;+    HPDF_BYTE tag[4];+    HPDF_UINT32 num_fonts;+    HPDF_UINT32 offset;+    HPDF_UINT size;++    HPDF_PTRACE ((" HPDF_TTFontDef_LoadFontData2\n"));++    attr->stream = stream;+    attr->embedding = embedding;++    ret = HPDF_Stream_Seek (stream, 0, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    size = 4;+    if ((ret = HPDF_Stream_Read (stream, tag, &size)) != HPDF_OK)+        return ret;++    if (HPDF_MemCmp (tag, "ttcf", 4) != 0)+        return HPDF_SetError (fontdef->error, HPDF_INVALID_TTC_FILE, 0);++    if ((ret = HPDF_Stream_Seek (stream, 8, HPDF_SEEK_SET)) != HPDF_OK)+        return ret;++    if ((ret = GetUINT32 (stream, &num_fonts)) != HPDF_OK)+        return ret;++    HPDF_PTRACE((" HPDF_TTFontDef_LoadFontData2 num_fonts=%u\n",+                (HPDF_UINT)num_fonts));++    if (index >= num_fonts)+        return HPDF_SetError (fontdef->error, HPDF_INVALID_TTC_INDEX, 0);++    /* read offset table for target font and set stream positioning to offset+     * value.+     */+    if ((ret = HPDF_Stream_Seek (stream, 12 + index * 4, HPDF_SEEK_SET)) !=+                HPDF_OK)+        return ret;++    if ((ret = GetUINT32 (stream, &offset)) != HPDF_OK)+        return ret;++    return LoadFontData (fontdef, stream, embedding, offset);+}++HPDF_Box+HPDF_TTFontDef_GetCharBBox  (HPDF_FontDef   fontdef,+                             HPDF_UINT16    unicode)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_UINT16 gid = HPDF_TTFontDef_GetGlyphid(fontdef, unicode);+    HPDF_STATUS ret;+    HPDF_Box bbox = HPDF_ToBox(0, 0, 0, 0);+    HPDF_INT16 i;+    HPDF_INT m;++    if (gid == 0) {+        HPDF_PTRACE ((" GetCharHeight cannot get gid char=0x%04x\n", unicode));+        return bbox;+    }++    if (attr->header.index_to_loc_format == 0)+        m = 2;+    else+        m = 1;++    ret = HPDF_Stream_Seek (attr->stream, attr->glyph_tbl.base_offset ++                     attr->glyph_tbl.offsets[gid] * m + 2, HPDF_SEEK_SET);++    if (ret != HPDF_OK)+        return bbox;++    ret += GetINT16 (attr->stream, &i);+    bbox.left = (HPDF_INT32)i * 1000 / attr->header.units_per_em;++    ret += GetINT16 (attr->stream, &i);+    bbox.bottom = (HPDF_INT32)i * 1000 / attr->header.units_per_em;++    ret += GetINT16 (attr->stream, &i);+    bbox.right = (HPDF_INT32)i * 1000 / attr->header.units_per_em;++    ret += GetINT16 (attr->stream, &i);+    bbox.top = (HPDF_INT32)i * 1000 / attr->header.units_per_em;++    if (ret != HPDF_OK)+        return HPDF_ToBox(0, 0, 0, 0);++    HPDF_PTRACE((" PdfTTFontDef_GetCharBBox char=0x%04X, "+            "box=[%f,%f,%f,%f]\n", unicode, bbox.left, bbox.bottom, bbox.right,+            bbox.top));++    return bbox;+}+++static HPDF_STATUS+GetUINT32 (HPDF_Stream         stream,+           HPDF_UINT32         *value)+{+    HPDF_STATUS ret;+    HPDF_UINT size = sizeof (HPDF_UINT32);++    ret = HPDF_Stream_Read (stream, (HPDF_BYTE *)value, &size);+    if (ret != HPDF_OK) {+        *value = 0;+        return ret;+    }++    UINT32Swap (value);++    return HPDF_OK;+}+++static HPDF_STATUS+GetUINT16 (HPDF_Stream         stream,+           HPDF_UINT16         *value)+{+    HPDF_STATUS ret;+    HPDF_UINT size = sizeof (HPDF_UINT16);++    ret = HPDF_Stream_Read (stream, (HPDF_BYTE *)value, &size);+    if (ret != HPDF_OK) {+        *value = 0;+        return ret;+    }++    UINT16Swap (value);++    return HPDF_OK;+}+++static HPDF_STATUS+GetINT16 (HPDF_Stream    stream,+          HPDF_INT16    *value)+{+    HPDF_STATUS ret;+    HPDF_UINT size = sizeof (HPDF_INT16);++    ret = HPDF_Stream_Read (stream, (HPDF_BYTE *)value, &size);+    if (ret != HPDF_OK) {+        *value = 0;+        return ret;+    }++    INT16Swap (value);++    return HPDF_OK;+}++static HPDF_STATUS+WriteUINT32 (HPDF_Stream   stream,+             HPDF_UINT32   value)+{+    HPDF_STATUS ret;+    HPDF_UINT32 tmp = value;++    UINT32Swap (&tmp);++    ret = HPDF_Stream_Write (stream, (HPDF_BYTE *)&tmp, sizeof(tmp));+    if (ret != HPDF_OK)+        return ret;++    return HPDF_OK;+}+++static HPDF_STATUS+WriteUINT16 (HPDF_Stream   stream,+             HPDF_UINT16   value)+{+    HPDF_STATUS ret;+    HPDF_UINT16 tmp = value;++    UINT16Swap (&tmp);++    ret = HPDF_Stream_Write (stream, (HPDF_BYTE *)&tmp, sizeof(tmp));+    if (ret != HPDF_OK)+        return ret;++    return HPDF_OK;+}+++static HPDF_STATUS+WriteINT16 (HPDF_Stream   stream,+            HPDF_INT16    value)+{+    HPDF_STATUS ret;+    HPDF_INT16 tmp = value;++    INT16Swap (&tmp);++    ret = HPDF_Stream_Write (stream, (HPDF_BYTE *)&tmp, sizeof(tmp));+    if (ret != HPDF_OK)+        return ret;++    return HPDF_OK;+}+++HPDF_STATUS+LoadTTFTable (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_INT i;+    HPDF_TTFTable *tbl;++    HPDF_PTRACE ((" HPDF_TTFontDef_LoadTTFTable\n"));++    ret += GetUINT32 (attr->stream, &attr->offset_tbl.sfnt_version);+    ret += GetUINT16 (attr->stream, &attr->offset_tbl.num_tables);+    ret += GetUINT16 (attr->stream, &attr->offset_tbl.search_range);+    ret += GetUINT16 (attr->stream, &attr->offset_tbl.entry_selector);+    ret += GetUINT16 (attr->stream, &attr->offset_tbl.range_shift);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    if (attr->offset_tbl.num_tables * sizeof(HPDF_TTFTable) >+            HPDF_TTF_MAX_MEM_SIZ)+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    attr->offset_tbl.table = HPDF_GetMem (fontdef->mmgr,+                        sizeof(HPDF_TTFTable) * attr->offset_tbl.num_tables);+    if (!attr->offset_tbl.table)+        return HPDF_Error_GetCode (fontdef->error);++    tbl = attr->offset_tbl.table;+    for (i = 0; i < attr->offset_tbl.num_tables; i++) {+        HPDF_UINT siz = 4;++        ret += HPDF_Stream_Read (attr->stream, tbl->tag, &siz);+        ret += GetUINT32 (attr->stream, &tbl->check_sum);+        ret += GetUINT32 (attr->stream, &tbl->offset);+        ret += GetUINT32 (attr->stream, &tbl->length);++        HPDF_PTRACE((" [%d] tag=[%c%c%c%c] check_sum=%u offset=%u length=%u\n",+                    i, tbl->tag[0], tbl->tag[1], tbl->tag[2], tbl->tag[3],+                    (HPDF_UINT)tbl->check_sum, (HPDF_UINT)tbl->offset,+                    (HPDF_UINT)tbl->length));++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (fontdef->error);;++        tbl++;+    }++    return HPDF_OK;+}+++static HPDF_STATUS+ParseHead (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "head");+    HPDF_STATUS ret;+    HPDF_UINT siz;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseHead\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 5);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    siz = 4;+    ret += HPDF_Stream_Read (attr->stream,+            (HPDF_BYTE *)&attr->header.version_number, &siz);+    ret += GetUINT32 (attr->stream, &attr->header.font_revision);+    ret += GetUINT32 (attr->stream, &attr->header.check_sum_adjustment);+    ret += GetUINT32 (attr->stream, &attr->header.magic_number);+    ret += GetUINT16 (attr->stream, &attr->header.flags);+    ret += GetUINT16 (attr->stream, &attr->header.units_per_em);++    siz = 8;+    ret += HPDF_Stream_Read (attr->stream, attr->header.created, &siz);+    siz = 8;+    ret += HPDF_Stream_Read (attr->stream, attr->header.modified, &siz);++    ret += GetINT16 (attr->stream, &attr->header.x_min);+    ret += GetINT16 (attr->stream, &attr->header.y_min);+    ret += GetINT16 (attr->stream, &attr->header.x_max);+    ret += GetINT16 (attr->stream, &attr->header.y_max);+    ret += GetUINT16 (attr->stream, &attr->header.mac_style);+    ret += GetUINT16 (attr->stream, &attr->header.lowest_rec_ppem);+    ret += GetINT16 (attr->stream, &attr->header.font_direction_hint);+    ret += GetINT16 (attr->stream, &attr->header.index_to_loc_format);+    ret += GetINT16 (attr->stream, &attr->header.glyph_data_format);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    fontdef->font_bbox. left = (HPDF_INT32)attr->header.x_min * 1000 /+                attr->header.units_per_em;+    fontdef->font_bbox. bottom = (HPDF_INT32)attr->header.y_min * 1000 /+                attr->header.units_per_em;+    fontdef->font_bbox. right = (HPDF_INT32)attr->header.x_max * 1000 /+                attr->header.units_per_em;+    fontdef->font_bbox. top = (HPDF_INT32)attr->header.y_max * 1000 /+                attr->header.units_per_em;++    return HPDF_OK;+}+++static HPDF_STATUS+ParseMaxp (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "maxp");+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseMaxp\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 9);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset + 4, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret = GetUINT16 (attr->stream, &attr->num_glyphs);++    HPDF_PTRACE((" HPDF_TTFontDef_ParseMaxp num_glyphs=%u\n",+            attr->num_glyphs));++    return ret;+}+++static HPDF_STATUS+ParseHhea (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "hhea");+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseHhea\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 6);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset + 4, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret += GetINT16 (attr->stream, &fontdef->ascent);+    fontdef->ascent = (HPDF_INT32)fontdef->ascent * 1000 /+                attr->header.units_per_em;+    ret += GetINT16 (attr->stream, &fontdef->descent);+    fontdef->descent = (HPDF_INT32)fontdef->descent * 1000 /+                attr->header.units_per_em;++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset + 34, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret = GetUINT16 (attr->stream, &attr->num_h_metric);+    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_PTRACE((" HPDF_TTFontDef_ParseHhea num_h_metric=%u\n",+            attr->num_h_metric));++    return ret;+}+++static HPDF_STATUS+ParseCMap (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "cmap");+    HPDF_STATUS ret;+    HPDF_UINT16 version;+    HPDF_UINT16 num_cmap;+    HPDF_UINT i;+    HPDF_UINT32 ms_unicode_encoding_offset = 0;+    HPDF_UINT32 byte_encoding_offset = 0;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseCMap\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 1);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret += GetUINT16 (attr->stream, &version);+    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    if (version != 0)+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    ret += GetUINT16 (attr->stream, &num_cmap);+    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    for (i = 0; i < num_cmap; i++) {+        HPDF_UINT16 platformID;+        HPDF_UINT16 encodingID;+        HPDF_UINT16 format;+        HPDF_UINT32 offset;+        HPDF_INT32 save_offset;++        ret += GetUINT16 (attr->stream, &platformID);+        ret += GetUINT16 (attr->stream, &encodingID);+        ret += GetUINT32 (attr->stream, &offset);+        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (fontdef->error);++        save_offset = HPDF_Stream_Tell (attr->stream);+        if (save_offset < 0)+           return HPDF_Error_GetCode (fontdef->error);++        ret = HPDF_Stream_Seek (attr->stream, tbl->offset + offset,+                HPDF_SEEK_SET);+        if (ret != HPDF_OK)+           return ret;++        ret = GetUINT16 (attr->stream, &format);+        if (ret != HPDF_OK)+           return ret;++        HPDF_PTRACE((" HPDF_TTFontDef_ParseCMap tables[%d] platformID=%u "+                        "encodingID=%u format=%u offset=%u\n", i, platformID,+                        encodingID, format, (HPDF_UINT)offset));++        /* MS-Unicode-CMAP is used for priority */+        if (platformID == 3 && encodingID == 1 && format == 4) {+            ms_unicode_encoding_offset = offset;+            break;+        }++        /* Byte-Encoding-CMAP will be used if MS-Unicode-CMAP is not found */+        if (platformID == 1 && encodingID ==0 && format == 1)+            byte_encoding_offset = offset;++        ret = HPDF_Stream_Seek (attr->stream, save_offset, HPDF_SEEK_SET);+        if (ret != HPDF_OK)+           return ret;+    }++    if (ms_unicode_encoding_offset != 0) {+        HPDF_PTRACE((" found microsoft unicode cmap.\n"));+        ret = ParseCMAP_format4(fontdef, ms_unicode_encoding_offset ++                tbl->offset);+    } else if (byte_encoding_offset != 0) {+        HPDF_PTRACE((" found byte encoding cmap.\n"));+        ret = ParseCMAP_format0(fontdef, byte_encoding_offset + tbl->offset);+    } else {+        HPDF_PTRACE((" cannot found target cmap.\n"));+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);+    }++    return ret;+}+++static HPDF_STATUS+ParseCMAP_format0  (HPDF_FontDef  fontdef,+                    HPDF_UINT32   offset)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret;+    HPDF_BYTE array[256];+    HPDF_UINT size;+    HPDF_UINT16 *parray;+    HPDF_UINT i;++    HPDF_PTRACE((" ParseCMAP_format0\n"));++    ret = HPDF_Stream_Seek (attr->stream, offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret += GetUINT16 (attr->stream, &attr->cmap.format);+    ret += GetUINT16 (attr->stream, &attr->cmap.length);+    ret += GetUINT16 (attr->stream, &attr->cmap.language);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    if (attr->cmap.format != 0)+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    size = 256;+    ret = HPDF_Stream_Read (attr->stream, array, &size);+    if (ret != HPDF_OK)+        return ret;++    attr->cmap.glyph_id_array_count = 256;+    attr->cmap.glyph_id_array = HPDF_GetMem (fontdef->mmgr,+            sizeof (HPDF_UINT16) * 256);+    if (!attr->cmap.glyph_id_array)+        return HPDF_Error_GetCode (fontdef->error);++    parray = attr->cmap.glyph_id_array;+    for (i = 0; i < 256; i++) {+        *parray = attr->cmap.glyph_id_array[i];+        HPDF_PTRACE((" ParseCMAP_format0 glyph_id_array[%d]=%u\n",+                    i, *parray));+        parray++;+    }++    return HPDF_OK;+}+++static HPDF_STATUS+ParseCMAP_format4  (HPDF_FontDef  fontdef,+                    HPDF_UINT32   offset)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret;+    HPDF_UINT i;+    HPDF_UINT16 *pend_count;+    HPDF_UINT16 *pstart_count;+    HPDF_INT16 *pid_delta;+    HPDF_UINT16 *pid_range_offset;+    HPDF_UINT16 *pglyph_id_array;+    HPDF_INT32 num_read;++    HPDF_PTRACE((" ParseCMAP_format4\n"));++    if ((ret = HPDF_Stream_Seek (attr->stream, offset, HPDF_SEEK_SET)) !=+            HPDF_OK)+        return ret;++    ret += GetUINT16 (attr->stream, &attr->cmap.format);+    ret += GetUINT16 (attr->stream, &attr->cmap.length);+    ret += GetUINT16 (attr->stream, &attr->cmap.language);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    if (attr->cmap.format != 4)+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    ret += GetUINT16 (attr->stream, &attr->cmap.seg_count_x2);+    ret += GetUINT16 (attr->stream, &attr->cmap.search_range);+    ret += GetUINT16 (attr->stream, &attr->cmap.entry_selector);+    ret += GetUINT16 (attr->stream, &attr->cmap.range_shift);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    /* end_count */+    attr->cmap.end_count = HPDF_GetMem (fontdef->mmgr,+            sizeof(HPDF_UINT16) * attr->cmap.seg_count_x2 / 2);+    if (!attr->cmap.end_count)+        return HPDF_Error_GetCode (fontdef->error);++    pend_count = attr->cmap.end_count;+    for (i = 0; i < attr->cmap.seg_count_x2 / 2; i++)+        if ((ret = GetUINT16 (attr->stream, pend_count++)) != HPDF_OK)+            return ret;++    if ((ret = GetUINT16 (attr->stream, &attr->cmap.reserved_pad)) != HPDF_OK)+        return ret;++    /* start_count */+    attr->cmap.start_count = HPDF_GetMem (fontdef->mmgr,+            sizeof(HPDF_UINT16) * attr->cmap.seg_count_x2 / 2);+    if (!attr->cmap.start_count)+        return HPDF_Error_GetCode (fontdef->error);++    pstart_count = attr->cmap.start_count;+    for (i = 0; i < attr->cmap.seg_count_x2 / 2; i++)+        if ((ret = GetUINT16 (attr->stream, pstart_count++)) != HPDF_OK)+            return ret;++    /* id_delta */+    attr->cmap.id_delta = HPDF_GetMem (fontdef->mmgr,+            sizeof(HPDF_UINT16) * attr->cmap.seg_count_x2 / 2);+    if (!attr->cmap.id_delta)+        return HPDF_Error_GetCode (fontdef->error);++    pid_delta = attr->cmap.id_delta;+    for (i = 0; i < attr->cmap.seg_count_x2 / 2; i++)+        if ((ret = GetINT16 (attr->stream, pid_delta++)) != HPDF_OK)+            return ret;++    /* id_range_offset */+    attr->cmap.id_range_offset = HPDF_GetMem (fontdef->mmgr,+            sizeof(HPDF_UINT16) * attr->cmap.seg_count_x2 / 2);+    if (!attr->cmap.id_range_offset)+        return HPDF_Error_GetCode (fontdef->error);++    pid_range_offset = attr->cmap.id_range_offset;+    for (i = 0; i < attr->cmap.seg_count_x2 / 2; i++)+        if ((ret = GetUINT16 (attr->stream, pid_range_offset++)) != HPDF_OK)+            return ret;++    num_read = HPDF_Stream_Tell (attr->stream) - offset;+    if (num_read < 0)+        return HPDF_Error_GetCode (fontdef->error);++    attr->cmap.glyph_id_array_count = (attr->cmap.length - num_read) / 2;++    if (attr->cmap.glyph_id_array_count > 0) {+        /* glyph_id_array */+        attr->cmap.glyph_id_array = HPDF_GetMem (fontdef->mmgr,+                sizeof(HPDF_UINT16) * attr->cmap.glyph_id_array_count);+        if (!attr->cmap.glyph_id_array)+            return HPDF_Error_GetCode (fontdef->error);++        pglyph_id_array = attr->cmap.glyph_id_array;+        for (i = 0; i < attr->cmap.glyph_id_array_count; i++)+            if ((ret = GetUINT16 (attr->stream, pglyph_id_array++)) != HPDF_OK)+                return ret;+    } else+        attr->cmap.glyph_id_array = NULL;++#ifdef HPDF_DEBUG+    /* print all elements of cmap table */+    for (i = 0; i < attr->cmap.seg_count_x2 / 2; i++) {+        HPDF_PTRACE((" ParseCMAP_format4[%d] start_count=0x%04X, "+                    "end_count=0x%04X, id_delta=%d, id_range_offset=%u\n", i,+                    attr->cmap.start_count[i], attr->cmap.end_count[i],+                    attr->cmap.id_delta[i], attr->cmap.id_range_offset[i]));+    }+#endif++    return HPDF_OK;+}+++HPDF_UINT16+HPDF_TTFontDef_GetGlyphid  (HPDF_FontDef   fontdef,+                            HPDF_UINT16    unicode)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_UINT16 *pend_count = attr->cmap.end_count;+    HPDF_UINT seg_count = attr->cmap.seg_count_x2 / 2;+    HPDF_UINT i;++    HPDF_PTRACE((" HPDF_TTFontDef_GetGlyphid\n"));++    /* format 0 */+    if (attr->cmap.format == 0) {+        unicode &= 0xFF;+        return attr->cmap.glyph_id_array[unicode];+    }++    /* format 4 */+    if (attr->cmap.seg_count_x2 == 0) {+        HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_CMAP, 0);+        return 0;+    }++    for (i = 0; i < seg_count; i++) {+        if (unicode <= *pend_count)+            break;+        pend_count++;+    }++    if (attr->cmap.start_count[i] > unicode) {+        HPDF_PTRACE((" HPDF_TTFontDef_GetGlyphid undefined char(0x%04X)\n",+                    unicode));+        return 0;+    }++    if (attr->cmap.id_range_offset[i] == 0) {+        HPDF_PTRACE((" HPDF_TTFontDef_GetGlyphid idx=%u code=%u "+                    " ret=%u\n", i, unicode,+                    unicode + attr->cmap.id_delta[i]));++        return unicode + attr->cmap.id_delta[i];+    } else {+        HPDF_UINT idx = attr->cmap.id_range_offset[i] / 2 ++            (unicode - attr->cmap.start_count[i]) - (seg_count - i);++        if (idx > attr->cmap.glyph_id_array_count) {+            HPDF_PTRACE((" HPDF_TTFontDef_GetGlyphid[%u] %u > %u\n",+                        i, idx, (HPDF_UINT)attr->cmap.glyph_id_array_count));+            return 0;+        } else {+            HPDF_UINT16 gid = attr->cmap.glyph_id_array[idx] ++                attr->cmap.id_delta[i];+            HPDF_PTRACE((" HPDF_TTFontDef_GetGlyphid idx=%u unicode=0x%04X "+                        "id=%u\n", idx, unicode, gid));+            return gid;+        }+    }+}+++HPDF_INT16+HPDF_TTFontDef_GetCharWidth  (HPDF_FontDef   fontdef,+                              HPDF_UINT16    unicode)+{+    HPDF_UINT16 advance_width;+    HPDF_TTF_LongHorMetric hmetrics;+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_UINT16 gid = HPDF_TTFontDef_GetGlyphid (fontdef, unicode);++    HPDF_PTRACE((" HPDF_TTFontDef_GetCharWidth\n"));++    if (gid >= attr->num_glyphs) {+        HPDF_PTRACE((" HPDF_TTFontDef_GetCharWidth WARNING gid > "+                    "num_glyphs %u > %u\n", gid, attr->num_glyphs));+        return fontdef->missing_width;+    }++    hmetrics = attr->h_metric[gid];++    if (!attr->glyph_tbl.flgs[gid]) {+        attr->glyph_tbl.flgs[gid] = 1;++        if (attr->embedding)+            CheckCompositGryph (fontdef, gid);+    }++    advance_width = (HPDF_UINT)hmetrics.advance_width * 1000 /+            attr->header.units_per_em;++    return (HPDF_INT16)advance_width;+}+++static HPDF_STATUS+CheckCompositGryph  (HPDF_FontDef   fontdef,+                     HPDF_UINT16    gid)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_UINT offset = attr->glyph_tbl.offsets[gid];+   // HPDF_UINT len = attr->glyph_tbl.offsets[gid + 1] - offset;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" CheckCompositGryph\n"));++    if (attr->header.index_to_loc_format == 0)+        offset *= 2;++    offset += attr->glyph_tbl.base_offset;++    if ((ret = HPDF_Stream_Seek (attr->stream, offset, HPDF_SEEK_SET))+            != HPDF_OK) {+        return ret;+    } else {+        HPDF_INT16 num_of_contours;+        HPDF_INT16 flags;+        HPDF_INT16 glyph_index;+        const HPDF_UINT16 ARG_1_AND_2_ARE_WORDS = 1;+        const HPDF_UINT16 WE_HAVE_A_SCALE  = 8;+        const HPDF_UINT16 MORE_COMPONENTS = 32;+        const HPDF_UINT16 WE_HAVE_AN_X_AND_Y_SCALE = 64;+        const HPDF_UINT16 WE_HAVE_A_TWO_BY_TWO = 128;++        if ((ret = GetINT16 (attr->stream, &num_of_contours)) != HPDF_OK)+            return ret;++        if (num_of_contours != -1)+            return HPDF_OK;++        HPDF_PTRACE ((" CheckCompositGryph composit font gid=%u\n", gid));++        if ((ret = HPDF_Stream_Seek (attr->stream, 8, HPDF_SEEK_CUR))+            != HPDF_OK)+            return ret;++        do {+            if ((ret = GetINT16 (attr->stream, &flags)) != HPDF_OK)+                return ret;++            if ((ret = GetINT16 (attr->stream, &glyph_index)) != HPDF_OK)+                return ret;++            if (flags & ARG_1_AND_2_ARE_WORDS) {+                if ((ret = HPDF_Stream_Seek (attr->stream, 4, HPDF_SEEK_CUR))+                    != HPDF_OK)+                    return ret;+            } else {+                if ((ret = HPDF_Stream_Seek (attr->stream, 2, HPDF_SEEK_CUR))+                    != HPDF_OK)+                    return ret;+            }++            if (flags & WE_HAVE_A_SCALE) {+                if ((ret = HPDF_Stream_Seek (attr->stream, 2, HPDF_SEEK_CUR))+                    != HPDF_OK)+                    return ret;+            } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {+                if ((ret = HPDF_Stream_Seek (attr->stream, 4, HPDF_SEEK_CUR))+                    != HPDF_OK)+                    return ret;+            } else if (flags & WE_HAVE_A_TWO_BY_TWO) {+                if ((ret = HPDF_Stream_Seek (attr->stream, 8, HPDF_SEEK_CUR))+                    != HPDF_OK)+                    return ret;+            }++            if (glyph_index > 0 && glyph_index < attr->num_glyphs)+                attr->glyph_tbl.flgs[glyph_index] = 1;++            HPDF_PTRACE ((" gid=%d, num_of_contours=%d, flags=%d, "+                    "glyph_index=%d\n", gid, num_of_contours, flags,+                    glyph_index));++        } while (flags & MORE_COMPONENTS);+    }++    return HPDF_OK;+}+++HPDF_INT16+HPDF_TTFontDef_GetGidWidth  (HPDF_FontDef   fontdef,+                             HPDF_UINT16    gid)+{+    HPDF_UINT16 advance_width;+    HPDF_TTF_LongHorMetric hmetrics;+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;++    HPDF_PTRACE((" HPDF_TTFontDef_GetGidWidth\n"));++    if (gid >= attr->num_glyphs) {+        HPDF_PTRACE((" HPDF_TTFontDef_GetGidWidth WARNING gid > "+                    "num_glyphs %u > %u\n", gid, attr->num_glyphs));+        return fontdef->missing_width;+    }++    hmetrics = attr->h_metric[gid];++    advance_width = (HPDF_UINT)hmetrics.advance_width * 1000 /+            attr->header.units_per_em;++    HPDF_PTRACE((" HPDF_TTFontDef_GetGidWidth gid=%u, width=%u\n",+                gid, advance_width));++    return (HPDF_INT16)advance_width;+}++++static HPDF_STATUS+ParseHmtx  (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "hmtx");+    HPDF_STATUS ret;+    HPDF_UINT i;+    HPDF_UINT16 save_aw = 0;+    HPDF_TTF_LongHorMetric *pmetric;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseHtmx\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 7);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    /* allocate memory for a table of holizontal matrix.+     * the count of metric records is same as the number of glyphs+     */+    attr->h_metric = HPDF_GetMem (fontdef->mmgr,+        sizeof (HPDF_TTF_LongHorMetric) * attr->num_glyphs);++    if (!attr->h_metric)+        return HPDF_Error_GetCode (fontdef->error);++    pmetric = attr->h_metric;+    for (i = 0; i < attr->num_h_metric; i++) {+        if ((ret = GetUINT16 (attr->stream, &pmetric->advance_width)) !=+                    HPDF_OK)+            return ret;++        if ((ret = GetINT16 (attr->stream, &pmetric->lsb)) != HPDF_OK)+            return ret;++        HPDF_PTRACE((" ParseHmtx metric[%u] aw=%u lsb=%d\n", i,+            pmetric->advance_width, pmetric->lsb));++        save_aw = pmetric->advance_width;+        pmetric++;+    }++    /* pad the advance_width of remaining metrics with the value of last metric */+    while (i < attr->num_glyphs) {+        pmetric->advance_width = save_aw;++        if ((ret = GetINT16 (attr->stream, &pmetric->lsb)) != HPDF_OK)+            return ret;++        pmetric++;+        i++;+    }++    return HPDF_OK;+}++static HPDF_STATUS+ParseLoca  (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "loca");+    HPDF_STATUS ret;+    HPDF_UINT i;+    HPDF_UINT32 *poffset;++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseLoca\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 8);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    /* allocate glyph-offset-table. */+    attr->glyph_tbl.offsets = HPDF_GetMem (fontdef->mmgr,+        sizeof (HPDF_UINT32) * (attr->num_glyphs + 1));++    if (!attr->glyph_tbl.offsets)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_MemSet (attr->glyph_tbl.offsets, 0,+            sizeof (HPDF_UINT32) * (attr->num_glyphs + 1));++    /* allocate glyph-flg-table.+     * this flgs are used to judge whether glyphs should be embedded.+     */+    attr->glyph_tbl.flgs = HPDF_GetMem (fontdef->mmgr,+        sizeof (HPDF_BYTE) * attr->num_glyphs);++    if (!attr->glyph_tbl.flgs)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_MemSet (attr->glyph_tbl.flgs, 0,+        sizeof (HPDF_BYTE) * attr->num_glyphs);+    attr->glyph_tbl.flgs[0] = 1;++    poffset = attr->glyph_tbl.offsets;+    if (attr->header.index_to_loc_format == 0) {+        /* short version */+        for (i = 0; i <= attr->num_glyphs; i++) {+            HPDF_UINT16 tmp = 0;++            if ((ret = GetUINT16 (attr->stream, &tmp)) != HPDF_OK)+                return ret;++            *poffset = tmp;+            poffset++;+        }+    } else {+        /* long version */+        for (i = 0; i <= attr->num_glyphs; i++) {+            if ((ret = GetUINT32 (attr->stream, poffset)) != HPDF_OK)+                return ret;++            poffset++;+        }+    }+++#ifdef HPDF_DEBUG+    poffset = attr->glyph_tbl.offsets;+    for (i = 0; i <= attr->num_glyphs; i++) {+        HPDF_PTRACE((" ParseLOCA offset[%u]=%u\n", i, (HPDF_UINT)*poffset));+        poffset++;+    }+#endif+++    return HPDF_OK;+}+++static HPDF_STATUS+LoadUnicodeName  (HPDF_Stream   stream,+                  HPDF_UINT     offset,+                  HPDF_UINT     len,+                  char    *buf)+{+    HPDF_BYTE tmp[HPDF_LIMIT_MAX_NAME_LEN * 2 + 1];+    HPDF_UINT i = 0;+    HPDF_UINT j = 0;+    HPDF_STATUS ret;++    HPDF_MemSet (buf, 0, HPDF_LIMIT_MAX_NAME_LEN + 1);++    if ((ret = HPDF_Stream_Seek (stream, offset, HPDF_SEEK_SET)) !=+            HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_Read (stream, tmp, &len))+             != HPDF_OK)+        return ret;++    while (i < len) {+        i++;+        buf[j] = tmp[i];+        j++;+        i++;+    }++    return HPDF_OK;+}++static HPDF_STATUS+ParseName  (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "name");+    HPDF_STATUS ret;+    HPDF_UINT i;+    HPDF_TTF_NameRecord *name_rec;+    HPDF_UINT offset_id1 = 0;+    HPDF_UINT offset_id2 = 0;+    HPDF_UINT offset_id1u = 0;+    HPDF_UINT offset_id2u = 0;+    HPDF_UINT len_id1 = 0;+    HPDF_UINT len_id2 = 0;+    HPDF_UINT len_id1u = 0;+    HPDF_UINT len_id2u = 0;+    char tmp[HPDF_LIMIT_MAX_NAME_LEN + 1];++    HPDF_PTRACE ((" HPDF_TTFontDef_ParseMaxp\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 10);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    ret += GetUINT16 (attr->stream, &attr->name_tbl.format);+    ret += GetUINT16 (attr->stream, &attr->name_tbl.count);+    ret += GetUINT16 (attr->stream, &attr->name_tbl.string_offset);+    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_PTRACE((" ParseName() format=%u, count=%u, string_offset=%u\n",+                attr->name_tbl.format, attr->name_tbl.count,+                attr->name_tbl.string_offset));++    attr->name_tbl.name_records = HPDF_GetMem (fontdef->mmgr,+            sizeof (HPDF_TTF_NameRecord) * attr->name_tbl.count);++    if (!attr->name_tbl.name_records)+        return HPDF_Error_GetCode (fontdef->error);++    name_rec = attr->name_tbl.name_records;++   for (i = 0; i < attr->name_tbl.count; i++) {+        ret += GetUINT16 (attr->stream, &name_rec->platform_id);+        ret += GetUINT16 (attr->stream, &name_rec->encoding_id);+        ret += GetUINT16 (attr->stream, &name_rec->language_id);+        ret += GetUINT16 (attr->stream, &name_rec->name_id);+        ret += GetUINT16 (attr->stream, &name_rec->length);+        ret += GetUINT16 (attr->stream, &name_rec->offset);++        if (ret != HPDF_OK)+            return HPDF_Error_GetCode (fontdef->error);++        HPDF_PTRACE((" ParseName() platformID=%u, encodingID=%d, nameID=%d\n",+                    name_rec->platform_id, name_rec->encoding_id,+                    name_rec->name_id));++        if (name_rec->platform_id == 1 && name_rec->encoding_id == 0 &&+                name_rec->name_id == 6) {+            offset_id1 = tbl->offset + name_rec->offset ++                    attr->name_tbl.string_offset;+            len_id1 = name_rec->length;+        }++        if (name_rec->platform_id == 1 && name_rec->encoding_id == 0 &&+                name_rec->name_id == 2) {+            offset_id2 = tbl->offset + name_rec->offset ++                    attr->name_tbl.string_offset;+            len_id2 = name_rec->length;+        }++        if (name_rec->platform_id == 3 && name_rec->encoding_id == 1 &&+                name_rec->name_id == 6 && name_rec->language_id == 0x0409) {+            offset_id1u = tbl->offset + name_rec->offset ++                    attr->name_tbl.string_offset;+            len_id1u = name_rec->length;+        }++        if (name_rec->platform_id == 3 && name_rec->encoding_id == 1 &&+                name_rec->name_id == 2 && name_rec->language_id == 0x0409) {+            offset_id2u = tbl->offset + name_rec->offset ++                    attr->name_tbl.string_offset;+            len_id2u = name_rec->length;+        }++        name_rec++;+    }++    if ((!offset_id1 && !offset_id1u) ||+            (!offset_id2 && !offset_id2u))+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    if (len_id1 == 0 && len_id1u > 0)+        len_id1 = len_id1u / 2 + len_id1u % 2;++    if (len_id2 == 0 && len_id2u > 0)+        len_id2 = len_id2u / 2 + len_id2u % 2;++    if (len_id1 + len_id2 + 8 > 127)+        return HPDF_SetError (fontdef->error, HPDF_TTF_INVALID_FOMAT, 0);++    HPDF_MemSet (attr->base_font, 0, HPDF_LIMIT_MAX_NAME_LEN + 1);++    if (offset_id1) {+        if ((ret = HPDF_Stream_Seek (attr->stream, offset_id1,+                HPDF_SEEK_SET)) != HPDF_OK)+        return ret;++        if ((ret = HPDF_Stream_Read (attr->stream, attr->base_font, &len_id1))+                 != HPDF_OK)+            return ret;+    } else {+        if ((ret = LoadUnicodeName (attr->stream, offset_id1u, len_id1u,+                attr->base_font)) != HPDF_OK)+            return ret;+    }++    HPDF_MemSet (tmp, 0, HPDF_LIMIT_MAX_NAME_LEN + 1);++    if (offset_id2) {+        if ((ret = HPDF_Stream_Seek (attr->stream, offset_id2, HPDF_SEEK_SET))+                != HPDF_OK)+            return ret;++        if ((ret = HPDF_Stream_Read (attr->stream, tmp, &len_id2)) != HPDF_OK)+            return ret;+    } else {+        if ((ret = LoadUnicodeName (attr->stream, offset_id2u, len_id2u,+                tmp)) != HPDF_OK)+            return ret;+    }++   /*+    * get "postscript name" of from a "name" table as BaseName.+    * if subfamily name is not "Regular", add subfamily name to BaseName.+    * if subfamily name includes the blank character, remove it.+    * if subfamily name is "Bold" or "Italic" or "BoldItalic", set flags+    * attribute.+    */+    if (HPDF_MemCmp (tmp, "Regular", 7) != 0) {+        char *dst = attr->base_font + len_id1;+        char *src = tmp;+        HPDF_UINT j;++        *dst++ = ',';++        for (j = 0; j < len_id2; j++) {+            if (*src != ' ')+                *dst++ = *src++;++            if (dst >= attr->base_font + HPDF_LIMIT_MAX_NAME_LEN)+                break;+        }++        *dst = 0;++        if (HPDF_StrStr (tmp, "Bold", len_id2))+            fontdef->flags |= HPDF_FONT_FOURCE_BOLD;+        if (HPDF_StrStr (tmp, "Italic", len_id2))+            fontdef->flags |= HPDF_FONT_ITALIC;+    }++    HPDF_MemCpy (fontdef->base_font, attr->base_font,+            HPDF_LIMIT_MAX_NAME_LEN + 1);++    HPDF_PTRACE(("  ParseName() base_font=%s\n", attr->base_font));++    return HPDF_OK;+}++static HPDF_STATUS+ParseOS2  (HPDF_FontDef  fontdef)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "OS/2");+    HPDF_STATUS ret;+    HPDF_UINT len;++    HPDF_PTRACE ((" ParseOS2\n"));++    if (!tbl)+        return HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, 0);++    ret = HPDF_Stream_Seek (attr->stream, tbl->offset + 8, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    /* check whether the font is allowed to be embedded. */+    if ((ret = GetUINT16 (attr->stream, &attr->fs_type)) != HPDF_OK)+        return ret;++    if (attr->fs_type  & (0x0002 | 0x0100 | 0x0200) && attr->embedding)+        return HPDF_SetError (fontdef->error, HPDF_TTF_CANNOT_EMBEDDING_FONT,+                0);++    if ((ret = HPDF_Stream_Seek (attr->stream, tbl->offset + 20, HPDF_SEEK_SET))+            != HPDF_OK)+        return ret;++    len = 12;+    if ((ret = HPDF_Stream_Read (attr->stream, attr->panose, &len)) != HPDF_OK)+        return ret;++    HPDF_PTRACE((" ParseOS2 PANOSE=%u-%u "+            "%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",+        attr->panose[0], attr->panose[1], attr->panose[2], attr->panose[3],+        attr->panose[4], attr->panose[5], attr->panose[6], attr->panose[7],+        attr->panose[8], attr->panose[9], attr->panose[10], attr->panose[11]));++    if (attr->panose[0] == 1 || attr->panose[0] == 4)+        fontdef->flags = fontdef->flags | HPDF_FONT_SERIF;++    /* get ulCodePageRange1 */+    if ((ret = HPDF_Stream_Seek (attr->stream, 78, HPDF_SEEK_CUR)) != HPDF_OK)+        return ret;++    if ((ret = GetUINT32 (attr->stream, &attr->code_page_range1)) != HPDF_OK)+        return ret;++    if ((ret = GetUINT32 (attr->stream, &attr->code_page_range2)) != HPDF_OK)+        return ret;++    HPDF_PTRACE(("  ParseOS2 CodePageRange1=%08X CodePageRange2=%08X\n",+                (HPDF_UINT)attr->code_page_range1,+                (HPDF_UINT)attr->code_page_range2));++    return HPDF_OK;+}+++static HPDF_STATUS+RecreateGLYF  (HPDF_FontDef   fontdef,+               HPDF_UINT32   *new_offsets,+               HPDF_Stream    stream)+{+    HPDF_UINT32 save_offset = 0;+    HPDF_UINT32 start_offset = stream->size;+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret;+    HPDF_INT i;++    HPDF_PTRACE ((" RecreateGLYF\n"));++    for (i = 0; i < attr->num_glyphs; i++) {+        HPDF_BYTE buf[HPDF_STREAM_BUF_SIZ];++        if (attr->glyph_tbl.flgs[i] == 1) {+            HPDF_UINT offset = attr->glyph_tbl.offsets[i];+            HPDF_UINT len = attr->glyph_tbl.offsets[i + 1] - offset;++            new_offsets[i] = stream->size - start_offset;+            if (attr->header.index_to_loc_format == 0) {+                new_offsets[i] /= 2;+                len *= 2;+            }++            HPDF_PTRACE((" RecreateGLYF[%u] move from [%u] to [%u]\n", i,+                        (HPDF_UINT)attr->glyph_tbl.base_offset + offset,+                        (HPDF_UINT)new_offsets[i]));++            if (attr->header.index_to_loc_format == 0)+                offset *= 2;++            offset += attr->glyph_tbl.base_offset;++            if ((ret = HPDF_Stream_Seek (attr->stream, offset, HPDF_SEEK_SET))+                    != HPDF_OK)+                return ret;++            while (len > 0) {+                HPDF_UINT tmp_len =+                    (len > HPDF_STREAM_BUF_SIZ) ? HPDF_STREAM_BUF_SIZ : len;++                HPDF_MemSet (buf, 0, tmp_len);++                if ((ret = HPDF_Stream_Read (attr->stream, buf, &tmp_len))+                        != HPDF_OK)+                    return ret;++                if ((ret = HPDF_Stream_Write (stream, buf, tmp_len)) !=+                        HPDF_OK)+                    return ret;++                len -= tmp_len;+            }++            save_offset = stream->size - start_offset;+            if (attr->header.index_to_loc_format == 0)+                save_offset /= 2;+        } else {+            new_offsets[i] = save_offset;+        }+    }++    new_offsets[attr->num_glyphs] = save_offset;++#ifdef DEBUG+    for (i = 0; i <= attr->num_glyphs; i++) {+        HPDF_PTRACE((" RecreateGLYF[%u] offset=%u\n", i, new_offsets[i]));+    }+#endif++    return HPDF_OK;+}++static HPDF_STATUS+RecreateName  (HPDF_FontDef   fontdef,+               HPDF_Stream    stream)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable *tbl = FindTable (fontdef, "name");+    HPDF_STATUS ret = HPDF_OK;+    HPDF_UINT i;+    HPDF_TTF_NameRecord *name_rec;+    HPDF_Stream tmp_stream = HPDF_MemStream_New (fontdef->mmgr,+                HPDF_STREAM_BUF_SIZ);++    HPDF_PTRACE ((" RecreateName\n"));++    if (!tmp_stream)+        return HPDF_Error_GetCode (fontdef->error);++    ret += WriteUINT16 (stream, attr->name_tbl.format);+    ret += WriteUINT16 (stream, attr->name_tbl.count);+    ret += WriteUINT16 (stream, attr->name_tbl.string_offset);++    if (ret != HPDF_OK) {+        HPDF_Stream_Free (tmp_stream);+        return HPDF_Error_GetCode (fontdef->error);+    }++    name_rec = attr->name_tbl.name_records;+    for (i = 0; i < attr->name_tbl.count; i++) {+        HPDF_UINT name_len = name_rec->length;+        HPDF_BYTE buf[HPDF_STREAM_BUF_SIZ];+        HPDF_UINT tmp_len = name_len;+        HPDF_UINT offset = tbl->offset + attr->name_tbl.string_offset ++                name_rec->offset;+        HPDF_UINT rec_offset = tmp_stream->size;++        /* add suffix to font-name. */+        if (name_rec->name_id == 1 || name_rec->name_id == 4) {+            if (name_rec->platform_id == 0 || name_rec->platform_id == 3) {+                ret += HPDF_Stream_Write (tmp_stream, attr->tag_name2,+                        sizeof(attr->tag_name2));+                name_len += sizeof(attr->tag_name2);+            } else {+                ret += HPDF_Stream_Write (tmp_stream, attr->tag_name,+                        sizeof(attr->tag_name));+                name_len += sizeof(attr->tag_name);+            }+        }++        ret += WriteUINT16 (stream, name_rec->platform_id);+        ret += WriteUINT16 (stream, name_rec->encoding_id);+        ret += WriteUINT16 (stream, name_rec->language_id);+        ret += WriteUINT16 (stream, name_rec->name_id);+        ret += WriteUINT16 (stream, (HPDF_UINT16)name_len);+        ret += WriteUINT16 (stream, (HPDF_UINT16)rec_offset);++        ret += HPDF_Stream_Seek (attr->stream, offset, HPDF_SEEK_SET);++        if (ret != HPDF_OK) {+            HPDF_Stream_Free (tmp_stream);+            return HPDF_Error_GetCode (fontdef->error);+        }++        while (tmp_len > 0) {+            HPDF_UINT len = (tmp_len > HPDF_STREAM_BUF_SIZ) ?+                    HPDF_STREAM_BUF_SIZ : tmp_len;++            if ((ret = HPDF_Stream_Read (attr->stream, buf, &len)) != HPDF_OK) {+                HPDF_Stream_Free (tmp_stream);+                return ret;+            }++            if ((ret = HPDF_Stream_Write (tmp_stream, buf, len)) != HPDF_OK) {+                HPDF_Stream_Free (tmp_stream);+                return ret;+            }++            tmp_len -= len;+        }++        HPDF_PTRACE((" RecreateNAME name_rec[%u] platform_id=%u "+                        "encoding_id=%u language_id=%u name_rec->name_id=%u "+                        "length=%u offset=%u\n", i, name_rec->platform_id,+                        name_rec->encoding_id, name_rec->language_id,+                        name_rec->name_id, name_len, rec_offset));++        name_rec++;+    }++    ret = HPDF_Stream_WriteToStream (tmp_stream, stream,+                HPDF_STREAM_FILTER_NONE, NULL);++    HPDF_Stream_Free (tmp_stream);++    return ret;+}+++static HPDF_STATUS+WriteHeader (HPDF_FontDef   fontdef,+             HPDF_Stream    stream,+             HPDF_UINT32   *check_sum_ptr)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE ((" WriteHeader\n"));++    ret += HPDF_Stream_Write (stream, attr->header.version_number, 4);+    ret += WriteUINT32 (stream, attr->header.font_revision);++    /* save the address of checkSumAdjustment.+     * the value is rewrite to computed value after new check-sum-value is+     * generated.+     */+    *check_sum_ptr = stream->size;++    ret += WriteUINT32 (stream, 0);+    ret += WriteUINT32 (stream, attr->header.magic_number);+    ret += WriteUINT16 (stream, attr->header.flags);+    ret += WriteUINT16 (stream, attr->header.units_per_em);+    ret += HPDF_Stream_Write (stream, attr->header.created, 8);+    ret += HPDF_Stream_Write (stream, attr->header.modified, 8);+    ret += WriteINT16 (stream, attr->header.x_min);+    ret += WriteINT16 (stream, attr->header.y_min);+    ret += WriteINT16 (stream, attr->header.x_max);+    ret += WriteINT16 (stream, attr->header.y_max);+    ret += WriteUINT16 (stream, attr->header.mac_style);+    ret += WriteUINT16 (stream, attr->header.lowest_rec_ppem);+    ret += WriteINT16 (stream, attr->header.font_direction_hint);+    ret += WriteINT16 (stream, attr->header.index_to_loc_format);+    ret += WriteINT16 (stream, attr->header.glyph_data_format);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_TTFontDef_SaveFontData  (HPDF_FontDef   fontdef,+                              HPDF_Stream    stream)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable tmp_tbl[HPDF_REQUIRED_TAGS_COUNT];+    HPDF_Stream tmp_stream;+    HPDF_UINT32 *new_offsets;+    HPDF_UINT i;+    HPDF_UINT32 check_sum_ptr;+    HPDF_STATUS ret;+    HPDF_UINT32 offset_base;+    HPDF_UINT32 tmp_check_sum = 0xB1B0AFBA;++    HPDF_PTRACE ((" SaveFontData\n"));++    ret = WriteUINT32 (stream, attr->offset_tbl.sfnt_version);+    ret += WriteUINT16 (stream, HPDF_REQUIRED_TAGS_COUNT);+    ret += WriteUINT16 (stream, attr->offset_tbl.search_range);+    ret += WriteUINT16 (stream, attr->offset_tbl.entry_selector);+    ret += WriteUINT16 (stream, attr->offset_tbl.range_shift);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (fontdef->error);++    tmp_stream = HPDF_MemStream_New (fontdef->mmgr, HPDF_STREAM_BUF_SIZ);+    if (!tmp_stream)+        return HPDF_Error_GetCode (fontdef->error);++    offset_base = 12 + 16 * HPDF_REQUIRED_TAGS_COUNT;++    new_offsets = HPDF_GetMem (fontdef->mmgr,+            sizeof (HPDF_UINT32) * (attr->num_glyphs + 1));+    if (!new_offsets) {+        HPDF_Stream_Free (tmp_stream);+        return HPDF_Error_GetCode (fontdef->error);+    }++    for (i = 0; i < HPDF_REQUIRED_TAGS_COUNT; i++) {+        HPDF_TTFTable *tbl = FindTable (fontdef, REQUIRED_TAGS[i]);+        HPDF_UINT32 length;+        HPDF_UINT new_offset;+        HPDF_UINT32 *poffset;+        HPDF_UINT32 value;++        if (!tbl) {+            ret = HPDF_SetError (fontdef->error, HPDF_TTF_MISSING_TABLE, i);+            goto Exit;+        }++        ret = HPDF_Stream_Seek (attr->stream, tbl->offset, HPDF_SEEK_SET);+        if (ret != HPDF_OK)+            goto Exit;++        length = tbl->length;+        new_offset = tmp_stream->size;++        if (HPDF_MemCmp (tbl->tag, "head", 4) == 0) {+            ret = WriteHeader (fontdef, tmp_stream, &check_sum_ptr);+        } else if (HPDF_MemCmp (tbl->tag, "glyf", 4) == 0) {+            ret = RecreateGLYF (fontdef, new_offsets, tmp_stream);+        } else if (HPDF_MemCmp (tbl->tag, "loca", 4) == 0) {+            HPDF_UINT j;++            HPDF_MemSet (&value, 0, 4);+            poffset = new_offsets;++            if (attr->header.index_to_loc_format == 0) {+                for (j = 0; j <= attr->num_glyphs; j++) {+                    ret += WriteUINT16 (tmp_stream, (HPDF_UINT16)*poffset);+                    poffset++;+                }+            } else {+                for (j = 0; j <= attr->num_glyphs; j++) {+                    ret += WriteUINT32 (tmp_stream, *poffset);+                    poffset++;+                }+            }+        } else if (HPDF_MemCmp (tbl->tag, "name", 4) == 0) {+            ret = RecreateName (fontdef, tmp_stream);+        } else {+            HPDF_UINT size = 4;++            while (length > 4) {+                value = 0;+                size = 4;+                ret = HPDF_Stream_Read (attr->stream, (HPDF_BYTE *)&value, &size);+                ret += HPDF_Stream_Write (tmp_stream, (HPDF_BYTE *)&value, size);+                length -= 4;+            }++            value = 0;+            size = length;+            ret += HPDF_Stream_Read (attr->stream, (HPDF_BYTE *)&value, &size);+            ret += HPDF_Stream_Write (tmp_stream, (HPDF_BYTE *)&value, size);+        }++        tmp_tbl[i].offset = new_offset;+        tmp_tbl[i].length = tmp_stream->size - new_offset;++        if (ret != HPDF_OK)+            goto Exit;+    }++    /* recalcurate checksum */+    for (i = 0; i < HPDF_REQUIRED_TAGS_COUNT; i++) {+        HPDF_TTFTable tbl = tmp_tbl[i];+        HPDF_UINT32 buf;+        HPDF_UINT length = tbl.length;++        HPDF_PTRACE((" SaveFontData() tag[%s] length=%u\n",+                REQUIRED_TAGS[i], length));++        if ((ret = HPDF_Stream_Seek (tmp_stream, tbl.offset, HPDF_SEEK_SET))+                != HPDF_OK)+            break;++        tbl.check_sum = 0;+        while (length > 0) {+            HPDF_UINT rlen = (length > 4) ? 4 : length;+            buf = 0;+            if ((ret = HPDF_Stream_Read (tmp_stream, (HPDF_BYTE *)&buf, &rlen))+                    != HPDF_OK)+                break;++            UINT32Swap (&buf);+            tbl.check_sum += buf;+            length -= rlen;+        }++        if (ret != HPDF_OK)+            break;++        HPDF_PTRACE((" SaveFontData tag[%s] check-sum=%u offset=%u\n",+                    REQUIRED_TAGS[i], (HPDF_UINT)tbl.check_sum,+                    (HPDF_UINT)tbl.offset));++        ret += HPDF_Stream_Write (stream, REQUIRED_TAGS[i], 4);+        ret += WriteUINT32 (stream, tbl.check_sum);+        tbl.offset += offset_base;+        ret += WriteUINT32 (stream, tbl.offset);+        ret += WriteUINT32 (stream, tbl.length);++        if (ret != HPDF_OK)+            break;+    }++    if (ret != HPDF_OK)+        goto Exit;++    /* calucurate checkSumAdjustment.*/+    ret = HPDF_Stream_Seek (tmp_stream, 0, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        goto Exit;++    for (;;) {+        HPDF_UINT32 buf;+        HPDF_UINT siz = sizeof(buf);++        ret = HPDF_Stream_Read (tmp_stream, (HPDF_BYTE *)&buf, &siz);+        if (ret != HPDF_OK || siz <= 0) {+            if (ret == HPDF_STREAM_EOF)+                ret = HPDF_OK;+            break;+        }++        UINT32Swap (&buf);+        tmp_check_sum -= buf;+    }++    if (ret != HPDF_OK)+        goto Exit;++    HPDF_PTRACE((" SaveFontData new checkSumAdjustment=%u\n",+                (HPDF_UINT)tmp_check_sum));++    UINT32Swap (&tmp_check_sum);++    ret = HPDF_Stream_Seek (tmp_stream, check_sum_ptr, HPDF_SEEK_SET);+    if (ret == HPDF_OK) {+        ret = HPDF_MemStream_Rewrite (tmp_stream, (HPDF_BYTE *)&tmp_check_sum,+            4);+    }++    if (ret != HPDF_OK)+        goto Exit;++    attr->length1 = tmp_stream->size + offset_base;+    ret = HPDF_Stream_WriteToStream (tmp_stream, stream, 0, NULL);++    goto Exit;++Exit:+    HPDF_FreeMem (fontdef->mmgr, new_offsets);+    HPDF_Stream_Free (tmp_stream);+    return ret;+}++void+HPDF_TTFontDef_SetTagName  (HPDF_FontDef   fontdef,+                            char     *tag)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    char buf[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_TTFontDef_SetTagName\n"));++    if (HPDF_StrLen (tag, HPDF_LIMIT_MAX_NAME_LEN) != HPDF_TTF_FONT_TAG_LEN)+        return;++    HPDF_MemCpy (attr->tag_name, tag, HPDF_TTF_FONT_TAG_LEN);+    attr->tag_name[HPDF_TTF_FONT_TAG_LEN] = '+';++    for (i = 0; i < HPDF_TTF_FONT_TAG_LEN + 1; i++) {+        attr->tag_name2[i * 2] = 0x00;+        attr->tag_name2[i * 2 + 1] = attr->tag_name[i];+    }++    HPDF_MemSet (buf, 0, HPDF_LIMIT_MAX_NAME_LEN + 1);+    HPDF_MemCpy (buf, attr->tag_name, HPDF_TTF_FONT_TAG_LEN + 1);+    HPDF_MemCpy (buf + HPDF_TTF_FONT_TAG_LEN + 1, fontdef->base_font,+        HPDF_LIMIT_MAX_NAME_LEN - HPDF_TTF_FONT_TAG_LEN - 1);++    HPDF_MemCpy (attr->base_font, buf, HPDF_LIMIT_MAX_NAME_LEN + 1);+}++/*+int+PdfTTFontDef::GetNameAttr(unsigned char* buf, HPDF_UINT name_id,+        HPDF_UINT platform_id, HPDF_UINT lang_id, HPDF_UINT max_len)+++*/++static HPDF_TTFTable*+FindTable (HPDF_FontDef      fontdef,+           const char  *tag)+{+    HPDF_TTFontDefAttr attr = (HPDF_TTFontDefAttr)fontdef->attr;+    HPDF_TTFTable* tbl = attr->offset_tbl.table;+    HPDF_UINT i;++    for (i = 0; i < attr->offset_tbl.num_tables; i++, tbl++) {+        if (HPDF_MemCmp (tbl->tag, tag, 4) == 0) {+            HPDF_PTRACE((" FindTable find table[%c%c%c%c]\n",+                        tbl->tag[0], tbl->tag[1], tbl->tag[2], tbl->tag[3]));+            return tbl;+        }+    }++    return NULL;+}++static void+UINT32Swap (HPDF_UINT32  *value)+{+    HPDF_BYTE b[4];++    HPDF_MemCpy (b, (HPDF_BYTE *)value, 4);+    *value = (HPDF_UINT32)((HPDF_UINT32)b[0] << 24 |+             (HPDF_UINT32)b[1] << 16 |+             (HPDF_UINT32)b[2] << 8 |+             (HPDF_UINT32)b[3]);+}++static void+UINT16Swap (HPDF_UINT16  *value)+{+    HPDF_BYTE b[2];++    HPDF_MemCpy (b, (HPDF_BYTE *)value, 2);+    *value = (HPDF_UINT16)((HPDF_UINT16)b[0] << 8 | (HPDF_UINT16)b[1]);+}++static void+INT16Swap (HPDF_INT16  *value)+{+    HPDF_BYTE b[2];++    HPDF_MemCpy (b, (HPDF_BYTE *)value, 2);+    *value = (HPDF_INT16)((HPDF_INT16)b[0] << 8 | (HPDF_INT16)b[1]);+}+
+ haru/hpdf_fontdef_type1.c view
@@ -0,0 +1,524 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_fontdef_type1.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_fontdef.h"++static void+FreeWidth  (HPDF_FontDef  fontdef);+++static void+FreeFunc (HPDF_FontDef  fontdef);+++static const char*+GetKeyword  (const char  *src,+             char        *keyword,+             HPDF_UINT        len);++static HPDF_STATUS+LoadAfm (HPDF_FontDef  fontdef,+         HPDF_Stream   stream);+++static HPDF_STATUS+LoadFontData (HPDF_FontDef  fontdef,+              HPDF_Stream   stream);+++/*---------------------------------------------------------------------------*/++static void+FreeWidth  (HPDF_FontDef  fontdef)+{+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;++    HPDF_PTRACE ((" FreeWidth\n"));++    HPDF_FreeMem (fontdef->mmgr, attr->widths);+    attr->widths = NULL;++    fontdef->valid = HPDF_FALSE;+}++HPDF_FontDef+HPDF_Type1FontDef_New  (HPDF_MMgr  mmgr)+{+    HPDF_FontDef fontdef;+    HPDF_Type1FontDefAttr fontdef_attr;++    HPDF_PTRACE ((" HPDF_Type1FontDef_New\n"));++    if (!mmgr)+        return NULL;++    fontdef = HPDF_GetMem (mmgr, sizeof(HPDF_FontDef_Rec));+    if (!fontdef)+        return NULL;++    fontdef->sig_bytes = HPDF_FONTDEF_SIG_BYTES;+    fontdef->base_font[0] = 0;+    fontdef->mmgr = mmgr;+    fontdef->error = mmgr->error;+    fontdef->type = HPDF_FONTDEF_TYPE_TYPE1;+    fontdef->clean_fn = NULL;+    fontdef->free_fn = FreeFunc;+    fontdef->descriptor = NULL;+    fontdef->valid = HPDF_FALSE;++    fontdef_attr = HPDF_GetMem (mmgr, sizeof(HPDF_Type1FontDefAttr_Rec));+    if (!fontdef_attr) {+        HPDF_FreeMem (fontdef->mmgr, fontdef);+        return NULL;+    }++    fontdef->attr = fontdef_attr;+    HPDF_MemSet ((HPDF_BYTE *)fontdef_attr, 0, sizeof(HPDF_Type1FontDefAttr_Rec));+    fontdef->flags = HPDF_FONT_STD_CHARSET;++    return fontdef;+}++static const char*+GetKeyword  (const char  *src,+             char        *keyword,+             HPDF_UINT        len)+{+    HPDF_UINT src_len = HPDF_StrLen (src, -1);++    HPDF_PTRACE ((" GetKeyword\n"));++    if (!keyword || src_len == 0 || len == 0)+        return NULL;++    *keyword = 0;++    while (len > 0) {+        if (HPDF_IS_WHITE_SPACE(*src)) {+            *keyword = 0;++            while (HPDF_IS_WHITE_SPACE(*src))+                src++;+            return src;+        }++        *keyword++ = *src++;+        len--;+    }++    *keyword = 0;+    return NULL;+}++static HPDF_STATUS+LoadAfm (HPDF_FontDef  fontdef,+         HPDF_Stream   stream)+{+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;+    char buf[HPDF_TMP_BUF_SIZ];+    HPDF_CharData* cdata;+    HPDF_STATUS ret;+    HPDF_UINT len;+    char keyword[HPDF_LIMIT_MAX_NAME_LEN + 1];+    HPDF_UINT i;++    HPDF_PTRACE ((" LoadAfm\n"));++    len = HPDF_TMP_BUF_SIZ;++    /* chaeck AFM header */+    if ((ret = HPDF_Stream_ReadLn (stream, buf, &len)) != HPDF_OK)+         return ret;++    GetKeyword (buf, keyword, HPDF_LIMIT_MAX_NAME_LEN + 1);++    if (HPDF_StrCmp (keyword, "StartFontMetrics") != 0)+        return HPDF_INVALID_AFM_HEADER;++    /* Global Font Information */++    for (;;) {+        const char *s;++        len = HPDF_TMP_BUF_SIZ;+        if ((ret = HPDF_Stream_ReadLn (stream, buf, &len)) != HPDF_OK)+            return ret;++        s = GetKeyword (buf, keyword, HPDF_LIMIT_MAX_NAME_LEN + 1);++        if (HPDF_StrCmp (keyword, "FontName") == 0) {+            HPDF_StrCpy (fontdef->base_font, s,+                    fontdef->base_font + HPDF_LIMIT_MAX_NAME_LEN);+        } else++        if (HPDF_StrCmp (keyword, "Weight") == 0) {+            if (HPDF_StrCmp (s, "Bold") == 0)+                fontdef->flags |= HPDF_FONT_FOURCE_BOLD;+        } else++        if (HPDF_StrCmp (keyword, "IsFixedPitch") == 0) {+            if (HPDF_StrCmp (s, "true") == 0)+               fontdef->flags |= HPDF_FONT_FIXED_WIDTH;+        } else++        if (HPDF_StrCmp (keyword, "ItalicAngle") == 0) {+            fontdef->italic_angle = HPDF_AToI (s);+            if (fontdef->italic_angle != 0)+                fontdef->flags |= HPDF_FONT_ITALIC;+        } else++        if (HPDF_StrCmp (keyword, "CharacterSet") == 0) {+            HPDF_UINT len = HPDF_StrLen (s, HPDF_LIMIT_MAX_STRING_LEN);++            if (len > 0) {+                attr->char_set = HPDF_GetMem (fontdef->mmgr, len + 1);+                if (!attr->char_set)+                    return HPDF_Error_GetCode (fontdef->error);++                HPDF_StrCpy (attr->char_set, s, attr->char_set + len);+            }+        } else+        if (HPDF_StrCmp (keyword, "FontBBox") == 0) {+            char buf[HPDF_INT_LEN + 1];++            s = GetKeyword (s, buf, HPDF_INT_LEN + 1);+            fontdef->font_bbox.left = HPDF_AToI (buf);++            s = GetKeyword (s, buf, HPDF_INT_LEN + 1);+            fontdef->font_bbox.bottom = HPDF_AToI (buf);++            s = GetKeyword (s, buf, HPDF_INT_LEN + 1);+            fontdef->font_bbox.right = HPDF_AToI (buf);++            GetKeyword (s, buf, HPDF_INT_LEN + 1);+            fontdef->font_bbox.top = HPDF_AToI (buf);+        } else+        if (HPDF_StrCmp (keyword, "EncodingScheme") == 0) {+            HPDF_StrCpy (attr->encoding_scheme, s,+                    attr->encoding_scheme + HPDF_LIMIT_MAX_NAME_LEN);+        } else+        if (HPDF_StrCmp (keyword, "CapHeight") == 0) {+            fontdef->cap_height = HPDF_AToI (s);+        } else+        if (HPDF_StrCmp (keyword, "Ascender") == 0) {+            fontdef->ascent = HPDF_AToI (s);+        } else+        if (HPDF_StrCmp (keyword, "Descender") == 0) {+            fontdef->descent = HPDF_AToI (s);+        } else+        if (HPDF_StrCmp (keyword, "STDHW") == 0) {+            fontdef->stemh = HPDF_AToI (s);+        } else+        if (HPDF_StrCmp (keyword, "STDHV") == 0) {+            fontdef->stemv = HPDF_AToI (s);+        } else+        if (HPDF_StrCmp (keyword, "StartCharMetrics") == 0) {+            attr->widths_count = HPDF_AToI (s);+            break;+        }+    }++    cdata = (HPDF_CharData*)HPDF_GetMem (fontdef->mmgr,+            sizeof(HPDF_CharData) * attr->widths_count);+    if (cdata == NULL)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_MemSet (cdata, 0, sizeof(HPDF_CharData) * attr->widths_count);+    attr->widths = cdata;++    /* load CharMetrics */+    for (i = 0; i < attr->widths_count; i++, cdata++) {+        const char *s;+        char buf2[HPDF_LIMIT_MAX_NAME_LEN + 1];++        len = HPDF_TMP_BUF_SIZ;+        if ((ret = HPDF_Stream_ReadLn (stream, buf, &len)) != HPDF_OK)+            return ret;++        /* C default character code. */+        s = GetKeyword (buf, buf2, HPDF_LIMIT_MAX_NAME_LEN + 1);+        if (HPDF_StrCmp (buf2, "CX") == 0) {+            /* not suppoted yet. */+            return HPDF_SetError (fontdef->error,+                    HPDF_INVALID_CHAR_MATRICS_DATA, 0);+        } else+        if (HPDF_StrCmp (buf2, "C") == 0) {+            s += 2;++            s = GetKeyword (s, buf2, HPDF_LIMIT_MAX_NAME_LEN + 1);+              HPDF_AToI (buf2);++            cdata->char_cd = HPDF_AToI (buf2);++        } else+            return HPDF_SetError (fontdef->error,+                    HPDF_INVALID_CHAR_MATRICS_DATA, 0);++        /* WX Character width */+        s = HPDF_StrStr (s, "WX ", 0);+        if (!s)+            return HPDF_SetError (fontdef->error, HPDF_INVALID_WX_DATA, 0);++        s += 3;++        s = GetKeyword (s, buf2, HPDF_LIMIT_MAX_NAME_LEN + 1);+        if (buf2[0] == 0)+            return HPDF_SetError (fontdef->error, HPDF_INVALID_WX_DATA, 0);++        cdata->width = HPDF_AToI (buf2);++        /* N PostScript language character name */+        s = HPDF_StrStr (s, "N ", 0);+        if (!s)+            return HPDF_SetError (fontdef->error, HPDF_INVALID_N_DATA, 0);++        s += 2;++        GetKeyword (s, buf2, HPDF_LIMIT_MAX_NAME_LEN + 1);++        cdata->unicode = HPDF_GryphNameToUnicode (buf2);++    }++    return HPDF_OK;+}+++static HPDF_STATUS+LoadFontData (HPDF_FontDef  fontdef,+              HPDF_Stream   stream)+{+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;+    char buf[HPDF_STREAM_BUF_SIZ];+    char* pbuf = buf;+    HPDF_UINT len = 0;+    HPDF_STATUS ret;+    HPDF_BOOL end_flg = HPDF_FALSE;++    HPDF_PTRACE ((" LoadFontData\n"));++    attr->font_data = HPDF_MemStream_New (fontdef->mmgr, HPDF_STREAM_BUF_SIZ);++    if (!attr->font_data)+        return HPDF_Error_GetCode (fontdef->error);++    len = 11;+    ret = HPDF_Stream_Read (stream, pbuf, &len);+    if (ret != HPDF_OK)+        return ret;+    pbuf += 11;++    for (;;) {+        len = HPDF_STREAM_BUF_SIZ - 11;+        ret = HPDF_Stream_Read (stream, pbuf, &len);+        if (ret == HPDF_STREAM_EOF) {+            end_flg = HPDF_TRUE;+        } else if (ret != HPDF_OK)+            return ret;++        if (len > 0) {+            if (attr->length1 == 0) {+               const char *s1 = HPDF_StrStr (buf, "eexec", len + 11);++               /* length1 indicate the size of ascii-data of font-file. */+               if (s1)+                  attr->length1 = attr->font_data->size + (s1 - buf) + 6;+            }++            if (attr->length1 > 0 && attr->length2 == 0) {+                const char *s2 = HPDF_StrStr (buf, "cleartomark",+                        len + 11);++                if (s2)+                    attr->length2 = attr->font_data->size + - 520 -+                        attr->length1 + (s2 - buf);+                /*  length1 indicate the size of binary-data.+                 *  in most fonts, it is all right at 520 bytes . but it need+                 *  to modify because it does not fully satisfy the+                 *  specification of type-1 font.+                 */+            }+        }++        if (end_flg) {+            if ((ret = HPDF_Stream_Write (attr->font_data, buf, len + 11)) !=+                        HPDF_OK)+                return ret;++            break;+        } else {+            if ((ret = HPDF_Stream_Write (attr->font_data, buf, len)) !=+                        HPDF_OK)+                return ret;+            HPDF_MemCpy (buf, buf + len, 11);+            pbuf = buf + 11;+        }+    }++    if (attr->length1 == 0 || attr->length2 == 0)+        return HPDF_SetError (fontdef->error, HPDF_UNSUPPORTED_TYPE1_FONT, 0);++    attr->length3 = attr->font_data->size - attr->length1 - attr->length2;++    return HPDF_OK;+}+++HPDF_FontDef+HPDF_Type1FontDef_Load  (HPDF_MMgr         mmgr,+                         HPDF_Stream       afm,+                         HPDF_Stream       font_data)+{+    HPDF_FontDef fontdef;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" HPDF_Type1FontDef_Load\n"));++    if (!afm)+        return NULL;++    fontdef = HPDF_Type1FontDef_New (mmgr);++    if (!fontdef)+        return NULL;++    ret = LoadAfm (fontdef, afm);+    if (ret != HPDF_OK) {+        HPDF_FontDef_Free (fontdef);+        return NULL;+    }++    /* if font-data is specified, the font data is embeded */+    if (font_data) {+        ret = LoadFontData (fontdef, font_data);+        if (ret != HPDF_OK) {+            HPDF_FontDef_Free (fontdef);+            return NULL;+        }+    }++    return fontdef;+}++HPDF_FontDef+HPDF_Type1FontDef_Duplicate  (HPDF_MMgr     mmgr,+                              HPDF_FontDef  src)+{+    HPDF_FontDef fontdef = HPDF_Type1FontDef_New (mmgr);++    HPDF_PTRACE ((" HPDF_Type1FontDef_Duplicate\n"));++    fontdef->type = src->type;+    fontdef->valid = src->valid;++    // copy data of attr,widths+    // attention to charset+    return NULL;+}++HPDF_STATUS+HPDF_Type1FontDef_SetWidths  (HPDF_FontDef          fontdef,+                              const HPDF_CharData*  widths)+{+    const HPDF_CharData* src = widths;+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;+    HPDF_CharData* dst;+    HPDF_UINT i = 0;++    HPDF_PTRACE ((" HPDF_Type1FontDef_SetWidths\n"));++    FreeWidth (fontdef);++    while (src->unicode != 0xFFFF) {+        src++;+        i++;+    }++    attr->widths_count = i;++    dst = (HPDF_CharData*)HPDF_GetMem (fontdef->mmgr, sizeof(HPDF_CharData) *+            attr->widths_count);+    if (dst == NULL)+        return HPDF_Error_GetCode (fontdef->error);++    HPDF_MemSet (dst, 0, sizeof(HPDF_CharData) * attr->widths_count);+    attr->widths = dst;++    src = widths;+    for (i = 0; i < attr->widths_count; i++) {+        dst->char_cd = src->char_cd;+        dst->unicode = src->unicode;+        dst->width = src->width;+        if (dst->unicode == 0x0020) {+            fontdef->missing_width = src->width;+        }++        src++;+        dst++;+    }++    return HPDF_OK;+}+++HPDF_INT16+HPDF_Type1FontDef_GetWidthByName  (HPDF_FontDef      fontdef,+                                   const char*  gryph_name)+{+    HPDF_UNICODE unicode = HPDF_GryphNameToUnicode (gryph_name);++    HPDF_PTRACE ((" HPDF_Type1FontDef_GetWidthByName\n"));++    return HPDF_Type1FontDef_GetWidth (fontdef, unicode);+}+++HPDF_INT16+HPDF_Type1FontDef_GetWidth  (HPDF_FontDef  fontdef,+                             HPDF_UNICODE  unicode)+{+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;+    HPDF_CharData *cdata = attr->widths;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Type1FontDef_GetWidth\n"));++    for (i = 0; i < attr->widths_count; i++) {+        if (cdata->unicode == unicode)+            return cdata->width;+        cdata++;+    }++    return fontdef->missing_width;+}++static void+FreeFunc (HPDF_FontDef  fontdef)+{+    HPDF_Type1FontDefAttr attr = (HPDF_Type1FontDefAttr)fontdef->attr;++    HPDF_PTRACE ((" FreeFunc\n"));++    if (attr->char_set)+        HPDF_FreeMem (fontdef->mmgr, attr->char_set);++    if (attr->font_data)+        HPDF_Stream_Free (attr->font_data);++    HPDF_FreeMem (fontdef->mmgr, attr->widths);+    HPDF_FreeMem (fontdef->mmgr, attr);+}+
+ haru/hpdf_gstate.c view
@@ -0,0 +1,119 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_gstate.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_gstate.h"++HPDF_GState+HPDF_GState_New  (HPDF_MMgr    mmgr,+                  HPDF_GState  current)+{+    HPDF_GState  gstate;++    if (current && current->depth >= HPDF_LIMIT_MAX_GSTATE) {+        HPDF_SetError (mmgr->error, HPDF_EXCEED_GSTATE_LIMIT, 0);++        return NULL;+    }++    gstate = HPDF_GetMem (mmgr, sizeof(HPDF_GState_Rec));+    if (!gstate)+        return NULL;++    if (current) {+        gstate->trans_matrix = current->trans_matrix;+        gstate->line_width =  current->line_width;+        gstate->line_cap =  current->line_cap;+        gstate->line_join =  current->line_join;+        gstate->miter_limit =  current->miter_limit;+        gstate->dash_mode = current->dash_mode;+        gstate->flatness = current->flatness;++        gstate->char_space = current->char_space;+        gstate->word_space = current->word_space;+        gstate->h_scalling = current->h_scalling;+        gstate->text_leading = current->text_leading;+        gstate->rendering_mode = current->rendering_mode;+        gstate->text_rise = current->text_rise;++        gstate->cs_stroke = current->cs_stroke;+        gstate->cs_fill = current->cs_fill;+        gstate->rgb_fill = current->rgb_fill;+        gstate->rgb_stroke = current->rgb_stroke;+        gstate->cmyk_fill = current->cmyk_fill;+        gstate->cmyk_stroke = current->cmyk_stroke;+        gstate->gray_fill = current->gray_fill;+        gstate->gray_stroke = current->gray_stroke;++        gstate->font = current->font;+        gstate->font_size = current->font_size;++        gstate->prev = current;+        gstate->depth = current->depth + 1;+    } else {+        HPDF_TransMatrix DEF_MATRIX = {1, 0, 0, 1, 0, 0};+        HPDF_RGBColor DEF_RGB_COLOR = {0, 0, 0};+        HPDF_CMYKColor DEF_CMYK_COLOR = {0, 0, 0, 0};+        HPDF_DashMode DEF_DASH_MODE = {{0, 0, 0, 0, 0, 0, 0, 0}, 0, 0};++        gstate->trans_matrix = DEF_MATRIX;+        gstate->line_width = HPDF_DEF_LINEWIDTH;+        gstate->line_cap = HPDF_DEF_LINECAP;+        gstate->line_join = HPDF_DEF_LINEJOIN;+        gstate->miter_limit = HPDF_DEF_MITERLIMIT;+        gstate->dash_mode = DEF_DASH_MODE;+        gstate->flatness = HPDF_DEF_FLATNESS;++        gstate->char_space = HPDF_DEF_CHARSPACE;+        gstate->word_space = HPDF_DEF_WORDSPACE;+        gstate->h_scalling = HPDF_DEF_HSCALING;+        gstate->text_leading = HPDF_DEF_LEADING;+        gstate->rendering_mode = HPDF_DEF_RENDERING_MODE;+        gstate->text_rise = HPDF_DEF_RISE;++        gstate->cs_stroke = HPDF_CS_DEVICE_GRAY;+        gstate->cs_fill = HPDF_CS_DEVICE_GRAY;+        gstate->rgb_fill = DEF_RGB_COLOR;+        gstate->rgb_stroke = DEF_RGB_COLOR;+        gstate->cmyk_fill = DEF_CMYK_COLOR;+        gstate->cmyk_stroke = DEF_CMYK_COLOR;+        gstate->gray_fill = 0;+        gstate->gray_stroke = 0;++        gstate->font = NULL;+        gstate->font_size = 0;+        gstate->writing_mode = HPDF_WMODE_HORIZONTAL;++        gstate->prev = NULL;+        gstate->depth = 1;+    }++    return gstate;+}++HPDF_GState+HPDF_GState_Free  (HPDF_MMgr    mmgr,+                   HPDF_GState  gstate)+{+    HPDF_GState current = NULL;++    if (gstate) {+      current = gstate->prev;+      HPDF_FreeMem (mmgr, gstate);+    }++    return current;+}+
+ haru/hpdf_gstate.h view
@@ -0,0 +1,80 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_gstate.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_GSTATE_H+#define _HPDF_GSTATE_H++#include "hpdf_font.h"++#ifdef __cplusplus+extern "C" {+#endif+++/*----------------------------------------------------------------------------*/+/*------ graphic state stack -------------------------------------------------*/++typedef struct _HPDF_GState_Rec  *HPDF_GState;++typedef struct _HPDF_GState_Rec {+    HPDF_TransMatrix        trans_matrix;+    HPDF_REAL               line_width;+    HPDF_LineCap            line_cap;+    HPDF_LineJoin           line_join;+    HPDF_REAL               miter_limit;+    HPDF_DashMode           dash_mode;+    HPDF_REAL               flatness;++    HPDF_REAL               char_space;+    HPDF_REAL               word_space;+    HPDF_REAL               h_scalling;+    HPDF_REAL               text_leading;+    HPDF_TextRenderingMode  rendering_mode;+    HPDF_REAL               text_rise;++    HPDF_ColorSpace         cs_fill;+    HPDF_ColorSpace         cs_stroke;+    HPDF_RGBColor           rgb_fill;+    HPDF_RGBColor           rgb_stroke;+    HPDF_CMYKColor          cmyk_fill;+    HPDF_CMYKColor          cmyk_stroke;+    HPDF_REAL               gray_fill;+    HPDF_REAL               gray_stroke;++    HPDF_Font               font;+    HPDF_REAL               font_size;+    HPDF_WritingMode        writing_mode;++    HPDF_GState             prev;+    HPDF_UINT               depth;+} HPDF_GState_Rec;++/*----------------------------------------------------------------------------*/+/*----------------------------------------------------------------------------*/++HPDF_GState+HPDF_GState_New  (HPDF_MMgr    mmgr,+                  HPDF_GState  current);+++HPDF_GState+HPDF_GState_Free  (HPDF_MMgr    mmgr,+                   HPDF_GState  gstate);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_GSTATE_H */+
+ haru/hpdf_image.c view
@@ -0,0 +1,568 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_image.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.08.12 modified.+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"++static const char *COL_CMYK = "DeviceCMYK";+static const char *COL_RGB = "DeviceRGB";+static const char *COL_GRAY = "DeviceGray";++static HPDF_STATUS+LoadJpegHeader (HPDF_Image   image,+                HPDF_Stream  stream);+++/*---------------------------------------------------------------------------*/++static HPDF_STATUS+LoadJpegHeader (HPDF_Image   image,+                HPDF_Stream  stream)+{+    HPDF_UINT16 tag;+    HPDF_UINT16 height;+    HPDF_UINT16 width;+    HPDF_BYTE precision;+    HPDF_BYTE num_components;+    const char *color_space_name;+    HPDF_UINT len;+    HPDF_STATUS ret;+    HPDF_Array array;++    HPDF_PTRACE ((" HPDF_Image_LoadJpegHeader\n"));++    len = 2;+    if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&tag, &len) != HPDF_OK)+        return HPDF_Error_GetCode (stream->error);++    HPDF_UInt16Swap (&tag);+    if (tag != 0xFFD8)+        return HPDF_INVALID_JPEG_DATA;++    /* find SOF record */+    for (;;) {+        HPDF_UINT16 size;++        len = 2;+        if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&tag,  &len) != HPDF_OK)+            return HPDF_Error_GetCode (stream->error);++        HPDF_UInt16Swap (&tag);++        len = 2;+        if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&size,  &len) != HPDF_OK)+            return HPDF_Error_GetCode (stream->error);++        HPDF_UInt16Swap (&size);++        HPDF_PTRACE (("tag=%04X size=%u\n", tag, size));++        if (tag == 0xFFC0 || tag == 0xFFC1 ||+                tag == 0xFFC2 || tag == 0xFFC9) {++            len = 1;+            if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&precision, &len) !=+                    HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++            len = 2;+            if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&height, &len) !=+                    HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++            HPDF_UInt16Swap (&height);++            len = 2;+            if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&width, &len) != HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++             HPDF_UInt16Swap (&width);++           len = 1;+            if (HPDF_Stream_Read (stream, (HPDF_BYTE *)&num_components, &len) !=+                    HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++            break;+        } else if ((tag | 0x00FF) != 0xFFFF)+            /* lost marker */+            return HPDF_SetError (image->error, HPDF_UNSUPPORTED_JPEG_FORMAT,+                    0);++        if (HPDF_Stream_Seek (stream, size - 2, HPDF_SEEK_CUR) != HPDF_OK)+                return HPDF_Error_GetCode (stream->error);+    }++    if (HPDF_Dict_AddNumber (image, "Height", height) != HPDF_OK)+        return HPDF_Error_GetCode (stream->error);++    if (HPDF_Dict_AddNumber (image, "Width", width) != HPDF_OK)+        return HPDF_Error_GetCode (stream->error);++    /* classification of RGB and CMYK is less than perfect+     * YCbCr and YCCK are classified into RGB or CMYK.+     *+     * It is necessary to read APP14 data to distinguish colorspace perfectly.++     */+    switch (num_components) {+        case 1:+            color_space_name = COL_GRAY;+            break;+        case 3:+            color_space_name = COL_RGB;+            break;+        case 4:+            array = HPDF_Array_New (image->mmgr);+            if (!array)+                return HPDF_Error_GetCode (stream->error);++            ret = HPDF_Dict_Add (image, "Decode", array);+            if (ret != HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 1));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 0));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 1));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 0));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 1));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 0));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 1));+            ret += HPDF_Array_Add (array, HPDF_Number_New (image->mmgr, 0));++            if (ret != HPDF_OK)+                return HPDF_Error_GetCode (stream->error);++            color_space_name = COL_CMYK;++            break;+        default:+            return HPDF_SetError (image->error, HPDF_UNSUPPORTED_JPEG_FORMAT,+                    0);+    }++    if (HPDF_Dict_Add (image, "ColorSpace",+                HPDF_Name_New (image->mmgr, color_space_name)) != HPDF_OK)+        return HPDF_Error_GetCode (stream->error);++    if (HPDF_Dict_Add (image, "BitsPerComponent",+                HPDF_Number_New (image->mmgr, precision)) != HPDF_OK)+        return HPDF_Error_GetCode (stream->error);++    return HPDF_OK;+}++HPDF_Image+HPDF_Image_LoadJpegImage  (HPDF_MMgr        mmgr,+                           HPDF_Stream      jpeg_data,+                           HPDF_Xref        xref)+{+    HPDF_Dict image;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE ((" HPDF_Image_LoadJpegImage\n"));++    image = HPDF_DictStream_New (mmgr, xref);+    if (!image)+        return NULL;++    image->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;++    /* add requiered elements */+    image->filter = HPDF_STREAM_FILTER_DCT_DECODE;+    ret += HPDF_Dict_AddName (image, "Type", "XObject");+    ret += HPDF_Dict_AddName (image, "Subtype", "Image");+    if (ret != HPDF_OK)+        return NULL;++    if (LoadJpegHeader (image, jpeg_data) != HPDF_OK)+        return NULL;++    if (HPDF_Stream_Seek (jpeg_data, 0, HPDF_SEEK_SET) != HPDF_OK)+        return NULL;++    for (;;) {+        HPDF_BYTE buf[HPDF_STREAM_BUF_SIZ];+        HPDF_UINT len = HPDF_STREAM_BUF_SIZ;+        HPDF_STATUS ret = HPDF_Stream_Read (jpeg_data, buf,+                &len);++        if (ret != HPDF_OK) {+            if (ret == HPDF_STREAM_EOF) {+                if (len > 0) {+                    ret = HPDF_Stream_Write (image->stream, buf, len);+                    if (ret != HPDF_OK)+                        return NULL;+                }+                break;+            } else+                return NULL;+        }++        if (HPDF_Stream_Write (image->stream, buf, len) != HPDF_OK)+            return NULL;+    }++    return image;+}+++HPDF_Image+HPDF_Image_LoadRawImage (HPDF_MMgr          mmgr,+                         HPDF_Stream        raw_data,+                         HPDF_Xref          xref,+                         HPDF_UINT          width,+                         HPDF_UINT          height,+                         HPDF_ColorSpace    color_space)+{+    HPDF_Dict image;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_UINT size;++    HPDF_PTRACE ((" HPDF_Image_LoadRawImage\n"));++    if (color_space != HPDF_CS_DEVICE_GRAY &&+            color_space != HPDF_CS_DEVICE_RGB &&+            color_space != HPDF_CS_DEVICE_CMYK) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_COLOR_SPACE, 0);+        return NULL;+    }++    image = HPDF_DictStream_New (mmgr, xref);+    if (!image)+        return NULL;++    image->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;+    ret += HPDF_Dict_AddName (image, "Type", "XObject");+    ret += HPDF_Dict_AddName (image, "Subtype", "Image");+    if (ret != HPDF_OK)+        return NULL;++    if (color_space == HPDF_CS_DEVICE_GRAY) {+        size = width * height;+        ret = HPDF_Dict_AddName (image, "ColorSpace", COL_GRAY);+	} else if (color_space == HPDF_CS_DEVICE_CMYK) {+		size = width * height * 4;+		ret = HPDF_Dict_AddName (image, "ColorSpace", COL_CMYK);+    } else {+        size = width * height * 3;+        ret = HPDF_Dict_AddName (image, "ColorSpace", COL_RGB);+    }++    if (ret != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "Width", width) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "Height", height) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "BitsPerComponent", 8) != HPDF_OK)+        return NULL;++    if (HPDF_Stream_WriteToStream (raw_data, image->stream, 0, NULL) != HPDF_OK)+        return NULL;++    if (image->stream->size != size) {+        HPDF_SetError (image->error, HPDF_INVALID_IMAGE, 0);+        return NULL;+    }++    return image;+}+++HPDF_Image+HPDF_Image_LoadRawImageFromMem  (HPDF_MMgr          mmgr,+                                 const HPDF_BYTE   *buf,+                                 HPDF_Xref          xref,+                                 HPDF_UINT          width,+                                 HPDF_UINT          height,+                                 HPDF_ColorSpace    color_space,+                                 HPDF_UINT          bits_per_component)+{+    HPDF_Dict image;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_UINT size;++    HPDF_PTRACE ((" HPDF_Image_LoadRawImageFromMem\n"));++    if (color_space != HPDF_CS_DEVICE_GRAY &&+            color_space != HPDF_CS_DEVICE_RGB) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_COLOR_SPACE, 0);+        return NULL;+    }++    if (bits_per_component != 1 && bits_per_component != 2 &&+            bits_per_component != 4 && bits_per_component != 8) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_IMAGE, 0);+        return NULL;+    }++    image = HPDF_DictStream_New (mmgr, xref);+    if (!image)+        return NULL;++    image->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;+    ret += HPDF_Dict_AddName (image, "Type", "XObject");+    ret += HPDF_Dict_AddName (image, "Subtype", "Image");+    if (ret != HPDF_OK)+        return NULL;++    if (color_space == HPDF_CS_DEVICE_GRAY) {+        size = (HPDF_DOUBLE)width * height / (8 / bits_per_component) + 0.876;+        ret = HPDF_Dict_AddName (image, "ColorSpace", COL_GRAY);+    } else {+        size = (HPDF_DOUBLE)width * height / (8 / bits_per_component) + 0.876;+        size *= 3;+        ret = HPDF_Dict_AddName (image, "ColorSpace", COL_RGB);+    }++    if (ret != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "Width", width) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "Height", height) != HPDF_OK)+        return NULL;++    if (HPDF_Dict_AddNumber (image, "BitsPerComponent", bits_per_component)+            != HPDF_OK)+        return NULL;++    if (HPDF_Stream_Write (image->stream, buf, size) != HPDF_OK)+        return NULL;++    return image;+}+++HPDF_BOOL+HPDF_Image_Validate (HPDF_Image  image)+{+    HPDF_Name subtype;++    HPDF_PTRACE ((" HPDF_Image_Validate\n"));++    if (!image)+        return HPDF_FALSE;++    if (image->header.obj_class != (HPDF_OSUBCLASS_XOBJECT |+                HPDF_OCLASS_DICT)) {+        HPDF_RaiseError (image->error, HPDF_INVALID_IMAGE, 0);+        return HPDF_FALSE;+    }++    subtype = HPDF_Dict_GetItem (image, "Subtype", HPDF_OCLASS_NAME);+    if (!subtype || HPDF_StrCmp (subtype->value, "Image") != 0) {+        HPDF_RaiseError (image->error, HPDF_INVALID_IMAGE, 0);+        return HPDF_FALSE;+    }++    return HPDF_TRUE;+}+++HPDF_EXPORT(HPDF_Point)+HPDF_Image_GetSize (HPDF_Image  image)+{+    HPDF_Number width;+    HPDF_Number height;+    HPDF_Point ret = {0, 0};++    HPDF_PTRACE ((" HPDF_Image_GetSize\n"));++    if (!HPDF_Image_Validate (image))+        return ret;++    width = HPDF_Dict_GetItem (image, "Width", HPDF_OCLASS_NUMBER);+    height = HPDF_Dict_GetItem (image, "Height", HPDF_OCLASS_NUMBER);++    if (width && height) {+      ret.x = width->value;+      ret.y = height->value;+    }++    return ret;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_GetSize2 (HPDF_Image  image, HPDF_Point *size)+{+    HPDF_Number width;+    HPDF_Number height;+    size->x = 0;+    size->y = 0;++    HPDF_PTRACE ((" HPDF_Image_GetSize\n"));++    if (!HPDF_Image_Validate (image))+        return HPDF_INVALID_IMAGE;++    width = HPDF_Dict_GetItem (image, "Width", HPDF_OCLASS_NUMBER);+    height = HPDF_Dict_GetItem (image, "Height", HPDF_OCLASS_NUMBER);++    if (width && height) {+      size->x = width->value;+      size->y = height->value;+    }++    return HPDF_OK;+}++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetBitsPerComponent (HPDF_Image  image)+{+    HPDF_Number n;++    HPDF_PTRACE ((" HPDF_Image_GetBitsPerComponent\n"));++    if (!HPDF_Image_Validate (image))+        return 0;++    n = HPDF_Dict_GetItem (image, "BitsPerComponent", HPDF_OCLASS_NUMBER);++    if (!n)+        return 0;++    return n->value;+}++HPDF_EXPORT(const char*)+HPDF_Image_GetColorSpace (HPDF_Image  image)+{+    HPDF_Name n;++    HPDF_PTRACE ((" HPDF_Image_GetColorSpace\n"));++    n = HPDF_Dict_GetItem (image, "ColorSpace", HPDF_OCLASS_NAME);++    if (!n) {+        HPDF_CheckError (image->error);+        return NULL;+    }++    return n->value;+}++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetWidth  (HPDF_Image   image)+{+    return HPDF_Image_GetSize (image).x;+}++HPDF_EXPORT(HPDF_UINT)+HPDF_Image_GetHeight  (HPDF_Image   image)+{+    return HPDF_Image_GetSize (image).y;+}++HPDF_STATUS+HPDF_Image_SetMask (HPDF_Image   image,+                    HPDF_BOOL    mask)+{+    HPDF_Boolean image_mask;++    if (!HPDF_Image_Validate (image))+        return HPDF_INVALID_IMAGE;++    if (mask && HPDF_Image_GetBitsPerComponent (image) != 1)+        return HPDF_SetError (image->error, HPDF_INVALID_BIT_PER_COMPONENT,+                0);++    image_mask = HPDF_Dict_GetItem (image, "ImageMask", HPDF_OCLASS_BOOLEAN);+    if (!image_mask) {+        HPDF_STATUS ret;+        image_mask = HPDF_Boolean_New (image->mmgr, HPDF_FALSE);++        if ((ret = HPDF_Dict_Add (image, "ImageMask", image_mask)) != HPDF_OK)+            return ret;+    }++    image_mask->value = mask;+    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_SetMaskImage  (HPDF_Image   image,+                          HPDF_Image   mask_image)+{+    if (!HPDF_Image_Validate (image))+        return HPDF_INVALID_IMAGE;++    if (!HPDF_Image_Validate (mask_image))+        return HPDF_INVALID_IMAGE;++    if (HPDF_Image_SetMask (mask_image, HPDF_TRUE) != HPDF_OK)+        return HPDF_CheckError (image->error);++    return HPDF_Dict_Add (image, "Mask", mask_image);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Image_SetColorMask (HPDF_Image   image,+                         HPDF_UINT    rmin,+                         HPDF_UINT    rmax,+                         HPDF_UINT    gmin,+                         HPDF_UINT    gmax,+                         HPDF_UINT    bmin,+                         HPDF_UINT    bmax)+{+    HPDF_Array array;+    const char *name;+    HPDF_STATUS ret = HPDF_OK;++    if (!HPDF_Image_Validate (image))+        return HPDF_INVALID_IMAGE;++    if (HPDF_Dict_GetItem (image, "ImageMask", HPDF_OCLASS_BOOLEAN))+        return HPDF_RaiseError (image->error, HPDF_INVALID_OPERATION, 0);++    if (HPDF_Image_GetBitsPerComponent (image) != 8)+        return HPDF_RaiseError (image->error, HPDF_INVALID_BIT_PER_COMPONENT,+                0);++    name = HPDF_Image_GetColorSpace (image);+    if (!name || HPDF_StrCmp (COL_RGB, name) != 0)+        return HPDF_RaiseError (image->error, HPDF_INVALID_COLOR_SPACE, 0);++    /* Each integer must be in the range 0 to 2^BitsPerComponent - 1 */+    if (rmax > 255 || gmax > 255 || bmax > 255)+       return HPDF_RaiseError (image->error, HPDF_INVALID_PARAMETER, 0);++    array = HPDF_Array_New (image->mmgr);+    if (!array)+        return HPDF_CheckError (image->error);++    ret += HPDF_Dict_Add (image, "Mask", array);+    ret += HPDF_Array_AddNumber (array, rmin);+    ret += HPDF_Array_AddNumber (array, rmax);+    ret += HPDF_Array_AddNumber (array, gmin);+    ret += HPDF_Array_AddNumber (array, gmax);+    ret += HPDF_Array_AddNumber (array, bmin);+    ret += HPDF_Array_AddNumber (array, bmax);++    if (ret != HPDF_OK)+        return HPDF_CheckError (image->error);++    return HPDF_OK;+}++
+ haru/hpdf_image.h view
@@ -0,0 +1,72 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_image.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_IMAGE_H+#define _HPDF_IMAGE_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif++#ifndef HPDF_NOPNGLIB++HPDF_Image+HPDF_Image_LoadPngImage  (HPDF_MMgr        mmgr,+                          HPDF_Stream      png_data,+                          HPDF_Xref        xref,+                          HPDF_BOOL        delayed_loading);++#endif++HPDF_Image+HPDF_Image_LoadJpegImage  (HPDF_MMgr        mmgr,+                           HPDF_Stream      jpeg_data,+                           HPDF_Xref        xref);+++HPDF_Image+HPDF_Image_LoadRawImage  (HPDF_MMgr          mmgr,+                          HPDF_Stream        stream,+                          HPDF_Xref          xref,+                          HPDF_UINT          width,+                          HPDF_UINT          height,+                          HPDF_ColorSpace    color_space);+++HPDF_Image+HPDF_Image_LoadRawImageFromMem  (HPDF_MMgr          mmgr,+                                 const HPDF_BYTE   *buf,+                                 HPDF_Xref          xref,+                                 HPDF_UINT          width,+                                 HPDF_UINT          height,+                                 HPDF_ColorSpace    color_space,+                                 HPDF_UINT          bits_per_component);+++HPDF_BOOL+HPDF_Image_Validate (HPDF_Image  image);+++HPDF_STATUS+HPDF_Image_SetMask (HPDF_Image   image,+                    HPDF_BOOL    mask);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_XOBJECTS_H */+
+ haru/hpdf_image_png.c view
@@ -0,0 +1,424 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_image.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_image.h"++#ifndef HPDF_NOPNGLIB+#include <png.h>++static void+PngErrorFunc  (png_structp       png_ptr,+               const char  *msg);+++static void+PngReadFunc  (png_structp   png_ptr,+              png_bytep     data,+              png_uint_32   length)+{+    HPDF_UINT len = length;+    HPDF_Stream stream = (HPDF_Stream)png_get_io_ptr (png_ptr);++    HPDF_Stream_Read (stream, data, &len);+}+++static HPDF_STATUS+LoadPngData  (HPDF_Dict     image,+              HPDF_Stream   png_data,+              HPDF_BOOL     delayed_loading);+++static void+PngErrorFunc  (png_structp       png_ptr,+               const char  *msg);+++static HPDF_STATUS+ReadPngData_Interlaced  (HPDF_Dict    image,+                         png_structp  png_ptr,+                         png_infop    info_ptr);+++static HPDF_STATUS+ReadPngData  (HPDF_Dict    image,+              png_structp  png_ptr,+              png_infop    info_ptr);+++static HPDF_STATUS+CreatePallet (HPDF_Dict    image,+              png_structp  png_ptr,+              png_infop    info_ptr);+++static HPDF_STATUS+PngBeforeWrite  (HPDF_Dict obj);+++static HPDF_STATUS+PngAfterWrite  (HPDF_Dict obj);+++/*---------------------------------------------------------------------------*/++static void+PngErrorFunc  (png_structp       png_ptr,+               const char  *msg)+{+    char error_number[16];+    HPDF_UINT i;+    HPDF_STATUS detail_no;+    HPDF_Error error;++    /* pick out error-number from error message */+    HPDF_MemSet (error_number, 0, 16);++     for (i = 0; i < 15; i++) {+         error_number[i] = *(msg + i);+         if (*(msg + i + 1) == ' ')+             break;+     }++     error = (HPDF_Error)png_get_error_ptr (png_ptr);+     detail_no = (HPDF_STATUS)HPDF_AToI (error_number);+     HPDF_SetError (error, HPDF_LIBPNG_ERROR, detail_no);+}+++static HPDF_STATUS+ReadPngData_Interlaced  (HPDF_Dict    image,+                         png_structp  png_ptr,+                         png_infop    info_ptr)+{+    png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);+    png_bytep* row_pointers = HPDF_GetMem (image->mmgr,+                info_ptr->height * sizeof (png_bytep));++    if (row_pointers) {+        HPDF_UINT i;++        HPDF_MemSet (row_pointers, 0, info_ptr->height * sizeof (png_bytep));+        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {+            row_pointers[i] = HPDF_GetMem (image->mmgr, len);++            if (image->error->error_no != HPDF_OK)+                break;+        }++        if (image->error->error_no == HPDF_OK) {+/*      } else {                                              remove this line */+            png_read_image(png_ptr, row_pointers);+/*            if (image->error->error_no != HPDF_OK) {        remove this line */+            if (image->error->error_no == HPDF_OK) {       /* add this line */+                for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {+                    if (HPDF_Stream_Write (image->stream, row_pointers[i], len) !=+                            HPDF_OK)+                        break;+                }+            }+        }++        /* clean up */+        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {+            HPDF_FreeMem (image->mmgr, row_pointers[i]);+/*          i--                                               remove this line */+        }++        HPDF_FreeMem (image->mmgr, row_pointers);+    }++    return image->error->error_no;+}++static HPDF_STATUS+ReadPngData  (HPDF_Dict    image,+              png_structp  png_ptr,+              png_infop    info_ptr)+{+    png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);+    png_bytep buf_ptr = HPDF_GetMem (image->mmgr, len);++    if (buf_ptr) {+        HPDF_UINT i;++        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {+            png_read_rows(png_ptr, (png_byte**)&buf_ptr, NULL, 1);+            if (image->error->error_no != HPDF_OK)+                break;++            if (HPDF_Stream_Write (image->stream, buf_ptr, len) != HPDF_OK)+                break;+        }++        HPDF_FreeMem (image->mmgr, buf_ptr);+    }++    return image->error->error_no;+}+++static HPDF_STATUS+CreatePallet (HPDF_Dict    image,+              png_structp  png_ptr,+              png_infop    info_ptr)+{+    HPDF_INT num_pl = 0;+    png_color *src_pl = NULL;+    HPDF_BYTE *ppallet;+    HPDF_BYTE *p;+    HPDF_UINT i;+    HPDF_Array array;++    /* png_get_PLTE does not call PngErrorFunc even if it failed.+     * so we call HPDF_Set_Error to set error-code.+     */+    if (png_get_PLTE(png_ptr, info_ptr, (png_color**)&src_pl, &num_pl) !=+            PNG_INFO_PLTE)+        return HPDF_SetError (image->error, HPDF_LIBPNG_ERROR,+                    HPDF_CANNOT_GET_PALLET);+++    /* make a pallet array for indexed image. */+    ppallet = HPDF_GetMem (image->mmgr, num_pl * 3);+    if (!ppallet)+        return image->error->error_no;++    p = ppallet;+    for (i = 0; i < num_pl; i++, src_pl++) {+        *p++ = src_pl->red;+        *p++ = src_pl->green;+        *p++ = src_pl->blue;+    }++    array = HPDF_Array_New (image->mmgr);+    if (array) {+        HPDF_Binary b;++        HPDF_Dict_Add (image, "ColorSpace", array);++        HPDF_Array_AddName (array, "Indexed");+        HPDF_Array_AddName (array, "DeviceRGB");+        HPDF_Array_AddNumber (array, num_pl - 1);++        b = HPDF_Binary_New (image->mmgr, ppallet, num_pl * 3);+        if (b)+            HPDF_Array_Add (array, b);+    }++    HPDF_FreeMem (image->mmgr, ppallet);++    return image->error->error_no;+}++#define HPDF_PNG_BYTES_TO_CHECK 8++HPDF_Image+HPDF_Image_LoadPngImage  (HPDF_MMgr        mmgr,+                          HPDF_Stream      png_data,+                          HPDF_Xref        xref,+                          HPDF_BOOL        delayed_loading)+{+    HPDF_STATUS ret;+    HPDF_Dict image;+    png_byte header[HPDF_PNG_BYTES_TO_CHECK];+    HPDF_UINT len = HPDF_PNG_BYTES_TO_CHECK;++    HPDF_PTRACE ((" HPDF_Image_LoadPngImage\n"));++    HPDF_MemSet (header, 0x00, HPDF_PNG_BYTES_TO_CHECK);+    ret = HPDF_Stream_Read (png_data, header, &len);+    if (ret != HPDF_OK ||+            png_sig_cmp (header, (png_size_t)0, HPDF_PNG_BYTES_TO_CHECK)) {+        HPDF_SetError (mmgr->error, HPDF_INVALID_PNG_IMAGE, 0);+        return NULL;+    }++    image = HPDF_DictStream_New (mmgr, xref);+    if (!image)+        return NULL;++    image->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;+    ret += HPDF_Dict_AddName (image, "Type", "XObject");+    ret += HPDF_Dict_AddName (image, "Subtype", "Image");+    if (ret != HPDF_OK)+        return NULL;++    if (LoadPngData (image, png_data, delayed_loading) != HPDF_OK)+        return NULL;++    return image;+}+++static HPDF_STATUS+LoadPngData  (HPDF_Dict     image,+              HPDF_Stream   png_data,+              HPDF_BOOL     delayed_loading)++{+    HPDF_STATUS ret;+    png_structp png_ptr = NULL;+    png_infop info_ptr = NULL;++    HPDF_PTRACE ((" HPDF_Image_LoadPngImage\n"));++    /* create read_struct. */+    png_ptr = png_create_read_struct (PNG_LIBPNG_VER_STRING,+        image->error, PngErrorFunc, PngErrorFunc);++    if (png_ptr == NULL) {+        HPDF_SetError (image->error, HPDF_FAILD_TO_ALLOC_MEM, 0);+        return HPDF_FAILD_TO_ALLOC_MEM;+    }++    /* create info-struct */+    info_ptr = png_create_info_struct (png_ptr);++    if (info_ptr == NULL) {+        HPDF_SetError (image->error, HPDF_FAILD_TO_ALLOC_MEM, 0);+        goto Exit;+    }++    png_set_sig_bytes (png_ptr, HPDF_PNG_BYTES_TO_CHECK);+    png_set_read_fn (png_ptr, (void *)png_data, (png_rw_ptr)&PngReadFunc);++    /* reading info structure. */+    png_read_info(png_ptr, info_ptr);+    if (image->error->error_no != HPDF_OK)+        goto Exit;++    /* 16bit image and alpha color type are not supported. */+    if (info_ptr->bit_depth == 16)+        png_set_strip_16(png_ptr);++    if (PNG_COLOR_MASK_ALPHA & info_ptr->color_type) {+        /* png image with alpha chanel is not supported. */+        png_set_strip_alpha(png_ptr);+    }++    png_read_update_info(png_ptr, info_ptr);+    if (image->error->error_no  != HPDF_OK)+        goto Exit;++    /* if the image has color palette, copy the pallet of the image to+     * create color map.+     */+    if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)+        ret = CreatePallet(image, png_ptr, info_ptr);+    else if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY)+        ret = HPDF_Dict_AddName (image, "ColorSpace", "DeviceGray");+    else+        ret = HPDF_Dict_AddName (image, "ColorSpace", "DeviceRGB");++    if (ret != HPDF_OK)+        goto Exit;++    /* read image-data+     * if the image is interlaced, read whole image at once.+     * if delayed_loading is HPDF_TRUE, the data does not load this phase.+     */+    if (delayed_loading) {+        image->before_write_fn = PngBeforeWrite;+        image->after_write_fn = PngAfterWrite;+    } else {+        if (png_get_interlace_type(png_ptr, info_ptr) != PNG_INTERLACE_NONE)+            ret = ReadPngData_Interlaced(image, png_ptr, info_ptr);+        else+            ret = ReadPngData(image, png_ptr, info_ptr);++        if (ret != HPDF_OK)+            goto Exit;+    }++    /* setting the info of the image. */+    if (HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)info_ptr->width)+        != HPDF_OK)+        goto Exit;++    if (HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)info_ptr->height)+        != HPDF_OK)+        goto Exit;++    if (HPDF_Dict_AddNumber (image, "BitsPerComponent",+                (HPDF_UINT)info_ptr->bit_depth) != HPDF_OK)+        goto Exit;++    /* clean up */+    png_destroy_read_struct(&png_ptr, &info_ptr, NULL);++    return HPDF_OK;++Exit:+    png_destroy_read_struct(&png_ptr, &info_ptr, NULL);++    return image->error->error_no;+}+++static HPDF_STATUS+PngBeforeWrite  (HPDF_Dict obj)+{+    HPDF_STATUS ret;+    png_byte header[HPDF_PNG_BYTES_TO_CHECK];+    HPDF_UINT len = HPDF_PNG_BYTES_TO_CHECK;+    HPDF_Stream png_data;+    HPDF_String s;++    HPDF_PTRACE ((" PngBeforeWrite\n"));++    HPDF_MemStream_FreeData(obj->stream);++    s = HPDF_Dict_GetItem (obj, "_FILE_NAME", HPDF_OCLASS_STRING);+    if (!s)+        return HPDF_SetError (obj->error, HPDF_MISSING_FILE_NAME_ENTRY, 0);++    png_data = HPDF_FileReader_New (obj->mmgr, s->value);+    if (!HPDF_Stream_Validate (png_data))+        return obj->error->error_no;++    HPDF_MemSet (header, 0x00, HPDF_PNG_BYTES_TO_CHECK);+    ret = HPDF_Stream_Read (png_data, header, &len);+    if (ret != HPDF_OK ||+            png_sig_cmp (header, (png_size_t)0, HPDF_PNG_BYTES_TO_CHECK)) {+        HPDF_Stream_Free(png_data);+        return HPDF_SetError (obj->error, HPDF_INVALID_PNG_IMAGE, 0);+    }++    if ((ret = LoadPngData (obj, png_data, HPDF_FALSE)) != HPDF_OK) {+        HPDF_Stream_Free(png_data);+        return ret;+    }++    HPDF_Stream_Free(png_data);++    return HPDF_OK;+}+++static HPDF_STATUS+PngAfterWrite  (HPDF_Dict obj)+{+   HPDF_PTRACE ((" PngAfterWrite\n"));++   HPDF_MemStream_FreeData(obj->stream);++   return HPDF_OK;+}+++#endif /* HPDF_NOPNGLIB */+
+ haru/hpdf_info.c view
@@ -0,0 +1,164 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_info.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_info.h"++static const char  *HPDF_INFO_ATTR_NAMES[] = {+    "CreationDate",+    "ModDate",+    "Author",+    "Creator",+    "Producer",+    "Title",+    "Subject",+    "Keywords",+    NULL+};+++static const char*+InfoTypeToName  (HPDF_InfoType  type);+++/*---------------------------------------------------------------------------*/++static const char*+InfoTypeToName  (HPDF_InfoType  type)+{+    HPDF_UINT idx = (HPDF_UINT)type;++    return HPDF_INFO_ATTR_NAMES[idx];+}+++HPDF_STATUS+HPDF_Info_SetInfoAttr (HPDF_Dict        info,+                       HPDF_InfoType    type,+                       const char  *value,+                       HPDF_Encoder     encoder)+{+    const char* name = InfoTypeToName (type);++    HPDF_PTRACE((" HPDF_Info_SetInfoAttr\n"));++    if (type <= HPDF_INFO_MOD_DATE)+        return HPDF_SetError (info->error, HPDF_INVALID_PARAMETER, 0);++    return HPDF_Dict_Add (info, name, HPDF_String_New (info->mmgr, value,+            encoder));+}+++const char*+HPDF_Info_GetInfoAttr (HPDF_Dict      info,+                       HPDF_InfoType  type)+{+    const char* name = InfoTypeToName (type);+    HPDF_String s;++    HPDF_PTRACE((" HPDF_Info_GetInfoAttr\n"));++    if (!info)+        return NULL;++    s = HPDF_Dict_GetItem (info, name, HPDF_OCLASS_STRING);++    if (!s)+        return NULL;+    else+        return s->value;+}+++HPDF_STATUS+HPDF_Info_SetInfoDateAttr (HPDF_Dict      info,+                           HPDF_InfoType  type,+                           HPDF_Date      value)+{+    char tmp[HPDF_DATE_TIME_STR_LEN + 1];+    char* ptmp;+    const char* name = InfoTypeToName (type);++    HPDF_PTRACE((" HPDF_Info_SetInfoDateAttr\n"));++    if (type > HPDF_INFO_MOD_DATE)+        return HPDF_SetError (info->error, HPDF_INVALID_PARAMETER, 0);++    HPDF_MemSet (tmp, 0, HPDF_DATE_TIME_STR_LEN + 1);+    if (value.month < 1 || 12 < value.month ||+        value.day < 1 ||+        23 < value.hour ||+        59 < value.minutes ||+        59 < value.seconds ||+        (value.ind != '+' && value.ind != '-' && value.ind != 'Z' &&+                value.ind != ' ') ||+        23 < value.off_hour ||+        59 < value.off_minutes) {+        return HPDF_SetError (info->error, HPDF_INVALID_DATE_TIME, 0);+    }++    switch (value.month) {+        case 1:+        case 3:+        case 5:+        case 7:+        case 8:+        case 10:+        case 12:+            if (value.day > 31)+                return HPDF_SetError (info->error, HPDF_INVALID_DATE_TIME, 0);++            break;+        case 4:+        case 6:+        case 9:+        case 11:+            if (value.day > 30)+                return HPDF_SetError (info->error, HPDF_INVALID_DATE_TIME, 0);++            break;+        case 2:+            if (value.day > 29 || (value.day == 29 &&+                (value.year % 4 != 0 ||+                (value.year % 100 == 0 && value.year % 400 != 0))))+                return HPDF_SetError (info->error, HPDF_INVALID_DATE_TIME, 0);++            break;+        default:+            return HPDF_SetError (info->error, HPDF_INVALID_DATE_TIME, 0);+    }++    ptmp = HPDF_MemCpy (tmp, "D:", 2);+    ptmp = HPDF_IToA2 (ptmp, value.year, 5);+    ptmp = HPDF_IToA2 (ptmp, value.month, 3);+    ptmp = HPDF_IToA2 (ptmp, value.day, 3);+    ptmp = HPDF_IToA2 (ptmp, value.hour, 3);+    ptmp = HPDF_IToA2 (ptmp, value.minutes, 3);+    ptmp = HPDF_IToA2 (ptmp, value.seconds, 3);+    if (value.ind != ' ') {+        *ptmp++ = value.ind;+        ptmp = HPDF_IToA2 (ptmp, value.off_hour, 3);+        *ptmp++ = '\'';+        ptmp = HPDF_IToA2 (ptmp, value.off_minutes, 3);+        *ptmp++ = '\'';+    }+    *ptmp = 0;++    return HPDF_Dict_Add (info, name, HPDF_String_New (info->mmgr, tmp,+                NULL));+}++
+ haru/hpdf_info.h view
@@ -0,0 +1,48 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_info.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */+++#ifndef _HPDF_INFO_H+#define _HPDF_INFO_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif+++HPDF_STATUS+HPDF_Info_SetInfoAttr (HPDF_Dict        info,+                       HPDF_InfoType    type,+                       const char  *value,+                       HPDF_Encoder     encoder);+++const char*+HPDF_Info_GetInfoAttr (HPDF_Dict      info,+                       HPDF_InfoType  type);+++HPDF_STATUS+HPDF_Info_SetInfoDateAttr (HPDF_Dict      info,+                           HPDF_InfoType  type,+                           HPDF_Date      value);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_INFO_H */+
+ haru/hpdf_list.c view
@@ -0,0 +1,333 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_list.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_consts.h"+#include "hpdf_list.h"++static HPDF_STATUS+Resize  (HPDF_List  list,+         HPDF_UINT  count);+++/*+ *  HPDF_List_new+ *+ *  mmgr :  handle to a HPDF_MMgr object.+ *  items_per_block :  number of increases of pointers.+ *+ *  return:  If HPDF_List_New success, it returns a handle to new HPDF_List+ *           object, otherwise it returns NULL.+ *+ */++HPDF_List+HPDF_List_New  (HPDF_MMgr  mmgr,+                HPDF_UINT  items_per_block)+{+    HPDF_List list;++    HPDF_PTRACE((" HPDF_List_New\n"));++    if (mmgr == NULL)+        return NULL;++    list = (HPDF_List)HPDF_GetMem (mmgr, sizeof(HPDF_List_Rec));+    if (list) {+        list->mmgr = mmgr;+        list->error = mmgr->error;+        list->block_siz = 0;+        list->items_per_block =+            (items_per_block <= 0 ? HPDF_DEF_ITEMS_PER_BLOCK : items_per_block);+        list->count = 0;+        list->obj = NULL;+    }++    return list;+}++/*+ *  HPDF_List_add+ *+ *  list :  Pointer to a HPDF_List object.+ *  item :  Pointer to a object to be added.+ *+ *  return:  If HPDF_List_Add success, it returns HPDF_OK.+ *           HPDF_FAILD_TO_ALLOC_MEM is returned when the expansion of the+ *           object list is failed.+ *+ */++HPDF_STATUS+HPDF_List_Add  (HPDF_List  list,+                void       *item)+{+    HPDF_PTRACE((" HPDF_List_Add\n"));++    if (list->count >= list->block_siz) {+        HPDF_STATUS ret = Resize (list,+                list->block_siz + list->items_per_block);++        if (ret != HPDF_OK) {+            return ret;+        }+    }++    list->obj[list->count++] = item;+    return HPDF_OK;+}+++/*+ *  HPDF_List_Insert+ *+ *  list   :  Pointer to a HPDF_List object.+ *  target :  Pointer to the target object.+ *  item   :  Pointer to a object to be inserted.+ *+ *  insert the item before the target.+ *+ *  return:  If HPDF_List_Add success, it returns HPDF_OK.+ *           HPDF_FAILD_TO_ALLOC_MEM is returned when the expansion of the+ *           object list is failed.+ *           HPDF_ITEM_NOT_FOUND is returned where the target object is not+ *           found.+ *+ */++HPDF_STATUS+HPDF_List_Insert  (HPDF_List  list,+                   void       *target,+                   void       *item)+{+    HPDF_INT target_idx = HPDF_List_Find (list, target);+    void      *last_item = list->obj[list->count - 1];+    HPDF_INT i;++    HPDF_PTRACE((" HPDF_List_Insert\n"));++    if (target_idx < 0)+        return HPDF_ITEM_NOT_FOUND;++    /* move the item of the list to behind one by one. */+    for (i = list->count - 2; i >= target_idx; i--)+        list->obj[i + 1] = list->obj[i];++    list->obj[target_idx] = item;++    return HPDF_List_Add (list, last_item);+}++/*+ *  HPDF_List_Remove+ *+ *  Remove the object specified by item parameter from the list object. The+ *  memory area that the object uses is not released.+ *+ *  list :  Pointer to a HPDF_List object.+ *  item :  Pointer to a object to be remove.+ *+ *  return:  If HPDF_List_Remove success, it returns HPDF_OK.+ *           HPDF_ITEM_NOT_FOUND is returned when the object specified by item+ *           parameter is not found.+ *+ */++HPDF_STATUS+HPDF_List_Remove  (HPDF_List  list,+                   void       *item)+{+    HPDF_UINT i;+    void **obj = list->obj;++    HPDF_PTRACE((" HPDF_List_Remove\n"));++    for (i = 0; i < list->count; i++) {+        if (*obj == item) {+            HPDF_List_RemoveByIndex(list, i);+            return HPDF_OK;+        } else+            obj++;+    }++    return HPDF_ITEM_NOT_FOUND;+}++/*+ *  HPDF_List_RemoveByIndex+ *+ *  Remove the object by index number.+ *+ *  list :  Pointer to a HPDF_List object.+ *  index :  Index of a object to be remove.+ *+ *  return:  If HPDF_List_RemoveByIndex success, it returns HPDF_OK.+ *           HPDF_ITEM_NOT_FOUND is returned when the value which is specified+ *           by index parameter is invalid.+ *+ */++void*+HPDF_List_RemoveByIndex  (HPDF_List  list,+                          HPDF_UINT  index)+{+    void *tmp;++    HPDF_PTRACE((" HPDF_List_RemoveByIndex\n"));++    if (list->count <= index)+        return NULL;++    tmp = list->obj[index];++    while (index < list->count - 1) {+        list->obj[index] = list->obj[index + 1];+        index++;+    }++    list->count--;++    return tmp;+}++/*+ *  HPDF_List_ItemAt+ *+ *  list :  Pointer to a HPDF_List object.+ *  index :  Index of a object.+ *+ *  return:  If HPDF_List_at success, it returns a pointer to the object.+ *           otherwise it returns NULL.+ *+ */++void*+HPDF_List_ItemAt  (HPDF_List  list,+                   HPDF_UINT  index)+{+    HPDF_PTRACE((" HPDF_List_ItemAt\n"));++    return (list->count <= index) ? NULL : list->obj[index];+}++/*+ *  HPDF_List_free+ *+ *  list :  Pointer to a HPDF_List object.+ *+ */++void+HPDF_List_Free  (HPDF_List  list)+{+    HPDF_PTRACE((" HPDF_List_Free\n"));++    if (!list)+        return ;++    HPDF_List_Clear (list);+    HPDF_FreeMem (list->mmgr, list);+}++/*+ *  HPDF_List_Clear+ *+ *  list :  Pointer to a HPDF_List object.+ *+ */++void+HPDF_List_Clear  (HPDF_List  list)+{+    HPDF_PTRACE((" HPDF_List_Clear\n"));++    if (list->obj)+        HPDF_FreeMem (list->mmgr, list->obj);++    list->block_siz = 0;+    list->count = 0;+    list->obj = NULL;+}++/*+ *  Resize+ *+ *  list :  Pointer to a HPDF_List object.+ *  count : The size of array of pointers.+ *+ *  return:  If Resize success, it returns HPDF_OK.+ *           otherwise it returns error-code which is set by HPDF_MMgr object.+ *+ */++HPDF_STATUS+Resize  (HPDF_List   list,+         HPDF_UINT   count)+{+    void **new_obj;++    HPDF_PTRACE((" HPDF_List_Resize\n"));++    if (list->count >= count) {+        if (list->count == count)+            return HPDF_OK;+        else+            return HPDF_INVALID_PARAMETER;+    }++    new_obj = (void **)HPDF_GetMem (list->mmgr, count * sizeof(void *));++    if (!new_obj)+        return HPDF_Error_GetCode (list->error);++    if (list->obj)+        HPDF_MemCpy ((HPDF_BYTE *)new_obj, (HPDF_BYTE *)list->obj,+                list->block_siz * sizeof(void *));++    list->block_siz = count;+    if (list->obj)+        HPDF_FreeMem (list->mmgr, list->obj);+    list->obj = new_obj;++    return HPDF_OK;+}++/*+ *  HPDF_List_Find+ *+ *  list :  Pointer to a HPDF_List object.+ *  count : the size of array of pointers.+ *+ *  return:  If HPDF_List_Find success, it returns index of the object.+ *           otherwise it returns negative value.+ *+ */++HPDF_INT32+HPDF_List_Find  (HPDF_List  list,+                 void       *item)+{+    HPDF_UINT i;++    HPDF_PTRACE((" HPDF_List_Find\n"));++    for (i = 0; i < list->count; i++) {+        if (list->obj[i] == item)+            return i;+    }++    return -1;+}+
+ haru/hpdf_list.h view
@@ -0,0 +1,85 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_list.h+ *+ * Copyright (c) 1999-2005 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_LIST_H+#define _HPDF_LIST_H++#include "hpdf_error.h"+#include "hpdf_mmgr.h"++#ifdef __cplusplus+extern "C" {+#endif++typedef struct _HPDF_List_Rec  *HPDF_List;++typedef struct _HPDF_List_Rec {+      HPDF_MMgr       mmgr;+      HPDF_Error      error;+      HPDF_UINT       block_siz;+      HPDF_UINT       items_per_block;+      HPDF_UINT       count;+      void            **obj;+} HPDF_List_Rec;+++HPDF_List+HPDF_List_New  (HPDF_MMgr  mmgr,+                HPDF_UINT  items_per_block);+++void+HPDF_List_Free  (HPDF_List  list);+++HPDF_STATUS+HPDF_List_Add  (HPDF_List  list,+                void       *item);+++HPDF_STATUS+HPDF_List_Insert  (HPDF_List  list,+                   void       *target,+                   void       *item);+++HPDF_STATUS+HPDF_List_Remove  (HPDF_List  list,+                   void       *item);+++void*+HPDF_List_RemoveByIndex  (HPDF_List  list,+                          HPDF_UINT  index);+++void*+HPDF_List_ItemAt  (HPDF_List  list,+                   HPDF_UINT  index);+++HPDF_INT32+HPDF_List_Find  (HPDF_List  list,+                 void       *item);+++void+HPDF_List_Clear  (HPDF_List  list);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_LIST_H */+
+ haru/hpdf_mmgr.c view
@@ -0,0 +1,243 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_mmgr.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_consts.h"+#include "hpdf_mmgr.h"+#include "hpdf_utils.h"++#ifndef HPDF_STDCALL+#ifdef HPDF_DLL_MAKE+#define HPDF_STDCALL __stdcall+#else+#ifdef HPDF_DLL+#define HPDF_STDCALL __stdcall+#else+#define HPDF_STDCALL+#endif+#endif+#endif++static void * HPDF_STDCALL+InternalGetMem  (HPDF_UINT  size);++static void HPDF_STDCALL+InternalFreeMem  (void*  aptr);+++HPDF_MMgr+HPDF_MMgr_New  (HPDF_Error       error,+                HPDF_UINT        buf_size,+                HPDF_Alloc_Func  alloc_fn,+                HPDF_Free_Func   free_fn)+{+    HPDF_MMgr mmgr;++    HPDF_PTRACE((" HPDF_MMgr_New\n"));++    if (alloc_fn)+        mmgr = (HPDF_MMgr)alloc_fn (sizeof(HPDF_MMgr_Rec));+    else+        mmgr = (HPDF_MMgr)InternalGetMem (sizeof(HPDF_MMgr_Rec));++    HPDF_PTRACE(("+%p mmgr-new\n", mmgr));++    if (mmgr != NULL) {+        /* initialize mmgr object */+        mmgr->error = error;+++#ifdef HPDF_MEM_DEBUG+        mmgr->alloc_cnt = 0;+        mmgr->free_cnt = 0;+#endif+        /*+         *  if alloc_fn and free_fn are specified, these function is+         *  used. if not, default function (maybe these will be "malloc" and+         *  "free") is used.+         */+        if (alloc_fn && free_fn) {+            mmgr->alloc_fn = alloc_fn;+            mmgr->free_fn = free_fn;+        } else {+            mmgr->alloc_fn = InternalGetMem;+            mmgr->free_fn = InternalFreeMem;+        }++        /*+         *  if buf_size parameter is specified, this object is configured+         *  to be using memory-pool.+         *+         */+        if (!buf_size)+            mmgr->mpool = NULL;+        else {+            HPDF_MPool_Node node;++            node = (HPDF_MPool_Node)mmgr->alloc_fn (sizeof(HPDF_MPool_Node_Rec) ++                    buf_size);++            HPDF_PTRACE(("+%p mmgr-node-new\n", node));++            if (node == NULL) {+                HPDF_SetError (error, HPDF_FAILD_TO_ALLOC_MEM, HPDF_NOERROR);++                mmgr->free_fn(mmgr);+                mmgr = NULL;+            } else {+                mmgr->mpool = node;+                node->buf = (HPDF_BYTE *)node + sizeof(HPDF_MPool_Node_Rec);+                node->size = buf_size;+                node->used_size = 0;+                node->next_node = NULL;+            }++#ifdef HPDF_MEM_DEBUG+            mmgr->alloc_cnt += 1;+#endif+        }++        mmgr->buf_size = buf_size;+    } else+        HPDF_SetError(error, HPDF_FAILD_TO_ALLOC_MEM, HPDF_NOERROR);++    return mmgr;+}++void+HPDF_MMgr_Free  (HPDF_MMgr  mmgr)+{+    HPDF_MPool_Node node;++    HPDF_PTRACE((" HPDF_MMgr_Free\n"));++    if (mmgr == NULL)+        return;++    node = mmgr->mpool;++    /* delete all nodes recursively */+    while (node != NULL) {+        HPDF_MPool_Node tmp = node;+        node = tmp->next_node;++        HPDF_PTRACE(("-%p mmgr-node-free\n", tmp));+        mmgr->free_fn (tmp);++#ifdef HPDF_MEM_DEBUG+        mmgr->free_cnt++;+#endif++    }++#ifdef HPDF_MEM_DEBUG+    HPDF_PRINTF ("# HPDF_MMgr alloc-cnt=%u, free-cnt=%u\n",+            mmgr->alloc_cnt, mmgr->free_cnt);++    if (mmgr->alloc_cnt != mmgr->free_cnt)+        HPDF_PRINTF ("# ERROR #\n");+#endif++    HPDF_PTRACE(("-%p mmgr-free\n", mmgr));+    mmgr->free_fn (mmgr);+}++void*+HPDF_GetMem  (HPDF_MMgr  mmgr,+              HPDF_UINT  size)+{+    void * ptr;++    if (mmgr->mpool) {+        HPDF_MPool_Node node = mmgr->mpool;++#ifdef HPDF_ALINMENT_SIZ+        size = (size + (HPDF_ALINMENT_SIZ - 1)) / HPDF_ALINMENT_SIZ;+        size *= HPDF_ALINMENT_SIZ;+#endif++        if (node->size - node->used_size >= size) {+            ptr = (HPDF_BYTE*)node->buf + node->used_size;+            node->used_size += size;+            return ptr;+        } else {+            HPDF_UINT tmp_buf_siz = (mmgr->buf_size < size) ?  size :+                mmgr->buf_size;++            node = (HPDF_MPool_Node)mmgr->alloc_fn (sizeof(HPDF_MPool_Node_Rec)+                    + tmp_buf_siz);+            HPDF_PTRACE(("+%p mmgr-new-node\n", node));++            if (!node) {+                HPDF_SetError (mmgr->error, HPDF_FAILD_TO_ALLOC_MEM,+                        HPDF_NOERROR);+                return NULL;+            }++            node->size = tmp_buf_siz;+        }++        node->next_node = mmgr->mpool;+        mmgr->mpool = node;+        node->used_size = size;+        node->buf = (HPDF_BYTE*)node + sizeof(HPDF_MPool_Node_Rec);+        ptr = node->buf;+    } else {+        ptr = mmgr->alloc_fn (size);+        HPDF_PTRACE(("+%p mmgr-alloc_fn size=%u\n", ptr, size));++        if (ptr == NULL)+            HPDF_SetError (mmgr->error, HPDF_FAILD_TO_ALLOC_MEM, HPDF_NOERROR);+    }++#ifdef HPDF_MEM_DEBUG+    if (ptr)+        mmgr->alloc_cnt++;+#endif++    return ptr;+}++void+HPDF_FreeMem  (HPDF_MMgr  mmgr,+               void       *aptr)+{+    if (!aptr)+        return;++    if (!mmgr->mpool) {+        HPDF_PTRACE(("-%p mmgr-free-mem\n", aptr));+        mmgr->free_fn(aptr);++#ifdef HPDF_MEM_DEBUG+        mmgr->free_cnt++;+#endif+    }++    return;+}++static void * HPDF_STDCALL+InternalGetMem  (HPDF_UINT  size)+{+    return HPDF_MALLOC (size);+}++static void HPDF_STDCALL+InternalFreeMem  (void*  aptr)+{+    HPDF_FREE (aptr);+}++
+ haru/hpdf_mmgr.h view
@@ -0,0 +1,82 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_mmgr.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_MMGR_H+#define _HPDF_MMGR_H++#include "hpdf_types.h"+#include "hpdf_error.h"++#ifdef __cplusplus+extern "C" {+#endif++typedef struct  _HPDF_MPool_Node_Rec  *HPDF_MPool_Node;++typedef struct  _HPDF_MPool_Node_Rec {+    HPDF_BYTE*       buf;+    HPDF_UINT        size;+    HPDF_UINT        used_size;+    HPDF_MPool_Node  next_node;+} HPDF_MPool_Node_Rec;+++typedef struct  _HPDF_MMgr_Rec  *HPDF_MMgr;++typedef struct  _HPDF_MMgr_Rec {+    HPDF_Error        error;+    HPDF_Alloc_Func   alloc_fn;+    HPDF_Free_Func    free_fn;+    HPDF_MPool_Node   mpool;+    HPDF_UINT         buf_size;++#ifdef HPDF_MEM_DEBUG+    HPDF_UINT         alloc_cnt;+    HPDF_UINT         free_cnt;+#endif+} HPDF_MMgr_Rec;+++/*  HPDF_mpool_new+ *+ *  create new HPDF_mpool object. when memory allocation goes wrong,+ *  it returns NULL and error handling function will be called.+ *  if buf_size is non-zero, mmgr is configured to be using memory-pool+ */+HPDF_MMgr+HPDF_MMgr_New  (HPDF_Error       error,+                HPDF_UINT        buf_size,+                HPDF_Alloc_Func  alloc_fn,+                HPDF_Free_Func   free_fn);+++void+HPDF_MMgr_Free  (HPDF_MMgr  mmgr);+++void*+HPDF_GetMem  (HPDF_MMgr  mmgr,+              HPDF_UINT  size);+++void+HPDF_FreeMem  (HPDF_MMgr  mmgr,+               void       *aptr);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_MMGR_H */+
+ haru/hpdf_name.c view
@@ -0,0 +1,71 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_name.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"+++HPDF_Name+HPDF_Name_New  (HPDF_MMgr        mmgr,+                const char  *value)+{+    HPDF_Name obj;++    obj  = HPDF_GetMem (mmgr, sizeof(HPDF_Name_Rec));++    if (obj) {+        HPDF_MemSet (&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_NAME;+        obj->error = mmgr->error;+        if (HPDF_Name_SetValue (obj, value) == HPDF_NAME_INVALID_VALUE) {+            HPDF_FreeMem (mmgr, obj);+            return NULL;+        }+    }++    return obj;+}+++HPDF_STATUS+HPDF_Name_Write  (HPDF_Name    obj,+                  HPDF_Stream  stream)+{+    return HPDF_Stream_WriteEscapeName (stream, obj->value);+}+++HPDF_STATUS+HPDF_Name_SetValue  (HPDF_Name        obj,+                     const char  *value)+{+    if (!value || value[0] == 0)+        return HPDF_SetError (obj->error, HPDF_NAME_INVALID_VALUE, 0);++    if (HPDF_StrLen (value, HPDF_LIMIT_MAX_NAME_LEN + 1) >+            HPDF_LIMIT_MAX_NAME_LEN)+        return HPDF_SetError (obj->error, HPDF_NAME_OUT_OF_RANGE, 0);++    HPDF_StrCpy (obj->value, value, obj->value + HPDF_LIMIT_MAX_NAME_LEN);++    return HPDF_OK;+}++const char*+HPDF_Name_GetValue (HPDF_Name  obj)+{+    return (const char *)obj->value;+}+
+ haru/hpdf_null.c view
@@ -0,0 +1,31 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_null.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_utils.h"+#include "hpdf_objects.h"+++HPDF_Null+HPDF_Null_New  (HPDF_MMgr  mmgr)+{+    HPDF_Null obj = HPDF_GetMem (mmgr, sizeof(HPDF_Null_Rec));++    if (obj) {+        HPDF_MemSet (&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_NULL;+    }++    return obj;+}+
+ haru/hpdf_number.c view
@@ -0,0 +1,49 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_number.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_utils.h"+#include "hpdf_objects.h"+++HPDF_Number+HPDF_Number_New  (HPDF_MMgr   mmgr,+                  HPDF_INT32  value)+{+    HPDF_Number obj = HPDF_GetMem (mmgr, sizeof(HPDF_Number_Rec));++    if (obj) {+        HPDF_MemSet (&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_NUMBER;+        obj->value = value;+    }++    return obj;+}+++HPDF_STATUS+HPDF_Number_Write  (HPDF_Number  obj,+                    HPDF_Stream  stream)+{+    return HPDF_Stream_WriteInt (stream, obj->value);+}+++void+HPDF_Number_SetValue  (HPDF_Number  obj,+                       HPDF_INT32   value)+{+    obj->value =value;+}+
+ haru/hpdf_objects.c view
@@ -0,0 +1,172 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- HPDF_objects.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"++void+HPDF_Obj_Free  (HPDF_MMgr    mmgr,+                void         *obj)+{+    HPDF_Obj_Header *header;++    HPDF_PTRACE((" HPDF_Obj_Free\n"));++    if (!obj)+        return;++    header = (HPDF_Obj_Header *)obj;++    if (!(header->obj_id & HPDF_OTYPE_INDIRECT))+        HPDF_Obj_ForceFree (mmgr, obj);+}+++void+HPDF_Obj_ForceFree  (HPDF_MMgr    mmgr,+                     void         *obj)+{+    HPDF_Obj_Header *header;++    HPDF_PTRACE((" HPDF_Obj_ForceFree\n"));++    if (!obj)+        return;++    header = (HPDF_Obj_Header *)obj;++    HPDF_PTRACE((" HPDF_Obj_ForceFree obj=0x%08X obj_id=0x%08X "+                    "obj_class=0x%08X\n",+                    (HPDF_UINT)obj, (HPDF_UINT)(header->obj_id),+                    (HPDF_UINT)(header->obj_class)));++    switch (header->obj_class & HPDF_OCLASS_ANY) {+        case HPDF_OCLASS_STRING:+            HPDF_String_Free (obj);+            break;+        case HPDF_OCLASS_BINARY:+            HPDF_Binary_Free (obj);+            break;+        case HPDF_OCLASS_ARRAY:+            HPDF_Array_Free (obj);+            break;+        case HPDF_OCLASS_DICT:+            HPDF_Dict_Free (obj);+            break;+        default:+            HPDF_FreeMem (mmgr, obj);+    }+}++HPDF_STATUS+HPDF_Obj_Write  (void          *obj,+                 HPDF_Stream   stream,+                 HPDF_Encrypt  e)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)obj;++    HPDF_PTRACE((" HPDF_Obj_Write\n"));++    if (header->obj_id & HPDF_OTYPE_HIDDEN) {+         HPDF_PTRACE(("#HPDF_Obj_Write obj=0x%08X skipped\n", (HPDF_UINT)obj));+         return HPDF_OK;+    }++    if (header->obj_class == HPDF_OCLASS_PROXY) {+        char buf[HPDF_SHORT_BUF_SIZ];+        char *pbuf = buf;+        char *eptr = buf + HPDF_SHORT_BUF_SIZ - 1;+        HPDF_Proxy p = obj;++        header = (HPDF_Obj_Header*)p->obj;++        pbuf = HPDF_IToA (pbuf, header->obj_id & 0x00FFFFFF, eptr);+        *pbuf++ = ' ';+        pbuf = HPDF_IToA (pbuf, header->gen_no, eptr);+        HPDF_StrCpy(pbuf, " R", eptr);++        return HPDF_Stream_WriteStr(stream, buf);+    }++    return HPDF_Obj_WriteValue(obj, stream, e);+}++HPDF_STATUS+HPDF_Obj_WriteValue  (void          *obj,+                      HPDF_Stream   stream,+                      HPDF_Encrypt  e)+{+    HPDF_Obj_Header *header;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Obj_WriteValue\n"));++    header = (HPDF_Obj_Header *)obj;++    HPDF_PTRACE((" HPDF_Obj_WriteValue obj=0x%08X obj_class=0x%04X\n",+            (HPDF_UINT)obj, (HPDF_UINT)header->obj_class));++    switch (header->obj_class & HPDF_OCLASS_ANY) {+        case HPDF_OCLASS_NAME:+            ret = HPDF_Name_Write (obj, stream);+            break;+        case HPDF_OCLASS_NUMBER:+            ret = HPDF_Number_Write (obj, stream);+            break;+        case HPDF_OCLASS_REAL:+            ret = HPDF_Real_Write (obj, stream);+            break;+        case HPDF_OCLASS_STRING:+            ret = HPDF_String_Write (obj, stream, e);+            break;+        case HPDF_OCLASS_BINARY:+            ret = HPDF_Binary_Write (obj, stream, e);+            break;+        case HPDF_OCLASS_ARRAY:+            ret = HPDF_Array_Write (obj, stream, e);+            break;+        case HPDF_OCLASS_DICT:+            ret = HPDF_Dict_Write (obj, stream, e);+            break;+        case HPDF_OCLASS_BOOLEAN:+            ret = HPDF_Boolean_Write (obj, stream);+            break;+        case HPDF_OCLASS_NULL:+            ret = HPDF_Stream_WriteStr (stream, "null");+            break;+        default:+            ret = HPDF_ERR_UNKNOWN_CLASS;+    }++    return ret;+}++HPDF_Proxy+HPDF_Proxy_New  (HPDF_MMgr  mmgr,+                 void       *obj)+{+    HPDF_Proxy p = HPDF_GetMem (mmgr, sizeof(HPDF_Proxy_Rec));++    HPDF_PTRACE((" HPDF_Proxy_New\n"));++    if (p) {+        HPDF_MemSet (&p->header, 0, sizeof(HPDF_Obj_Header));+        p->header.obj_class = HPDF_OCLASS_PROXY;+        p->obj = obj;+    }++    return p;+}+
+ haru/hpdf_objects.h view
@@ -0,0 +1,587 @@+/*+ * << Haru Free PDF Library 2.0.5 >> -- hpdf_objects.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_OBJECTS_H+#define _HPDF_OBJECTS_H++#include "hpdf_encoder.h"++#ifdef __cplusplus+extern "C" {+#endif+++/* if HPDF_OTYPE_DIRECT bit is set, the object owned by other container+ * object. if HPDF_OTYPE_INDIRECT bit is set, the object managed by xref.+ */++#define  HPDF_OTYPE_NONE              0x00000000+#define  HPDF_OTYPE_DIRECT            0x80000000+#define  HPDF_OTYPE_INDIRECT          0x40000000+#define  HPDF_OTYPE_ANY               (HPDF_OTYPE_DIRECT | HPDF_OTYPE_INDIRECT)+#define  HPDF_OTYPE_HIDDEN            0x10000000++#define  HPDF_OCLASS_UNKNOWN          0x0001+#define  HPDF_OCLASS_NULL             0x0002+#define  HPDF_OCLASS_BOOLEAN          0x0003+#define  HPDF_OCLASS_NUMBER           0x0004+#define  HPDF_OCLASS_REAL             0x0005+#define  HPDF_OCLASS_NAME             0x0006+#define  HPDF_OCLASS_STRING           0x0007+#define  HPDF_OCLASS_BINARY           0x0008+#define  HPDF_OCLASS_ARRAY            0x0010+#define  HPDF_OCLASS_DICT             0x0011+#define  HPDF_OCLASS_PROXY            0x0012+#define  HPDF_OCLASS_ANY              0x00FF++#define  HPDF_OSUBCLASS_FONT          0x0100+#define  HPDF_OSUBCLASS_CATALOG       0x0200+#define  HPDF_OSUBCLASS_PAGES         0x0300+#define  HPDF_OSUBCLASS_PAGE          0x0400+#define  HPDF_OSUBCLASS_XOBJECT       0x0500+#define  HPDF_OSUBCLASS_OUTLINE       0x0600+#define  HPDF_OSUBCLASS_DESTINATION   0x0700+#define  HPDF_OSUBCLASS_ANNOTATION    0x0800+#define  HPDF_OSUBCLASS_ENCRYPT       0x0900+#define  HPDF_OSUBCLASS_EXT_GSTATE    0x0A00+#define  HPDF_OSUBCLASS_EXT_GSTATE_R  0x0B00  /* read only object */++++/*----------------------------------------------------------------------------*/+/*------ Values related xref -------------------------------------------------*/++#define HPDF_FREE_ENTRY             'f'+#define HPDF_IN_USE_ENTRY           'n'+++/*+ *  structure of Object-ID+ *+ *  1       direct-object+ *  2       indirect-object+ *  3       reserved+ *  4       shadow-object+ *  5-8     reserved+ *  9-32    object-idi0-8388607j+ *+ *  the real Object-ID is described "obj_id & 0x00FFFFFF"+ */++typedef struct _HPDF_Obj_Header {+    HPDF_UINT32  obj_id;+    HPDF_UINT16  gen_no;+    HPDF_UINT16  obj_class;+} HPDF_Obj_Header;++++HPDF_STATUS+HPDF_Obj_WriteValue  (void          *obj,+                      HPDF_Stream   stream,+                      HPDF_Encrypt  e);+++HPDF_STATUS+HPDF_Obj_Write  (void          *obj,+                 HPDF_Stream   stream,+                 HPDF_Encrypt  e);+++void+HPDF_Obj_Free  (HPDF_MMgr    mmgr,+                void         *obj);+++void+HPDF_Obj_ForceFree  (HPDF_MMgr    mmgr,+                     void         *obj);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Null -----------------------------------------------------------*/++typedef struct _HPDF_Null_Rec  *HPDF_Null;++typedef struct _HPDF_Null_Rec {+    HPDF_Obj_Header header;+} HPDF_Null_Rec;++++HPDF_Null+HPDF_Null_New  (HPDF_MMgr  mmgr);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Boolean --------------------------------------------------------*/++typedef struct _HPDF_Boolean_Rec  *HPDF_Boolean;++typedef struct _HPDF_Boolean_Rec {+    HPDF_Obj_Header  header;+    HPDF_BOOL        value;+} HPDF_Boolean_Rec;++++HPDF_Boolean+HPDF_Boolean_New  (HPDF_MMgr  mmgr,+                   HPDF_BOOL  value);+++HPDF_STATUS+HPDF_Boolean_Write  (HPDF_Boolean  obj,+                     HPDF_Stream   stream);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Number ---------------------------------------------------------*/++typedef struct _HPDF_Number_Rec  *HPDF_Number;++typedef struct _HPDF_Number_Rec {+    HPDF_Obj_Header  header;+    HPDF_INT32       value;+} HPDF_Number_Rec;++++HPDF_Number+HPDF_Number_New  (HPDF_MMgr   mmgr,+                  HPDF_INT32  value);+++void+HPDF_Number_SetValue  (HPDF_Number  obj,+                       HPDF_INT32   value);+++HPDF_STATUS+HPDF_Number_Write  (HPDF_Number  obj,+                    HPDF_Stream  stream);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Real -----------------------------------------------------------*/++typedef struct _HPDF_Real_Rec  *HPDF_Real;++typedef struct _HPDF_Real_Rec {+    HPDF_Obj_Header  header;+    HPDF_Error       error;+    HPDF_REAL        value;+} HPDF_Real_Rec;++++HPDF_Real+HPDF_Real_New  (HPDF_MMgr  mmgr,+                HPDF_REAL  value);+++HPDF_STATUS+HPDF_Real_Write  (HPDF_Real    obj,+                  HPDF_Stream  stream);+++HPDF_STATUS+HPDF_Real_SetValue  (HPDF_Real  obj,+                     HPDF_REAL  value);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Name -----------------------------------------------------------*/++typedef struct _HPDF_Name_Rec  *HPDF_Name;++typedef struct _HPDF_Name_Rec {+    HPDF_Obj_Header  header;+    HPDF_Error       error;+    char        value[HPDF_LIMIT_MAX_NAME_LEN + 1];+} HPDF_Name_Rec;++++HPDF_Name+HPDF_Name_New  (HPDF_MMgr        mmgr,+                const char  *value);+++HPDF_STATUS+HPDF_Name_SetValue  (HPDF_Name        obj,+                     const char  *value);+++HPDF_STATUS+HPDF_Name_Write  (HPDF_Name    obj,+                  HPDF_Stream  stream);++const char*+HPDF_Name_GetValue  (HPDF_Name  obj);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_String ---------------------------------------------------------*/++typedef struct _HPDF_String_Rec  *HPDF_String;++typedef struct _HPDF_String_Rec {+    HPDF_Obj_Header  header;+    HPDF_MMgr        mmgr;+    HPDF_Error       error;+    HPDF_Encoder     encoder;+    HPDF_BYTE        *value;+    HPDF_UINT        len;+} HPDF_String_Rec;++++HPDF_String+HPDF_String_New  (HPDF_MMgr        mmgr,+                  const char  *value,+                  HPDF_Encoder     encoder);+++HPDF_STATUS+HPDF_String_SetValue  (HPDF_String      obj,+                       const char  *value);+++void+HPDF_String_Free  (HPDF_String  obj);+++HPDF_STATUS+HPDF_String_Write  (HPDF_String  obj,+                    HPDF_Stream  stream,+                    HPDF_Encrypt e);+++HPDF_STATUS+HPDF_String_SetValue  (HPDF_String      obj,+                       const char  *value);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Binary ---------------------------------------------------------*/++typedef struct _HPDF_Binary_Rec  *HPDF_Binary;++typedef struct _HPDF_Binary_Rec {+    HPDF_Obj_Header  header;+    HPDF_MMgr        mmgr;+    HPDF_Error       error;+    HPDF_BYTE        *value;+    HPDF_UINT        len;+} HPDF_Binary_Rec;++++HPDF_Binary+HPDF_Binary_New  (HPDF_MMgr  mmgr,+                  HPDF_BYTE  *value,+                  HPDF_UINT  len);+++HPDF_STATUS+HPDF_Binary_SetValue  (HPDF_Binary  obj,+                       HPDF_BYTE    *value,+                       HPDF_UINT    len);+++HPDF_BYTE*+HPDF_Binary_GetValue  (HPDF_Binary  obj);+++void+HPDF_Binary_Free  (HPDF_Binary  obj);+++HPDF_STATUS+HPDF_Binary_Write  (HPDF_Binary  obj,+                    HPDF_Stream  stream,+                    HPDF_Encrypt e);+++HPDF_UINT+HPDF_Binary_GetLen  (HPDF_Binary  obj);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Array ----------------------------------------------------------*/++typedef struct _HPDF_Array_Rec  *HPDF_Array;++typedef struct _HPDF_Array_Rec {+    HPDF_Obj_Header  header;+    HPDF_MMgr        mmgr;+    HPDF_Error       error;+    HPDF_List        list;+} HPDF_Array_Rec;+++HPDF_Array+HPDF_Array_New  (HPDF_MMgr  mmgr);+++HPDF_Array+HPDF_Box_Array_New  (HPDF_MMgr  mmgr,+                     HPDF_Box   box);+++void+HPDF_Array_Free  (HPDF_Array  array);+++HPDF_STATUS+HPDF_Array_Write  (HPDF_Array   array,+                   HPDF_Stream  stream,+                   HPDF_Encrypt e);+++HPDF_STATUS+HPDF_Array_Add  (HPDF_Array  array,+                 void        *obj);+++HPDF_STATUS+HPDF_Array_Insert  (HPDF_Array  array,+                    void        *target,+                    void        *obj);+++void*+HPDF_Array_GetItem  (HPDF_Array   array,+                     HPDF_UINT    index,+                     HPDF_UINT16  obj_class);+++HPDF_STATUS+HPDF_Array_AddNumber  (HPDF_Array  array,+                       HPDF_INT32  value);+++HPDF_STATUS+HPDF_Array_AddReal  (HPDF_Array  array,+                     HPDF_REAL   value);+++HPDF_STATUS+HPDF_Array_AddName  (HPDF_Array       array,+                     const char  *value);++void+HPDF_Array_Clear  (HPDF_Array  array);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_Dict -----------------------------------------------------------*/++typedef struct _HPDF_Xref_Rec *HPDF_Xref;++typedef struct _HPDF_Dict_Rec  *HPDF_Dict;++typedef void+(*HPDF_Dict_FreeFunc)  (HPDF_Dict  obj);++typedef HPDF_STATUS+(*HPDF_Dict_BeforeWriteFunc)  (HPDF_Dict  obj);++typedef HPDF_STATUS+(*HPDF_Dict_AfterWriteFunc)  (HPDF_Dict  obj);++typedef HPDF_STATUS+(*HPDF_Dict_OnWriteFunc)  (HPDF_Dict    obj,+                           HPDF_Stream  stream);++typedef struct _HPDF_Dict_Rec {+    HPDF_Obj_Header            header;+    HPDF_MMgr                  mmgr;+    HPDF_Error                 error;+    HPDF_List                  list;+    HPDF_Dict_BeforeWriteFunc  before_write_fn;+    HPDF_Dict_OnWriteFunc      write_fn;+    HPDF_Dict_AfterWriteFunc   after_write_fn;+    HPDF_Dict_FreeFunc         free_fn;+    HPDF_Stream                stream;+    HPDF_UINT                  filter;+    void                       *attr;+} HPDF_Dict_Rec;+++typedef struct _HPDF_DictElement_Rec *HPDF_DictElement;++typedef struct _HPDF_DictElement_Rec {+    char   key[HPDF_LIMIT_MAX_NAME_LEN + 1];+    void        *value;+} HPDF_DictElement_Rec;+++HPDF_Dict+HPDF_Dict_New  (HPDF_MMgr  mmgr);+++HPDF_Dict+HPDF_DictStream_New  (HPDF_MMgr  mmgr,+                      HPDF_Xref  xref);+++void+HPDF_Dict_Free  (HPDF_Dict  dict);+++HPDF_STATUS+HPDF_Dict_Write  (HPDF_Dict     dict,+                  HPDF_Stream   stream,+                  HPDF_Encrypt  e);+++const char*+HPDF_Dict_GetKeyByObj (HPDF_Dict   dict,+                       void        *obj);+++HPDF_STATUS+HPDF_Dict_Add  (HPDF_Dict     dict,+                const char   *key,+                void         *obj);+++void*+HPDF_Dict_GetItem  (HPDF_Dict      dict,+                    const char    *key,+                    HPDF_UINT16    obj_class);+++HPDF_STATUS+HPDF_Dict_AddName (HPDF_Dict     dict,+                   const char   *key,+                   const char   *value);+++HPDF_STATUS+HPDF_Dict_AddNumber  (HPDF_Dict     dict,+                      const char   *key,+                      HPDF_INT32    value);+++HPDF_STATUS+HPDF_Dict_AddReal  (HPDF_Dict     dict,+                    const char   *key,+                    HPDF_REAL     value);+++HPDF_STATUS+HPDF_Dict_AddBoolean  (HPDF_Dict     dict,+                       const char   *key,+                       HPDF_BOOL     value);+++HPDF_STATUS+HPDF_Dict_RemoveElement  (HPDF_Dict        dict,+                          const char  *key);+++/*---------------------------------------------------------------------------*/+/*----- HPDF_ProxyObject ----------------------------------------------------*/++++typedef struct _HPDF_Proxy_Rec  *HPDF_Proxy;++typedef struct _HPDF_Proxy_Rec {+    HPDF_Obj_Header  header;+    void             *obj;+} HPDF_Proxy_Rec;+++HPDF_Proxy+HPDF_Proxy_New  (HPDF_MMgr  mmgr,+                 void       *obj);++++/*---------------------------------------------------------------------------*/+/*----- HPDF_Xref -----------------------------------------------------------*/++typedef struct _HPDF_XrefEntry_Rec  *HPDF_XrefEntry;++typedef struct _HPDF_XrefEntry_Rec {+      char    entry_typ;+      HPDF_UINT    byte_offset;+      HPDF_UINT16  gen_no;+      void*        obj;+} HPDF_XrefEntry_Rec;+++typedef struct _HPDF_Xref_Rec {+      HPDF_MMgr    mmgr;+      HPDF_Error   error;+      HPDF_UINT32  start_offset;+      HPDF_List    entries;+      HPDF_UINT    addr;+      HPDF_Xref    prev;+      HPDF_Dict    trailer;+} HPDF_Xref_Rec;+++HPDF_Xref+HPDF_Xref_New  (HPDF_MMgr    mmgr,+                HPDF_UINT32  offset);+++void+HPDF_Xref_Free  (HPDF_Xref  xref);+++HPDF_STATUS+HPDF_Xref_Add  (HPDF_Xref  xref,+                void       *obj);+++HPDF_XrefEntry+HPDF_Xref_GetEntry  (HPDF_Xref  xref,+                     HPDF_UINT  index);+++HPDF_STATUS+HPDF_Xref_WriteToStream  (HPDF_Xref     xref,+                          HPDF_Stream   stream,+                          HPDF_Encrypt  e);+++HPDF_XrefEntry+HPDF_Xref_GetEntryByObjectId  (HPDF_Xref  xref,+                               HPDF_UINT  obj_id);++++typedef HPDF_Dict  HPDF_Pages;+typedef HPDF_Dict  HPDF_Page;+typedef HPDF_Dict  HPDF_Annotation;+typedef HPDF_Dict  HPDF_XObject;+typedef HPDF_Dict  HPDF_Image;+typedef HPDF_Dict  HPDF_Outline;+typedef HPDF_Dict  HPDF_EncryptDict;+typedef HPDF_Dict  HPDF_Action;+typedef HPDF_Dict  HPDF_ExtGState;+typedef HPDF_Array  HPDF_Destination;++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_OBJECTS_H */+
+ haru/hpdf_outline.c view
@@ -0,0 +1,329 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_outline.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_destination.h"+#include "hpdf.h"++#define HPDF_OUTLINE_CLOSED     0+#define HPDF_OUTLINE_OPENED     1+++static HPDF_STATUS+AddChild  (HPDF_Outline  parent,+           HPDF_Outline  item);+++static HPDF_STATUS+BeforeWrite  (HPDF_Dict obj);+++static HPDF_UINT+CountChild (HPDF_Outline  outline);++++/*----------------------------------------------------------------------------*/+/*----- HPDF_Outline ---------------------------------------------------------*/++HPDF_Outline+HPDF_OutlineRoot_New  (HPDF_MMgr   mmgr,+                       HPDF_Xref   xref)+{+    HPDF_Outline outline;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Number open_flg;++    HPDF_PTRACE((" HPDF_OutlineRoot_New\n"));++    outline = HPDF_Dict_New (mmgr);+    if (!outline)+        return NULL;++    outline->before_write_fn = BeforeWrite;++    if (HPDF_Xref_Add (xref, outline) != HPDF_OK)+        return NULL;++    open_flg = HPDF_Number_New (mmgr, HPDF_OUTLINE_OPENED);+    if (!open_flg)+        return NULL;++    open_flg->header.obj_id |= HPDF_OTYPE_HIDDEN;++    ret += HPDF_Dict_Add (outline, "_OPENED", open_flg);+    ret += HPDF_Dict_AddName (outline, "Type", "Outline");++    if (ret != HPDF_OK)+        return NULL;++    outline->header.obj_class |= HPDF_OSUBCLASS_OUTLINE;++    return outline;+}+++HPDF_Outline+HPDF_Outline_New  (HPDF_MMgr          mmgr,+                   HPDF_Outline       parent,+                   const char   *title,+                   HPDF_Encoder       encoder,+                   HPDF_Xref          xref)+{+    HPDF_Outline outline;+    HPDF_String s;+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Number open_flg;++    HPDF_PTRACE((" HPDF_Outline_New\n"));++    if (!mmgr || !parent || !xref)+        return NULL;++    outline = HPDF_Dict_New (mmgr);+    if (!outline)+        return NULL;++    outline->before_write_fn = BeforeWrite;++    if (HPDF_Xref_Add (xref, outline) != HPDF_OK)+        return NULL;++    s = HPDF_String_New (mmgr, title, encoder);+    if (!s)+        return NULL;+    else+        ret += HPDF_Dict_Add (outline, "Title", s);++    open_flg = HPDF_Number_New (mmgr, HPDF_OUTLINE_OPENED);+    if (!open_flg)+        return NULL;++    open_flg->header.obj_id |= HPDF_OTYPE_HIDDEN;+    ret += HPDF_Dict_Add (outline, "_OPENED", open_flg);++    ret += HPDF_Dict_AddName (outline, "Type", "Outline");+    ret += AddChild (parent, outline);++    if (ret != HPDF_OK)+        return NULL;++    outline->header.obj_class |= HPDF_OSUBCLASS_OUTLINE;++    return outline;+}++++static HPDF_STATUS+AddChild  (HPDF_Outline  parent,+           HPDF_Outline  item)+{+    HPDF_Outline first = (HPDF_Outline)HPDF_Dict_GetItem (parent, "First",+                    HPDF_OCLASS_DICT);+    HPDF_Outline last = (HPDF_Outline)HPDF_Dict_GetItem (parent, "Last",+                    HPDF_OCLASS_DICT);+    HPDF_STATUS ret = 0;++    HPDF_PTRACE((" AddChild\n"));++    if (!first)+        ret += HPDF_Dict_Add (parent, "First", item);++    if (last) {+        ret += HPDF_Dict_Add (last, "Next", item);+        ret += HPDF_Dict_Add (item, "Prev", last);+    }++    ret += HPDF_Dict_Add (parent, "Last", item);+    ret += HPDF_Dict_Add (item, "Parent", parent);++    if (ret != HPDF_OK)+        return HPDF_Error_GetCode (item->error);++    return HPDF_OK;+}+++HPDF_BOOL+HPDF_Outline_GetOpened  (HPDF_Outline  outline)+{+    HPDF_Number n = (HPDF_Number)HPDF_Dict_GetItem (outline, "_OPENED",+                        HPDF_OCLASS_NUMBER);++    HPDF_PTRACE((" HPDF_Outline_GetOpened\n"));++    if (!n)+        return HPDF_FALSE;++    return (HPDF_BOOL)n->value;+}+++HPDF_Outline+HPDF_Outline_GetFirst  (HPDF_Outline outline)+{+    HPDF_PTRACE((" HPDF_Outline_GetFirst\n"));++    return (HPDF_Outline)HPDF_Dict_GetItem (outline, "First",+                    HPDF_OCLASS_DICT);+}+++HPDF_Outline+HPDF_Outline_GetLast  (HPDF_Outline outline)+{+    HPDF_PTRACE((" HPDF_Outline_GetLast\n"));++    return (HPDF_Outline)HPDF_Dict_GetItem (outline, "Last", HPDF_OCLASS_DICT);+}+++HPDF_Outline+HPDF_Outline_GetPrev  (HPDF_Outline outline)+{+    HPDF_PTRACE((" HPDF_Outline_GetPrev\n"));++    return (HPDF_Outline)HPDF_Dict_GetItem (outline, "Prev", HPDF_OCLASS_DICT);+}+++HPDF_Outline+HPDF_Outline_GetNext  (HPDF_Outline outline)+{+    HPDF_PTRACE((" HPDF_Outline_GetNext\n"));++    return (HPDF_Outline)HPDF_Dict_GetItem (outline, "Next", HPDF_OCLASS_DICT);+}+++HPDF_Outline+HPDF_Outline_GetParent  (HPDF_Outline outline)+{+    HPDF_PTRACE((" HPDF_Outline_GetParent\n"));++    return (HPDF_Outline)HPDF_Dict_GetItem (outline, "Parent",+                    HPDF_OCLASS_DICT);+}+++static HPDF_STATUS+BeforeWrite  (HPDF_Dict obj)+{+    HPDF_Number n = (HPDF_Number)HPDF_Dict_GetItem (obj, "Count",+                HPDF_OCLASS_NUMBER);+    HPDF_UINT count = CountChild ((HPDF_Outline)obj);++    HPDF_PTRACE((" BeforeWrite\n"));++    if (count == 0 && n)+        return HPDF_Dict_RemoveElement (obj, "Count");++    if (!HPDF_Outline_GetOpened ((HPDF_Outline)obj))+        count *= -1;++    if (n)+        n->value = count;+    else+        if (count)+            return HPDF_Dict_AddNumber (obj, "Count", count);++    return HPDF_OK;+}+++static HPDF_UINT+CountChild (HPDF_Outline  outline)+{+    HPDF_Outline  child = HPDF_Outline_GetFirst (outline);+    HPDF_UINT count = 0;++    HPDF_PTRACE((" CountChild\n"));++    while (child) {+        count++;++        if (HPDF_Outline_GetOpened (child))+            count += CountChild (child);++        child = HPDF_Outline_GetNext (child);+    }++    return count;+}+++HPDF_BOOL+HPDF_Outline_Validate (HPDF_Outline  outline)+{+    if (!outline)+        return HPDF_FALSE;++    HPDF_PTRACE((" HPDF_Outline_Validate\n"));++    if (outline->header.obj_class !=+                (HPDF_OSUBCLASS_OUTLINE | HPDF_OCLASS_DICT))+        return HPDF_FALSE;++    return HPDF_TRUE;+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Outline_SetDestination (HPDF_Outline      outline,+                             HPDF_Destination  dst)+{+    HPDF_PTRACE((" HPDF_Outline_SetDestination\n"));++    if (!HPDF_Outline_Validate (outline))+        return HPDF_INVALID_OUTLINE;++    if (!HPDF_Destination_Validate (dst))+        return HPDF_RaiseError (outline->error, HPDF_INVALID_DESTINATION, 0);++    if (dst == NULL)+        return HPDF_Dict_RemoveElement (outline, "Dest");++    if (HPDF_Dict_Add (outline, "Dest", dst) != HPDF_OK)+        return HPDF_CheckError (outline->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Outline_SetOpened  (HPDF_Outline  outline,+                         HPDF_BOOL     opened)+{+    HPDF_Number n;++    if (!HPDF_Outline_Validate (outline))+        return HPDF_INVALID_OUTLINE;++    n = (HPDF_Number)HPDF_Dict_GetItem (outline, "_OPENED",+                        HPDF_OCLASS_NUMBER);++    HPDF_PTRACE((" HPDF_Outline_SetOpened\n"));++    if (!n) {+        n = HPDF_Number_New (outline->mmgr, (HPDF_INT)opened);+        if (!n || HPDF_Dict_Add (outline, "_OPENED", n) != HPDF_OK)+            return HPDF_CheckError (outline->error);+    } else+        n->value = (HPDF_INT)opened;++    return HPDF_OK;+}++
+ haru/hpdf_outline.h view
@@ -0,0 +1,74 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_outline.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_OUTLINE_H+#define _HPDF_OUTLINE_H++#include "hpdf_objects.h"++#ifdef __cplusplus+extern "C" {+#endif+++/*----------------------------------------------------------------------------*/+/*----- HPDF_Outline ---------------------------------------------------------*/++HPDF_Outline+HPDF_OutlineRoot_New  (HPDF_MMgr   mmgr,+                       HPDF_Xref   xref);+++HPDF_Outline+HPDF_Outline_New  (HPDF_MMgr          mmgr,+                   HPDF_Outline       parent,+                   const char   *title,+                   HPDF_Encoder       encoder,+                   HPDF_Xref          xref);+++HPDF_Outline+HPDF_Outline_GetFirst (HPDF_Outline outline);+++HPDF_Outline+HPDF_Outline_GetLast (HPDF_Outline outline);+++HPDF_Outline+HPDF_Outline_GetPrev(HPDF_Outline outline);+++HPDF_Outline+HPDF_Outline_GetNext (HPDF_Outline outline);+++HPDF_Outline+HPDF_Outline_GetParent (HPDF_Outline outline);+++HPDF_BOOL+HPDF_Outline_GetOpened  (HPDF_Outline  outline);++++HPDF_BOOL+HPDF_Outline_Validate (HPDF_Outline  obj);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_OUTLINE_H */+
+ haru/hpdf_page_label.c view
@@ -0,0 +1,74 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_page_label.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_page_label.h"++HPDF_Dict+HPDF_PageLabel_New  (HPDF_Doc             pdf,+                     HPDF_PageNumStyle    style,+                     HPDF_INT             first_page,+                     const char     *prefix)+{+    HPDF_Dict obj = HPDF_Dict_New (pdf->mmgr);++    HPDF_PTRACE ((" HPDF_PageLabel_New\n"));++    if (!obj)+        return NULL;++    switch (style) {+        case HPDF_PAGE_NUM_STYLE_DECIMAL:+            if (HPDF_Dict_AddName (obj, "S", "D") != HPDF_OK)+                goto Fail;+            break;+        case HPDF_PAGE_NUM_STYLE_UPPER_ROMAN:+            if (HPDF_Dict_AddName (obj, "S", "R") != HPDF_OK)+                goto Fail;+            break;+        case HPDF_PAGE_NUM_STYLE_LOWER_ROMAN:+            if (HPDF_Dict_AddName (obj, "S", "r") != HPDF_OK)+                goto Fail;+            break;+        case HPDF_PAGE_NUM_STYLE_UPPER_LETTERS:+            if (HPDF_Dict_AddName (obj, "S", "A") != HPDF_OK)+                goto Fail;+            break;+        case HPDF_PAGE_NUM_STYLE_LOWER_LETTERS:+            if (HPDF_Dict_AddName (obj, "S", "a") != HPDF_OK)+                goto Fail;+            break;+        default:+            HPDF_SetError (&pdf->error, HPDF_PAGE_NUM_STYLE_OUT_OF_RANGE,+                    (HPDF_STATUS)style);+            goto Fail;+    }++    if (prefix && prefix[0] != 0)+        if (HPDF_Dict_Add (obj, "P", HPDF_String_New (pdf->mmgr, prefix,+                    pdf->def_encoder)) != HPDF_OK)+            goto Fail;++    if (first_page != 0)+        if (HPDF_Dict_AddNumber (obj, "St", first_page) != HPDF_OK)+            goto Fail;++    return obj;++Fail:+    HPDF_Dict_Free (obj);+    return NULL;+}+
+ haru/hpdf_page_label.h view
@@ -0,0 +1,35 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_page_label.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_PAGE_LABEL_H+#define _HPDF_PAGE_LABEL_H++#include "hpdf.h"++#ifdef __cplusplus+extern "C" {+#endif++HPDF_Dict+HPDF_PageLabel_New  (HPDF_Doc             pdf,+                     HPDF_PageNumStyle    style,+                     HPDF_INT             first_page,+                     const char          *prefix);++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif+
+ haru/hpdf_page_operator.c view
@@ -0,0 +1,2764 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_page_operator.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2006.07.29 modified+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_pages.h"+#include "hpdf.h"++static const HPDF_Point INIT_POS = {0, 0};+static const HPDF_DashMode INIT_MODE = {{0, 0, 0, 0, 0, 0, 0, 0}, 0, 0};+++static HPDF_STATUS+InternalWriteText  (HPDF_PageAttr    attr,+                    const char      *text);+++static HPDF_STATUS+InternalArc  (HPDF_Page    page,+              HPDF_REAL    x,+              HPDF_REAL    y,+              HPDF_REAL    ray,+              HPDF_REAL    ang1,+              HPDF_REAL    ang2,+              HPDF_BOOL    cont_flg);+++static HPDF_STATUS+InternalShowTextNextLine  (HPDF_Page    page,+                           const char  *text,+                           HPDF_UINT    len);++++/*--- General graphics state ---------------------------------------------*/++/* w */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineWidth  (HPDF_Page  page,+                         HPDF_REAL  line_width)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetLineWidth\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (line_width < 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream,+                line_width)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream,+                " w\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->line_width = line_width;++    return ret;+}++/* J */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineCap  (HPDF_Page     page,+                       HPDF_LineCap  line_cap)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetLineCap\n"));++    if (ret != HPDF_OK)+        return ret;++    if (line_cap < 0 || line_cap >= HPDF_LINECAP_EOF)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE,+                (HPDF_STATUS)line_cap);++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteInt (attr->stream,+                (HPDF_UINT)line_cap)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteStr (attr->stream,+                " J\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->line_cap = line_cap;++    return ret;+}++/* j */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetLineJoin  (HPDF_Page      page,+                        HPDF_LineJoin  line_join)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetLineJoin\n"));++    if (ret != HPDF_OK)+        return ret;++    if (line_join < 0 || line_join >= HPDF_LINEJOIN_EOF)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE,+                (HPDF_STATUS)line_join);++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteInt (attr->stream,+                (HPDF_UINT)line_join)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream,+                " j\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->line_join = line_join;++    return ret;+}++/* M */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetMiterLimit  (HPDF_Page  page,+                          HPDF_REAL  miter_limit)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetMitterLimit\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (miter_limit < 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, miter_limit)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " M\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->miter_limit = miter_limit;++    return ret;+}++/* d */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetDash  (HPDF_Page           page,+                    const HPDF_UINT16  *dash_ptn,+                    HPDF_UINT           num_param,+                    HPDF_UINT           phase)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    const HPDF_UINT16 *pdash_ptn = dash_ptn;+    HPDF_PageAttr attr;+    HPDF_UINT i;++    HPDF_PTRACE ((" HPDF_Page_SetDash\n"));++    if (ret != HPDF_OK)+        return ret;++    if (num_param != 1 && (num_param / 2) * 2 != num_param)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_PARAM_COUNT,+                num_param);++    if (num_param == 0 && phase > 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE,+                phase);++    if (!dash_ptn && num_param > 0)+        return HPDF_RaiseError (page->error, HPDF_INVALID_PARAMETER,+                phase);++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);+    *pbuf++ = '[';++    for (i = 0; i < num_param; i++) {+        if (*pdash_ptn == 0 || *pdash_ptn > HPDF_MAX_DASH_PATTERN)+            return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++        pbuf = HPDF_IToA (pbuf, *pdash_ptn, eptr);+        *pbuf++ = ' ';+        pdash_ptn++;+    }++    *pbuf++ = ']';+    *pbuf++ = ' ';++    pbuf = HPDF_IToA (pbuf, phase, eptr);+    HPDF_StrCpy (pbuf, " d\012", eptr);++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->dash_mode = INIT_MODE;+    attr->gstate->dash_mode.num_ptn = num_param;+    attr->gstate->dash_mode.phase = phase;++    pdash_ptn = dash_ptn;+    for (i = 0; i < num_param; i++) {+        attr->gstate->dash_mode.ptn[i] = *pdash_ptn;+        pdash_ptn++;+    }++    return ret;+}+++/* ri --not implemented yet */++/* i */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetFlat  (HPDF_Page  page,+                    HPDF_REAL  flatness)+{+    HPDF_PageAttr attr;+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);++    HPDF_PTRACE ((" HPDF_Page_SetFlat\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (flatness > 100 || flatness < 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream,+                flatness)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream,+                " i\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->flatness = flatness;++    return ret;+}++/* gs */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetExtGState  (HPDF_Page        page,+                         HPDF_ExtGState   ext_gstate)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);+    HPDF_PageAttr attr;+    const char *local_name;++    HPDF_PTRACE ((" HPDF_Page_SetExtGState\n"));++    if (ret != HPDF_OK)+        return ret;++    if (!HPDF_ExtGState_Validate (ext_gstate))+        return HPDF_RaiseError (page->error, HPDF_INVALID_OBJECT, 0);++    if (page->mmgr != ext_gstate->mmgr)+        return HPDF_RaiseError (page->error, HPDF_INVALID_EXT_GSTATE, 0);++    attr = (HPDF_PageAttr)page->attr;+    local_name = HPDF_Page_GetExtGStateName (page, ext_gstate);++    if (!local_name)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteEscapeName (attr->stream, local_name)) !=+                HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " gs\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    /* change objct class to read only. */+    ext_gstate->header.obj_class = (HPDF_OSUBCLASS_EXT_GSTATE_R | HPDF_OCLASS_DICT);++    return ret;+}+++/*--- Special graphic state operator --------------------------------------*/++/* q */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GSave  (HPDF_Page  page)+{+    HPDF_GState new_gstate;+    HPDF_PageAttr attr;+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);++    HPDF_PTRACE ((" HPDF_Page_GSave\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    new_gstate = HPDF_GState_New (page->mmgr, attr->gstate);+    if (!new_gstate)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "q\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate = new_gstate;++    return ret;+}++/* Q */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GRestore  (HPDF_Page  page)+{+    HPDF_GState new_gstate;+    HPDF_PageAttr attr;+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);++    HPDF_PTRACE ((" HPDF_Page_GRestore\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (!attr->gstate->prev)+        return HPDF_RaiseError (page->error, HPDF_PAGE_CANNOT_RESTORE_GSTATE,+                0);++    new_gstate = HPDF_GState_Free (page->mmgr, attr->gstate);++    attr->gstate = new_gstate;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "Q\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    return ret;+}++/* cm */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Concat  (HPDF_Page         page,+                   HPDF_REAL         a,+                   HPDF_REAL         b,+                   HPDF_REAL         c,+                   HPDF_REAL         d,+                   HPDF_REAL         x,+                   HPDF_REAL         y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;+    HPDF_TransMatrix tm;++    HPDF_PTRACE ((" HPDF_Page_Concat\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, a, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, b, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, c, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, d, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " cm\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    tm = attr->gstate->trans_matrix;++    attr->gstate->trans_matrix.a = tm.a * a + tm.b * c;+    attr->gstate->trans_matrix.b = tm.a * b + tm.b * d;+    attr->gstate->trans_matrix.c = tm.c * a + tm.d * c;+    attr->gstate->trans_matrix.d = tm.c * b + tm.d * d;+    attr->gstate->trans_matrix.x = tm.x + x * tm.a + y * tm.c;+    attr->gstate->trans_matrix.y = tm.y + x * tm.b + y * tm.d;++    return ret;+}++/*--- Path construction operator ------------------------------------------*/++/* m */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTo  (HPDF_Page  page,+                   HPDF_REAL  x,+                   HPDF_REAL  y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_MoveTo\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " m\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x;+    attr->cur_pos.y = y;+    attr->str_pos = attr->cur_pos;+    attr->gmode = HPDF_GMODE_PATH_OBJECT;++    return ret;+}++/* l */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_LineTo  (HPDF_Page  page,+                   HPDF_REAL  x,+                   HPDF_REAL  y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_LineTo\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " l\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x;+    attr->cur_pos.y = y;++    return ret;+}++/* c */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo  (HPDF_Page  page,+                    HPDF_REAL  x1,+                    HPDF_REAL  y1,+                    HPDF_REAL  x2,+                    HPDF_REAL  y2,+                    HPDF_REAL  x3,+                    HPDF_REAL  y3)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_CurveTo\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x3, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y3, eptr);+    HPDF_StrCpy (pbuf, " c\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x3;+    attr->cur_pos.y = y3;++    return ret;+}++/* v */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo2  (HPDF_Page  page,+                     HPDF_REAL  x2,+                     HPDF_REAL  y2,+                     HPDF_REAL  x3,+                     HPDF_REAL  y3)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_CurveTo2\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x3, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y3, eptr);+    HPDF_StrCpy (pbuf, " v\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x3;+    attr->cur_pos.y = y3;++    return ret;+}++/* y */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_CurveTo3  (HPDF_Page  page,+                     HPDF_REAL  x1,+                     HPDF_REAL  y1,+                     HPDF_REAL  x3,+                     HPDF_REAL  y3)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_CurveTo3\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x3, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y3, eptr);+    HPDF_StrCpy (pbuf, " y\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x3;+    attr->cur_pos.y = y3;++    return ret;+}++/* h */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePath  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_ClosePath\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "h\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos = attr->str_pos;++    return ret;+}++/* re */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Rectangle  (HPDF_Page  page,+                      HPDF_REAL  x,+                      HPDF_REAL  y,+                      HPDF_REAL  width,+                      HPDF_REAL  height)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Rectangle\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, width, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, height, eptr);+    HPDF_StrCpy (pbuf, " re\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x;+    attr->cur_pos.y = y;+    attr->str_pos = attr->cur_pos;+    attr->gmode = HPDF_GMODE_PATH_OBJECT;++    return ret;+}+++/*--- Path painting operator ---------------------------------------------*/++/* S */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Stroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+        HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Stroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "S\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* s */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathStroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_ClosePathStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "s\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* f */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Fill  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Fill\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "f\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* f* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Eofill  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Eofill\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "f*\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* B */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_FillStroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_FillStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "B\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* B* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EofillStroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_EofillStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "B*\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;++    return ret;+}++/* b */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathFillStroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_ClosePathFillStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "b\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* b* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ClosePathEofillStroke  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_ClosePathEofillStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "b*\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}++/* n */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EndPath  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT |+            HPDF_GMODE_CLIPPING_PATH);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_PageEndPath\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "n\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = INIT_POS;++    return ret;+}+++/*--- Clipping paths operator --------------------------------------------*/++/* W */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Clip  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Clip\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "W\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_CLIPPING_PATH;++    return ret;+}++/* W* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Eoclip  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PATH_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Eoclip\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "W*\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_CLIPPING_PATH;++    return ret;+}+++/*--- Text object operator -----------------------------------------------*/++/* BT */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_BeginText  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);+    HPDF_PageAttr attr;+    const HPDF_TransMatrix INIT_MATRIX = {1, 0, 0, 1, 0, 0};++    HPDF_PTRACE ((" HPDF_Page_BeginText\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "BT\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gmode = HPDF_GMODE_TEXT_OBJECT;+    attr->text_pos = INIT_POS;+    attr->text_matrix = INIT_MATRIX;++    return ret;+}++/* ET */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_EndText  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_EndText\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "ET\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->text_pos = INIT_POS;+    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;++    return ret;+}++/*--- Text state ---------------------------------------------------------*/++/* Tc */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCharSpace  (HPDF_Page  page,+                         HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetCharSpace\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (value < HPDF_MIN_CHARSPACE || value > HPDF_MAX_CHARSPACE)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, value)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Tc\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->char_space = value;++    return ret;+}++/* Tw */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetWordSpace  (HPDF_Page  page,+                         HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetWordSpace\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (value < HPDF_MIN_WORDSPACE || value > HPDF_MAX_WORDSPACE)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, value)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Tw\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->word_space = value;++    return ret;+}++/* Tz */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetHorizontalScalling  (HPDF_Page  page,+                                  HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetHorizontalScalling\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (value < HPDF_MIN_HORIZONTALSCALING ||+            value > HPDF_MAX_HORIZONTALSCALING)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, value)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Tz\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->h_scalling = value;++    return ret;+}++/* TL */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextLeading  (HPDF_Page  page,+                           HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetTextLeading\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteReal (attr->stream, value)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " TL\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->text_leading = value;++    return ret;+}++/* Tf */++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetFontAndSize  (HPDF_Page  page,+                           HPDF_Font  font,+                           HPDF_REAL  size)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    const char *local_name;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetFontAndSize\n"));++    if (ret != HPDF_OK)+        return ret;++    if (!HPDF_Font_Validate (font))+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_FONT, 0);++    if (size <= 0 || size > HPDF_MAX_FONTSIZE)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_FONT_SIZE, 0);++    if (page->mmgr != font->mmgr)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_FONT, 0);++    attr = (HPDF_PageAttr)page->attr;+    local_name = HPDF_Page_GetLocalFontName (page, font);++    if (!local_name)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_FONT, 0);++    if ((ret = HPDF_Stream_WriteEscapeName (attr->stream, local_name)) !=+            HPDF_OK)+        return HPDF_CheckError (page->error);++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, size, eptr);+    HPDF_StrCpy (pbuf, " Tf\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->font = font;+    attr->gstate->font_size = size;+    attr->gstate->writing_mode = ((HPDF_FontAttr)font->attr)->writing_mode;++    return ret;+}++/* Tr */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRenderingMode  (HPDF_Page               page,+                                 HPDF_TextRenderingMode  mode)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetTextRenderingMode\n"));++    if (ret != HPDF_OK)+        return ret;++    if (mode < 0 || mode >= HPDF_RENDERING_MODE_EOF)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE,+                (HPDF_STATUS)mode);++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteInt (attr->stream, (HPDF_INT)mode)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Tr\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->rendering_mode = mode;++    return ret;+}++/* Ts */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRaise  (HPDF_Page  page,+                         HPDF_REAL  value)+{+    return HPDF_Page_SetTextRise (page, value);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextRise  (HPDF_Page  page,+                        HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetTextRaise\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteReal (attr->stream, value)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Ts\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->text_rise = value;++    return ret;+}++/*--- Text positioning ---------------------------------------------------*/++/* Td */++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTextPos  (HPDF_Page  page,+                        HPDF_REAL  x,+                        HPDF_REAL  y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_MoveTextPos\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " Td\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->text_matrix.x += x * attr->text_matrix.a + y * attr->text_matrix.c;+    attr->text_matrix.y += y * attr->text_matrix.d + x * attr->text_matrix.b;+    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    return ret;+}++/* TD */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveTextPos2  (HPDF_Page  page,+                         HPDF_REAL  x,+                         HPDF_REAL  y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_MoveTextPos2\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " TD\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->text_matrix.x += x * attr->text_matrix.a + y * attr->text_matrix.c;+    attr->text_matrix.y += y * attr->text_matrix.d + x * attr->text_matrix.b;+    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;+    attr->gstate->text_leading = -y;++    return ret;+}++/* Tm */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetTextMatrix  (HPDF_Page         page,+                          HPDF_REAL    a,+                          HPDF_REAL    b,+                          HPDF_REAL    c,+                          HPDF_REAL    d,+                          HPDF_REAL    x,+                          HPDF_REAL    y)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetTextMatrix\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((a == 0 || d == 0) && (b == 0 || c == 0))+        return HPDF_RaiseError (page->error, HPDF_INVALID_PARAMETER, 0);++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, a, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, b, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, c, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, d, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    HPDF_StrCpy (pbuf, " Tm\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->text_matrix.a = a;+    attr->text_matrix.b = b;+    attr->text_matrix.c = c;+    attr->text_matrix.d = d;+    attr->text_matrix.x = x;+    attr->text_matrix.y = y;+    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    return ret;+}+++/* T* */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_MoveToNextLine  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_MoveToNextLine\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, "T*\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    /* calculate the reference point of text */+    attr->text_matrix.x -= attr->gstate->text_leading * attr->text_matrix.c;+    attr->text_matrix.y -= attr->gstate->text_leading * attr->text_matrix.d;++    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    return ret;+}++/*--- Text showing -------------------------------------------------------*/++/* Tj */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowText  (HPDF_Page    page,+                     const char  *text)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;+    HPDF_REAL tw;++    HPDF_PTRACE ((" HPDF_Page_ShowText\n"));++    if (ret != HPDF_OK || text == NULL || text[0] == 0)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    /* no font exists */+    if (!attr->gstate->font)+        return HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);++    tw = HPDF_Page_TextWidth (page, text);+    if (!tw)+        return ret;++    if ((ret = InternalWriteText (attr, text)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Tj\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    /* calculate the reference point of text */+    if (attr->gstate->writing_mode == HPDF_WMODE_HORIZONTAL) {+        attr->text_pos.x += tw * attr->text_matrix.a;+        attr->text_pos.y += tw * attr->text_matrix.b;+    } else {+        attr->text_pos.x -= tw * attr->text_matrix.b;+        attr->text_pos.y -= tw * attr->text_matrix.a;+    }++    return ret;+}++/* TJ */+/* ' */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowTextNextLine  (HPDF_Page    page,+                             const char  *text)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;+    HPDF_REAL tw;++    HPDF_PTRACE ((" HPDF_Page_ShowTextNextLine\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    /* no font exists */+    if (!attr->gstate->font)+        return HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);++    if (text == NULL || text[0] == 0)+        return HPDF_Page_MoveToNextLine(page);++    if ((ret = InternalWriteText (attr, text)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " \'\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    tw = HPDF_Page_TextWidth (page, text);++    /* calculate the reference point of text */+    attr->text_matrix.x -= attr->gstate->text_leading * attr->text_matrix.c;+    attr->text_matrix.y -= attr->gstate->text_leading * attr->text_matrix.d;++    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    if (attr->gstate->writing_mode == HPDF_WMODE_HORIZONTAL) {+        attr->text_pos.x += tw * attr->text_matrix.a;+        attr->text_pos.y += tw * attr->text_matrix.b;+    } else {+        attr->text_pos.x -= tw * attr->text_matrix.b;+        attr->text_pos.y -= tw * attr->text_matrix.a;+    }++    return ret;+}++/* " */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ShowTextNextLineEx  (HPDF_Page    page,+                               HPDF_REAL    word_space,+                               HPDF_REAL    char_space,+                               const char  *text)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;+    HPDF_REAL tw;+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;++    HPDF_PTRACE ((" HPDF_Page_ShowTextNextLineEX\n"));++    if (ret != HPDF_OK)+        return ret;++    if (word_space < HPDF_MIN_WORDSPACE || word_space > HPDF_MAX_WORDSPACE)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if (char_space < HPDF_MIN_CHARSPACE || char_space > HPDF_MAX_CHARSPACE)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    attr = (HPDF_PageAttr)page->attr;++    /* no font exists */+    if (!attr->gstate->font)+        return HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);++    if (text == NULL || text[0] == 0)+        return HPDF_Page_MoveToNextLine(page);++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);+    pbuf = HPDF_FToA (pbuf, word_space, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, char_space, eptr);+    *pbuf = ' ';++    if ((ret = InternalWriteText (attr, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = InternalWriteText (attr, text)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " \"\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->word_space = word_space;+    attr->gstate->char_space = char_space;++    tw = HPDF_Page_TextWidth (page, text);++    /* calculate the reference point of text */+    attr->text_matrix.x += attr->gstate->text_leading * attr->text_matrix.b;+    attr->text_matrix.y -= attr->gstate->text_leading * attr->text_matrix.a;++    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    if (attr->gstate->writing_mode == HPDF_WMODE_HORIZONTAL) {+        attr->text_pos.x += tw * attr->text_matrix.a;+        attr->text_pos.y += tw * attr->text_matrix.b;+    } else {+        attr->text_pos.x -= tw * attr->text_matrix.b;+        attr->text_pos.y -= tw * attr->text_matrix.a;+    }++    return ret;+}+++/*--- Color showing ------------------------------------------------------*/++/* cs --not implemented yet */+/* CS --not implemented yet */+/* sc --not implemented yet */+/* scn --not implemented yet */+/* SC --not implemented yet */+/* SCN --not implemented yet */++/* g */++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetGrayFill  (HPDF_Page  page,+                        HPDF_REAL  gray)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetGrayFill\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (gray < 0 || gray > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, gray)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " g\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->gray_fill = gray;+    attr->gstate->cs_fill = HPDF_CS_DEVICE_GRAY;++    return ret;+}++/* G */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetGrayStroke  (HPDF_Page  page,+                          HPDF_REAL  gray)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_TEXT_OBJECT);+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetGrayStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (gray < 0 || gray > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if ((ret = HPDF_Stream_WriteReal (attr->stream, gray)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " G\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->gray_stroke = gray;+    attr->gstate->cs_stroke = HPDF_CS_DEVICE_GRAY;++    return ret;+}++/* rg */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRGBFill  (HPDF_Page  page,+                       HPDF_REAL  r,+                       HPDF_REAL  g,+                       HPDF_REAL  b)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT |+                    HPDF_GMODE_PAGE_DESCRIPTION);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetRGBFill\n"));++    if (ret != HPDF_OK)+        return ret;++    if (r < 0 || r > 1 || g < 0 || g > 1 || b < 0 || b > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, r, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, g, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, b, eptr);+    HPDF_StrCpy (pbuf, " rg\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->rgb_fill.r = r;+    attr->gstate->rgb_fill.g = g;+    attr->gstate->rgb_fill.b = b;+    attr->gstate->cs_fill = HPDF_CS_DEVICE_RGB;++    return ret;+}++/* RG */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRGBStroke  (HPDF_Page  page,+                         HPDF_REAL  r,+                         HPDF_REAL  g,+                         HPDF_REAL  b)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT |+                    HPDF_GMODE_PAGE_DESCRIPTION);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetRGBStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    if (r < 0 || r > 1 || g < 0 || g > 1 || b < 0 || b > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, r, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, g, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, b, eptr);+    HPDF_StrCpy (pbuf, " RG\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->rgb_stroke.r = r;+    attr->gstate->rgb_stroke.g = g;+    attr->gstate->rgb_stroke.b = b;+    attr->gstate->cs_stroke = HPDF_CS_DEVICE_RGB;++    return ret;+}++/* k */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCMYKFill  (HPDF_Page  page,+                        HPDF_REAL  c,+                        HPDF_REAL  m,+                        HPDF_REAL  y,+                        HPDF_REAL  k)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT |+                    HPDF_GMODE_PAGE_DESCRIPTION);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetCMYKFill\n"));++    if (ret != HPDF_OK)+        return ret;++    if (c < 0 || c > 1 || m < 0 || m > 1 || y < 0 || y > 1 || k < 0 || k > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, c, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, m, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, k, eptr);+    HPDF_StrCpy (pbuf, " k\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->cmyk_fill.c = c;+    attr->gstate->cmyk_fill.m = m;+    attr->gstate->cmyk_fill.y = y;+    attr->gstate->cmyk_fill.k = k;+    attr->gstate->cs_fill = HPDF_CS_DEVICE_CMYK;++    return ret;+}++/* K */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetCMYKStroke  (HPDF_Page  page,+                          HPDF_REAL  c,+                          HPDF_REAL  m,+                          HPDF_REAL  y,+                          HPDF_REAL  k)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT |+                    HPDF_GMODE_PAGE_DESCRIPTION);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_SetCMYKStroke\n"));++    if (ret != HPDF_OK)+        return ret;++    if (c < 0 || c > 1 || m < 0 || m > 1 || y < 0 || y > 1 || k < 0 || k > 1)+        return HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, c, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, m, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, k, eptr);+    HPDF_StrCpy (pbuf, " K\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->gstate->cmyk_stroke.c = c;+    attr->gstate->cmyk_stroke.m = m;+    attr->gstate->cmyk_stroke.y = y;+    attr->gstate->cmyk_stroke.k = k;+    attr->gstate->cs_stroke = HPDF_CS_DEVICE_CMYK;++    return ret;+}++/*--- Shading patterns ---------------------------------------------------*/++/* sh --not implemented yet */++/*--- In-line images -----------------------------------------------------*/++/* BI --not implemented yet */+/* ID --not implemented yet */+/* EI --not implemented yet */++/*--- XObjects -----------------------------------------------------------*/++/* Do */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_ExecuteXObject  (HPDF_Page     page,+                           HPDF_XObject  obj)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION);+    HPDF_PageAttr attr;+    const char *local_name;++    HPDF_PTRACE ((" HPDF_Page_ExecuteXObject\n"));++    if (ret != HPDF_OK)+        return ret;++    if (!obj || obj->header.obj_class != (HPDF_OSUBCLASS_XOBJECT |+            HPDF_OCLASS_DICT))+        return HPDF_RaiseError (page->error, HPDF_INVALID_OBJECT, 0);++    if (page->mmgr != obj->mmgr)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_XOBJECT, 0);++    attr = (HPDF_PageAttr)page->attr;+    local_name = HPDF_Page_GetXObjectName (page, obj);++    if (!local_name)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_XOBJECT, 0);++    if ((ret = HPDF_Stream_WriteEscapeName (attr->stream, local_name)) !=+                HPDF_OK)+        return HPDF_CheckError (page->error);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " Do\012")) != HPDF_OK)+        return HPDF_CheckError (page->error);++    return ret;+}++/*--- Marked content -----------------------------------------------------*/++/* BMC --not implemented yet */+/* BDC --not implemented yet */+/* EMC --not implemented yet */+/* MP --not implemented yet */+/* DP --not implemented yet */++/*--- Compatibility ------------------------------------------------------*/++/* BX --not implemented yet */+/* EX --not implemented yet */+++/*--- combined function --------------------------------------------------*/++static const HPDF_REAL KAPPA = 0.552F;++static char*+QuarterCircleA  (char   *pbuf,+                 char   *eptr,+                 HPDF_REAL    x,+                 HPDF_REAL    y,+                 HPDF_REAL    ray)+{+    pbuf = HPDF_FToA (pbuf, x -ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x -ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + ray, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterCircleB  (char   *pbuf,+                 char   *eptr,+                 HPDF_REAL    x,+                 HPDF_REAL    y,+                 HPDF_REAL    ray)+{+    pbuf = HPDF_FToA (pbuf, x + ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterCircleC  (char   *pbuf,+                 char   *eptr,+                 HPDF_REAL    x,+                 HPDF_REAL    y,+                 HPDF_REAL    ray)+{+    pbuf = HPDF_FToA (pbuf, x + ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - ray, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterCircleD  (char   *pbuf,+                 char   *eptr,+                 HPDF_REAL    x,+                 HPDF_REAL    y,+                 HPDF_REAL    ray)+{+    pbuf = HPDF_FToA (pbuf, x - ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x - ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - ray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x - ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Circle  (HPDF_Page     page,+                   HPDF_REAL     x,+                   HPDF_REAL     y,+                   HPDF_REAL     ray)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+            HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ * 2];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Circle\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x - ray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    pbuf = HPDF_StrCpy (pbuf, " m\012", eptr);++    pbuf = QuarterCircleA (pbuf, eptr, x, y, ray);+    pbuf = QuarterCircleB (pbuf, eptr, x, y, ray);+    pbuf = QuarterCircleC (pbuf, eptr, x, y, ray);+    QuarterCircleD (pbuf, eptr, x, y, ray);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x - ray;+    attr->cur_pos.y = y;+    attr->str_pos = attr->cur_pos;+    attr->gmode = HPDF_GMODE_PATH_OBJECT;++    return ret;+}+++static char*+QuarterEllipseA  (char      *pbuf,+                  char      *eptr,+                  HPDF_REAL  x,+                  HPDF_REAL  y,+                  HPDF_REAL  xray,+                  HPDF_REAL  yray)+{+    pbuf = HPDF_FToA (pbuf, x - xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + yray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x -xray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + yray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + yray, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterEllipseB  (char      *pbuf,+                  char      *eptr,+                  HPDF_REAL  x,+                  HPDF_REAL  y,+                  HPDF_REAL  xray,+                  HPDF_REAL  yray)+{+    pbuf = HPDF_FToA (pbuf, x + xray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + yray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y + yray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterEllipseC  (char      *pbuf,+                  char      *eptr,+                  HPDF_REAL  x,+                  HPDF_REAL  y,+                  HPDF_REAL  xray,+                  HPDF_REAL  yray)+{+    pbuf = HPDF_FToA (pbuf, x + xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - yray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x + xray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - yray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - yray, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++static char*+QuarterEllipseD  (char      *pbuf,+                  char      *eptr,+                  HPDF_REAL  x,+                  HPDF_REAL  y,+                  HPDF_REAL  xray,+                  HPDF_REAL  yray)+{+    pbuf = HPDF_FToA (pbuf, x - xray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - yray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x - xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y - yray * KAPPA, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, x - xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    return HPDF_StrCpy (pbuf, " c\012", eptr);+}++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Ellipse  (HPDF_Page   page,+                    HPDF_REAL   x,+                    HPDF_REAL   y,+                    HPDF_REAL  xray,+                    HPDF_REAL  yray)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+            HPDF_GMODE_PATH_OBJECT);+    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_Ellipse\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    pbuf = HPDF_FToA (pbuf, x - xray, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, y, eptr);+    pbuf = HPDF_StrCpy (pbuf, " m\012", eptr);++    pbuf = QuarterEllipseA (pbuf, eptr, x, y, xray, yray);+    pbuf = QuarterEllipseB (pbuf, eptr, x, y, xray, yray);+    pbuf = QuarterEllipseC (pbuf, eptr, x, y, xray, yray);+    QuarterEllipseD (pbuf, eptr, x, y, xray, yray);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = x - xray;+    attr->cur_pos.y = y;+    attr->str_pos = attr->cur_pos;+    attr->gmode = HPDF_GMODE_PATH_OBJECT;++    return ret;+}+++/*+ * this function is based on the code which is contributed by Riccardo Cohen.+ *+ * from http://www.tinaja.com/glib/bezarc1.pdf coming from+ * http://www.whizkidtech.redprince.net/bezier/circle/+ */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_Arc  (HPDF_Page    page,+                HPDF_REAL    x,+                HPDF_REAL    y,+                HPDF_REAL    ray,+                HPDF_REAL    ang1,+                HPDF_REAL    ang2)+{+    HPDF_BOOL cont_flg = HPDF_FALSE;++    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_PAGE_DESCRIPTION |+                    HPDF_GMODE_PATH_OBJECT);++    HPDF_PTRACE ((" HPDF_Page_Arc\n"));++    if (ang1 >= ang2 || (ang2 - ang1) >= 360)+        HPDF_RaiseError (page->error, HPDF_PAGE_OUT_OF_RANGE, 0);++    if (ret != HPDF_OK)+        return ret;++    while (ang1 < 0 || ang2 < 0) {+        ang1 = ang1 + 360;+        ang2 = ang2 + 360;+    }+++    for (;;) {+        if (ang2 - ang1 <= 90)+            return InternalArc (page, x, y, ray, ang1, ang2, cont_flg);+        else {+            HPDF_REAL tmp_ang = ang1 + 90;++            if ((ret = InternalArc (page, x, y, ray, ang1, tmp_ang, cont_flg))+                    != HPDF_OK)+                return ret;++            ang1 = tmp_ang;+        }++        if (ang1 >= ang2)+            break;++        cont_flg = HPDF_TRUE;+    }++    return HPDF_OK;+}+++static HPDF_STATUS+InternalArc  (HPDF_Page    page,+              HPDF_REAL    x,+              HPDF_REAL    y,+              HPDF_REAL    ray,+              HPDF_REAL    ang1,+              HPDF_REAL    ang2,+              HPDF_BOOL    cont_flg)+{+    const HPDF_REAL PIE = 3.14159F;++    char buf[HPDF_TMP_BUF_SIZ];+    char *pbuf = buf;+    char *eptr = buf + HPDF_TMP_BUF_SIZ - 1;+    HPDF_PageAttr attr;+    HPDF_STATUS ret;++    HPDF_DOUBLE rx0, ry0, rx1, ry1, rx2, ry2, rx3, ry3;+    HPDF_DOUBLE x0, y0, x1, y1, x2, y2, x3, y3;+    HPDF_DOUBLE delta_angle;+    HPDF_DOUBLE new_angle;++    HPDF_PTRACE ((" HPDF_Page_InternalArc\n"));++    attr = (HPDF_PageAttr)page->attr;++    HPDF_MemSet (buf, 0, HPDF_TMP_BUF_SIZ);++    delta_angle = (90 - (HPDF_DOUBLE)(ang1 + ang2) / 2) / 180 * PIE;+    new_angle = (HPDF_DOUBLE)(ang2 - ang1) / 2 / 180 * PIE;++    rx0 = ray * HPDF_COS (new_angle);+    ry0 = ray * HPDF_SIN (new_angle);+    rx2 = (ray * 4.0 - rx0) / 3.0;+    ry2 = ((ray * 1.0 - rx0) * (rx0 - ray * 3.0)) / (3.0 * ry0);+    rx1 = rx2;+    ry1 = -ry2;+    rx3 = rx0;+    ry3 = -ry0;++    x0 = rx0 * HPDF_COS (delta_angle) - ry0 * HPDF_SIN (delta_angle) + x;+    y0 = rx0 * HPDF_SIN (delta_angle) + ry0 * HPDF_COS (delta_angle) + y;+    x1 = rx1 * HPDF_COS (delta_angle) - ry1 * HPDF_SIN (delta_angle) + x;+    y1 = rx1 * HPDF_SIN (delta_angle) + ry1 * HPDF_COS (delta_angle) + y;+    x2 = rx2 * HPDF_COS (delta_angle) - ry2 * HPDF_SIN (delta_angle) + x;+    y2 = rx2 * HPDF_SIN (delta_angle) + ry2 * HPDF_COS (delta_angle) + y;+    x3 = rx3 * HPDF_COS (delta_angle) - ry3 * HPDF_SIN (delta_angle) + x;+    y3 = rx3 * HPDF_SIN (delta_angle) + ry3 * HPDF_COS (delta_angle) + y;++    if (!cont_flg) {+        pbuf = HPDF_FToA (pbuf, (HPDF_REAL)x0, eptr);+        *pbuf++ = ' ';+        pbuf = HPDF_FToA (pbuf, (HPDF_REAL)y0, eptr);+        pbuf = HPDF_StrCpy (pbuf, " m\012", eptr);+    }++    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)x1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)y1, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)x2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)y2, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)x3, eptr);+    *pbuf++ = ' ';+    pbuf = HPDF_FToA (pbuf, (HPDF_REAL)y3, eptr);+    HPDF_StrCpy (pbuf, " c\012", eptr);++    if ((ret = HPDF_Stream_WriteStr (attr->stream, buf)) != HPDF_OK)+        return HPDF_CheckError (page->error);++    attr->cur_pos.x = (HPDF_REAL)x3;+    attr->cur_pos.y = (HPDF_REAL)y3;+    attr->str_pos = attr->cur_pos;+    attr->gmode = HPDF_GMODE_PATH_OBJECT;++    return ret;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_DrawImage  (HPDF_Page    page,+                      HPDF_Image   image,+                      HPDF_REAL    x,+                      HPDF_REAL    y,+                      HPDF_REAL    width,+                      HPDF_REAL    height)+{+    HPDF_STATUS ret;++    if ((ret = HPDF_Page_GSave (page)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Page_Concat (page, width, 0, 0, height, x, y)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Page_ExecuteXObject (page, image)) != HPDF_OK)+        return ret;++    return HPDF_Page_GRestore (page);+}+++static HPDF_STATUS+InternalWriteText  (HPDF_PageAttr      attr,+                    const char        *text)+{+    HPDF_FontAttr font_attr = (HPDF_FontAttr)attr->gstate->font->attr;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" InternalWriteText\n"));++    if (font_attr->type == HPDF_FONT_TYPE0_TT ||+            font_attr->type == HPDF_FONT_TYPE0_CID) {+        if ((ret = HPDF_Stream_WriteStr (attr->stream, "<")) != HPDF_OK)+            return ret;++        if ((ret = HPDF_Stream_WriteBinary (attr->stream, text,+                        HPDF_StrLen (text, HPDF_LIMIT_MAX_STRING_LEN), NULL))+               != HPDF_OK)+            return ret;++        return HPDF_Stream_WriteStr (attr->stream, ">");+    }++    return HPDF_Stream_WriteEscapeText (attr->stream, text);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_TextOut  (HPDF_Page    page,+                    HPDF_REAL    xpos,+                    HPDF_REAL    ypos,+                    const char  *text)+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_REAL x;+    HPDF_REAL y;+    HPDF_PageAttr attr;++    HPDF_PTRACE ((" HPDF_Page_TextOut\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr)page->attr;++    if (attr->text_matrix.a == 0) {+        y = (xpos - attr->text_matrix.x) / attr->text_matrix.c;+        x = (ypos - attr->text_matrix.y - (xpos - attr->text_matrix.x) * attr->text_matrix.d / attr->text_matrix.c) / attr->text_matrix.b;+    } else {+        y = (ypos - attr->text_matrix.y - (xpos - attr->text_matrix.x) *+                attr->text_matrix.b / attr->text_matrix.a) / (attr->text_matrix.d -+                attr->text_matrix.c * attr->text_matrix.b / attr->text_matrix.a);+        x = (xpos - attr->text_matrix.x - y * attr->text_matrix.c) /+                attr->text_matrix.a;+    }++    if ((ret = HPDF_Page_MoveTextPos (page, x, y)) != HPDF_OK)+        return ret;++    return  HPDF_Page_ShowText (page, text);+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_TextRect  (HPDF_Page            page,+                     HPDF_REAL            left,+                     HPDF_REAL            top,+                     HPDF_REAL            right,+                     HPDF_REAL            bottom,+                     const char          *text,+                     HPDF_TextAlignment   align,+                     HPDF_UINT           *len+                     )+{+    HPDF_STATUS ret = HPDF_Page_CheckState (page, HPDF_GMODE_TEXT_OBJECT);+    HPDF_REAL x;+    HPDF_REAL y;+    HPDF_PageAttr attr;+    const char *ptr = text;+    HPDF_REAL save_char_space = 0;+    HPDF_BOOL is_insufficient_space = HPDF_FALSE;+    HPDF_UINT num_rest;+    HPDF_Box bbox;+    HPDF_BOOL char_space_changed = HPDF_FALSE;++    HPDF_PTRACE ((" HPDF_Page_TextOutEx\n"));++    if (ret != HPDF_OK)+        return ret;++    attr = (HPDF_PageAttr )page->attr;++    /* no font exists */+    if (!attr->gstate->font) {+        return HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);+    }++    bbox = HPDF_Font_GetBBox (attr->gstate->font);++    if (len)+        *len = 0;+    num_rest = HPDF_StrLen (text, HPDF_LIMIT_MAX_STRING_LEN + 1);++    if (num_rest > HPDF_LIMIT_MAX_STRING_LEN) {+        return HPDF_RaiseError (page->error, HPDF_STRING_OUT_OF_RANGE, 0);+    } else if (!num_rest)+        return HPDF_OK;++    if (attr->gstate->text_leading == 0)+        HPDF_Page_SetTextLeading (page, (bbox.top - bbox.bottom) / 1000 *+                attr->gstate->font_size);++    top = top - bbox.top / 1000 * attr->gstate->font_size ++                attr->gstate->text_leading;+    bottom = bottom - bbox.bottom / 1000 * attr->gstate->font_size;++    if (attr->text_matrix.a == 0) {+        y = (left - attr->text_matrix.x) / attr->text_matrix.c;+        x = (top - attr->text_matrix.y - (left - attr->text_matrix.x) * attr->text_matrix.d / attr->text_matrix.c) / attr->text_matrix.b;+    } else {+        y = (top - attr->text_matrix.y - (left - attr->text_matrix.x) *+                attr->text_matrix.b / attr->text_matrix.a) / (attr->text_matrix.d -+                attr->text_matrix.c * attr->text_matrix.b / attr->text_matrix.a);+        x = (left - attr->text_matrix.x - y * attr->text_matrix.c) /+                attr->text_matrix.a;+    }++    if ((ret = HPDF_Page_MoveTextPos (page, x, y)) != HPDF_OK)+        return ret;++    if (align == HPDF_TALIGN_JUSTIFY) {+        save_char_space = attr->gstate->char_space;+        attr->gstate->char_space = 0;+    }++    for (;;) {+        HPDF_UINT tmp_len;+        HPDF_REAL rw;+        HPDF_REAL x_adjust;+        const char *tmp_ptr;+        HPDF_UINT num_char;+        HPDF_ParseText_Rec state;+        HPDF_Encoder encoder;+        HPDF_UINT i;++        tmp_len = HPDF_Page_MeasureText (page, ptr, right - left, HPDF_TRUE, &rw);+        if (tmp_len == 0) {+            is_insufficient_space = HPDF_TRUE;+            break;+        }++        if (len)+            *len += tmp_len;++        switch (align) {+            case HPDF_TALIGN_RIGHT:+                x_adjust = right - left - rw;+                if ((ret = HPDF_Page_MoveTextPos (page, x_adjust, 0)) != HPDF_OK)+                    return ret;++                if ((ret = InternalShowTextNextLine (page, ptr, tmp_len))+                        != HPDF_OK)+                    return HPDF_CheckError (page->error);++                if ((ret = HPDF_Page_MoveTextPos (page, -x_adjust, 0)) != HPDF_OK)+                    return ret;+                break;+            case HPDF_TALIGN_CENTER:+                x_adjust = (right - left - rw) / 2;+                if ((ret = HPDF_Page_MoveTextPos (page, x_adjust, 0)) != HPDF_OK)+                    return ret;++                if ((ret = InternalShowTextNextLine (page, ptr, tmp_len))+                        != HPDF_OK)+                    return HPDF_CheckError (page->error);++                if ((ret = HPDF_Page_MoveTextPos (page, -x_adjust, 0)) != HPDF_OK)+                    return ret;+                break;+            case HPDF_TALIGN_JUSTIFY:+                num_char = 0;+                encoder = ((HPDF_FontAttr)attr->gstate->font->attr)->encoder;+                tmp_ptr = ptr;+                HPDF_Encoder_SetParseText (encoder, &state, tmp_ptr, tmp_len);+                i = 0;+                while (*tmp_ptr) {+                    HPDF_ByteType btype = HPDF_Encoder_ByteType (encoder, &state);+                    if (btype != HPDF_BYTE_TYPE_TRIAL)+                        num_char++;++                    i++;+                    if (i >= tmp_len)+                        break;++                    tmp_ptr++;+                }++                if (HPDF_IS_WHITE_SPACE(*tmp_ptr))+                    num_char--;++                if (num_char > 1)+                    x_adjust = (right - left - rw) / (num_char - 1);+                else+                    x_adjust = 0;++                if (num_rest == tmp_len) {+                    if ((ret = HPDF_Page_SetCharSpace (page, save_char_space))+                                    != HPDF_OK)+                        return ret;+                    char_space_changed = HPDF_FALSE;+                } else {+                    if ((ret = HPDF_Page_SetCharSpace (page, x_adjust))+                                    != HPDF_OK)+                        return ret;+                    char_space_changed = HPDF_TRUE;+                }++                if ((ret = InternalShowTextNextLine (page, ptr, tmp_len))+                        != HPDF_OK)+                    return HPDF_CheckError (page->error);++                attr->gstate->char_space = 0;+                break;+            default:+                if ((ret = InternalShowTextNextLine (page, ptr, tmp_len))+                        != HPDF_OK)+                    return HPDF_CheckError (page->error);+        }++        num_rest -= tmp_len;+        if (num_rest <= 0)+            break;++        if (attr->text_pos.y - attr->gstate->text_leading < bottom) {+            is_insufficient_space = HPDF_TRUE;+            break;+        }++        ptr += tmp_len;+    }++    if (char_space_changed) {+        if ((ret = HPDF_Page_SetCharSpace (page, save_char_space)) != HPDF_OK)+            return ret;+    }++    if (is_insufficient_space)+        return HPDF_PAGE_INSUFFICIENT_SPACE;+    else+        return HPDF_OK;+}+++static HPDF_STATUS+InternalShowTextNextLine  (HPDF_Page    page,+                           const char  *text,+                           HPDF_UINT    len)+{+    HPDF_STATUS ret;+    HPDF_PageAttr attr;+    HPDF_REAL tw;+    HPDF_FontAttr font_attr;++    HPDF_PTRACE ((" ShowTextNextLine\n"));++    attr = (HPDF_PageAttr)page->attr;+    font_attr = (HPDF_FontAttr)attr->gstate->font->attr;++    if (font_attr->type == HPDF_FONT_TYPE0_TT ||+            font_attr->type == HPDF_FONT_TYPE0_CID) {+        if ((ret = HPDF_Stream_WriteStr (attr->stream, "<")) != HPDF_OK)+            return ret;++        if ((ret = HPDF_Stream_WriteBinary (attr->stream, text, len, NULL))+               != HPDF_OK)+            return ret;++        if ((ret = HPDF_Stream_WriteStr (attr->stream, ">")) != HPDF_OK)+            return ret;+    } else  if ((ret = HPDF_Stream_WriteEscapeText2 (attr->stream, text,+                len)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteStr (attr->stream, " \'\012")) != HPDF_OK)+        return ret;++    tw = HPDF_Page_TextWidth (page, text);++    /* calculate the reference point of text */+    attr->text_matrix.x -= attr->gstate->text_leading * attr->text_matrix.c;+    attr->text_matrix.y -= attr->gstate->text_leading * attr->text_matrix.d;++    attr->text_pos.x = attr->text_matrix.x;+    attr->text_pos.y = attr->text_matrix.y;++    if (attr->gstate->writing_mode == HPDF_WMODE_HORIZONTAL) {+        attr->text_pos.x += tw * attr->text_matrix.a;+        attr->text_pos.y += tw * attr->text_matrix.b;+    } else {+        attr->text_pos.x -= tw * attr->text_matrix.b;+        attr->text_pos.y -= tw * attr->text_matrix.a;+    }++    return ret;+}+++/*+ *  This function is contributed by Adrian Nelson (adenelson).+ */+HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetSlideShow  (HPDF_Page            page,+                         HPDF_TransitionStyle   type,+                         HPDF_REAL            disp_time,+                         HPDF_REAL            trans_time)+    {+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Dict dict;++    HPDF_PTRACE((" HPDF_Page_SetSlideShow\n"));++    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    if (disp_time < 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_DISPLAY_TIME,+                    (HPDF_STATUS)disp_time);++    if (trans_time < 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_TRANSITION_TIME,+                    (HPDF_STATUS)trans_time);++    dict = HPDF_Dict_New(page->mmgr);++    if (!dict)+        return HPDF_Error_GetCode (page->error);++    if ((ret = HPDF_Dict_AddName (dict, "Type", "Trans")) != HPDF_OK)+        goto Fail;++    if ((ret = HPDF_Dict_AddReal (dict, "D", trans_time)) !=+            HPDF_OK)+        goto Fail;++    switch (type) {+        case HPDF_TS_WIPE_RIGHT:+            ret += HPDF_Dict_AddName (dict, "S", "Wipe");+            ret += HPDF_Dict_AddNumber (dict, "Di", 0);+            break;+        case HPDF_TS_WIPE_UP:+            ret += HPDF_Dict_AddName (dict, "S", "Wipe");+            ret += HPDF_Dict_AddNumber (dict, "Di", 90);+            break;+        case HPDF_TS_WIPE_LEFT:+            ret += HPDF_Dict_AddName (dict, "S", "Wipe");+            ret += HPDF_Dict_AddNumber (dict, "Di", 180);+            break;+        case HPDF_TS_WIPE_DOWN:+            ret += HPDF_Dict_AddName (dict, "S", "Wipe");+            ret += HPDF_Dict_AddNumber    (dict, "Di", 270);+            break;+        case HPDF_TS_BARN_DOORS_HORIZONTAL_OUT:+            ret += HPDF_Dict_AddName (dict, "S", "Split");+            ret += HPDF_Dict_AddName (dict, "Dm", "H");+            ret += HPDF_Dict_AddName (dict, "M", "O");+            break;+        case HPDF_TS_BARN_DOORS_HORIZONTAL_IN:+            ret += HPDF_Dict_AddName (dict, "S", "Split");+            ret += HPDF_Dict_AddName (dict, "Dm", "H");+            ret += HPDF_Dict_AddName (dict, "M", "I");+            break;+        case HPDF_TS_BARN_DOORS_VERTICAL_OUT:+            ret += HPDF_Dict_AddName (dict, "S", "Split");+            ret += HPDF_Dict_AddName (dict, "Dm", "V");+            ret += HPDF_Dict_AddName (dict, "M", "O");+            break;+        case HPDF_TS_BARN_DOORS_VERTICAL_IN:+            ret += HPDF_Dict_AddName (dict, "S", "Split");+            ret += HPDF_Dict_AddName (dict, "Dm", "V");+            ret += HPDF_Dict_AddName (dict, "M", "I");+            break;+        case HPDF_TS_BOX_OUT:+            ret += HPDF_Dict_AddName (dict, "S", "Box");+            ret += HPDF_Dict_AddName (dict, "M", "O");+            break;+        case HPDF_TS_BOX_IN:+            ret += HPDF_Dict_AddName (dict, "S", "Box");+            ret += HPDF_Dict_AddName (dict, "M", "I");+            break;+        case HPDF_TS_BLINDS_HORIZONTAL:+            ret += HPDF_Dict_AddName (dict, "S", "Blinds");+            ret += HPDF_Dict_AddName (dict, "Dm", "H");+            break;+        case HPDF_TS_BLINDS_VERTICAL:+            ret += HPDF_Dict_AddName (dict, "S", "Blinds");+            ret += HPDF_Dict_AddName (dict, "Dm", "V");+            break;+        case HPDF_TS_DISSOLVE:+            ret += HPDF_Dict_AddName (dict, "S", "Dissolve");+            break;+        case HPDF_TS_GLITTER_RIGHT:+            ret += HPDF_Dict_AddName (dict, "S", "Glitter");+            ret += HPDF_Dict_AddNumber (dict, "Di", 0);+            break;+        case HPDF_TS_GLITTER_DOWN:+            ret += HPDF_Dict_AddName (dict, "S", "Glitter");+            ret += HPDF_Dict_AddNumber (dict, "Di", 270);+            break;+        case HPDF_TS_GLITTER_TOP_LEFT_TO_BOTTOM_RIGHT:+            ret += HPDF_Dict_AddName (dict, "S", "Glitter");+            ret += HPDF_Dict_AddNumber (dict, "Di", 315);+            break;+        case HPDF_TS_REPLACE:+            ret += HPDF_Dict_AddName  (dict, "S", "R");+            break;+        default:+            ret = HPDF_INVALID_PAGE_SLIDESHOW_TYPE;+    }++    if (ret != HPDF_OK)+        goto Fail;++    if ((ret = HPDF_Dict_AddReal (page, "Dur", disp_time)) != HPDF_OK)+        goto Fail;++    if ((ret = HPDF_Dict_Add (page, "Trans", dict)) != HPDF_OK)+        return ret;++    return HPDF_OK;++Fail:+    HPDF_Dict_Free (dict);+    return HPDF_Error_GetCode (page->error);+}
+ haru/hpdf_pages.c view
@@ -0,0 +1,1508 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_pages.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf.h"+#include "hpdf_annotation.h"+#include "hpdf_destination.h"++/*----------------------------------------------------------------------------*/++typedef struct _HPDF_PageSizeValue {+    HPDF_REAL   x;+    HPDF_REAL   y;+} HPDF_PageSizeValue;++static HPDF_PageSizeValue HPDF_PREDEFINED_PAGE_SIZES[] = {+    {612, 792},     /* HPDF_PAGE_SIZE_LETTER */+    {612, 1008},    /* HPDF_PAGE_SIZE_LEGAL */+    {841.89, 1199.551},    /* HPDF_PAGE_SIZE_A3 */+    {595.276, 841.89},     /* HPDF_PAGE_SIZE_A4 */+    {419.528, 595.276},     /* HPDF_PAGE_SIZE_A5 */+    {708.661, 1000.63},     /* HPDF_PAGE_SIZE_B4 */+    {498.898, 708.661},     /* HPDF_PAGE_SIZE_B5 */+    {522, 756},     /* HPDF_PAGE_SIZE_EXECUTIVE */+    {288, 432},     /* HPDF_PAGE_SIZE_US4x6 */+    {288, 576},     /* HPDF_PAGE_SIZE_US4x8 */+    {360, 504},     /* HPDF_PAGE_SIZE_US5x7 */+    {297, 684}      /* HPDF_PAGE_SIZE_COMM10 */+};+++static const HPDF_RGBColor DEF_RGB_COLOR = {0, 0, 0};++static const HPDF_CMYKColor DEF_CMYK_COLOR = {0, 0, 0, 0};+++static HPDF_STATUS+Pages_BeforeWrite  (HPDF_Dict    obj);+++static HPDF_STATUS+Page_BeforeWrite  (HPDF_Dict    obj);+++static void+Page_OnFree  (HPDF_Dict  obj);+++static HPDF_STATUS+AddResource  (HPDF_Page  page);+++static HPDF_STATUS+AddAnnotation  (HPDF_Page        page,+                HPDF_Annotation  annot);++++static HPDF_UINT+GetPageCount  (HPDF_Dict    pages);++static const char *HPDF_INHERITABLE_ENTRIES[5] = {+                        "Resources",+                        "MediaBox",+                        "CropBox",+                        "Rotate",+                        NULL+                        };+++/*----------------------------------------------------------------------------*/+/*----- HPDF_Pages -----------------------------------------------------------*/++HPDF_Pages+HPDF_Pages_New  (HPDF_MMgr   mmgr,+                 HPDF_Pages  parent,+                 HPDF_Xref   xref)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Pages pages;+++    HPDF_PTRACE((" HPDF_Pages_New\n"));++    pages = HPDF_Dict_New (mmgr);+    if (!pages)+        return NULL;++    pages->header.obj_class |= HPDF_OSUBCLASS_PAGES;+    pages->before_write_fn = Pages_BeforeWrite;++    if (HPDF_Xref_Add (xref, pages) != HPDF_OK)+        return NULL;++    /* add requiered elements */+    ret += HPDF_Dict_AddName (pages, "Type", "Pages");+    ret += HPDF_Dict_Add (pages, "Kids", HPDF_Array_New (pages->mmgr));+    ret += HPDF_Dict_Add (pages, "Count", HPDF_Number_New (pages->mmgr, 0));++    if (ret == HPDF_OK && parent)+        ret += HPDF_Pages_AddKids (parent, pages);++    if (ret != HPDF_OK)+        return NULL;++    return pages;+}+++HPDF_STATUS+HPDF_Pages_AddKids  (HPDF_Pages  parent,+                     HPDF_Dict   kid)+{+    HPDF_Array kids;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Pages_AddKids\n"));++    if (HPDF_Dict_GetItem (kid, "Parent", HPDF_OCLASS_DICT))+        return HPDF_SetError (parent->error, HPDF_PAGE_CANNOT_SET_PARENT, 0);++    if ((ret = HPDF_Dict_Add (kid, "Parent", parent)) != HPDF_OK)+        return ret;++    kids = (HPDF_Array )HPDF_Dict_GetItem (parent, "Kids", HPDF_OCLASS_ARRAY);+    if (!kids)+        return HPDF_SetError (parent->error, HPDF_PAGES_MISSING_KIDS_ENTRY, 0);++    if (kid->header.obj_class == (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_PAGE)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)kid->attr;++        attr->parent = parent;+    }++    return HPDF_Array_Add (kids, kid);+}+++HPDF_STATUS+HPDF_Page_InsertBefore  (HPDF_Page   page,+                         HPDF_Page   target)+{+    HPDF_Page parent;+    HPDF_Array kids;+    HPDF_STATUS ret;+    HPDF_PageAttr attr;++    HPDF_PTRACE((" HPDF_Page_InsertBefore\n"));++    attr = (HPDF_PageAttr )target->attr;+    parent = attr->parent;++    if (!parent)+        return HPDF_SetError (parent->error, HPDF_PAGE_CANNOT_SET_PARENT, 0);++    if (HPDF_Dict_GetItem (page, "Parent", HPDF_OCLASS_DICT))+        return HPDF_SetError (parent->error, HPDF_PAGE_CANNOT_SET_PARENT, 0);++    if ((ret = HPDF_Dict_Add (page, "Parent", parent)) != HPDF_OK)+        return ret;++    kids = (HPDF_Array )HPDF_Dict_GetItem (parent, "Kids", HPDF_OCLASS_ARRAY);+    if (!kids)+        return HPDF_SetError (parent->error, HPDF_PAGES_MISSING_KIDS_ENTRY, 0);++    attr = (HPDF_PageAttr)page->attr;+    attr->parent = parent;++    return HPDF_Array_Insert (kids, target, page);+}+++HPDF_STATUS+Pages_BeforeWrite  (HPDF_Dict    obj)+{+    HPDF_Array kids = (HPDF_Array )HPDF_Dict_GetItem (obj, "Kids",+                    HPDF_OCLASS_ARRAY);+    HPDF_Number count = (HPDF_Number)HPDF_Dict_GetItem (obj, "Count",+                    HPDF_OCLASS_NUMBER);+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Pages_BeforeWrite\n"));++    if (!kids)+        return HPDF_SetError (obj->error, HPDF_PAGES_MISSING_KIDS_ENTRY, 0);++    if (count)+        count->value = GetPageCount (obj);+    else {+        count = HPDF_Number_New (obj->mmgr, GetPageCount (obj));+        if (!count)+            return HPDF_Error_GetCode (obj->error);++        if ((ret = HPDF_Dict_Add (obj, "Count", count)) != HPDF_OK)+            return ret;+    }++    return HPDF_OK;+}+++static HPDF_STATUS+Page_BeforeWrite  (HPDF_Dict    obj)+{+    HPDF_STATUS ret;+    HPDF_Page page = (HPDF_Page)obj;+    HPDF_PageAttr attr = (HPDF_PageAttr)obj->attr;++    HPDF_PTRACE((" HPDF_Page_BeforeWrite\n"));++    if (attr->gmode == HPDF_GMODE_PATH_OBJECT) {+        HPDF_PTRACE((" HPDF_Page_BeforeWrite warning path object is not"+                    " end\n"));++        if ((ret = HPDF_Page_EndPath (page)) != HPDF_OK)+           return ret;+    }++    if (attr->gmode == HPDF_GMODE_TEXT_OBJECT) {+        HPDF_PTRACE((" HPDF_Page_BeforeWrite warning text block is not end\n"));++        if ((ret = HPDF_Page_EndText (page)) != HPDF_OK)+            return ret;+    }++    if (attr->gstate)+        while (attr->gstate->prev) {+            if ((ret = HPDF_Page_GRestore (page)) != HPDF_OK)+                return ret;+        }++    return HPDF_OK;+}+++static HPDF_UINT+GetPageCount  (HPDF_Dict    pages)+{+    HPDF_UINT i;+    HPDF_UINT count = 0;+    HPDF_Array kids = (HPDF_Array)HPDF_Dict_GetItem (pages, "Kids",+            HPDF_OCLASS_ARRAY);++    HPDF_PTRACE((" GetPageCount\n"));++    if (!kids)+        return 0;++    for (i = 0; i < kids->list->count; i++) {+        void *obj = HPDF_Array_GetItem (kids, i, HPDF_OCLASS_DICT);+        HPDF_Obj_Header *header = (HPDF_Obj_Header *)obj;++        if (header->obj_class == (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_PAGES))+            count += GetPageCount ((HPDF_Dict)obj);+        else if (header->obj_class == (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_PAGE))+            count += 1;+    }++    return count;+}+++HPDF_BOOL+HPDF_Pages_Validate  (HPDF_Pages  pages)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)pages;++    HPDF_PTRACE((" HPDF_Pages_Validate\n"));++    if (!pages || header->obj_class != (HPDF_OCLASS_DICT |+                HPDF_OSUBCLASS_PAGES))+        return HPDF_FALSE;++    return HPDF_TRUE;+}+++/*----------------------------------------------------------------------------*/+/*----- HPDF_Page ------------------------------------------------------------*/+++HPDF_Page+HPDF_Page_New  (HPDF_MMgr   mmgr,+                HPDF_Xref   xref)+{+    HPDF_STATUS ret;+    HPDF_PageAttr attr;+    HPDF_Page page;++    HPDF_PTRACE((" HPDF_Page_New\n"));++    page = HPDF_Dict_New (mmgr);+    if (!page)+        return NULL;++    page->header.obj_class |= HPDF_OSUBCLASS_PAGE;+    page->free_fn = Page_OnFree;+    page->before_write_fn = Page_BeforeWrite;++    attr = HPDF_GetMem (page->mmgr, sizeof(HPDF_PageAttr_Rec));+    if (!attr) {+        HPDF_Dict_Free (page);+        return NULL;+    }++    page->attr = attr;+    HPDF_MemSet (attr, 0, sizeof(HPDF_PageAttr_Rec));+    attr->gmode = HPDF_GMODE_PAGE_DESCRIPTION;+    attr->cur_pos = HPDF_ToPoint (0, 0);+    attr->text_pos = HPDF_ToPoint (0, 0);++    ret = HPDF_Xref_Add (xref, page);+    if (ret != HPDF_OK)+        return NULL;++    attr->gstate = HPDF_GState_New (page->mmgr, NULL);+    attr->contents = HPDF_DictStream_New (page->mmgr, xref);++    if (!attr->gstate || !attr->contents)+        return NULL;++    attr->stream = attr->contents->stream;+    attr->xref = xref;++    /* add requiered elements */+    ret += HPDF_Dict_AddName (page, "Type", "Page");+    ret += HPDF_Dict_Add (page, "MediaBox", HPDF_Box_Array_New (page->mmgr,+                HPDF_ToBox (0, 0, HPDF_DEF_PAGE_WIDTH, HPDF_DEF_PAGE_HEIGHT)));+    ret += HPDF_Dict_Add (page, "Contents", attr->contents);++    ret += AddResource (page);++    if (ret != HPDF_OK)+        return NULL;++    return page;+}+++++static void+Page_OnFree  (HPDF_Dict  obj)+{+    HPDF_PageAttr attr = (HPDF_PageAttr)obj->attr;++    HPDF_PTRACE((" HPDF_Page_OnFree\n"));++    if (attr) {+        if (attr->gstate)+            HPDF_GState_Free (obj->mmgr, attr->gstate);++        HPDF_FreeMem (obj->mmgr, attr);+    }+}+++HPDF_STATUS+HPDF_Page_CheckState  (HPDF_Page  page,+                       HPDF_UINT  mode)+{+    if (!page)+        return HPDF_INVALID_OBJECT;++    if (page->header.obj_class != (HPDF_OSUBCLASS_PAGE | HPDF_OCLASS_DICT))+        return HPDF_INVALID_PAGE;++    if (!(((HPDF_PageAttr)page->attr)->gmode & mode))+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_GMODE, 0);++    return HPDF_OK;+}+++void*+HPDF_Page_GetInheritableItem  (HPDF_Page          page,+                               const char   *key,+                               HPDF_UINT16        obj_class)+{+    HPDF_BOOL chk = HPDF_FALSE;+    HPDF_INT i = 0;+    void * obj;++    HPDF_PTRACE((" HPDF_Page_GetInheritableItem\n"));++    /* check whether the specified key is valid */+    while (HPDF_INHERITABLE_ENTRIES[i]) {+        if (HPDF_StrCmp (key, HPDF_INHERITABLE_ENTRIES[i]) == 0) {+            chk = HPDF_TRUE;+            break;+        }+        i++;+    }++    /* the key is not inheritable */+    if (chk != HPDF_TRUE) {+        HPDF_SetError (page->error, HPDF_INVALID_PARAMETER, 0);+        return NULL;+    }++    obj = HPDF_Dict_GetItem (page, key, obj_class);++    /* if resources of the object is NULL, search resources of parent+     * pages recursivly+     */+    if (!obj) {+        HPDF_Pages pages = HPDF_Dict_GetItem (page, "Parent", HPDF_OCLASS_DICT);+        while (pages) {+            obj = HPDF_Dict_GetItem (page, key, obj_class);++            if (obj)+                break;++            pages = HPDF_Dict_GetItem (pages, "Parent", HPDF_OCLASS_DICT);+        }+    }++    return obj;+}+++HPDF_STATUS+AddResource  (HPDF_Page  page)+{+    HPDF_STATUS ret = HPDF_OK;+    HPDF_Dict resource;+    HPDF_Array procset;++    HPDF_PTRACE((" HPDF_Page_AddResource\n"));++    resource = HPDF_Dict_New (page->mmgr);+    if (!resource)+        return HPDF_Error_GetCode (page->error);++    /* althoth ProcSet-entry is obsolete, add it to resouce for+     * compatibility+     */++    ret += HPDF_Dict_Add (page, "Resources", resource);++    procset = HPDF_Array_New (page->mmgr);+    if (!procset)+        return HPDF_Error_GetCode (page->error);++    ret += HPDF_Dict_Add (resource, "ProcSet", procset);+    ret += HPDF_Array_Add (procset, HPDF_Name_New (page->mmgr, "PDF"));+    ret += HPDF_Array_Add (procset, HPDF_Name_New (page->mmgr, "Text"));+    ret += HPDF_Array_Add (procset, HPDF_Name_New (page->mmgr, "ImageB"));+    ret += HPDF_Array_Add (procset, HPDF_Name_New (page->mmgr, "ImageC"));+    ret += HPDF_Array_Add (procset, HPDF_Name_New (page->mmgr, "ImageI"));++    return ret;+}+++const char*+HPDF_Page_GetLocalFontName  (HPDF_Page  page,+                             HPDF_Font  font)+{+    HPDF_PageAttr attr = (HPDF_PageAttr )page->attr;+    const char *key;++    HPDF_PTRACE((" HPDF_Page_GetLocalFontName\n"));++    /* whether check font-resource exists.  when it does not exists,+     * create font-resource+     * 2006.07.21 Fixed a problem which may cause a memory leak.+     */+    if (!attr->fonts) {+        HPDF_Dict resources;+        HPDF_Dict fonts;++        resources = HPDF_Page_GetInheritableItem (page, "Resources",+                        HPDF_OCLASS_DICT);+        if (!resources)+            return NULL;++        fonts = HPDF_Dict_New (page->mmgr);+        if (!fonts)+            return NULL;++        if (HPDF_Dict_Add (resources, "Font", fonts) != HPDF_OK)+            return NULL;++        attr->fonts = fonts;+    }++    /* search font-object from font-resource */+    key = HPDF_Dict_GetKeyByObj (attr->fonts, font);+    if (!key) {+        /* if the font is not resisterd in font-resource, register font to+         * font-resource.+         */+        char fontName[HPDF_LIMIT_MAX_NAME_LEN + 1];+        char *ptr;+        char *end_ptr = fontName + HPDF_LIMIT_MAX_NAME_LEN;++        ptr = HPDF_StrCpy (fontName, "F", end_ptr);+        HPDF_IToA (ptr, attr->fonts->list->count + 1, end_ptr);++        if (HPDF_Dict_Add (attr->fonts, fontName, font) != HPDF_OK)+            return NULL;++        key = HPDF_Dict_GetKeyByObj (attr->fonts, font);+    }++    return key;+}+++HPDF_Box+HPDF_Page_GetMediaBox  (HPDF_Page   page)+{+    HPDF_Box media_box = {0, 0, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetMediaBox\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_Array array = HPDF_Page_GetInheritableItem (page, "MediaBox",+                        HPDF_OCLASS_ARRAY);++        if (array) {+            HPDF_Real r;++            r = HPDF_Array_GetItem (array, 0, HPDF_OCLASS_REAL);+            if (r)+                media_box.left = r->value;++            r = HPDF_Array_GetItem (array, 1, HPDF_OCLASS_REAL);+            if (r)+                media_box.bottom = r->value;++            r = HPDF_Array_GetItem (array, 2, HPDF_OCLASS_REAL);+            if (r)+                media_box.right = r->value;++            r = HPDF_Array_GetItem (array, 3, HPDF_OCLASS_REAL);+            if (r)+                media_box.top = r->value;++            HPDF_CheckError (page->error);+        } else HPDF_RaiseError (page->error, HPDF_PAGE_CANNOT_FIND_OBJECT, 0);+    }++    return media_box;+}+++const char*+HPDF_Page_GetXObjectName  (HPDF_Page     page,+                           HPDF_XObject  xobj)+{+    HPDF_PageAttr attr = (HPDF_PageAttr )page->attr;+    const char *key;++    HPDF_PTRACE((" HPDF_Page_GetXObjectName\n"));++    if (!attr->xobjects) {+        HPDF_Dict resources;+        HPDF_Dict xobjects;++        resources = HPDF_Page_GetInheritableItem (page, "Resources",+                        HPDF_OCLASS_DICT);+        if (!resources)+            return NULL;++        xobjects = HPDF_Dict_New (page->mmgr);+        if (!xobjects)+            return NULL;++        if (HPDF_Dict_Add (resources, "XObject", xobjects) != HPDF_OK)+            return NULL;++        attr->xobjects = xobjects;+    }++    /* search xobject-object from xobject-resource */+    key = HPDF_Dict_GetKeyByObj (attr->xobjects, xobj);+    if (!key) {+        /* if the xobject is not resisterd in xobject-resource, register+         * xobject to xobject-resource.+         */+        char xobj_name[HPDF_LIMIT_MAX_NAME_LEN + 1];+        char *ptr;+        char *end_ptr = xobj_name + HPDF_LIMIT_MAX_NAME_LEN;++        ptr = HPDF_StrCpy (xobj_name, "X", end_ptr);+        HPDF_IToA (ptr, attr->xobjects->list->count + 1, end_ptr);++        if (HPDF_Dict_Add (attr->xobjects, xobj_name, xobj) != HPDF_OK)+            return NULL;++        key = HPDF_Dict_GetKeyByObj (attr->xobjects, xobj);+    }++    return key;+}+++const char*+HPDF_Page_GetExtGStateName  (HPDF_Page       page,+                             HPDF_ExtGState  state)+{+    HPDF_PageAttr attr = (HPDF_PageAttr )page->attr;+    const char *key;++    HPDF_PTRACE((" HPDF_Page_GetExtGStateName\n"));++    if (!attr->ext_gstates) {+        HPDF_Dict resources;+        HPDF_Dict ext_gstates;++        resources = HPDF_Page_GetInheritableItem (page, "Resources",+                        HPDF_OCLASS_DICT);+        if (!resources)+            return NULL;++        ext_gstates = HPDF_Dict_New (page->mmgr);+        if (!ext_gstates)+            return NULL;++        if (HPDF_Dict_Add (resources, "ExtGState", ext_gstates) != HPDF_OK)+            return NULL;++        attr->ext_gstates = ext_gstates;+    }++    /* search ext_gstate-object from ext_gstate-resource */+    key = HPDF_Dict_GetKeyByObj (attr->ext_gstates, state);+    if (!key) {+        /* if the ext-gstate is not resisterd in ext-gstate resource, register+         *  to ext-gstate resource.+         */+        char ext_gstate_name[HPDF_LIMIT_MAX_NAME_LEN + 1];+        char *ptr;+        char *end_ptr = ext_gstate_name + HPDF_LIMIT_MAX_NAME_LEN;++        ptr = HPDF_StrCpy (ext_gstate_name, "E", end_ptr);+        HPDF_IToA (ptr, attr->ext_gstates->list->count + 1, end_ptr);++        if (HPDF_Dict_Add (attr->ext_gstates, ext_gstate_name, state) != HPDF_OK)+            return NULL;++        key = HPDF_Dict_GetKeyByObj (attr->ext_gstates, state);+    }++    return key;+}+++static HPDF_STATUS+AddAnnotation  (HPDF_Page        page,+                HPDF_Annotation  annot)+{+    HPDF_Array array;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Pages\n"));++    /* find "Annots" entry */+    array = HPDF_Dict_GetItem (page, "Annots", HPDF_OCLASS_ARRAY);++    if (!array) {+        array = HPDF_Array_New (page->mmgr);+        if (!array)+            return HPDF_Error_GetCode (page->error);++        ret = HPDF_Dict_Add (page, "Annots", array);+        if (ret != HPDF_OK)+            return ret;+    }++    return HPDF_Array_Add (array, annot);+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_TextWidth  (HPDF_Page        page,+                      const char      *text)+{+    HPDF_PageAttr attr;+    HPDF_TextWidth tw;+    HPDF_REAL ret = 0;+    HPDF_UINT len = HPDF_StrLen(text, HPDF_LIMIT_MAX_STRING_LEN + 1);++    HPDF_PTRACE((" HPDF_Page_TextWidth\n"));++    if (!HPDF_Page_Validate (page) || len == 0)+        return 0;++    attr = (HPDF_PageAttr )page->attr;++    /* no font exists */+    if (!attr->gstate->font) {+        HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);+        return 0;+    }++    tw = HPDF_Font_TextWidth (attr->gstate->font, text, len);++    ret += attr->gstate->word_space * tw.numspace;+    ret += tw.width * attr->gstate->font_size  / 1000;+    ret += attr->gstate->char_space * tw.numchars;++    HPDF_CheckError (page->error);++    return ret;+}+++HPDF_EXPORT(HPDF_UINT)+HPDF_Page_MeasureText  (HPDF_Page          page,+                        const char        *text,+                        HPDF_REAL          width,+                        HPDF_BOOL          wordwrap,+                        HPDF_REAL         *real_width)+{+    HPDF_PageAttr attr;+    HPDF_UINT len = HPDF_StrLen(text, HPDF_LIMIT_MAX_STRING_LEN + 1);+    HPDF_UINT ret;++    if (!HPDF_Page_Validate (page) || len == 0)+        return 0;++    attr = (HPDF_PageAttr )page->attr;++    HPDF_PTRACE((" HPDF_Page_MeasureText\n"));++    /* no font exists */+    if (!attr->gstate->font) {+        HPDF_RaiseError (page->error, HPDF_PAGE_FONT_NOT_FOUND, 0);+        return 0;+    }++    ret = HPDF_Font_MeasureText (attr->gstate->font, text, len, width,+        attr->gstate->font_size, attr->gstate->char_space,+        attr->gstate->word_space, wordwrap, real_width);++    HPDF_CheckError (page->error);++    return ret;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetWidth  (HPDF_Page    page)+{+    return HPDF_Page_GetMediaBox (page).right;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetHeight  (HPDF_Page    page)+{+    return HPDF_Page_GetMediaBox (page).top;+}+++HPDF_EXPORT(HPDF_Font)+HPDF_Page_GetCurrentFont  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetFontName\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->font;+    } else+        return NULL;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetCurrentFontSize  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetCurrentFontSize\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return (attr->gstate->font) ? attr->gstate->font_size : 0;+    } else+        return 0;+}+++HPDF_EXPORT(HPDF_TransMatrix)+HPDF_Page_GetTransMatrix  (HPDF_Page   page)+{+    HPDF_TransMatrix DEF_MATRIX = {1, 0, 0, 1, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetTransMatrix\n"));+    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->trans_matrix;+    } else+        return DEF_MATRIX;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetLineWidth  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetLineWidth\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->line_width;+    } else+        return HPDF_DEF_LINEWIDTH;+}+++HPDF_EXPORT(HPDF_LineCap)+HPDF_Page_GetLineCap  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetLineCap\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->line_cap;+    } else+        return HPDF_DEF_LINECAP;+}+++HPDF_EXPORT(HPDF_LineJoin)+HPDF_Page_GetLineJoin  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetLineJoin\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->line_join;+    } else+        return HPDF_DEF_LINEJOIN;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetMiterLimit  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetMiterLimit\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->miter_limit;+    } else+        return HPDF_DEF_MITERLIMIT;+}+++HPDF_EXPORT(HPDF_DashMode)+HPDF_Page_GetDash  (HPDF_Page   page)+{+    HPDF_DashMode mode = {{0, 0, 0, 0, 0, 0, 0, 0}, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetDash\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        mode = attr->gstate->dash_mode;+    }++    return mode;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetFlat  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetFlat\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->flatness;+    } else+        return HPDF_DEF_FLATNESS;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetWordSpace  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetWordSpace\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->word_space;+    } else+        return HPDF_DEF_WORDSPACE;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetCharSpace  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetCharSpace\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->char_space;+    } else+        return HPDF_DEF_CHARSPACE;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetHorizontalScalling  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetHorizontalScalling\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->h_scalling;+    } else+        return HPDF_DEF_HSCALING;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextLeading  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetTextLeading\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->text_leading;+    } else+        return HPDF_DEF_LEADING;+}+++HPDF_EXPORT(HPDF_TextRenderingMode)+HPDF_Page_GetTextRenderingMode  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GettextRenderingMode\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->rendering_mode;+    } else+        return HPDF_DEF_RENDERING_MODE;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextRaise  (HPDF_Page   page)+{+	return HPDF_Page_GetTextRise (page);+}++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetTextRise  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetTextRise\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->text_rise;+    } else+        return HPDF_DEF_RISE;+}+++HPDF_EXPORT(HPDF_RGBColor)+HPDF_Page_GetRGBFill  (HPDF_Page   page)+{+    HPDF_RGBColor DEF_RGB_COLOR = {0, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetRGBFill\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_fill == HPDF_CS_DEVICE_RGB)+            return attr->gstate->rgb_fill;+    }++    return DEF_RGB_COLOR;+}+++HPDF_EXPORT(HPDF_RGBColor)+HPDF_Page_GetRGBStroke  (HPDF_Page   page)+{+    HPDF_RGBColor DEF_RGB_COLOR = {0, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetRGBStroke\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_stroke == HPDF_CS_DEVICE_RGB)+            return attr->gstate->rgb_stroke;+    }++    return DEF_RGB_COLOR;+}++HPDF_EXPORT(HPDF_CMYKColor)+HPDF_Page_GetCMYKFill  (HPDF_Page   page)+{+    HPDF_CMYKColor DEF_CMYK_COLOR = {0, 0, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetCMYKFill\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_fill == HPDF_CS_DEVICE_CMYK)+            return attr->gstate->cmyk_fill;+    }++    return DEF_CMYK_COLOR;+}+++HPDF_EXPORT(HPDF_CMYKColor)+HPDF_Page_GetCMYKStroke  (HPDF_Page   page)+{+    HPDF_CMYKColor DEF_CMYK_COLOR = {0, 0, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetCMYKStroke\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_stroke == HPDF_CS_DEVICE_CMYK)+            return attr->gstate->cmyk_stroke;+    }++    return DEF_CMYK_COLOR;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetGrayFill  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetGrayFill\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_fill == HPDF_CS_DEVICE_GRAY)+            return attr->gstate->gray_fill;+    }++    return 0;+}+++HPDF_EXPORT(HPDF_REAL)+HPDF_Page_GetGrayStroke  (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetGrayStroke\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gstate->cs_stroke == HPDF_CS_DEVICE_GRAY)+            return attr->gstate->gray_stroke;+    }++    return 0;+}+++HPDF_EXPORT(HPDF_ColorSpace)+HPDF_Page_GetStrokingColorSpace (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetStrokingColorSpace\n"));++    if (HPDF_Page_Validate (page))+        return ((HPDF_PageAttr)page->attr)->gstate->cs_stroke;++    return HPDF_CS_EOF;+}+++HPDF_EXPORT(HPDF_ColorSpace)+HPDF_Page_GetFillingColorSpace (HPDF_Page   page)+{+    HPDF_PTRACE((" HPDF_Page_GetFillingColorSpace\n"));++    if (HPDF_Page_Validate (page))+        return ((HPDF_PageAttr)page->attr)->gstate->cs_fill;++    return HPDF_CS_EOF;+}+++HPDF_EXPORT(HPDF_TransMatrix)+HPDF_Page_GetTextMatrix  (HPDF_Page   page)+{+    HPDF_TransMatrix DEF_MATRIX = {1, 0, 0, 1, 0, 0};++    HPDF_PTRACE((" HPDF_Page_GetTextMatrix\n"));+    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->text_matrix;+    } else+        return DEF_MATRIX;+}+++HPDF_EXPORT(HPDF_UINT)+HPDF_Page_GetGStateDepth  (HPDF_Page    page)+{+    HPDF_PTRACE((" HPDF_Page_GetGStateDepth\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        return attr->gstate->depth;+    } else+        return 0;+}+++HPDF_EXPORT(HPDF_UINT16)+HPDF_Page_GetGMode  (HPDF_Page   page)+{+    if (HPDF_Page_Validate (page))+        return ((HPDF_PageAttr)page->attr)->gmode;++    return 0;+}++HPDF_EXPORT(HPDF_Point)+HPDF_Page_GetCurrentPos (HPDF_Page  page)+{+    HPDF_Point pos = {0, 0};++    HPDF_PTRACE((" HPDF_Page_GetCurrentPos\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gmode & HPDF_GMODE_PATH_OBJECT)+            pos = attr->cur_pos;+    }++    return pos;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GetCurrentPos2 (HPDF_Page   page,+                          HPDF_Point *pos)+{+    HPDF_PageAttr attr;+    HPDF_PTRACE((" HPDF_Page_GetCurrentPos2\n"));++    pos->x = 0;+    pos->y = 0;+    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    attr = (HPDF_PageAttr)page->attr;++    if (attr->gmode & HPDF_GMODE_PATH_OBJECT)+        *pos = attr->cur_pos;++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_Point)+HPDF_Page_GetCurrentTextPos (HPDF_Page  page)+{+    HPDF_Point pos = {0, 0};++    HPDF_PTRACE((" HPDF_Page_GetCurrentTextPos\n"));++    if (HPDF_Page_Validate (page)) {+        HPDF_PageAttr attr = (HPDF_PageAttr)page->attr;++        if (attr->gmode & HPDF_GMODE_TEXT_OBJECT)+            pos = attr->text_pos;+    }+    +    return pos;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_GetCurrentTextPos2 (HPDF_Page   page,+                              HPDF_Point *pos)+{+    HPDF_PageAttr attr;++    HPDF_PTRACE((" HPDF_Page_GetCurrentTextPos2\n"));++    pos->x = 0;+    pos->y = 0;+    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    attr = (HPDF_PageAttr)page->attr;++    if (attr->gmode & HPDF_GMODE_TEXT_OBJECT)+        *pos = attr->text_pos;++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Page_SetBoxValue (HPDF_Page          page,+                       const char   *name,+                       HPDF_UINT          index,+                       HPDF_REAL          value)+{+    HPDF_Real r;+    HPDF_Array array;++    HPDF_PTRACE((" HPDF_Page_SetBoxValue\n"));++    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    array = HPDF_Page_GetInheritableItem (page, name, HPDF_OCLASS_ARRAY);+    if (!array)+        return HPDF_SetError (page->error, HPDF_PAGE_CANNOT_FIND_OBJECT, 0);++    r = HPDF_Array_GetItem (array, index, HPDF_OCLASS_REAL);+    if (!r)+        return HPDF_SetError (page->error, HPDF_PAGE_INVALID_INDEX, 0);++    r->value = value;++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetRotate (HPDF_Page      page,+                     HPDF_UINT16    angle)+{+    HPDF_Number n;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE((" HPDF_Page_SetRotate\n"));++    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    if (angle % 90 != 0)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_ROTATE_VALUE,+                (HPDF_STATUS)angle);++    n = HPDF_Page_GetInheritableItem (page, "Rotate", HPDF_OCLASS_NUMBER);++    if (!n)+        ret = HPDF_Dict_AddNumber (page, "Rotate", angle);+    else+        n->value = angle;++    return ret;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetWidth  (HPDF_Page    page,+                     HPDF_REAL    value)+{+    HPDF_PTRACE((" HPDF_Page_SetWidth\n"));++    if (value < 3 || value > 14400)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_SIZE, 0);++    if (HPDF_Page_SetBoxValue (page, "MediaBox", 2, value) != HPDF_OK)+        return HPDF_CheckError (page->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetHeight  (HPDF_Page    page,+                      HPDF_REAL    value)+{+    HPDF_PTRACE((" HPDF_Page_SetWidth\n"));++    if (value < 3 || value > 14400)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_SIZE, 0);++    if (HPDF_Page_SetBoxValue (page, "MediaBox", 3, value) != HPDF_OK)+        return HPDF_CheckError (page->error);++    return HPDF_OK;+}+++HPDF_EXPORT(HPDF_STATUS)+HPDF_Page_SetSize  (HPDF_Page             page,+                    HPDF_PageSizes        size,+                    HPDF_PageDirection    direction)+{+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE((" HPDF_Page_SetSize\n"));++    if (!HPDF_Page_Validate (page))+        return HPDF_INVALID_PAGE;++    if (size < 0 || size > HPDF_PAGE_SIZE_EOF)+        return HPDF_RaiseError (page->error, HPDF_PAGE_INVALID_SIZE,+                (HPDF_STATUS)direction);++    if (direction == HPDF_PAGE_LANDSCAPE) {+        ret += HPDF_Page_SetHeight (page,+            HPDF_PREDEFINED_PAGE_SIZES[(HPDF_UINT)size].x);+        ret += HPDF_Page_SetWidth (page,+            HPDF_PREDEFINED_PAGE_SIZES[(HPDF_UINT)size].y);+    } else if (direction == HPDF_PAGE_PORTRAIT) {+        ret += HPDF_Page_SetHeight (page,+            HPDF_PREDEFINED_PAGE_SIZES[(HPDF_UINT)size].y);+        ret += HPDF_Page_SetWidth (page,+            HPDF_PREDEFINED_PAGE_SIZES[(HPDF_UINT)size].x);+    } else+        ret = HPDF_SetError (page->error, HPDF_PAGE_INVALID_DIRECTION,+                (HPDF_STATUS)direction);++    if (ret != HPDF_OK)+        return HPDF_CheckError (page->error);++    return HPDF_OK;+}+++HPDF_BOOL+HPDF_Page_Validate  (HPDF_Page  page)+{+    HPDF_Obj_Header *header = (HPDF_Obj_Header *)page;++    HPDF_PTRACE((" HPDF_Page_Validate\n"));++    if (!page || !page->attr)+        return HPDF_FALSE;++    if (header->obj_class != (HPDF_OCLASS_DICT | HPDF_OSUBCLASS_PAGE))+        return HPDF_FALSE;++    return HPDF_TRUE;+}+++HPDF_EXPORT(HPDF_Destination)+HPDF_Page_CreateDestination  (HPDF_Page   page)+{+    HPDF_PageAttr attr;+    HPDF_Destination dst;++    HPDF_PTRACE((" HPDF_Page_CreateDestination\n"));++    if (!HPDF_Page_Validate (page))+        return NULL;++    attr = (HPDF_PageAttr)page->attr;++    dst = HPDF_Destination_New (page->mmgr, page, attr->xref);+    if (!dst)+        HPDF_CheckError (page->error);++    return dst;+}+++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateTextAnnot  (HPDF_Page          page,+                            HPDF_Rect          rect,+                            const char   *text,+                            HPDF_Encoder       encoder)+{+    HPDF_PageAttr attr;+    HPDF_Annotation annot;++    HPDF_PTRACE((" HPDF_Page_CreateTextAnnot\n"));++    if (!HPDF_Page_Validate (page))+        return NULL;++    attr = (HPDF_PageAttr)page->attr;++    if (encoder && !HPDF_Encoder_Validate (encoder)) {+        HPDF_RaiseError (page->error, HPDF_INVALID_ENCODER, 0);+        return NULL;+    }++    annot = HPDF_TextAnnot_New (page->mmgr, attr->xref, rect, text, encoder);+    if (annot) {+        if (AddAnnotation (page, annot) != HPDF_OK) {+            HPDF_CheckError (page->error);+            annot = NULL;+        }+    } else+        HPDF_CheckError (page->error);++    return annot;+}+++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateLinkAnnot  (HPDF_Page          page,+                            HPDF_Rect          rect,+                            HPDF_Destination   dst)+{+    HPDF_PageAttr attr;+    HPDF_Annotation annot;++    HPDF_PTRACE((" HPDF_Page_CreateLinkAnnot\n"));++    if (!HPDF_Page_Validate (page))+        return NULL;++    attr = (HPDF_PageAttr)page->attr;++    if (!HPDF_Destination_Validate (dst)) {+        HPDF_RaiseError (page->error, HPDF_INVALID_DESTINATION, 0);+        return NULL;+    }++    annot = HPDF_LinkAnnot_New (page->mmgr, attr->xref, rect, dst);+    if (annot) {+        if (AddAnnotation (page, annot) != HPDF_OK) {+            HPDF_CheckError (page->error);+            annot = NULL;+        }+    } else+        HPDF_CheckError (page->error);++    return annot;+}+++HPDF_EXPORT(HPDF_Annotation)+HPDF_Page_CreateURILinkAnnot  (HPDF_Page          page,+                               HPDF_Rect          rect,+                               const char   *uri)+{+    HPDF_PageAttr attr;+    HPDF_Annotation annot;++    HPDF_PTRACE((" HPDF_Page_CreateURILinkAnnot\n"));++    if (!HPDF_Page_Validate (page))+        return NULL;++    attr = (HPDF_PageAttr)page->attr;++    if (HPDF_StrLen (uri, HPDF_LIMIT_MAX_STRING_LEN) <= 0) {+        HPDF_RaiseError (page->error, HPDF_INVALID_URI, 0);+        return NULL;+    }++    annot = HPDF_URILinkAnnot_New (page->mmgr, attr->xref, rect, uri);+    if (annot) {+        if (AddAnnotation (page, annot) != HPDF_OK) {+            HPDF_CheckError (page->error);+            annot = NULL;+        }+    } else+        HPDF_CheckError (page->error);++    return annot;+}+++void+HPDF_Page_SetFilter  (HPDF_Page    page,+                      HPDF_UINT    filter)+{+    HPDF_PageAttr attr;++    HPDF_PTRACE((" HPDF_Page_SetFilter\n"));++    attr = (HPDF_PageAttr)page->attr;+    attr->contents->filter = filter;+}+
+ haru/hpdf_pages.h view
@@ -0,0 +1,128 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_pages.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_PAGES_H+#define _HPDF_PAGES_H++#include "hpdf_gstate.h"+#include "hpdf_ext_gstate.h"++#ifdef __cplusplus+extern "C" {+#endif++/*----------------------------------------------------------------------------*/+/*----- HPDF_Pages -----------------------------------------------------------*/++HPDF_Pages+HPDF_Pages_New  (HPDF_MMgr   mmgr,+                 HPDF_Pages  parent,+                 HPDF_Xref   xref);+++HPDF_BOOL+HPDF_Pages_Validate  (HPDF_Pages  pages);+++HPDF_STATUS+HPDF_Pages_AddKids  (HPDF_Pages  parent,+                      HPDF_Dict   kid);+++HPDF_STATUS+HPDF_Page_InsertBefore  (HPDF_Page   page,+                         HPDF_Page   target);+++typedef struct _HPDF_PageAttr_Rec  *HPDF_PageAttr;++typedef struct _HPDF_PageAttr_Rec {+    HPDF_Pages         parent;+    HPDF_Dict          fonts;+    HPDF_Dict          xobjects;+    HPDF_Dict          ext_gstates;+    HPDF_GState        gstate;+    HPDF_Point         str_pos;+    HPDF_Point         cur_pos;+    HPDF_Point         text_pos;+    HPDF_TransMatrix   text_matrix;+    HPDF_UINT16        gmode;+    HPDF_Dict          contents;+    HPDF_Stream        stream;+    HPDF_Xref          xref;+    HPDF_UINT          compression_mode;+	HPDF_PDFVer       *ver; +} HPDF_PageAttr_Rec;+++/*----------------------------------------------------------------------------*/+/*----- HPDF_Page ------------------------------------------------------------*/++HPDF_BOOL+HPDF_Page_Validate  (HPDF_Page  page);+++HPDF_Page+HPDF_Page_New  (HPDF_MMgr   mmgr,+                HPDF_Xref   xref);+++void*+HPDF_Page_GetInheritableItem  (HPDF_Page      page,+                               const char    *key,+                               HPDF_UINT16    obj_class);+++const char*+HPDF_Page_GetXObjectName  (HPDF_Page     page,+                           HPDF_XObject  xobj);+++const char*+HPDF_Page_GetLocalFontName  (HPDF_Page  page,+                             HPDF_Font  font);+++const char*+HPDF_Page_GetExtGStateName  (HPDF_Page       page,+                             HPDF_ExtGState  gstate);+++HPDF_Box+HPDF_Page_GetMediaBox  (HPDF_Page    page);+++HPDF_STATUS+HPDF_Page_SetBoxValue (HPDF_Page     page,+                       const char   *name,+                       HPDF_UINT     index,+                       HPDF_REAL     value);+++void+HPDF_Page_SetFilter  (HPDF_Page    page,+                      HPDF_UINT    filter);+++HPDF_STATUS+HPDF_Page_CheckState  (HPDF_Page  page,+                       HPDF_UINT  mode);+++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_PAGES_H */+
+ haru/hpdf_real.c view
@@ -0,0 +1,61 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_real.c+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"+++HPDF_Real+HPDF_Real_New  (HPDF_MMgr  mmgr,+                HPDF_REAL  value)+{+    HPDF_Real obj = HPDF_GetMem (mmgr, sizeof(HPDF_Real_Rec));++    if (obj) {+        HPDF_MemSet (&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_REAL;+        obj->error = mmgr->error;+        HPDF_Real_SetValue (obj, value);+    }++    return obj;+}+++HPDF_STATUS+HPDF_Real_Write  (HPDF_Real    obj,+                  HPDF_Stream  stream)+{+    return HPDF_Stream_WriteReal (stream, obj->value);+}+++HPDF_STATUS+HPDF_Real_SetValue  (HPDF_Real  obj,+                     HPDF_REAL  value)+{+    HPDF_STATUS ret = HPDF_OK;++    if (value > HPDF_LIMIT_MAX_REAL)+        return HPDF_SetError (obj->error, HPDF_REAL_OUT_OF_RANGE, 0);++    if (value < HPDF_LIMIT_MIN_REAL)+        return HPDF_SetError (obj->error, HPDF_REAL_OUT_OF_RANGE, 0);++    obj->value =value;++    return ret;+}+
+ haru/hpdf_streams.c view
@@ -0,0 +1,1435 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_streams.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2005.12.20 Created.+ *+ */++#include <errno.h>++#ifndef HPDF_NOZLIB+#include <zlib.h>+#include <zconf.h>+#endif /* HPDF_NOZLIB */++#include "hpdf_conf.h"+#include "hpdf_consts.h"+#include "hpdf_utils.h"+#include "hpdf_streams.h"++HPDF_STATUS+HPDF_MemStream_WriteFunc  (HPDF_Stream      stream,+                           const HPDF_BYTE  *ptr,+                           HPDF_UINT        siz);+++HPDF_STATUS+HPDF_MemStream_SeekFunc  (HPDF_Stream      stream,+                          HPDF_INT         pos,+                          HPDF_WhenceMode  mode);+++HPDF_STATUS+HPDF_MemStream_ReadFunc  (HPDF_Stream  stream,+                          HPDF_BYTE    *buf,+                          HPDF_UINT    *size);+++HPDF_INT32+HPDF_MemStream_TellFunc  (HPDF_Stream  stream);+++HPDF_UINT32+HPDF_MemStream_SizeFunc  (HPDF_Stream  stream);+++void+HPDF_MemStream_FreeFunc  (HPDF_Stream  stream);++HPDF_STATUS+HPDF_MemStream_InWrite  (HPDF_Stream      stream,+                         const HPDF_BYTE  **ptr,+                         HPDF_UINT        *count);++HPDF_STATUS+HPDF_Stream_WriteToStreamWithDeflate  (HPDF_Stream  src,+                                       HPDF_Stream  dst,+                                       HPDF_Encrypt  e);+++HPDF_STATUS+HPDF_FileReader_ReadFunc  (HPDF_Stream  stream,+                          HPDF_BYTE    *ptr,+                          HPDF_UINT    *siz);+++HPDF_STATUS+HPDF_FileReader_SeekFunc  (HPDF_Stream      stream,+                           HPDF_INT         pos,+                           HPDF_WhenceMode  mode);+++HPDF_INT32+HPDF_FileStream_TellFunc  (HPDF_Stream  stream);+++HPDF_UINT32+HPDF_FileStream_SizeFunc  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_FileWriter_WriteFunc  (HPDF_Stream      stream,+                            const HPDF_BYTE  *ptr,+                            HPDF_UINT        siz);++void+HPDF_FileStream_FreeFunc  (HPDF_Stream  stream);++++/*+ *  HPDF_Stream_Read+ *+ *  stream : Pointer to a HPDF_Stream object.+ *  ptr : Pointer to a buffer to copy read data.+ *  size : Pointer to a variable which indecates buffer size.+ *+ *  HPDF_Stream_read returns HPDF_OK when success. On failer, it returns+ *  error-code returned by reading function of this stream.+ *+ */++HPDF_STATUS+HPDF_Stream_Read  (HPDF_Stream  stream,+                   HPDF_BYTE    *ptr,+                   HPDF_UINT    *size)+{+    if (!(stream->read_fn))+        return HPDF_SetError (stream->error, HPDF_INVALID_OPERATION, 0);++    /*+    if (HPDF_Error_GetCode(stream->error) != HPDF_NOERROR)+        return HPDF_THIS_FUNC_WAS_SKIPPED;+    */++    return stream->read_fn(stream, ptr, size);+}+++/*+ *  HPDF_Stream_ReadLn+ *+ *  stream : Pointer to a HPDF_Stream object.+ *  s : Pointer to a buffer to copy read data.+ *  size : buffer-size of s.+ *+ *  Read from stream until the buffer is exhausted or line-feed charactor is+ *  read.+ *+ */+HPDF_STATUS+HPDF_Stream_ReadLn  (HPDF_Stream  stream,+                     char    *s,+                     HPDF_UINT    *size)+{+    char buf[HPDF_STREAM_BUF_SIZ];+    HPDF_UINT r_size = *size;+    HPDF_UINT read_size = HPDF_STREAM_BUF_SIZ;++    HPDF_PTRACE((" HPDF_Stream_ReadLn\n"));++    if (!stream || !s || *size == 0)+        return HPDF_SetError (stream->error, HPDF_INVALID_PARAMETER, 0);++    if (!(stream->seek_fn) || !(stream->read_fn))+        return HPDF_SetError (stream->error, HPDF_INVALID_OPERATION, 0);++    if (r_size < HPDF_STREAM_BUF_SIZ)+        read_size = r_size;++    *size = 0;++    while (r_size > 1) {+        char *pbuf = buf;+        HPDF_STATUS ret = HPDF_Stream_Read (stream, buf, &read_size);++        if (ret != HPDF_OK && read_size == 0)+            return ret;++        r_size -= read_size;++        while (read_size > 0) {+            if (*pbuf == 0x0A || *pbuf == 0x0D) {+                *s = 0;+                read_size--;++                /* handling CR-LF marker */+                if (*pbuf == 0x0D || read_size > 1) {+                    pbuf++;++                    if (*pbuf == 0x0A)+                        read_size--;+                }++                if (read_size > 0)+                    return HPDF_Stream_Seek (stream, 0 - read_size,+                                HPDF_SEEK_CUR);+                else+                    return HPDF_OK;+            }++            *s++ = *pbuf++;+            read_size--;+            (*size)++;+        }++        if (r_size < HPDF_STREAM_BUF_SIZ)+            read_size = r_size;+        else+            read_size = HPDF_STREAM_BUF_SIZ;++        if (ret == HPDF_STREAM_EOF)+            return HPDF_STREAM_EOF;+    }++    *s = 0;++    return HPDF_STREAM_READLN_CONTINUE;+}+++/*+ * HPDF_Stream_Write+ *+ *  stream : Pointer to a HPDF_Stream object.+ *  ptr : Pointer to a buffer to write.+ *  siz : The size of buffer to write.+ *+ *  HPDF_Stream_Write returns HPDF_OK when success. On failer, it returns+ *  error-code returned by writing function of this stream.+ *+ */+HPDF_STATUS+HPDF_Stream_Write  (HPDF_Stream      stream,+                    const HPDF_BYTE  *ptr,+                    HPDF_UINT        size)+{+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Stream_Write\n"));++    if (!(stream->write_fn))+        return HPDF_SetError(stream->error, HPDF_INVALID_OPERATION, 0);++    /*+    if (HPDF_Error_GetCode(stream->error) != HPDF_NOERROR)+        return HPDF_THIS_FUNC_WAS_SKIPPED;+    */++    ret = stream->write_fn(stream, ptr, size);++    if (ret != HPDF_OK)+        return ret;++    stream->size += size;++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_Stream_WriteChar  (HPDF_Stream  stream,+                        char    value)+{+    return HPDF_Stream_Write(stream, &value, sizeof(char));+}+++HPDF_STATUS+HPDF_Stream_WriteStr  (HPDF_Stream      stream,+                       const char  *value)+{+    HPDF_UINT len = HPDF_StrLen(value, -1);++    return HPDF_Stream_Write(stream, value, len);+}++HPDF_STATUS+HPDF_Stream_WriteUChar  (HPDF_Stream  stream,+                         HPDF_BYTE    value)+{+    return HPDF_Stream_Write(stream, &value, sizeof(HPDF_BYTE));+}++HPDF_STATUS+HPDF_Stream_WriteInt  (HPDF_Stream  stream,+                       HPDF_INT     value)+{+    char buf[HPDF_INT_LEN + 1];++    char* p = HPDF_IToA(buf, value, buf + HPDF_INT_LEN);++    return HPDF_Stream_Write(stream, buf, (HPDF_UINT)(p - buf));+}++HPDF_STATUS+HPDF_Stream_WriteUInt  (HPDF_Stream  stream,+                        HPDF_UINT    value)+{+    return HPDF_Stream_WriteInt(stream, (HPDF_INT)value);+}++HPDF_STATUS+HPDF_Stream_WriteReal  (HPDF_Stream  stream,+                        HPDF_REAL    value)+{+    char buf[HPDF_REAL_LEN + 1];++    char* p = HPDF_FToA(buf, value, buf + HPDF_REAL_LEN);++    return HPDF_Stream_Write(stream, buf, (HPDF_UINT)(p - buf));+}++void+HPDF_Stream_Free  (HPDF_Stream  stream)+{+    if (!stream)+        return;++    if (stream->free_fn)+        stream->free_fn(stream);++    stream->sig_bytes = 0;++    HPDF_FreeMem(stream->mmgr, stream);+}++HPDF_STATUS+HPDF_Stream_Seek  (HPDF_Stream      stream,+                   HPDF_INT         pos,+                   HPDF_WhenceMode  mode)+{+    HPDF_PTRACE((" HPDF_Stream_Seek\n"));++    if (!(stream->seek_fn))+        return HPDF_SetError (stream->error, HPDF_INVALID_OPERATION, 0);++    if (HPDF_Error_GetCode(stream->error) != 0)+        return HPDF_THIS_FUNC_WAS_SKIPPED;++    return stream->seek_fn(stream, pos, mode);+}+++HPDF_INT32+HPDF_Stream_Tell  (HPDF_Stream  stream)+{+    HPDF_PTRACE((" HPDF_Stream_Tell\n"));++    if (!(stream->tell_fn))+        return HPDF_SetError (stream->error, HPDF_INVALID_OPERATION, 0);++    if (HPDF_Error_GetCode(stream->error) != 0)+        return HPDF_THIS_FUNC_WAS_SKIPPED;++    return stream->tell_fn(stream);+}+++HPDF_UINT32+HPDF_Stream_Size  (HPDF_Stream  stream)+{+    HPDF_PTRACE((" HPDF_Stream_Tell\n"));++    if (stream->write_fn)+        return stream->size;++    if (!(stream->size_fn)) {+        HPDF_SetError (stream->error, HPDF_INVALID_OPERATION, 0);+        return 0;+    }++    if (HPDF_Error_GetCode(stream->error) != 0)+        return 0;++    return stream->size_fn(stream);+}+++HPDF_STATUS+HPDF_Stream_WriteEscapeName  (HPDF_Stream      stream,+                              const char  *value)+{+    char tmp_char[HPDF_LIMIT_MAX_NAME_LEN * 3 + 2];+    HPDF_UINT len;+    HPDF_INT i;+    const HPDF_BYTE* pos1;+    char* pos2;++    HPDF_PTRACE((" HPDF_Stream_WriteEscapeName\n"));++    len = HPDF_StrLen (value, HPDF_LIMIT_MAX_NAME_LEN);+    pos1 = (HPDF_BYTE*)value;+    pos2 = tmp_char;++    *pos2++ = '/';+    for (i = 0; i < (HPDF_INT32)len; i++) {+        HPDF_BYTE c = *pos1++;+        if (HPDF_NEEDS_ESCAPE(c)) {+            *pos2++ = '#';+            *pos2 = (char)(c >> 4);+            if (*pos2 <= 9)+                *pos2 += 0x30;+            else+                *pos2 += 0x41 - 10;+            pos2++;++            *pos2 = (char)(c & 0x0f);+            if (*pos2 <= 9)+                *pos2 += 0x30;+            else+                *pos2 += 0x41 - 10;+            pos2++;+        } else+            *pos2++ = c;+    }+    *pos2 = 0;++    return HPDF_Stream_Write (stream, tmp_char, HPDF_StrLen(tmp_char, -1));+}++HPDF_STATUS+HPDF_Stream_WriteEscapeText2  (HPDF_Stream    stream,+                               const char    *text,+                               HPDF_UINT      len)+{+    char buf[HPDF_TEXT_DEFAULT_LEN];+    HPDF_UINT idx = 0;+    HPDF_INT i;+    const char* p = text;+    HPDF_STATUS ret;++    HPDF_PTRACE((" HPDF_Stream_WriteEscapeText2\n"));++    if (!len)+        return HPDF_OK;++    buf[idx++] = '(';++    for (i = 0; i < len; i++) {+        HPDF_BYTE c = (HPDF_BYTE)*p++;+        if (HPDF_NEEDS_ESCAPE(c)) {+            buf[idx++] = '\\';++            buf[idx] = c >> 6;+            buf[idx] += 0x30;+            idx++;+            buf[idx] = (c & 0x38) >> 3;+            buf[idx] += 0x30;+            idx++;+            buf[idx] = (c & 0x07);+            buf[idx] += 0x30;+            idx++;+        }+        else+            buf[idx++] = c;++        if (idx > HPDF_TEXT_DEFAULT_LEN - 4) {+            ret = HPDF_Stream_Write (stream, buf, idx);+            if (ret != HPDF_OK)+                return ret;+            idx = 0;+        }+    }+    buf[idx++] = ')';++    ret = HPDF_Stream_Write (stream, buf, idx);++    return ret;+}++HPDF_STATUS+HPDF_Stream_WriteEscapeText  (HPDF_Stream    stream,+                              const char    *text)+{+    HPDF_UINT len;++    HPDF_PTRACE((" HPDF_Stream_WriteEscapeText\n"));++    len = (text == NULL) ? 0 : HPDF_StrLen (text, HPDF_LIMIT_MAX_STRING_LEN);++    return HPDF_Stream_WriteEscapeText2(stream, text, len);+}++HPDF_STATUS+HPDF_Stream_WriteBinary  (HPDF_Stream      stream,+                          const HPDF_BYTE  *data,+                          HPDF_UINT        len,+                          HPDF_Encrypt     e)+{+    char buf[HPDF_TEXT_DEFAULT_LEN];+    HPDF_BYTE ebuf[HPDF_TEXT_DEFAULT_LEN];+    HPDF_BYTE *pbuf = NULL;+    HPDF_BOOL flg = HPDF_FALSE;+    HPDF_UINT idx = 0;+    HPDF_UINT i;+    const HPDF_BYTE* p;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE((" HPDF_Stream_WriteBinary\n"));++    if (e) {+        if (len <= HPDF_TEXT_DEFAULT_LEN)+            pbuf = ebuf;+        else {+            pbuf = (HPDF_BYTE *)HPDF_GetMem (stream->mmgr, len);+            flg = HPDF_TRUE;+        }++        HPDF_Encrypt_CryptBuf (e, data, pbuf, len);+        p = pbuf;+    } else {+        p = data;+    }++    for (i = 0; i < len; i++, p++) {+        char c = *p >> 4;++        if (c <= 9)+            c += 0x30;+        else+            c += 0x41 - 10;+        buf[idx++] = c;++        c = *p & 0x0f;+        if (c <= 9)+            c += 0x30;+        else+            c += 0x41 - 10;+        buf[idx++] = c;++        if (idx > HPDF_TEXT_DEFAULT_LEN - 2) {+            ret = HPDF_Stream_Write (stream, buf, idx);+            if (ret != HPDF_OK) {+                if (flg)+                    HPDF_FreeMem (stream->mmgr, pbuf);+                return ret;+            }+            idx = 0;+        }+    }++    if (idx > 0) {+        ret = HPDF_Stream_Write (stream, buf, idx);+    }++    if (flg)+        HPDF_FreeMem (stream->mmgr, pbuf);++    return ret;+}+++HPDF_STATUS+HPDF_Stream_WriteToStreamWithDeflate  (HPDF_Stream  src,+                                       HPDF_Stream  dst,+                                       HPDF_Encrypt  e)+{+#ifndef HPDF_NOZLIB++#define DEFLATE_BUF_SIZ  ((HPDF_INT)(HPDF_STREAM_BUF_SIZ * 1.1) + 13)++    HPDF_STATUS ret;+    HPDF_BOOL flg;++    z_stream strm;+    Bytef inbuf[HPDF_STREAM_BUF_SIZ];+    Bytef otbuf[DEFLATE_BUF_SIZ];+    HPDF_BYTE ebuf[DEFLATE_BUF_SIZ];++    HPDF_PTRACE((" HPDF_Stream_WriteToStreamWithDeflate\n"));++    /* initialize input stream */+    ret = HPDF_Stream_Seek (src, 0, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    /* initialize decompression stream. */+    HPDF_MemSet(&strm, 0x00, sizeof(z_stream));+    strm.next_out = otbuf;+    strm.avail_out = DEFLATE_BUF_SIZ;++    ret = deflateInit_(&strm, Z_DEFAULT_COMPRESSION, ZLIB_VERSION,+            sizeof(z_stream));+    if (ret != Z_OK)+        return HPDF_SetError (src->error, HPDF_ZLIB_ERROR, ret);++    strm.next_in = inbuf;+    strm.avail_in = 0;++    flg = HPDF_FALSE;+    for (;;) {+        HPDF_UINT size = HPDF_STREAM_BUF_SIZ;++        ret = HPDF_Stream_Read (src, inbuf, &size);++        strm.next_in = inbuf;+        strm.avail_in = size;++        if (ret != HPDF_OK) {+            if (ret == HPDF_STREAM_EOF) {+                flg = HPDF_TRUE;+                if (size == 0)+                    break;+            } else {+                deflateEnd(&strm);+                return ret;+            }+        }++        while (strm.avail_in > 0) {+            ret = deflate(&strm, Z_NO_FLUSH);+            if (ret != Z_OK && ret != Z_STREAM_END) {+                deflateEnd(&strm);+                return HPDF_SetError (src->error, HPDF_ZLIB_ERROR, ret);+            }++            if (strm.avail_out == 0) {+                if (e) {+                    HPDF_Encrypt_CryptBuf (e, otbuf, ebuf, DEFLATE_BUF_SIZ);+                    ret = HPDF_Stream_Write(dst, ebuf, DEFLATE_BUF_SIZ);+                } else+                    ret = HPDF_Stream_Write (dst, otbuf, DEFLATE_BUF_SIZ);++                if (ret != HPDF_OK) {+                    deflateEnd(&strm);+                    return HPDF_SetError (src->error, HPDF_ZLIB_ERROR, ret);+                }++                strm.next_out = otbuf;+                strm.avail_out = DEFLATE_BUF_SIZ;+            }+        }++        if (flg)+            break;+    }++    flg = HPDF_FALSE;+    for (;;) {+        ret = deflate(&strm, Z_FINISH);+        if (ret != Z_OK && ret != Z_STREAM_END) {+            deflateEnd(&strm);+            return HPDF_SetError (src->error, HPDF_ZLIB_ERROR, ret);+        }++        if (ret == Z_STREAM_END)+            flg = HPDF_TRUE;++        if (strm.avail_out < DEFLATE_BUF_SIZ) {+            HPDF_UINT osize = DEFLATE_BUF_SIZ - strm.avail_out;+            if (e) {+                HPDF_Encrypt_CryptBuf (e, otbuf, ebuf, osize);+                ret = HPDF_Stream_Write(dst, ebuf, osize);+            } else+                ret = HPDF_Stream_Write (dst, otbuf, osize);++            if (ret != HPDF_OK) {+                deflateEnd(&strm);+                return HPDF_SetError (src->error, HPDF_ZLIB_ERROR, ret);+            }++            strm.next_out = otbuf;+            strm.avail_out = DEFLATE_BUF_SIZ;+        }++        if (flg)+            break;+    }++    deflateEnd(&strm);+    return HPDF_OK;+#else /* HPDF_NOZLIB */+    return HPDF_UNSUPPORTED_FUNC;+#endif /* HPDF_NOZLIB */+}++HPDF_STATUS+HPDF_Stream_WriteToStream  (HPDF_Stream  src,+                            HPDF_Stream  dst,+                            HPDF_UINT    filter,+                            HPDF_Encrypt  e)+{+    HPDF_STATUS ret;+    HPDF_BYTE buf[HPDF_STREAM_BUF_SIZ];+    HPDF_BYTE ebuf[HPDF_STREAM_BUF_SIZ];+    HPDF_BOOL flg;++    HPDF_PTRACE((" HPDF_Stream_WriteToStream\n"));++    if (!dst || !(dst->write_fn)) {+        HPDF_SetError (src->error, HPDF_INVALID_OBJECT, 0);+        return HPDF_INVALID_OBJECT;+    }++    if (HPDF_Error_GetCode (src->error) != HPDF_NOERROR ||+            HPDF_Error_GetCode (dst->error) != HPDF_NOERROR)+        return HPDF_THIS_FUNC_WAS_SKIPPED;++#ifndef HPDF_NOZLIB+    if (filter & HPDF_STREAM_FILTER_FLATE_DECODE)+        return HPDF_Stream_WriteToStreamWithDeflate (src, dst, e);+#endif /* HPDF_NOZLIB */++    /* initialize input stream */+    if (HPDF_Stream_Size (src) == 0)+        return HPDF_OK;++    ret = HPDF_Stream_Seek (src, 0, HPDF_SEEK_SET);+    if (ret != HPDF_OK)+        return ret;++    flg = HPDF_FALSE;+    for (;;) {+        HPDF_UINT size = HPDF_STREAM_BUF_SIZ;++        ret = HPDF_Stream_Read (src, buf, &size);++        if (ret != HPDF_OK) {+            if (ret == HPDF_STREAM_EOF) {+                flg = HPDF_TRUE;+                if (size == 0)+                    break;+            } else {+                return ret;+            }+        }++        if (e) {+            HPDF_Encrypt_CryptBuf (e, buf, ebuf, size);+            ret = HPDF_Stream_Write(dst, ebuf, size);+        } else {+            ret = HPDF_Stream_Write(dst, buf, size);+        }++        if (ret != HPDF_OK)+            return ret;++        if (flg)+            break;+    }++    return HPDF_OK;+}++HPDF_Stream+HPDF_FileReader_New  (HPDF_MMgr   mmgr,+                      const char  *fname)+{+    HPDF_Stream stream;+    HPDF_FILEP fp = HPDF_FOPEN (fname, "rb");++    HPDF_PTRACE((" HPDF_FileReader_New\n"));++    if (!fp) {+        HPDF_SetError (mmgr->error, HPDF_FILE_OPEN_ERROR, errno);+        return NULL;+    }++    stream = (HPDF_Stream)HPDF_GetMem(mmgr, sizeof(HPDF_Stream_Rec));++    if (stream) {+        HPDF_MemSet(stream, 0, sizeof(HPDF_Stream_Rec));+        stream->sig_bytes = HPDF_STREAM_SIG_BYTES;+        stream->type = HPDF_STREAM_FILE;+        stream->error = mmgr->error;+        stream->mmgr = mmgr;+        stream->read_fn = HPDF_FileReader_ReadFunc;+        stream->seek_fn = HPDF_FileReader_SeekFunc;+        stream->tell_fn = HPDF_FileStream_TellFunc;+        stream->size_fn = HPDF_FileStream_SizeFunc;+        stream->free_fn = HPDF_FileStream_FreeFunc;+        stream->attr = fp;+    }++    return stream;+}++/*+ *  HPDF_FileReader_ReadFunc+ *+ *  Reading data function for HPDF_FileReader.+ *+ */++HPDF_STATUS+HPDF_FileReader_ReadFunc  (HPDF_Stream  stream,+                          HPDF_BYTE    *ptr,+                          HPDF_UINT    *siz)+{+    HPDF_FILEP fp = (HPDF_FILEP)stream->attr;+    HPDF_UINT rsiz;++    HPDF_PTRACE((" HPDF_FileReader_ReadFunc\n"));++    HPDF_MemSet(ptr, 0, *siz);+    rsiz = HPDF_FREAD(ptr, 1, *siz, fp);++    if (rsiz != *siz) {+        if (HPDF_FEOF(fp)) {++            *siz = rsiz;++            return HPDF_STREAM_EOF;+        }++        return HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR, HPDF_FERROR(fp));+    }++    return HPDF_OK;+}++/*+ *  HPDF_FileReader_SeekFunc+ *+ *  Seeking data function for HPDF_FileReader.+ *+ *  stream : Pointer to a HPDF_Stream object.+ *  pos : New position of stream object.+ *  HPDF_whence_mode : Seeking mode describing below.+ *                     HPDF_SEEK_SET : Absolute file position+ *                     HPDF_SEEK_CUR : Relative to the current file position+ *                     HPDF_SEEK_END : Relative to the current end of file.+ *+ *  HPDF_FileReader_seek_fn returns HPDF_OK when successful. On failer+ *  the result is HPDF_FILE_IO_ERROR and HPDF_Error_GetCode2() returns the+ *  error which returned by file seeking function of platform.+ *+ */++HPDF_STATUS+HPDF_FileReader_SeekFunc  (HPDF_Stream     stream,+                           HPDF_INT         pos,+                           HPDF_WhenceMode  mode)+{+    HPDF_FILEP fp = (HPDF_FILEP)stream->attr;+    HPDF_INT whence;++    HPDF_PTRACE((" HPDF_FileReader_SeekFunc\n"));++    switch (mode) {+        case HPDF_SEEK_CUR:+            whence = SEEK_CUR;+            break;+        case HPDF_SEEK_END:+            whence = SEEK_END;+            break;+        default:+            whence = SEEK_SET;+    }++    if (HPDF_FSEEK (fp, pos, whence) != 0) {+        return HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR, HPDF_FERROR(fp));+    }++    return HPDF_OK;+}+++HPDF_INT32+HPDF_FileStream_TellFunc  (HPDF_Stream   stream)+{+    HPDF_INT32 ret;+    HPDF_FILEP fp = (HPDF_FILEP)stream->attr;++    HPDF_PTRACE((" HPDF_FileReader_TellFunc\n"));++    if ((ret = HPDF_FTELL (fp)) < 0) {+        return HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR,+                HPDF_FERROR(fp));+    }++    return ret;+}+++HPDF_UINT32+HPDF_FileStream_SizeFunc  (HPDF_Stream   stream)+{+    HPDF_INT size;+    HPDF_INT ptr;+    HPDF_FILEP fp = (HPDF_FILEP)stream->attr;++    HPDF_PTRACE((" HPDF_FileReader_SizeFunc\n"));++    /* save current file-pointer */+    if ((ptr = HPDF_FTELL (fp)) < 0) {+        HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR,+                HPDF_FERROR(fp));+        return 0;+    }++    /* move file-pointer to the end of the file */+    if (HPDF_FSEEK (fp, 0, SEEK_END) < 0) {+        HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR,+                HPDF_FERROR(fp));+        return 0;+    }++    /* get the pointer of the end of the file */+    if ((size = HPDF_FTELL (fp)) < 0) {+        HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR,+                HPDF_FERROR(fp));+        return 0;+    }++    /* restore current file-pointer */+    if (HPDF_FSEEK (fp, ptr, SEEK_SET) < 0) {+        HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR,+                HPDF_FERROR(fp));+        return 0;+    }++    return (HPDF_UINT32)size;+}+++HPDF_Stream+HPDF_FileWriter_New  (HPDF_MMgr        mmgr,+                      const char  *fname)+{+    HPDF_Stream stream;+    HPDF_FILEP fp = HPDF_FOPEN (fname, "wb");++    HPDF_PTRACE((" HPDF_FileWriter_New\n"));++    if (!fp) {+        HPDF_SetError (mmgr->error, HPDF_FILE_OPEN_ERROR, errno);+        return NULL;+    }++    stream = (HPDF_Stream)HPDF_GetMem (mmgr, sizeof(HPDF_Stream_Rec));++    if (stream) {+        HPDF_MemSet (stream, 0, sizeof(HPDF_Stream_Rec));+        stream->sig_bytes = HPDF_STREAM_SIG_BYTES;+        stream->error = mmgr->error;+        stream->mmgr = mmgr;+        stream->write_fn = HPDF_FileWriter_WriteFunc;+        stream->free_fn = HPDF_FileStream_FreeFunc;+        stream->tell_fn = HPDF_FileStream_TellFunc;+        stream->attr = fp;+        stream->type = HPDF_STREAM_FILE;+    }++    return stream;+}++HPDF_STATUS+HPDF_FileWriter_WriteFunc  (HPDF_Stream      stream,+                            const HPDF_BYTE  *ptr,+                            HPDF_UINT        siz)+{+    HPDF_FILEP fp;+    HPDF_UINT ret;++    HPDF_PTRACE((" HPDF_FileWriter_WriteFunc\n"));++    fp = (HPDF_FILEP)stream->attr;+    ret = HPDF_FWRITE (ptr, 1, siz, fp);++    if (ret != siz) {+        return HPDF_SetError (stream->error, HPDF_FILE_IO_ERROR, HPDF_FERROR(fp));+    }++    return HPDF_OK;+}+++void+HPDF_FileStream_FreeFunc  (HPDF_Stream  stream)+{+    HPDF_FILEP fp;++    HPDF_PTRACE((" HPDF_FileStream_FreeFunc\n"));++    fp = (HPDF_FILEP)stream->attr;++    if (fp)+        HPDF_FCLOSE(fp);++    stream->attr = NULL;+}++HPDF_STATUS+HPDF_MemStream_InWrite  (HPDF_Stream      stream,+                         const HPDF_BYTE  **ptr,+                         HPDF_UINT        *count)+{+    HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)stream->attr;+    HPDF_UINT rsize = attr->buf_siz - attr->w_pos;++    HPDF_PTRACE((" HPDF_MemStream_InWrite\n"));++    if (*count <= 0)+        return HPDF_OK;++    if (rsize >= *count) {+        HPDF_MemCpy (attr->w_ptr, *ptr, *count);+        attr->w_ptr += *count;+        attr->w_pos += *count;+        *count = 0;+    } else {+        if (rsize > 0) {+            HPDF_MemCpy (attr->w_ptr, *ptr, rsize);+            *ptr += rsize;+            *count -= rsize;+        }+        attr->w_ptr = (HPDF_BYTE*)HPDF_GetMem (stream->mmgr, attr->buf_siz);++        if (attr->w_ptr == NULL)+           return HPDF_Error_GetCode (stream->error);++        if (HPDF_List_Add (attr->buf, attr->w_ptr) != HPDF_OK) {+            HPDF_FreeMem (stream->mmgr, attr->w_ptr);+            attr->w_ptr = NULL;++            return HPDF_Error_GetCode (stream->error);+        }+        attr->w_pos = 0;+    }+    return HPDF_OK;+}+++HPDF_STATUS+HPDF_MemStream_WriteFunc  (HPDF_Stream      stream,+                           const HPDF_BYTE  *ptr,+                           HPDF_UINT        siz)+{+    HPDF_UINT wsiz = siz;++    HPDF_PTRACE((" HPDF_MemStream_WriteFunc\n"));++    if (HPDF_Error_GetCode (stream->error) != 0)+        return HPDF_THIS_FUNC_WAS_SKIPPED;++    while (wsiz > 0) {+        HPDF_STATUS ret = HPDF_MemStream_InWrite (stream, &ptr, &wsiz);+        if (ret != HPDF_OK)+            return ret;+    }++    return HPDF_OK;+}+++HPDF_INT32+HPDF_MemStream_TellFunc  (HPDF_Stream  stream)+{+    HPDF_INT32 ret;+    HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)stream->attr;++    HPDF_PTRACE((" HPDF_MemStream_TellFunc\n"));++    ret = attr->r_ptr_idx * attr->buf_siz;+    ret += attr->r_pos;++    return ret;+}+++HPDF_UINT32+HPDF_MemStream_SizeFunc  (HPDF_Stream  stream)+{+    HPDF_PTRACE((" HPDF_MemStream_SizeFunc\n"));++    return stream->size;+}++HPDF_STATUS+HPDF_MemStream_SeekFunc  (HPDF_Stream      stream,+                          HPDF_INT         pos,+                          HPDF_WhenceMode  mode)+{+    HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)stream->attr;++    HPDF_PTRACE((" HPDF_MemStream_SeekFunc\n"));++    if (mode == HPDF_SEEK_CUR) {+        pos += (attr->r_ptr_idx * attr->buf_siz);+        pos += attr->r_pos;+    } else if (mode == HPDF_SEEK_END)+        pos = stream->size - pos;++    if (pos > stream->size || stream->size == 0)+        return HPDF_SetError (stream->error, HPDF_STREAM_EOF, 0);++    attr->r_ptr_idx = pos / attr->buf_siz;+    attr->r_pos = pos % attr->buf_siz;+    attr->r_ptr = (HPDF_BYTE*)HPDF_List_ItemAt (attr->buf, attr->r_ptr_idx);+    if (attr->r_ptr == NULL) {+        HPDF_SetError (stream->error, HPDF_INVALID_OBJECT, 0);+        return HPDF_INVALID_OBJECT;+    } else+        attr->r_ptr += attr->r_pos;++    return HPDF_OK;+}+++HPDF_BYTE*+HPDF_MemStream_GetBufPtr  (HPDF_Stream  stream,+                           HPDF_UINT    index,+                           HPDF_UINT    *length)+{+    HPDF_BYTE *ret;+    HPDF_MemStreamAttr attr;++    HPDF_PTRACE((" HPDF_MemStream_GetBufPtr\n"));++    if (stream->type != HPDF_STREAM_MEMORY) {+        HPDF_SetError (stream->error, HPDF_INVALID_OBJECT, 0);+        return NULL;+    }++    attr = (HPDF_MemStreamAttr)stream->attr;++    ret = (HPDF_BYTE *)HPDF_List_ItemAt (attr->buf, index);+    if (ret == NULL) {+        HPDF_SetError (stream->error, HPDF_INVALID_PARAMETER, 0);+        *length = 0;+        return NULL;+    }++    *length = (attr->buf->count - 1 == index) ? attr->w_pos : attr->buf_siz;+    return ret;+}+++void+HPDF_MemStream_FreeData  (HPDF_Stream  stream)+{+    HPDF_MemStreamAttr attr;+    HPDF_UINT i;++    HPDF_PTRACE((" HPDF_MemStream_FreeData\n"));++    if (!stream || stream->type != HPDF_STREAM_MEMORY)+        return;++    attr = (HPDF_MemStreamAttr)stream->attr;++    for (i = 0; i < attr->buf->count; i++)+        HPDF_FreeMem (stream->mmgr, HPDF_List_ItemAt (attr->buf, i));++    HPDF_List_Clear(attr->buf);++    stream->size = 0;+    attr->w_pos = attr->buf_siz;+    attr->w_ptr = NULL;+    attr->r_ptr_idx = 0;+    attr->r_pos = 0;+}++void+HPDF_MemStream_FreeFunc  (HPDF_Stream  stream)+{+    HPDF_MemStreamAttr attr;++    HPDF_PTRACE((" HPDF_MemStream_FreeFunc\n"));++    attr = (HPDF_MemStreamAttr)stream->attr;+    HPDF_MemStream_FreeData (stream);+    HPDF_List_Free (attr->buf);+    HPDF_FreeMem (stream->mmgr, attr);+    stream->attr = NULL;+}++HPDF_Stream+HPDF_MemStream_New  (HPDF_MMgr  mmgr,+                     HPDF_UINT  buf_siz)+{+    HPDF_Stream stream;++    HPDF_PTRACE((" HPDF_MemStream_New\n"));++    // Create new HPDF_Stream object.+    stream = (HPDF_Stream)HPDF_GetMem (mmgr, sizeof(HPDF_Stream_Rec));++    if (stream) {+        // Create attribute struct.+        HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)HPDF_GetMem (mmgr,+                sizeof(HPDF_MemStreamAttr_Rec));++        if (!attr) {+            HPDF_FreeMem (mmgr, stream);+            return NULL;+        }++        HPDF_MemSet (stream, 0, sizeof(HPDF_Stream_Rec));+        HPDF_MemSet (attr, 0, sizeof(HPDF_MemStreamAttr_Rec));++        attr->buf = HPDF_List_New (mmgr, HPDF_DEF_ITEMS_PER_BLOCK);+        if (!attr->buf) {+            HPDF_FreeMem (mmgr, stream);+            HPDF_FreeMem (mmgr, attr);+            return NULL;+        }++        stream->sig_bytes = HPDF_STREAM_SIG_BYTES;+        stream->type = HPDF_STREAM_MEMORY;+        stream->error = mmgr->error;+        stream->mmgr = mmgr;+        stream->attr = attr;+        attr->buf_siz = (buf_siz > 0) ? buf_siz : HPDF_STREAM_BUF_SIZ;+        attr->w_pos = attr->buf_siz;++        stream->write_fn = HPDF_MemStream_WriteFunc;+        stream->read_fn = HPDF_MemStream_ReadFunc;+        stream->seek_fn = HPDF_MemStream_SeekFunc;+        stream->tell_fn = HPDF_MemStream_TellFunc;+        stream->size_fn = HPDF_MemStream_SizeFunc;+        stream->free_fn = HPDF_MemStream_FreeFunc;+    }++    return stream;+}++HPDF_UINT+HPDF_MemStream_GetBufSize  (HPDF_Stream  stream)+{+    HPDF_MemStreamAttr attr;++    HPDF_PTRACE((" HPDF_MemStream_GetBufSize\n"));++    if (!stream || stream->type != HPDF_STREAM_MEMORY)+        return 0;++    attr = (HPDF_MemStreamAttr)stream->attr;+    return attr->buf_siz;+}++HPDF_UINT+HPDF_MemStream_GetBufCount  (HPDF_Stream  stream)+{+    HPDF_MemStreamAttr attr;++    HPDF_PTRACE((" HPDF_MemStream_GetBufCount\n"));++    if (!stream || stream->type != HPDF_STREAM_MEMORY)+        return 0;++    attr = (HPDF_MemStreamAttr)stream->attr;+    return attr->buf->count;+}++HPDF_STATUS+HPDF_MemStream_ReadFunc  (HPDF_Stream  stream,+                          HPDF_BYTE    *buf,+                          HPDF_UINT    *size)+{+    HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)stream->attr;+    HPDF_UINT buf_size;+    HPDF_UINT rlen = *size;++    HPDF_PTRACE((" HPDF_MemStream_ReadFunc\n"));++    *size = 0;++    while (rlen > 0) {+        HPDF_UINT tmp_len;++        if (attr->buf->count == 0)+            return HPDF_STREAM_EOF;++        if (attr->buf->count - 1 > attr->r_ptr_idx)+            tmp_len = attr->buf_siz - attr->r_pos;+        else if (attr->buf->count - 1 == attr->r_ptr_idx)+            tmp_len = attr->w_pos - attr->r_pos;+        else+            return HPDF_STREAM_EOF;++        if (!attr->r_ptr)+            attr->r_ptr = (HPDF_BYTE*)HPDF_List_ItemAt (attr->buf,+                            attr->r_ptr_idx);++        if (tmp_len >= rlen) {+            HPDF_MemCpy (buf, attr->r_ptr, rlen);+            attr->r_pos += rlen;+            *size += rlen;+            attr->r_ptr += rlen;+            return HPDF_OK;+        } else {+            buf = HPDF_MemCpy (buf, attr->r_ptr, tmp_len);+            rlen -= tmp_len;+            *size += tmp_len;++            if (attr->r_ptr_idx == attr->buf->count - 1) {+                attr->r_ptr += tmp_len;+                attr->r_pos += tmp_len;+                return HPDF_STREAM_EOF;+            }++            attr->r_ptr_idx++;+            attr->r_pos = 0;+            attr->r_ptr = HPDF_MemStream_GetBufPtr (stream, attr->r_ptr_idx,+                    &buf_size);+        }+    }++    return HPDF_OK;+}+++HPDF_STATUS+HPDF_MemStream_Rewrite  (HPDF_Stream  stream,+                         HPDF_BYTE    *buf,+                         HPDF_UINT    size)+{+    HPDF_MemStreamAttr attr = (HPDF_MemStreamAttr)stream->attr;+    HPDF_UINT buf_size;+    HPDF_UINT rlen = size;++    HPDF_PTRACE((" HPDF_MemStream_Rewrite\n"));++    while (rlen > 0) {+        HPDF_UINT tmp_len;++        if (attr->buf->count <= attr->r_ptr_idx) {+            HPDF_STATUS ret = HPDF_MemStream_WriteFunc (stream, buf, rlen);+            attr->r_ptr_idx = attr->buf->count;+            attr->r_pos = attr->w_pos;+            attr->r_ptr = attr->w_ptr;+            return ret;+        } else if (attr->buf->count == attr->r_ptr_idx)+            tmp_len = attr->w_pos - attr->r_pos;+        else+            tmp_len = attr->buf_siz - attr->r_pos;++        if (tmp_len >= rlen) {+            HPDF_MemCpy(attr->r_ptr, buf, rlen);+            attr->r_pos += rlen;+            attr->r_ptr += rlen;+            return HPDF_OK;+        } else {+            HPDF_MemCpy(attr->r_ptr, buf, tmp_len);+            buf += tmp_len;+            rlen -= tmp_len;+            attr->r_ptr_idx++;++            if (attr->buf->count > attr->r_ptr_idx) {+                attr->r_pos = 0;+                attr->r_ptr = HPDF_MemStream_GetBufPtr (stream, attr->r_ptr_idx,+                        &buf_size);+            }+        }+    }+    return HPDF_OK;+}++/*+ *  HPDF_CallbackReader_new+ *+ *  Constractor for HPDF_CallbackReader.+ *+ *  mmgr : Pointer to a HPDF_MMgr object.+ *  read_fn : Pointer to a user function for reading data.+ *  seek_fn : Pointer to a user function for seeking data.+ *  data : Pointer to a data which defined by user.+ *+ *  return: If success, It returns pointer to new HPDF_Stream object,+ *          otherwise, it returns NULL.+ *+ */+++HPDF_Stream+HPDF_CallbackReader_New  (HPDF_MMgr              mmgr,+                          HPDF_Stream_Read_Func  read_fn,+                          HPDF_Stream_Seek_Func  seek_fn,+                          HPDF_Stream_Tell_Func  tell_fn,+                          HPDF_Stream_Size_Func  size_fn,+                          void*                  data)+{+    HPDF_Stream stream;++    HPDF_PTRACE((" HPDF_CallbackReader_New\n"));++    stream = (HPDF_Stream)HPDF_GetMem (mmgr, sizeof(HPDF_Stream_Rec));++    if (stream) {+        HPDF_MemSet (stream, 0, sizeof(HPDF_Stream_Rec));+        stream->sig_bytes = HPDF_STREAM_SIG_BYTES;+        stream->error = mmgr->error;+        stream->mmgr = mmgr;+        stream->read_fn = read_fn;+        stream->seek_fn = seek_fn;+        stream->tell_fn = tell_fn;+        stream->size_fn = size_fn;+        stream->attr = data;+        stream->type = HPDF_STREAM_CALLBACK;+    }++    return stream;+}++/*+ *  HPDF_CallbackWriter_new+ *+ *  Constractor for HPDF_CallbackWriter.+ *+ *  mmgr : Pointer to a HPDF_MMgr object.+ *  read_fn : Pointer to a user function for writing data.+ *  data : Pointer to a data which defined by user.+ *+ *  return: If success, It returns pointer to new HPDF_Stream object,+ *          otherwise, it returns NULL.+ *+ */+++HPDF_Stream+HPDF_CallbackWriter_New (HPDF_MMgr               mmgr,+                         HPDF_Stream_Write_Func  write_fn,+                         void*                   data)+{+    HPDF_Stream stream;++    HPDF_PTRACE((" HPDF_CallbackWriter_New\n"));++    stream = (HPDF_Stream)HPDF_GetMem (mmgr, sizeof(HPDF_Stream_Rec));++    if (stream) {+        HPDF_MemSet (stream, 0, sizeof(HPDF_Stream_Rec));+        stream->sig_bytes = HPDF_STREAM_SIG_BYTES;+        stream->error = mmgr->error;+        stream->mmgr = mmgr;+        stream->write_fn = write_fn;+        stream->attr = data;+        stream->type = HPDF_STREAM_CALLBACK;+    }++    return stream;+}++++HPDF_STATUS+HPDF_Stream_Validate  (HPDF_Stream  stream)+{+    if (!stream || stream->sig_bytes != HPDF_STREAM_SIG_BYTES)+        return HPDF_FALSE;+    else+        return HPDF_TRUE;+}+
+ haru/hpdf_streams.h view
@@ -0,0 +1,276 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_streams.h+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ * 2005.12.20 Created.+ *+ */++#ifndef _HPDF_STREAMS_H+#define _HPDF_STREAMS_H++#include "hpdf_list.h"+#include "hpdf_encrypt.h"++#ifdef __cplusplus+extern "C" {+#endif+++#define HPDF_STREAM_SIG_BYTES  0x5354524DL++typedef enum _HPDF_StreamType {+    HPDF_STREAM_UNKNOWN = 0,+    HPDF_STREAM_CALLBACK,+    HPDF_STREAM_FILE,+    HPDF_STREAM_MEMORY,+} HPDF_StreamType;++#define HPDF_STREAM_FILTER_NONE          0x0000+#define HPDF_STREAM_FILTER_ASCIIHEX      0x0100+#define HPDF_STREAM_FILTER_ASCII85       0x0200+#define HPDF_STREAM_FILTER_FLATE_DECODE  0x0400+#define HPDF_STREAM_FILTER_DCT_DECODE    0x0800++typedef enum _HPDF_WhenceMode {+    HPDF_SEEK_SET = 0,+    HPDF_SEEK_CUR,+    HPDF_SEEK_END+} HPDF_WhenceMode;++typedef struct _HPDF_Stream_Rec  *HPDF_Stream;++typedef HPDF_STATUS+(*HPDF_Stream_Write_Func)  (HPDF_Stream      stream,+                            const HPDF_BYTE  *ptr,+                            HPDF_UINT        siz);+++typedef HPDF_STATUS+(*HPDF_Stream_Read_Func)  (HPDF_Stream  stream,+                           HPDF_BYTE    *ptr,+                           HPDF_UINT    *siz);+++typedef HPDF_STATUS+(*HPDF_Stream_Seek_Func)  (HPDF_Stream      stream,+                           HPDF_INT         pos,+                           HPDF_WhenceMode  mode);+++typedef HPDF_INT32+(*HPDF_Stream_Tell_Func)  (HPDF_Stream      stream);+++typedef void+(*HPDF_Stream_Free_Func)  (HPDF_Stream  stream);+++typedef HPDF_UINT32+(*HPDF_Stream_Size_Func)  (HPDF_Stream  stream);+++typedef struct _HPDF_MemStreamAttr_Rec  *HPDF_MemStreamAttr;+++typedef struct _HPDF_MemStreamAttr_Rec {+    HPDF_List  buf;+    HPDF_UINT  buf_siz;+    HPDF_UINT  w_pos;+    HPDF_BYTE  *w_ptr;+    HPDF_UINT  r_ptr_idx;+    HPDF_UINT  r_pos;+    HPDF_BYTE  *r_ptr;+} HPDF_MemStreamAttr_Rec;+++typedef struct _HPDF_Stream_Rec {+    HPDF_UINT32               sig_bytes;+    HPDF_StreamType           type;+    HPDF_MMgr                 mmgr;+    HPDF_Error                error;+    HPDF_UINT                 size;+    HPDF_Stream_Write_Func    write_fn;+    HPDF_Stream_Read_Func     read_fn;+    HPDF_Stream_Seek_Func     seek_fn;+    HPDF_Stream_Free_Func     free_fn;+    HPDF_Stream_Tell_Func     tell_fn;+    HPDF_Stream_Size_Func     size_fn;+    void*                     attr;+} HPDF_Stream_Rec;++++HPDF_Stream+HPDF_MemStream_New  (HPDF_MMgr  mmgr,+                     HPDF_UINT  buf_siz);+++HPDF_BYTE*+HPDF_MemStream_GetBufPtr  (HPDF_Stream  stream,+                           HPDF_UINT    index,+                           HPDF_UINT    *length);+++HPDF_UINT+HPDF_MemStream_GetBufSize  (HPDF_Stream  stream);+++HPDF_UINT+HPDF_MemStream_GetBufCount  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_MemStream_Rewrite  (HPDF_Stream  stream,+                         HPDF_BYTE    *buf,+                         HPDF_UINT    size);+++void+HPDF_MemStream_FreeData  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_Stream_WriteToStream  (HPDF_Stream   src,+                            HPDF_Stream   dst,+                            HPDF_UINT     filter,+                            HPDF_Encrypt  e);+++HPDF_Stream+HPDF_FileReader_New  (HPDF_MMgr   mmgr,+                      const char  *fname);+++HPDF_Stream+HPDF_FileWriter_New  (HPDF_MMgr        mmgr,+                      const char  *fname);+++HPDF_Stream+HPDF_CallbackReader_New  (HPDF_MMgr              mmgr,+                          HPDF_Stream_Read_Func  read_fn,+                          HPDF_Stream_Seek_Func  seek_fn,+                          HPDF_Stream_Tell_Func  tell_fn,+                          HPDF_Stream_Size_Func  size_fn,+                          void*                  data);+++HPDF_Stream+HPDF_CallbackWriter_New (HPDF_MMgr               mmgr,+                         HPDF_Stream_Write_Func  write_fn,+                         void*                   data);+++void+HPDF_Stream_Free  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_Stream_WriteChar  (HPDF_Stream  stream,+                        char    value);+++HPDF_STATUS+HPDF_Stream_WriteStr  (HPDF_Stream      stream,+                       const char  *value);+++HPDF_STATUS+HPDF_Stream_WriteUChar  (HPDF_Stream  stream,+                         HPDF_BYTE    value);+++HPDF_STATUS+HPDF_Stream_WriteInt  (HPDF_Stream  stream,+                       HPDF_INT     value);+++HPDF_STATUS+HPDF_Stream_WriteUInt  (HPDF_Stream  stream,+                        HPDF_UINT    value);+++HPDF_STATUS+HPDF_Stream_WriteReal  (HPDF_Stream  stream,+                        HPDF_REAL    value);+++HPDF_STATUS+HPDF_Stream_Write  (HPDF_Stream      stream,+                    const HPDF_BYTE  *ptr,+                    HPDF_UINT        size);+++HPDF_STATUS+HPDF_Stream_Read  (HPDF_Stream  stream,+                   HPDF_BYTE    *ptr,+                   HPDF_UINT    *size);++HPDF_STATUS+HPDF_Stream_ReadLn  (HPDF_Stream  stream,+                     char    *s,+                     HPDF_UINT    *size);+++HPDF_INT32+HPDF_Stream_Tell  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_Stream_Seek  (HPDF_Stream      stream,+                   HPDF_INT         pos,+                   HPDF_WhenceMode  mode);+++HPDF_BOOL+HPDF_Stream_EOF  (HPDF_Stream  stream);+++HPDF_UINT32+HPDF_Stream_Size  (HPDF_Stream  stream);++HPDF_STATUS+HPDF_Stream_Flush  (HPDF_Stream  stream);+++HPDF_STATUS+HPDF_Stream_WriteEscapeName  (HPDF_Stream      stream,+                              const char  *value);+++HPDF_STATUS+HPDF_Stream_WriteEscapeText2  (HPDF_Stream    stream,+                               const char    *text,+                               HPDF_UINT      len);+++HPDF_STATUS+HPDF_Stream_WriteEscapeText  (HPDF_Stream      stream,+                              const char  *text);+++HPDF_STATUS+HPDF_Stream_WriteBinary  (HPDF_Stream      stream,+                          const HPDF_BYTE  *data,+                          HPDF_UINT        len,+                          HPDF_Encrypt     e);+++HPDF_STATUS+HPDF_Stream_Validate  (HPDF_Stream  stream);+++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_STREAMS_H */
+ haru/hpdf_string.c view
@@ -0,0 +1,189 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- hpdf_string.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"++static const HPDF_BYTE UNICODE_HEADER[] = {+    0xFE, 0xFF+};+++HPDF_String+HPDF_String_New  (HPDF_MMgr        mmgr,+                  const char  *value,+                  HPDF_Encoder     encoder)+{+    HPDF_String obj;++    HPDF_PTRACE((" HPDF_String_New\n"));++    obj = (HPDF_String)HPDF_GetMem (mmgr, sizeof(HPDF_String_Rec));+    if (obj) {+        HPDF_MemSet (&obj->header, 0, sizeof(HPDF_Obj_Header));+        obj->header.obj_class = HPDF_OCLASS_STRING;++        obj->mmgr = mmgr;+        obj->error = mmgr->error;+        obj->encoder = encoder;+        obj->value = NULL;+        obj->len = 0;++        if (HPDF_String_SetValue (obj, value) != HPDF_OK) {+            HPDF_FreeMem (obj->mmgr, obj);+            return NULL;+        }+    }++    return obj;+}+++HPDF_STATUS+HPDF_String_SetValue  (HPDF_String      obj,+                       const char  *value)+{+    HPDF_UINT len;+    HPDF_STATUS ret = HPDF_OK;++    HPDF_PTRACE((" HPDF_String_SetValue\n"));++    if (obj->value) {+        HPDF_FreeMem (obj->mmgr, obj->value);+        obj->len = 0;+    }++    len = HPDF_StrLen(value, HPDF_LIMIT_MAX_STRING_LEN + 1);++    if (len > HPDF_LIMIT_MAX_STRING_LEN)+        return HPDF_SetError (obj->error, HPDF_STRING_OUT_OF_RANGE, 0);++    obj->value = (char *)HPDF_GetMem (obj->mmgr, len + 1);+    if (!obj->value)+        return HPDF_Error_GetCode (obj->error);++    HPDF_StrCpy (obj->value, value, obj->value + len);+    obj->len = len;++    return ret;+}++void+HPDF_String_Free  (HPDF_String  obj)+{+    if (!obj)+        return;++    HPDF_PTRACE((" HPDF_String_Free\n"));++    HPDF_FreeMem (obj->mmgr, obj->value);+    HPDF_FreeMem (obj->mmgr, obj);+}+++HPDF_STATUS+HPDF_String_Write  (HPDF_String   obj,+                    HPDF_Stream   stream,+                    HPDF_Encrypt  e)+{+    HPDF_STATUS ret;++    /*+     *  When encoder is not NULL, text is changed to unicode using encoder,+     *  and it outputs by HPDF_write_binary method.+     */++    HPDF_PTRACE((" HPDF_String_Write\n"));++    if (e)+        HPDF_Encrypt_Reset (e);++    if (obj->encoder == NULL) {+        if (e) {+            if ((ret = HPDF_Stream_WriteChar (stream, '<')) != HPDF_OK)+                return ret;++            if ((ret = HPDF_Stream_WriteBinary (stream, obj->value,+                    HPDF_StrLen (obj->value, -1), e)) != HPDF_OK)+                return ret;++            return HPDF_Stream_WriteChar (stream, '>');+        } else {+            return HPDF_Stream_WriteEscapeText (stream, obj->value);+        }+    } else {+        HPDF_BYTE* src = obj->value;+        HPDF_BYTE buf[HPDF_TEXT_DEFAULT_LEN * 2];+        HPDF_UINT tmp_len = 0;+        HPDF_BYTE* pbuf = buf;+        HPDF_INT32 len = obj->len;+        HPDF_ParseText_Rec  parse_state;+        HPDF_UINT i;++        if ((ret = HPDF_Stream_WriteChar (stream, '<')) != HPDF_OK)+           return ret;++        if ((ret = HPDF_Stream_WriteBinary (stream, UNICODE_HEADER, 2, e))+                        != HPDF_OK)+            return ret;++        HPDF_Encoder_SetParseText (obj->encoder, &parse_state, src, len);++        for (i = 0; i < len; i++) {+            HPDF_BYTE b = src[i];+            HPDF_UNICODE tmp_unicode;+            HPDF_ByteType btype = HPDF_Encoder_ByteType (obj->encoder,+                    &parse_state);++            if (tmp_len >= HPDF_TEXT_DEFAULT_LEN - 1) {+                if ((ret = HPDF_Stream_WriteBinary (stream, buf,+                            tmp_len * 2, e)) != HPDF_OK)+                    return ret;++                tmp_len = 0;+                pbuf = buf;+            }++            if (btype != HPDF_BYTE_TYPE_TRIAL) {+                if (btype == HPDF_BYTE_TYPE_LEAD) {+                    HPDF_BYTE b2 = src[i + 1];+                    HPDF_UINT16 char_code = (HPDF_UINT) b * 256 + b2;++                    tmp_unicode = HPDF_Encoder_ToUnicode (obj->encoder,+                                char_code);+                } else {+                    tmp_unicode = HPDF_Encoder_ToUnicode (obj->encoder, b);+                }++                HPDF_UInt16Swap (&tmp_unicode);+                HPDF_MemCpy (pbuf, (HPDF_BYTE*)&tmp_unicode, 2);+                pbuf += 2;+                tmp_len++;+            }+        }++        if (tmp_len > 0) {+            if ((ret = HPDF_Stream_WriteBinary (stream, buf, tmp_len * 2, e))+                            != HPDF_OK)+                return ret;+        }++        if ((ret = HPDF_Stream_WriteChar (stream, '>')) != HPDF_OK)+            return ret;+    }++    return HPDF_OK;+}+
+ haru/hpdf_types.h view
@@ -0,0 +1,488 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_types.h+ *+ * URL http://libharu.sourceforge.net/+ *+ * Copyright (c) 1999-2006 Takeshi Kanno+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_TYPES_H+#define _HPDF_TYPES_H++#ifndef HPDF_STDCALL+#ifdef HPDF_DLL_MAKE+#define HPDF_STDCALL __stdcall+#else+#ifdef HPDF_DLL+#define HPDF_STDCALL __stdcall+#else+#define HPDF_STDCALL+#endif+#endif+#endif++#include <stdlib.h>++#ifdef __cplusplus+extern "C" {+#endif++/*----------------------------------------------------------------------------*/+/*----- type definition ------------------------------------------------------*/+++/*  native OS integer types */+typedef  signed int          HPDF_INT;+typedef  unsigned int        HPDF_UINT;+++/*  32bit integer types+ */+typedef  signed int          HPDF_INT32;+typedef  unsigned int        HPDF_UINT32;+++/*  16bit integer types+ */+typedef  signed short        HPDF_INT16;+typedef  unsigned short      HPDF_UINT16;+++/*  8bit integer types+ */+typedef  signed char         HPDF_INT8;+typedef  unsigned char       HPDF_UINT8;+++/*  8bit binary types+ */+typedef  unsigned char       HPDF_BYTE;+++/*  float type (32bit IEEE754)+ */+typedef  float               HPDF_REAL;+++/*  double type (64bit IEEE754)+ */+typedef  double              HPDF_DOUBLE;+++/*  boolean type (0: False, !0: True)+ */+typedef  signed int          HPDF_BOOL;+++/*  error-no type (32bit unsigned integer)+ */+typedef  unsigned long       HPDF_STATUS;+++/*  charactor-code type (16bit)+ */+typedef  HPDF_UINT16         HPDF_CID;+typedef  HPDF_UINT16         HPDF_UNICODE;+++/*  HPDF_Point struct+ */+typedef  struct  _HPDF_Point {+    HPDF_REAL  x;+    HPDF_REAL  y;+} HPDF_Point;++typedef  struct _HPDF_Rect {+    HPDF_REAL  left;+    HPDF_REAL  bottom;+    HPDF_REAL  right;+    HPDF_REAL  top;+} HPDF_Rect;++typedef struct _HPDF_Rect HPDF_Box;++/* HPDF_Date struct+ */+typedef  struct  _HPDF_Date {+    HPDF_INT    year;+    HPDF_INT    month;+    HPDF_INT    day;+    HPDF_INT    hour;+    HPDF_INT    minutes;+    HPDF_INT    seconds;+    char        ind;+    HPDF_INT    off_hour;+    HPDF_INT    off_minutes;+} HPDF_Date;+++typedef enum _HPDF_InfoType {+    /* date-time type parameters */+    HPDF_INFO_CREATION_DATE = 0,+    HPDF_INFO_MOD_DATE,++    /* string type parameters */+    HPDF_INFO_AUTHOR,+    HPDF_INFO_CREATOR,+    HPDF_INFO_PRODUCER,+    HPDF_INFO_TITLE,+    HPDF_INFO_SUBJECT,+    HPDF_INFO_KEYWORDS,+    HPDF_INFO_EOF+} HPDF_InfoType;+++typedef enum _HPDF_PdfVer {+    HPDF_VER_12 = 0,+    HPDF_VER_13,+    HPDF_VER_14,+    HPDF_VER_15,+    HPDF_VER_16,+    HPDF_VER_EOF+} HPDF_PDFVer;++typedef enum  _HPDF_EncryptMode {+    HPDF_ENCRYPT_R2    = 2,+    HPDF_ENCRYPT_R3    = 3+} HPDF_EncryptMode;+++typedef void+(HPDF_STDCALL *HPDF_Error_Handler)  (HPDF_STATUS   error_no,+                                     HPDF_STATUS   detail_no,+                                     void         *user_data);++typedef void*+(HPDF_STDCALL *HPDF_Alloc_Func)  (HPDF_UINT  size);+++typedef void+(HPDF_STDCALL *HPDF_Free_Func)  (void  *aptr);+++/*---------------------------------------------------------------------------*/+/*------ text width struct --------------------------------------------------*/++typedef struct _HPDF_TextWidth {+    HPDF_UINT numchars;++    /* don't use this value (it may be change in the feature).+       use numspace as alternated. */+    HPDF_UINT numwords;++    HPDF_UINT width;+    HPDF_UINT numspace;+} HPDF_TextWidth;+++/*---------------------------------------------------------------------------*/+/*------ dash mode ----------------------------------------------------------*/++typedef struct _HPDF_DashMode {+    HPDF_UINT16  ptn[8];+    HPDF_UINT    num_ptn;+    HPDF_UINT    phase;+} HPDF_DashMode;+++/*---------------------------------------------------------------------------*/+/*----- HPDF_TransMatrix struct ---------------------------------------------*/++typedef struct _HPDF_TransMatrix {+    HPDF_REAL   a;+    HPDF_REAL   b;+    HPDF_REAL   c;+    HPDF_REAL   d;+    HPDF_REAL   x;+    HPDF_REAL   y;+} HPDF_TransMatrix;+++/*---------------------------------------------------------------------------*/++typedef enum _HPDF_ColorSpace {+    HPDF_CS_DEVICE_GRAY = 0,+    HPDF_CS_DEVICE_RGB,+    HPDF_CS_DEVICE_CMYK,+    HPDF_CS_CAL_GRAY,+    HPDF_CS_CAL_RGB,+    HPDF_CS_LAB,+    HPDF_CS_ICC_BASED,+    HPDF_CS_SEPARATION,+    HPDF_CS_DEVICE_N,+    HPDF_CS_INDEXED,+    HPDF_CS_PATTERN,+    HPDF_CS_EOF+} HPDF_ColorSpace;++/*---------------------------------------------------------------------------*/+/*----- HPDF_RGBColor struct ------------------------------------------------*/++typedef struct _HPDF_RGBColor {+    HPDF_REAL   r;+    HPDF_REAL   g;+    HPDF_REAL   b;+} HPDF_RGBColor;++/*---------------------------------------------------------------------------*/+/*----- HPDF_CMYKColor struct -----------------------------------------------*/++typedef struct _HPDF_CMYKColor {+    HPDF_REAL   c;+    HPDF_REAL   m;+    HPDF_REAL   y;+    HPDF_REAL   k;+} HPDF_CMYKColor;++/*---------------------------------------------------------------------------*/+/*------ The line cap style -------------------------------------------------*/++typedef enum _HPDF_LineCap {+    HPDF_BUTT_END = 0,+    HPDF_ROUND_END,+    HPDF_PROJECTING_SCUARE_END,+    HPDF_LINECAP_EOF+} HPDF_LineCap;++/*----------------------------------------------------------------------------*/+/*------ The line join style -------------------------------------------------*/++typedef enum _HPDF_LineJoin {+    HPDF_MITER_JOIN = 0,+    HPDF_ROUND_JOIN,+    HPDF_BEVEL_JOIN,+    HPDF_LINEJOIN_EOF+} HPDF_LineJoin;++/*----------------------------------------------------------------------------*/+/*------ The text rendering mode ---------------------------------------------*/++typedef enum _HPDF_TextRenderingMode {+    HPDF_FILL = 0,+    HPDF_STROKE,+    HPDF_FILL_THEN_STROKE,+    HPDF_INVISIBLE,+    HPDF_FILL_CLIPPING,+    HPDF_STROKE_CLIPPING,+    HPDF_FILL_STROKE_CLIPPING,+    HPDF_CLIPPING,+    HPDF_RENDERING_MODE_EOF+} HPDF_TextRenderingMode;+++typedef enum _HPDF_WritingMode {+    HPDF_WMODE_HORIZONTAL = 0,+    HPDF_WMODE_VERTICAL,+    HPDF_WMODE_EOF+} HPDF_WritingMode;+++typedef enum _HPDF_PageLayout {+    HPDF_PAGE_LAYOUT_SINGLE = 0,+    HPDF_PAGE_LAYOUT_ONE_COLUMN,+    HPDF_PAGE_LAYOUT_TWO_COLUMN_LEFT,+    HPDF_PAGE_LAYOUT_TWO_COLUMN_RIGHT,+    HPDF_PAGE_LAYOUT_EOF+} HPDF_PageLayout;+++typedef enum _HPDF_PageMode {+    HPDF_PAGE_MODE_USE_NONE = 0,+    HPDF_PAGE_MODE_USE_OUTLINE,+    HPDF_PAGE_MODE_USE_THUMBS,+    HPDF_PAGE_MODE_FULL_SCREEN,+/*  HPDF_PAGE_MODE_USE_OC,+    HPDF_PAGE_MODE_USE_ATTACHMENTS,+ */+    HPDF_PAGE_MODE_EOF+} HPDF_PageMode;+++typedef enum _HPDF_PageNumStyle {+    HPDF_PAGE_NUM_STYLE_DECIMAL = 0,+    HPDF_PAGE_NUM_STYLE_UPPER_ROMAN,+    HPDF_PAGE_NUM_STYLE_LOWER_ROMAN,+    HPDF_PAGE_NUM_STYLE_UPPER_LETTERS,+    HPDF_PAGE_NUM_STYLE_LOWER_LETTERS,+    HPDF_PAGE_NUM_STYLE_EOF+} HPDF_PageNumStyle;+++typedef enum _HPDF_DestinationType {+    HPDF_XYZ = 0,+    HPDF_FIT,+    HPDF_FIT_H,+    HPDF_FIT_V,+    HPDF_FIT_R,+    HPDF_FIT_B,+    HPDF_FIT_BH,+    HPDF_FIT_BV,+    HPDF_DST_EOF+} HPDF_DestinationType;+++typedef enum _HPDF_AnnotType {+    HPDF_ANNOT_TEXT_NOTES,+    HPDF_ANNOT_LINK,+    HPDF_ANNOT_SOUND,+    HPDF_ANNOT_FREE_TEXT,+    HPDF_ANNOT_STAMP,+    HPDF_ANNOT_SQUARE,+    HPDF_ANNOT_CIRCLE,+    HPDF_ANNOT_STRIKE_OUT,+    HPDF_ANNOT_HIGHTLIGHT,+    HPDF_ANNOT_UNDERLINE,+    HPDF_ANNOT_INK,+    HPDF_ANNOT_FILE_ATTACHMENT,+    HPDF_ANNOT_POPUP+} HPDF_AnnotType;+++typedef enum _HPDF_AnnotFlgs {+    HPDF_ANNOT_INVISIBLE,+    HPDF_ANNOT_HIDDEN,+    HPDF_ANNOT_PRINT,+    HPDF_ANNOT_NOZOOM,+    HPDF_ANNOT_NOROTATE,+    HPDF_ANNOT_NOVIEW,+    HPDF_ANNOT_READONLY+} HPDF_AnnotFlgs;+++typedef enum _HPDF_AnnotHighlightMode {+    HPDF_ANNOT_NO_HIGHTLIGHT = 0,+    HPDF_ANNOT_INVERT_BOX,+    HPDF_ANNOT_INVERT_BORDER,+    HPDF_ANNOT_DOWN_APPEARANCE,+    HPDF_ANNOT_HIGHTLIGHT_MODE_EOF+} HPDF_AnnotHighlightMode;+++typedef enum _HPDF_AnnotIcon {+    HPDF_ANNOT_ICON_COMMENT = 0,+    HPDF_ANNOT_ICON_KEY,+    HPDF_ANNOT_ICON_NOTE,+    HPDF_ANNOT_ICON_HELP,+    HPDF_ANNOT_ICON_NEW_PARAGRAPH,+    HPDF_ANNOT_ICON_PARAGRAPH,+    HPDF_ANNOT_ICON_INSERT,+    HPDF_ANNOT_ICON_EOF+} HPDF_AnnotIcon;++++/*----------------------------------------------------------------------------*/+/*------ border stype --------------------------------------------------------*/++typedef enum _HPDF_BSSubtype {+    HPDF_BS_SOLID,+    HPDF_BS_DASHED,+    HPDF_BS_BEVELED,+    HPDF_BS_INSET,+    HPDF_BS_UNDERLINED+} HPDF_BSSubtype;+++/*----- blend modes ----------------------------------------------------------*/++typedef enum _HPDF_BlendMode {+    HPDF_BM_NORMAL,+    HPDF_BM_MULTIPLY,+    HPDF_BM_SCREEN,+    HPDF_BM_OVERLAY,+    HPDF_BM_DARKEN,+    HPDF_BM_LIGHTEN,+    HPDF_BM_COLOR_DODGE,+    HPDF_BM_COLOR_BUM,+    HPDF_BM_HARD_LIGHT,+    HPDF_BM_SOFT_LIGHT,+    HPDF_BM_DIFFERENCE,+    HPDF_BM_EXCLUSHON,+    HPDF_BM_EOF+} HPDF_BlendMode;++/*----- slide show -----------------------------------------------------------*/++typedef enum _HPDF_TransitionStyle {+    HPDF_TS_WIPE_RIGHT = 0,+    HPDF_TS_WIPE_UP,+    HPDF_TS_WIPE_LEFT,+    HPDF_TS_WIPE_DOWN,+    HPDF_TS_BARN_DOORS_HORIZONTAL_OUT,+    HPDF_TS_BARN_DOORS_HORIZONTAL_IN,+    HPDF_TS_BARN_DOORS_VERTICAL_OUT,+    HPDF_TS_BARN_DOORS_VERTICAL_IN,+    HPDF_TS_BOX_OUT,+    HPDF_TS_BOX_IN,+    HPDF_TS_BLINDS_HORIZONTAL,+    HPDF_TS_BLINDS_VERTICAL,+    HPDF_TS_DISSOLVE,+    HPDF_TS_GLITTER_RIGHT,+    HPDF_TS_GLITTER_DOWN,+    HPDF_TS_GLITTER_TOP_LEFT_TO_BOTTOM_RIGHT,+    HPDF_TS_REPLACE,+    HPDF_TS_EOF+} HPDF_TransitionStyle; ++/*----------------------------------------------------------------------------*/++typedef enum _HPDF_PageSizes {+    HPDF_PAGE_SIZE_LETTER = 0,+    HPDF_PAGE_SIZE_LEGAL,+    HPDF_PAGE_SIZE_A3,+    HPDF_PAGE_SIZE_A4,+    HPDF_PAGE_SIZE_A5,+    HPDF_PAGE_SIZE_B4,+    HPDF_PAGE_SIZE_B5,+    HPDF_PAGE_SIZE_EXECUTIVE,+    HPDF_PAGE_SIZE_US4x6,+    HPDF_PAGE_SIZE_US4x8,+    HPDF_PAGE_SIZE_US5x7,+    HPDF_PAGE_SIZE_COMM10,+    HPDF_PAGE_SIZE_EOF+} HPDF_PageSizes;+++typedef enum _HPDF_PageDirection {+    HPDF_PAGE_PORTRAIT = 0,+    HPDF_PAGE_LANDSCAPE+} HPDF_PageDirection;+++typedef enum  _HPDF_EncoderType {+    HPDF_ENCODER_TYPE_SINGLE_BYTE,+    HPDF_ENCODER_TYPE_DOUBLE_BYTE,+    HPDF_ENCODER_TYPE_UNINITIALIZED,+    HPDF_ENCODER_UNKNOWN+} HPDF_EncoderType;+++typedef enum _HPDF_ByteType {+    HPDF_BYTE_TYPE_SINGLE = 0,+    HPDF_BYTE_TYPE_LEAD,+    HPDF_BYTE_TYPE_TRIAL,+    HPDF_BYTE_TYPE_UNKNOWN+} HPDF_ByteType;+++typedef enum _HPDF_TextAlignment {+    HPDF_TALIGN_LEFT = 0,+    HPDF_TALIGN_RIGHT,+    HPDF_TALIGN_CENTER,+    HPDF_TALIGN_JUSTIFY+} HPDF_TextAlignment;++#ifdef __cplusplus+}+#endif /* __cplusplus */++#endif /* _HPDF_TYPES_H */+
+ haru/hpdf_utils.c view
@@ -0,0 +1,438 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- HPDF_utils.c+ *+ * Copyright (c) 1999-2004 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include <stdlib.h>+#include "hpdf_utils.h"+#include "hpdf_consts.h"++/*---------------------------------------------------------------------------*/++HPDF_INT+HPDF_AToI  (const char  *s)+{+    HPDF_BOOL flg = HPDF_FALSE;+    HPDF_INT  v = 0;++    /* increment pointer until the charactor of 's' is not+     * white-space-charactor.+     */+    while (*s) {+        if (HPDF_IS_WHITE_SPACE(*s))+            s++;+        else {+            if (*s == '-') {+                flg = HPDF_TRUE;+                s++;+            }+            break;+        }+    }++    while (*s >= '0' && *s <= '9') {+        v *= 10;+        v += *s - '0';+        s++;+    }++    if (flg)+        v *= -1;++    return v;+}+++HPDF_DOUBLE+HPDF_AToF  (const char  *s)+{+    HPDF_BOOL flg = HPDF_FALSE;+    HPDF_INT i = 0;+    HPDF_DOUBLE v;+    HPDF_INT tmp = 1;++    /* increment pointer until the charactor of 's' is not+     * white-space-charactor.+     */+    while (*s) {+        if (HPDF_IS_WHITE_SPACE(*s))+            s++;+        else {+            if (*s == '-') {+                flg = HPDF_TRUE;+                s++;+            }+            break;+        }+    }++    while (*s >= '0' && *s <= '9') {+        if (i > 3276)+            break;++        i *= 10;+        i += *s - '0';+        s++;+    }++    if (*s == '.') {+        s++;+        while (*s >= '0' && *s <= '9') {+            if (i > 214748364)+                break;++            i *= 10;+            i += *s - '0';+            s++;+            tmp *= 10;+        }+    }++    v = (HPDF_DOUBLE)i / tmp;++    if (flg)+        v *= -1;++    return v;+}+++char*+HPDF_IToA  (char        *s,+            HPDF_INT32   val,+            char        *eptr)+{+    char* t;+    char buf[HPDF_INT_LEN + 1];++    if (val < 0) {+        if (val < HPDF_LIMIT_MIN_INT)+            val = HPDF_LIMIT_MIN_INT;+        *s++ = '-';+        val = -val;+    } else if (val > HPDF_LIMIT_MAX_INT) {+        val = HPDF_LIMIT_MAX_INT;+    } else if (val == 0) {+        *s++ = '0';+    }++    t = buf + HPDF_INT_LEN;+    *t-- = 0;++    while (val > 0) {+        *t = (char)(val % 10) + '0';+        val /= 10;+        t--;+    }++    t++;+    while (s < eptr && *t != 0)+      *s++ = *t++;+    *s = 0;++    return s;+}+++char*+HPDF_IToA2  (char         *s,+             HPDF_UINT32   val,+             HPDF_UINT     len)+{+    char* t;+    char* u;++    if (val > HPDF_LIMIT_MAX_INT)+        val = HPDF_LIMIT_MAX_INT;++    u = s + len - 1;+    *u = 0;+    t = u - 1;+    while (val > 0 && t >= s) {+        *t = (char)(val % 10) + '0';+        val /= 10;+        t--;+    }++    while (s <= t)+        *t-- = '0';++    return s + len - 1;+}+++char*+HPDF_FToA  (char       *s,+            HPDF_REAL   val,+            char       *eptr)+{+    HPDF_INT32 int_val;+    HPDF_INT32 fpart_val;+    char buf[HPDF_REAL_LEN + 1];+    char* sptr = s;+    char* t;+    HPDF_UINT32 i;++    if (val > HPDF_LIMIT_MAX_REAL)+        val = HPDF_LIMIT_MAX_REAL;+    else+    if (val < HPDF_LIMIT_MIN_REAL)+        val = HPDF_LIMIT_MIN_REAL;++    t = buf + HPDF_REAL_LEN;+    *t-- = 0;++    if (val < 0) {+        *s++ = '-';+        val = -val;+    }++    /* separate an integer part and a decimal part. */+    int_val = (HPDF_INT32)(val + 0.000005);+    fpart_val = (HPDF_INT32)((HPDF_REAL)(val - int_val + 0.000005) * 100000);++    /* process decimal part */+    for (i = 0; i < 5; i++) {+        *t = (char)(fpart_val % 10) + '0';+        fpart_val /= 10;+        t--;+    }++    /* process integer part */+    *t-- = '.';+    *t = '0';+    if (int_val == 0)+        t--;++    while (int_val > 0) {+        *t = (char)(int_val % 10) + '0';+        int_val /= 10;+        t--;+    }++    t++;+    while (s <= eptr && *t != 0)+        *s++ = *t++;+    s--;++    /* delete an excessive decimal portion. */+    while (s > sptr) {+        if (*s == '0')+            *s = 0;+        else {+            if (*s == '.')+                *s = 0;+            break;+        }+        s--;+    }++    return (*s == 0) ? s : ++s;+}+++HPDF_BYTE*+HPDF_MemCpy  (HPDF_BYTE*         out,+              const HPDF_BYTE   *in,+              HPDF_UINT          n)+{+    while (n > 0) {+        *out++ = *in++;+        n--;+    }++    return out;+}+++HPDF_BYTE*+HPDF_StrCpy  (char          *out,+              const char    *in,+              char          *eptr)+{+    if (in != NULL) {+        while (eptr > out && *in != 0)+            *out++ = *in++;+    }++    *out = 0;++    return out;+}+++HPDF_INT+HPDF_MemCmp  (const HPDF_BYTE   *s1,+              const HPDF_BYTE   *s2,+              HPDF_UINT          n)+{+    if (n == 0)+        return 0;++    while (*s1 == *s2) {+        n--;+        if (n == 0)+            return 0;+        s1++;+        s2++;+    }++    return *s1 - *s2;+}+++HPDF_INT+HPDF_StrCmp  (const char   *s1,+              const char   *s2)+{+    if (!s1 || !s2) {+        if (!s1 && s2)+            return -1;+        else+            return 1;+    }++    while (*s1 == *s2) {+        s1++;+        s2++;+        if (*s1 == 0 || *s2 == 0)+            break;+    }++    return (HPDF_BYTE)*s1 - (HPDF_BYTE)*s2;+}+++void*+HPDF_MemSet  (void        *s,+              HPDF_BYTE    c,+              HPDF_UINT    n)+{+    HPDF_BYTE* b = (HPDF_BYTE*)s;++    while (n > 0) {+        *b = c;+        b++;+        n--;+    }++    return b;+}+++HPDF_UINT+HPDF_StrLen  (const char   *s,+              HPDF_INT      maxlen)+{+    HPDF_INT len = 0;++    if (!s)+        return 0;++    while (*s != 0 && (maxlen < 0 || len < maxlen)) {+        s++;+        len++;+    }++    return (HPDF_UINT)len;+}+++const char*+HPDF_StrStr  (const char   *s1,+              const char   *s2,+              HPDF_UINT     maxlen)+{+    HPDF_UINT len = HPDF_StrLen (s2, -1);++    if (!s1)+        return NULL;++    if (len == 0)+        return s1;++    if (maxlen == 0)+        maxlen = HPDF_StrLen (s1, -1);++    if (maxlen < len)+        return NULL;++    maxlen -= len;+    maxlen++;++    while (maxlen > 0) {+        if (HPDF_MemCmp (s1, s2, len) == 0)+            return s1;++        s1++;+        maxlen--;+    }++    return NULL;+}+++HPDF_Box+HPDF_ToBox  (HPDF_INT16   left,+             HPDF_INT16   bottom,+             HPDF_INT16   right,+             HPDF_INT16   top)+{+    HPDF_Box box;++    box.left = left;+    box.bottom = bottom;+    box.right = right;+    box.top = top;++    return box;+}+++HPDF_Point+HPDF_ToPoint  (HPDF_INT16   x,+               HPDF_INT16   y)+{+    HPDF_Point point;++    point.x = x;+    point.y = y;++    return point;+}++HPDF_Rect+HPDF_ToRect  (HPDF_REAL   left,+              HPDF_REAL   bottom,+              HPDF_REAL   right,+              HPDF_REAL   top)+{+    HPDF_Rect rect;++    rect.left = left;+    rect.bottom = bottom;+    rect.right = right;+    rect.top = top;++    return rect;+}+++void+HPDF_UInt16Swap  (HPDF_UINT16  *value)+{+    HPDF_BYTE u[2];++    HPDF_MemCpy (u, (HPDF_BYTE*)value, 2);+    *value = (HPDF_UINT16)((HPDF_UINT16)u[0] << 8 | (HPDF_UINT16)u[1]);+}+
+ haru/hpdf_utils.h view
@@ -0,0 +1,161 @@+/*+ * << Haru Free PDF Library 2.0.0 >> -- fpdf_utils.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#ifndef _HPDF_UTILS_H+#define _HPDF_UTILS_H++#include "hpdf_types.h"++#ifdef __cplusplus+extern "C" {+#endif /* __cplusplus */++HPDF_INT+HPDF_AToI  (const char*  s);+++HPDF_DOUBLE+HPDF_AToF  (const char*  s);+++char*+HPDF_IToA  (char*  s,+            HPDF_INT32  val,+            char*  eptr);+++char*+HPDF_IToA2  (char    *s,+             HPDF_UINT32  val,+             HPDF_UINT    len);+++char*+HPDF_FToA  (char  *s,+            HPDF_REAL  val,+            char  *eptr);+++HPDF_BYTE*+HPDF_MemCpy  (HPDF_BYTE*        out,+              const HPDF_BYTE*  in,+              HPDF_UINT         n);+++HPDF_BYTE*+HPDF_StrCpy  (char*        out,+              const char*  in,+              char*        eptr);+++HPDF_INT+HPDF_MemCmp  (const HPDF_BYTE*  s1,+              const HPDF_BYTE*  s2,+              HPDF_UINT         n);+++HPDF_INT+HPDF_StrCmp  (const char*  s1,+              const char*  s2);+++const char*+HPDF_StrStr  (const char  *s1,+              const char  *s2,+              HPDF_UINT        maxlen);+++void*+HPDF_MemSet  (void*      s,+              HPDF_BYTE  c,+              HPDF_UINT  n);+++HPDF_UINT+HPDF_StrLen  (const char*  s,+              HPDF_INT          maxlen);+++HPDF_Box+HPDF_ToBox  (HPDF_INT16  left,+             HPDF_INT16  bottom,+             HPDF_INT16  right,+             HPDF_INT16  top);+++HPDF_Point+HPDF_ToPoint  (HPDF_INT16  x,+               HPDF_INT16  y);+++HPDF_Rect+HPDF_ToRect  (HPDF_REAL  left,+              HPDF_REAL  bottom,+              HPDF_REAL  right,+              HPDF_REAL  top);+++void+HPDF_UInt16Swap  (HPDF_UINT16  *value);+++#ifdef __cplusplus+}+#endif /* __cplusplus */++#define HPDF_NEEDS_ESCAPE(c)    (c < 0x21 || \+                                 c > 0x7e || \+                                 c == '\\' || \+                                 c == '%' || \+                                 c == '#' || \+                                 c == '/' || \+                                 c == '(' || \+                                 c == ')' || \+                                 c == '<' || \+                                 c == '>' || \+                                 c == '[' || \+                                 c == ']' || \+                                 c == '{' || \+                                 c == '}' )  \++#define HPDF_IS_WHITE_SPACE(c)   (c == 0x00 || \+                                 c == 0x09 || \+                                 c == 0x0A || \+                                 c == 0x0C || \+                                 c == 0x0D || \+                                 c == 0x20 ) \++/*----------------------------------------------------------------------------*/+/*----- macros for debug -----------------------------------------------------*/++#ifdef HPDF_DEBUG+#ifndef HPDF_PTRACE_ON+#define HPDF_PTRACE_ON+#endif /* HPDF_PTRACE_ON */+#endif /* HPDF_DEBUG */++#ifdef HPDF_PTRACE_ON+#define HPDF_PTRACE(ARGS)  HPDF_PRINTF ARGS+#else+#define HPDF_PTRACE(ARGS)  /* do nothing */+#endif /* HPDF_PTRACE */++#ifdef HPDF_DEBUG+#define HPDF_PRINT_BINARY(BUF, LEN, CAPTION) HPDF_PrintBinary(BUF, LEN, CAPTION)+#else+#define HPDF_PRINT_BINARY(BUF, LEN, CAPTION) /* do nothing */+#endif++#endif /* _HPDF_UTILS_H */+
+ haru/hpdf_xref.c view
@@ -0,0 +1,348 @@+/*+ * << Haru Free PDF Library 2.0.3 >> -- hpdf_xref.h+ *+ * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>+ *+ * Permission to use, copy, modify, distribute and sell this software+ * and its documentation for any purpose is hereby granted without fee,+ * provided that the above copyright notice appear in all copies and+ * that both that copyright notice and this permission notice appear+ * in supporting documentation.+ * It is provided "as is" without express or implied warranty.+ *+ */++#include "hpdf_conf.h"+#include "hpdf_utils.h"+#include "hpdf_objects.h"++static HPDF_STATUS+WriteTrailer  (HPDF_Xref     xref,+               HPDF_Stream   stream);+++HPDF_Xref+HPDF_Xref_New  (HPDF_MMgr     mmgr,+                HPDF_UINT32   offset)+{+    HPDF_Xref xref;+    HPDF_XrefEntry new_entry;++    HPDF_PTRACE((" HPDF_Xref_New\n"));++    xref = (HPDF_Xref)HPDF_GetMem (mmgr, sizeof(HPDF_Xref_Rec));+    if (!xref)+        return NULL;++    HPDF_MemSet (xref, 0, sizeof(HPDF_Xref_Rec));+    xref->mmgr = mmgr;+    xref->error = mmgr->error;+    xref->start_offset = offset;++    xref->entries = HPDF_List_New (mmgr, HPDF_DEFALUT_XREF_ENTRY_NUM);+    if (!xref->entries)+        goto Fail;++    xref->addr = 0;++    if (xref->start_offset == 0) {+        new_entry = (HPDF_XrefEntry)HPDF_GetMem (mmgr,+                sizeof(HPDF_XrefEntry_Rec));+        if (!new_entry)+            goto Fail;++        if (HPDF_List_Add (xref->entries, new_entry) != HPDF_OK) {+            HPDF_FreeMem (mmgr, new_entry);+            goto Fail;+        }++        /* add first entry which is free entry and whose generation+         * number is 0+         */+        new_entry->entry_typ = HPDF_FREE_ENTRY;+        new_entry->byte_offset = 0;+        new_entry->gen_no = HPDF_MAX_GENERATION_NUM;+        new_entry->obj = NULL;+    }++    xref->trailer = HPDF_Dict_New (mmgr);+    if (!xref->trailer)+        goto Fail;++    return xref;++Fail:+    HPDF_PTRACE((" HPDF_Xref_New failed\n"));+    HPDF_Xref_Free (xref);+    return NULL;+}+++void+HPDF_Xref_Free  (HPDF_Xref  xref)+{+    HPDF_UINT i;+    HPDF_XrefEntry entry;+    HPDF_Xref tmp_xref;++    HPDF_PTRACE((" HPDF_Xref_Free\n"));++    /* delete xref entries. where prev element is not NULL,+     * delete all xref entries recursively.+     */+    while (xref) {+        /* delete all objects belong to the xref. */++        if (xref->entries) {+            for (i = 0; i < xref->entries->count; i++) {+                entry = HPDF_Xref_GetEntry (xref, i);+                if (entry->obj)+                    HPDF_Obj_ForceFree (xref->mmgr, entry->obj);+                HPDF_FreeMem (xref->mmgr, entry);+            }++            HPDF_List_Free(xref->entries);+        }++        if (xref->trailer)+            HPDF_Dict_Free (xref->trailer);++        tmp_xref = xref->prev;+        HPDF_FreeMem (xref->mmgr, xref);+        xref = tmp_xref;+    }+}+++HPDF_STATUS+HPDF_Xref_Add  (HPDF_Xref  xref,+                void       *obj)+{+    HPDF_XrefEntry entry;+    HPDF_Obj_Header *header;++    HPDF_PTRACE((" HPDF_Xref_Add\n"));++    if (!obj) {+        if (HPDF_Error_GetCode (xref->error) == HPDF_OK)+            return HPDF_SetError (xref->error, HPDF_INVALID_OBJECT, 0);+        else+            return HPDF_INVALID_OBJECT;+    }++    header = (HPDF_Obj_Header *)obj;++    if (header->obj_id & HPDF_OTYPE_DIRECT ||+            header->obj_id & HPDF_OTYPE_INDIRECT)+        return HPDF_SetError(xref->error, HPDF_INVALID_OBJECT, 0);++    if (xref->entries->count >= HPDF_LIMIT_MAX_XREF_ELEMENT) {+        HPDF_SetError(xref->error, HPDF_XREF_COUNT_ERR, 0);+        goto Fail;+    }++    /* in the following, we have to dispose the object when an error is+     * occured.+     */++    entry = (HPDF_XrefEntry)HPDF_GetMem (xref->mmgr,+            sizeof(HPDF_XrefEntry_Rec));+    if (entry == NULL)+        goto Fail;++    if (HPDF_List_Add(xref->entries, entry) != HPDF_OK) {+        HPDF_FreeMem (xref->mmgr, entry);+        goto Fail;+    }++    entry->entry_typ = HPDF_IN_USE_ENTRY;+    entry->byte_offset = 0;+    entry->gen_no = 0;+    entry->obj = obj;+    header->obj_id = xref->start_offset + xref->entries->count - 1 ++                    HPDF_OTYPE_INDIRECT;++    header->gen_no = entry->gen_no;++    return HPDF_OK;++Fail:+    HPDF_Obj_ForceFree(xref->mmgr, obj);+    return HPDF_Error_GetCode (xref->error);+}++HPDF_XrefEntry+HPDF_Xref_GetEntry  (HPDF_Xref  xref,+                     HPDF_UINT  index)+{+    HPDF_PTRACE((" HPDF_Xref_GetEntry\n"));++    return (HPDF_XrefEntry)HPDF_List_ItemAt(xref->entries, index);+}+++HPDF_XrefEntry+HPDF_Xref_GetEntryByObjectId  (HPDF_Xref  xref,+                               HPDF_UINT  obj_id)+{+    HPDF_Xref tmp_xref = xref;++    HPDF_PTRACE((" HPDF_Xref_GetEntryByObjectId\n"));++    while (tmp_xref) {+        HPDF_UINT i;++        if (tmp_xref->entries->count + tmp_xref->start_offset > obj_id) {+            HPDF_SetError (xref->error, HPDF_INVALID_OBJ_ID, 0);+            return NULL;+        }++        if (tmp_xref->start_offset < obj_id) {+            for (i = 0; i < tmp_xref->entries->count; i++) {+                if (tmp_xref->start_offset + i == obj_id) {+                    HPDF_XrefEntry entry = HPDF_Xref_GetEntry(tmp_xref, i);++                    return entry;+                }+            }+        }++        tmp_xref = tmp_xref->prev;+    }++    return NULL;+}+++HPDF_STATUS+HPDF_Xref_WriteToStream  (HPDF_Xref    xref,+                          HPDF_Stream  stream,+                          HPDF_Encrypt e)+{+    HPDF_STATUS ret;+    HPDF_UINT i;+    char buf[HPDF_SHORT_BUF_SIZ];+    char* pbuf;+    char* eptr = buf + HPDF_SHORT_BUF_SIZ - 1;+    HPDF_UINT str_idx;+    HPDF_Xref tmp_xref = xref;++    /* write each objects of xref to the specified stream */++    HPDF_PTRACE((" HPDF_Xref_WriteToStream\n"));++    while (tmp_xref) {+        if (tmp_xref->start_offset == 0)+            str_idx = 1;+        else+            str_idx = 0;++        for (i = str_idx; i < tmp_xref->entries->count; i++) {+            HPDF_XrefEntry  entry =+                        (HPDF_XrefEntry)HPDF_List_ItemAt (tmp_xref->entries, i);+            HPDF_UINT obj_id = tmp_xref->start_offset + i;+            HPDF_UINT16 gen_no = entry->gen_no;++            entry->byte_offset = stream->size;++            pbuf = buf;+            pbuf = HPDF_IToA (pbuf, obj_id, eptr);+            *pbuf++ = ' ';+            pbuf = HPDF_IToA (pbuf, gen_no, eptr);+            HPDF_StrCpy(pbuf, " obj\012", eptr);++            if ((ret = HPDF_Stream_WriteStr (stream, buf)) != HPDF_OK)+               return ret;++            if (e)+                HPDF_Encrypt_InitKey (e, obj_id, gen_no);++            if ((ret = HPDF_Obj_WriteValue (entry->obj, stream, e)) != HPDF_OK)+                return ret;++            if ((ret = HPDF_Stream_WriteStr (stream, "\012endobj\012"))+                    != HPDF_OK)+                return ret;+       }++       tmp_xref = tmp_xref->prev;+    }++    /* start to write cross-reference table */++    tmp_xref = xref;++    while (tmp_xref) {+        tmp_xref->addr = stream->size;++        pbuf = buf;+        pbuf = HPDF_StrCpy (pbuf, "xref\012", eptr);+        pbuf = HPDF_IToA (pbuf, tmp_xref->start_offset, eptr);+        *pbuf++ = ' ';+        pbuf = HPDF_IToA (pbuf, tmp_xref->entries->count, eptr);+        HPDF_StrCpy (pbuf, "\012", eptr);+        ret = HPDF_Stream_WriteStr (stream, buf);+        if (ret != HPDF_OK)+            return ret;++        for (i = 0; i < tmp_xref->entries->count; i++) {+            HPDF_XrefEntry entry = HPDF_Xref_GetEntry(tmp_xref, i);++            pbuf = buf;+            pbuf = HPDF_IToA2 (pbuf, entry->byte_offset, HPDF_BYTE_OFFSET_LEN ++                    1);+            *pbuf++ = ' ';+            pbuf = HPDF_IToA2 (pbuf, entry->gen_no, HPDF_GEN_NO_LEN + 1);+            *pbuf++ = ' ';+            *pbuf++ = entry->entry_typ;+            HPDF_StrCpy (pbuf, "\015\012", eptr);+            ret = HPDF_Stream_WriteStr (stream, buf);+            if (ret != HPDF_OK)+                return ret;+        }++        tmp_xref = tmp_xref->prev;+    }++    /* write trailer dictionary */+    ret = WriteTrailer (xref, stream);++    return ret;+}++static HPDF_STATUS+WriteTrailer  (HPDF_Xref     xref,+               HPDF_Stream   stream)+{+    HPDF_UINT max_obj_id = xref->entries->count + xref->start_offset;+    HPDF_STATUS ret;++    HPDF_PTRACE ((" WriteTrailer\n"));++    if ((ret = HPDF_Dict_AddNumber (xref->trailer, "Size", max_obj_id))+            != HPDF_OK)+        return ret;++    if (xref->prev)+        if ((ret = HPDF_Dict_AddNumber (xref->trailer, "Prev",+                xref->prev->addr)) != HPDF_OK)+            return ret;++    if ((ret = HPDF_Stream_WriteStr (stream, "trailer\012")) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Dict_Write (xref->trailer, stream, NULL)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteStr (stream, "\012startxref\012")) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteUInt (stream, xref->addr)) != HPDF_OK)+        return ret;++    if ((ret = HPDF_Stream_WriteStr (stream, "\012%%EOF\012")) != HPDF_OK)+        return ret;++    return HPDF_OK;+}+